diff --git a/examples/audio/audio_module_playing.js b/examples/audio/audio_module_playing.js new file mode 100644 index 0000000..0abb38d --- /dev/null +++ b/examples/audio/audio_module_playing.js @@ -0,0 +1,133 @@ +/******************************************************************************************* +* +* raylib [audio] example - Module playing (streaming) +* +* Example originally created with raylib 1.5, last time updated with raylib 3.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2016-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ +const MAX_CIRCLES = 64 + +// Initialization +//-------------------------------------------------------------------------------------- +const screenWidth = 800; +const screenHeight = 450; + +setConfigFlags(FLAG_MSAA_4X_HINT); // NOTE: Try to enable MSAA 4X + +initWindow(screenWidth, screenHeight, "raylib [audio] example - module playing (streaming)"); + +initAudioDevice(); // Initialize audio device + +const colors = [ORANGE, RED, GOLD, LIME, BLUE, VIOLET, BROWN, LIGHTGRAY, PINK, + YELLOW, GREEN, SKYBLUE, PURPLE, BEIGE]; + +// Creates some circles for visual effect +const circles = new Array(MAX_CIRCLES).fill({}); + +for (let i = MAX_CIRCLES - 1; i >= 0; i--) +{ + circles[i].alpha = 0.0; + circles[i].radius = getRandomValue(10, 40); + circles[i].position = new Vector2(0,0) + circles[i].position.x = getRandomValue(circles[i].radius, (screenWidth - circles[i].radius)); + circles[i].position.y = getRandomValue(circles[i].radius, (screenHeight - circles[i].radius)); + circles[i].speed = getRandomValue(1, 100)/2000.0; + circles[i].color = colors[getRandomValue(0, 13)]; +} + +const music = loadMusicStream("resources/mini1111.xm"); +music.looping = false; +const pitch = 1.0; + +playMusicStream(music); + +let timePlayed = 0.0; +let pause = false; + +setTargetFPS(60); // Set our game to run at 60 frames-per-second +//-------------------------------------------------------------------------------------- + +// Main game loop +while (!windowShouldClose()) // Detect window close button or ESC key +{ + // Update + //---------------------------------------------------------------------------------- + updateMusicStream(music); // Update music buffer with new stream data + + // Restart music playing (stop and play) + if (isKeyPressed(KEY_SPACE)) + { + stopMusicStream(music); + playMusicStream(music); + } + + // Pause/Resume music playing + if (isKeyPressed(KEY_P)) + { + pause = !pause; + + if (pause) pauseMusicStream(music); + else resumeMusicStream(music); + } + + if (isKeyDown(KEY_DOWN)) pitch -= 0.01; + else if (isKeyDown(KEY_UP)) pitch += 0.01; + + setMusicPitch(music, pitch); + + // Get timePlayed scaled to bar dimensions + timePlayed = getMusicTimePlayed(music) / getMusicTimeLength(music) * (screenWidth - 40); + + // Color circles animation + for (let i = MAX_CIRCLES - 1; (i >= 0) && !pause; i--) + { + circles[i].alpha += circles[i].speed; + circles[i].radius += circles[i].speed*10.0; + + if (circles[i].alpha > 1.0) circles[i].speed *= -1; + + if (circles[i].alpha <= 0.0) + { + circles[i].alpha = 0.0; + circles[i].radius = getRandomValue(10, 40); + circles[i].position.x = getRandomValue(circles[i].radius, (screenWidth - circles[i].radius)); + circles[i].position.y = getRandomValue(circles[i].radius, (screenHeight - circles[i].radius)); + circles[i].color = colors[getRandomValue(0, 13)]; + circles[i].speed = getRandomValue(1, 100) / 2000.0; + } + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + beginDrawing(); + + clearBackground(RAYWHITE); + + for (let i = MAX_CIRCLES - 1; i >= 0; i--) + { + drawCircleV(circles[i].position, circles[i].radius, fade(circles[i].color, circles[i].alpha)); + } + + // Draw time bar + drawRectangle(20, screenHeight - 20 - 12, screenWidth - 40, 12, LIGHTGRAY); + drawRectangle(20, screenHeight - 20 - 12, timePlayed, 12, MAROON); + drawRectangleLines(20, screenHeight - 20 - 12, screenWidth - 40, 12, GRAY); + + endDrawing(); + //---------------------------------------------------------------------------------- +} + +// De-Initialization +//-------------------------------------------------------------------------------------- +unloadMusicStream(music); // Unload music stream buffers from RAM + +closeAudioDevice(); // Close audio device (music streaming is automatically stopped) + +closeWindow(); // Close window and OpenGL context +//-------------------------------------------------------------------------------------- \ No newline at end of file diff --git a/examples/audio/audio_music_stream.js b/examples/audio/audio_music_stream.js new file mode 100644 index 0000000..45736fa --- /dev/null +++ b/examples/audio/audio_music_stream.js @@ -0,0 +1,87 @@ +/******************************************************************************************* +* +* raylib [audio] example - Music playing (streaming) +* +* Example originally created with raylib 1.3, last time updated with raylib 4.0 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2015-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ +// Initialization +//-------------------------------------------------------------------------------------- +const screenWidth = 800; +const screenHeight = 450; + +initWindow(screenWidth, screenHeight, "raylib [audio] example - music playing (streaming)"); + +initAudioDevice(); // Initialize audio device + +const music = loadMusicStream("resources/country.mp3"); + +playMusicStream(music); + +let timePlayed = 0.0; // Time played normalized [0.0f..1.0f] +let pause = false; // Music playing paused + +setTargetFPS(30); // Set our game to run at 30 frames-per-second +//-------------------------------------------------------------------------------------- + +// Main game loop +while (!windowShouldClose()) // Detect window close button or ESC key +{ + // Update + //---------------------------------------------------------------------------------- + updateMusicStream(music); // Update music buffer with new stream data + + // Restart music playing (stop and play) + if (isKeyPressed(KEY_SPACE)) + { + stopMusicStream(music); + playMusicStream(music); + } + + // Pause/Resume music playing + if (isKeyPressed(KEY_P)) + { + pause = !pause; + + if (pause) pauseMusicStream(music); + else resumeMusicStream(music); + } + + // Get normalized time played for current music stream + timePlayed = getMusicTimePlayed(music)/getMusicTimeLength(music); + + if (timePlayed > 1.0) timePlayed = 1.0; // Make sure time played is no longer than music + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + beginDrawing(); + + clearBackground(RAYWHITE); + + drawText("MUSIC SHOULD BE PLAYING!", 255, 150, 20, LIGHTGRAY); + + drawRectangle(200, 200, 400, 12, LIGHTGRAY); + drawRectangle(200, 200, (timePlayed*400.0), 12, MAROON); + drawRectangleLines(200, 200, 400, 12, GRAY); + + drawText("PRESS SPACE TO RESTART MUSIC", 215, 250, 20, LIGHTGRAY); + drawText("PRESS P TO PAUSE/RESUME MUSIC", 208, 280, 20, LIGHTGRAY); + + endDrawing(); + //---------------------------------------------------------------------------------- +} + +// De-Initialization +//-------------------------------------------------------------------------------------- +unloadMusicStream(music); // Unload music stream buffers from RAM + +closeAudioDevice(); // Close audio device (music streaming is automatically stopped) + +closeWindow(); // Close window and OpenGL context +//-------------------------------------------------------------------------------------- diff --git a/examples/audio/audio_sound_loading.js b/examples/audio/audio_sound_loading.js new file mode 100644 index 0000000..76ca129 --- /dev/null +++ b/examples/audio/audio_sound_loading.js @@ -0,0 +1,58 @@ +/******************************************************************************************* +* +* raylib [audio] example - Sound loading and playing +* +* Example originally created with raylib 1.1, last time updated with raylib 3.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2014-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ +// Initialization +//-------------------------------------------------------------------------------------- +let screenWidth = 800; +let screenHeight = 450; + +initWindow(screenWidth, screenHeight, "raylib [audio] example - sound loading and playing"); + +initAudioDevice(); // Initialize audio device + +const fxWav = loadSound("resources/sound.wav"); // Load WAV audio file +const fxOgg = loadSound("resources/target.ogg"); // Load OGG audio file + +setTargetFPS(60); // Set our game to run at 60 frames-per-second +//-------------------------------------------------------------------------------------- + +// Main game loop +while (!windowShouldClose()) // Detect window close button or ESC key +{ + // Update + //---------------------------------------------------------------------------------- + if (isKeyPressed(KEY_SPACE)) playSound(fxWav); // Play WAV sound + if (isKeyPressed(KEY_ENTER)) playSound(fxOgg); // Play OGG sound + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + beginDrawing(); + + clearBackground(RAYWHITE); + + drawText("Press SPACE to PLAY the WAV sound!", 200, 180, 20, LIGHTGRAY); + drawText("Press ENTER to PLAY the OGG sound!", 200, 220, 20, LIGHTGRAY); + + endDrawing(); + //---------------------------------------------------------------------------------- +} + +// De-Initialization +//-------------------------------------------------------------------------------------- +unloadSound(fxWav); // Unload sound data +unloadSound(fxOgg); // Unload sound data + +closeAudioDevice(); // Close audio device + +closeWindow(); // Close window and OpenGL context +//-------------------------------------------------------------------------------------- \ No newline at end of file diff --git a/examples/audio/resources/LICENSE.md b/examples/audio/resources/LICENSE.md new file mode 100644 index 0000000..67e6584 --- /dev/null +++ b/examples/audio/resources/LICENSE.md @@ -0,0 +1,10 @@ +| resource | author | licence | notes | +| :------------------- | :---------: | :------ | :---- | +| country.mp3 | [@emegeme](https://github.com/emegeme) | [CC0](https://creativecommons.org/publicdomain/zero/1.0/) | Originally created for "DART that TARGET" game | +| target.ogg | [@emegeme](https://github.com/emegeme) | [CC0](https://creativecommons.org/publicdomain/zero/1.0/) | Originally created for "DART that TARGET" game | +| target.flac | [@emegeme](https://github.com/emegeme) | [CC0](https://creativecommons.org/publicdomain/zero/1.0/) | Originally created for "DART that TARGET" game | +| coin.wav | [@raysan5](https://github.com/raysan5) | [CC0](https://creativecommons.org/publicdomain/zero/1.0/) | Made with [rFXGen](https://raylibtech.itch.io/rfxgen) | +| sound.wav | [@raysan5](https://github.com/raysan5) | [CC0](https://creativecommons.org/publicdomain/zero/1.0/) | Made with [rFXGen](https://raylibtech.itch.io/rfxgen) | +| spring.wav | [@raysan5](https://github.com/raysan5) | [CC0](https://creativecommons.org/publicdomain/zero/1.0/) | Made with [rFXGen](https://raylibtech.itch.io/rfxgen) | +| weird.wav | [@raysan5](https://github.com/raysan5) | [CC0](https://creativecommons.org/publicdomain/zero/1.0/) | Made with [rFXGen](https://raylibtech.itch.io/rfxgen) | +| mini1111.xm | [tPORt](https://modarchive.org/index.php?request=view_by_moduleid&query=51891) | [Mod Archive Distribution license](https://modarchive.org/index.php?terms-upload) | - | diff --git a/examples/audio/resources/coin.wav b/examples/audio/resources/coin.wav new file mode 100644 index 0000000..6007509 Binary files /dev/null and b/examples/audio/resources/coin.wav differ diff --git a/examples/audio/resources/country.mp3 b/examples/audio/resources/country.mp3 new file mode 100644 index 0000000..91066cc Binary files /dev/null and b/examples/audio/resources/country.mp3 differ diff --git a/examples/audio/resources/mini1111.xm b/examples/audio/resources/mini1111.xm new file mode 100644 index 0000000..a185c1a Binary files /dev/null and b/examples/audio/resources/mini1111.xm differ diff --git a/examples/audio/resources/sound.wav b/examples/audio/resources/sound.wav new file mode 100644 index 0000000..b5d01c9 Binary files /dev/null and b/examples/audio/resources/sound.wav differ diff --git a/examples/audio/resources/spring.wav b/examples/audio/resources/spring.wav new file mode 100644 index 0000000..c7fbf1b Binary files /dev/null and b/examples/audio/resources/spring.wav differ diff --git a/examples/audio/resources/target.flac b/examples/audio/resources/target.flac new file mode 100644 index 0000000..5fad22c Binary files /dev/null and b/examples/audio/resources/target.flac differ diff --git a/examples/audio/resources/target.ogg b/examples/audio/resources/target.ogg new file mode 100644 index 0000000..2b73e1c Binary files /dev/null and b/examples/audio/resources/target.ogg differ diff --git a/examples/audio/resources/target.qoa b/examples/audio/resources/target.qoa new file mode 100644 index 0000000..d48c4f9 Binary files /dev/null and b/examples/audio/resources/target.qoa differ diff --git a/examples/audio/resources/weird.wav b/examples/audio/resources/weird.wav new file mode 100644 index 0000000..101029c Binary files /dev/null and b/examples/audio/resources/weird.wav differ diff --git a/examples/2d_camera.js b/examples/core/core_2d_camera.js similarity index 100% rename from examples/2d_camera.js rename to examples/core/core_2d_camera.js diff --git a/examples/core/core_2d_camera_platformer.js b/examples/core/core_2d_camera_platformer.js new file mode 100644 index 0000000..1ae9e0f --- /dev/null +++ b/examples/core/core_2d_camera_platformer.js @@ -0,0 +1,298 @@ +/******************************************************************************************* +* +* raylib [core] example - 2d camera platformer +* +* Example originally created with raylib 2.5, last time updated with raylib 3.0 +* +* Example contributed by arvyy (@arvyy) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2019-2023 arvyy (@arvyy) +* +********************************************************************************************/ + +#include "raylib.h" +#include "raymath.h" + +#define G 400 +#define PLAYER_JUMP_SPD 350.0f +#define PLAYER_HOR_SPD 200.0f + +typedef struct Player { + Vector2 position; + float speed; + bool canJump; +} Player; + +typedef struct EnvItem { + Rectangle rect; + int blocking; + Color color; +} EnvItem; + +//---------------------------------------------------------------------------------- +// Module functions declaration +//---------------------------------------------------------------------------------- +void UpdatePlayer(Player *player, EnvItem *envItems, int envItemsLength, float delta); +void UpdateCameraCenter(Camera2D *camera, Player *player, EnvItem *envItems, int envItemsLength, float delta, int width, int height); +void UpdateCameraCenterInsideMap(Camera2D *camera, Player *player, EnvItem *envItems, int envItemsLength, float delta, int width, int height); +void UpdateCameraCenterSmoothFollow(Camera2D *camera, Player *player, EnvItem *envItems, int envItemsLength, float delta, int width, int height); +void UpdateCameraEvenOutOnLanding(Camera2D *camera, Player *player, EnvItem *envItems, int envItemsLength, float delta, int width, int height); +void UpdateCameraPlayerBoundsPush(Camera2D *camera, Player *player, EnvItem *envItems, int envItemsLength, float delta, int width, int height); + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [core] example - 2d camera"); + + Player player = { 0 }; + player.position = (Vector2){ 400, 280 }; + player.speed = 0; + player.canJump = false; + EnvItem envItems[] = { + {{ 0, 0, 1000, 400 }, 0, LIGHTGRAY }, + {{ 0, 400, 1000, 200 }, 1, GRAY }, + {{ 300, 200, 400, 10 }, 1, GRAY }, + {{ 250, 300, 100, 10 }, 1, GRAY }, + {{ 650, 300, 100, 10 }, 1, GRAY } + }; + + int envItemsLength = sizeof(envItems)/sizeof(envItems[0]); + + Camera2D camera = { 0 }; + camera.target = player.position; + camera.offset = (Vector2){ screenWidth/2.0f, screenHeight/2.0f }; + camera.rotation = 0.0f; + camera.zoom = 1.0f; + + // Store pointers to the multiple update camera functions + void (*cameraUpdaters[])(Camera2D*, Player*, EnvItem*, int, float, int, int) = { + UpdateCameraCenter, + UpdateCameraCenterInsideMap, + UpdateCameraCenterSmoothFollow, + UpdateCameraEvenOutOnLanding, + UpdateCameraPlayerBoundsPush + }; + + int cameraOption = 0; + int cameraUpdatersLength = sizeof(cameraUpdaters)/sizeof(cameraUpdaters[0]); + + char *cameraDescriptions[] = { + "Follow player center", + "Follow player center, but clamp to map edges", + "Follow player center; smoothed", + "Follow player center horizontally; updateplayer center vertically after landing", + "Player push camera on getting too close to screen edge" + }; + + SetTargetFPS(60); + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) + { + // Update + //---------------------------------------------------------------------------------- + float deltaTime = GetFrameTime(); + + UpdatePlayer(&player, envItems, envItemsLength, deltaTime); + + camera.zoom += ((float)GetMouseWheelMove()*0.05f); + + if (camera.zoom > 3.0f) camera.zoom = 3.0f; + else if (camera.zoom < 0.25f) camera.zoom = 0.25f; + + if (IsKeyPressed(KEY_R)) + { + camera.zoom = 1.0f; + player.position = (Vector2){ 400, 280 }; + } + + if (IsKeyPressed(KEY_C)) cameraOption = (cameraOption + 1)%cameraUpdatersLength; + + // Call update camera function by its pointer + cameraUpdaters[cameraOption](&camera, &player, envItems, envItemsLength, deltaTime, screenWidth, screenHeight); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(LIGHTGRAY); + + BeginMode2D(camera); + + for (int i = 0; i < envItemsLength; i++) DrawRectangleRec(envItems[i].rect, envItems[i].color); + + Rectangle playerRect = { player.position.x - 20, player.position.y - 40, 40, 40 }; + DrawRectangleRec(playerRect, RED); + + EndMode2D(); + + DrawText("Controls:", 20, 20, 10, BLACK); + DrawText("- Right/Left to move", 40, 40, 10, DARKGRAY); + DrawText("- Space to jump", 40, 60, 10, DARKGRAY); + DrawText("- Mouse Wheel to Zoom in-out, R to reset zoom", 40, 80, 10, DARKGRAY); + DrawText("- C to change camera mode", 40, 100, 10, DARKGRAY); + DrawText("Current camera mode:", 20, 120, 10, BLACK); + DrawText(cameraDescriptions[cameraOption], 40, 140, 10, DARKGRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} + +void UpdatePlayer(Player *player, EnvItem *envItems, int envItemsLength, float delta) +{ + if (IsKeyDown(KEY_LEFT)) player->position.x -= PLAYER_HOR_SPD*delta; + if (IsKeyDown(KEY_RIGHT)) player->position.x += PLAYER_HOR_SPD*delta; + if (IsKeyDown(KEY_SPACE) && player->canJump) + { + player->speed = -PLAYER_JUMP_SPD; + player->canJump = false; + } + + int hitObstacle = 0; + for (int i = 0; i < envItemsLength; i++) + { + EnvItem *ei = envItems + i; + Vector2 *p = &(player->position); + if (ei->blocking && + ei->rect.x <= p->x && + ei->rect.x + ei->rect.width >= p->x && + ei->rect.y >= p->y && + ei->rect.y <= p->y + player->speed*delta) + { + hitObstacle = 1; + player->speed = 0.0f; + p->y = ei->rect.y; + } + } + + if (!hitObstacle) + { + player->position.y += player->speed*delta; + player->speed += G*delta; + player->canJump = false; + } + else player->canJump = true; +} + +void UpdateCameraCenter(Camera2D *camera, Player *player, EnvItem *envItems, int envItemsLength, float delta, int width, int height) +{ + camera->offset = (Vector2){ width/2.0f, height/2.0f }; + camera->target = player->position; +} + +void UpdateCameraCenterInsideMap(Camera2D *camera, Player *player, EnvItem *envItems, int envItemsLength, float delta, int width, int height) +{ + camera->target = player->position; + camera->offset = (Vector2){ width/2.0f, height/2.0f }; + float minX = 1000, minY = 1000, maxX = -1000, maxY = -1000; + + for (int i = 0; i < envItemsLength; i++) + { + EnvItem *ei = envItems + i; + minX = fminf(ei->rect.x, minX); + maxX = fmaxf(ei->rect.x + ei->rect.width, maxX); + minY = fminf(ei->rect.y, minY); + maxY = fmaxf(ei->rect.y + ei->rect.height, maxY); + } + + Vector2 max = GetWorldToScreen2D((Vector2){ maxX, maxY }, *camera); + Vector2 min = GetWorldToScreen2D((Vector2){ minX, minY }, *camera); + + if (max.x < width) camera->offset.x = width - (max.x - width/2); + if (max.y < height) camera->offset.y = height - (max.y - height/2); + if (min.x > 0) camera->offset.x = width/2 - min.x; + if (min.y > 0) camera->offset.y = height/2 - min.y; +} + +void UpdateCameraCenterSmoothFollow(Camera2D *camera, Player *player, EnvItem *envItems, int envItemsLength, float delta, int width, int height) +{ + static float minSpeed = 30; + static float minEffectLength = 10; + static float fractionSpeed = 0.8f; + + camera->offset = (Vector2){ width/2.0f, height/2.0f }; + Vector2 diff = Vector2Subtract(player->position, camera->target); + float length = Vector2Length(diff); + + if (length > minEffectLength) + { + float speed = fmaxf(fractionSpeed*length, minSpeed); + camera->target = Vector2Add(camera->target, Vector2Scale(diff, speed*delta/length)); + } +} + +void UpdateCameraEvenOutOnLanding(Camera2D *camera, Player *player, EnvItem *envItems, int envItemsLength, float delta, int width, int height) +{ + static float evenOutSpeed = 700; + static int eveningOut = false; + static float evenOutTarget; + + camera->offset = (Vector2){ width/2.0f, height/2.0f }; + camera->target.x = player->position.x; + + if (eveningOut) + { + if (evenOutTarget > camera->target.y) + { + camera->target.y += evenOutSpeed*delta; + + if (camera->target.y > evenOutTarget) + { + camera->target.y = evenOutTarget; + eveningOut = 0; + } + } + else + { + camera->target.y -= evenOutSpeed*delta; + + if (camera->target.y < evenOutTarget) + { + camera->target.y = evenOutTarget; + eveningOut = 0; + } + } + } + else + { + if (player->canJump && (player->speed == 0) && (player->position.y != camera->target.y)) + { + eveningOut = 1; + evenOutTarget = player->position.y; + } + } +} + +void UpdateCameraPlayerBoundsPush(Camera2D *camera, Player *player, EnvItem *envItems, int envItemsLength, float delta, int width, int height) +{ + static Vector2 bbox = { 0.2f, 0.2f }; + + Vector2 bboxWorldMin = GetScreenToWorld2D((Vector2){ (1 - bbox.x)*0.5f*width, (1 - bbox.y)*0.5f*height }, *camera); + Vector2 bboxWorldMax = GetScreenToWorld2D((Vector2){ (1 + bbox.x)*0.5f*width, (1 + bbox.y)*0.5f*height }, *camera); + camera->offset = (Vector2){ (1 - bbox.x)*0.5f * width, (1 - bbox.y)*0.5f*height }; + + if (player->position.x < bboxWorldMin.x) camera->target.x = player->position.x; + if (player->position.y < bboxWorldMin.y) camera->target.y = player->position.y; + if (player->position.x > bboxWorldMax.x) camera->target.x = bboxWorldMin.x + (player->position.x - bboxWorldMax.x); + if (player->position.y > bboxWorldMax.y) camera->target.y = bboxWorldMin.y + (player->position.y - bboxWorldMax.y); +} diff --git a/examples/core/core_3d_camera_first_person.c b/examples/core/core_3d_camera_first_person.c new file mode 100644 index 0000000..6a2a115 --- /dev/null +++ b/examples/core/core_3d_camera_first_person.c @@ -0,0 +1,206 @@ +/******************************************************************************************* +* +* raylib [core] example - 3d camera first person +* +* Example originally created with raylib 1.3, last time updated with raylib 1.3 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2015-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" +#include "rcamera.h" + +#define MAX_COLUMNS 20 + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [core] example - 3d camera first person"); + + // Define the camera to look into our 3d world (position, target, up vector) + Camera camera = { 0 }; + camera.position = (Vector3){ 0.0f, 2.0f, 4.0f }; // Camera position + camera.target = (Vector3){ 0.0f, 2.0f, 0.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 60.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera projection type + + int cameraMode = CAMERA_FIRST_PERSON; + + // Generates some random columns + float heights[MAX_COLUMNS] = { 0 }; + Vector3 positions[MAX_COLUMNS] = { 0 }; + Color colors[MAX_COLUMNS] = { 0 }; + + for (int i = 0; i < MAX_COLUMNS; i++) + { + heights[i] = (float)GetRandomValue(1, 12); + positions[i] = (Vector3){ (float)GetRandomValue(-15, 15), heights[i]/2.0f, (float)GetRandomValue(-15, 15) }; + colors[i] = (Color){ GetRandomValue(20, 255), GetRandomValue(10, 55), 30, 255 }; + } + + DisableCursor(); // Limit cursor to relative movement inside the window + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // Switch camera mode + if (IsKeyPressed(KEY_ONE)) + { + cameraMode = CAMERA_FREE; + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Reset roll + } + + if (IsKeyPressed(KEY_TWO)) + { + cameraMode = CAMERA_FIRST_PERSON; + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Reset roll + } + + if (IsKeyPressed(KEY_THREE)) + { + cameraMode = CAMERA_THIRD_PERSON; + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Reset roll + } + + if (IsKeyPressed(KEY_FOUR)) + { + cameraMode = CAMERA_ORBITAL; + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Reset roll + } + + // Switch camera projection + if (IsKeyPressed(KEY_P)) + { + if (camera.projection == CAMERA_PERSPECTIVE) + { + // Create isometric view + cameraMode = CAMERA_THIRD_PERSON; + // Note: The target distance is related to the render distance in the orthographic projection + camera.position = (Vector3){ 0.0f, 2.0f, -100.0f }; + camera.target = (Vector3){ 0.0f, 2.0f, 0.0f }; + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; + camera.projection = CAMERA_ORTHOGRAPHIC; + camera.fovy = 20.0f; // near plane width in CAMERA_ORTHOGRAPHIC + CameraYaw(&camera, -135 * DEG2RAD, true); + CameraPitch(&camera, -45 * DEG2RAD, true, true, false); + } + else if (camera.projection == CAMERA_ORTHOGRAPHIC) + { + // Reset to default view + cameraMode = CAMERA_THIRD_PERSON; + camera.position = (Vector3){ 0.0f, 2.0f, 10.0f }; + camera.target = (Vector3){ 0.0f, 2.0f, 0.0f }; + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; + camera.projection = CAMERA_PERSPECTIVE; + camera.fovy = 60.0f; + } + } + + // Update camera computes movement internally depending on the camera mode + // Some default standard keyboard/mouse inputs are hardcoded to simplify use + // For advance camera controls, it's reecommended to compute camera movement manually + UpdateCamera(&camera, cameraMode); // Update camera + +/* + // Camera PRO usage example (EXPERIMENTAL) + // This new camera function allows custom movement/rotation values to be directly provided + // as input parameters, with this approach, rcamera module is internally independent of raylib inputs + UpdateCameraPro(&camera, + (Vector3){ + (IsKeyDown(KEY_W) || IsKeyDown(KEY_UP))*0.1f - // Move forward-backward + (IsKeyDown(KEY_S) || IsKeyDown(KEY_DOWN))*0.1f, + (IsKeyDown(KEY_D) || IsKeyDown(KEY_RIGHT))*0.1f - // Move right-left + (IsKeyDown(KEY_A) || IsKeyDown(KEY_LEFT))*0.1f, + 0.0f // Move up-down + }, + (Vector3){ + GetMouseDelta().x*0.05f, // Rotation: yaw + GetMouseDelta().y*0.05f, // Rotation: pitch + 0.0f // Rotation: roll + }, + GetMouseWheelMove()*2.0f); // Move to target (zoom) +*/ + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + + DrawPlane((Vector3){ 0.0f, 0.0f, 0.0f }, (Vector2){ 32.0f, 32.0f }, LIGHTGRAY); // Draw ground + DrawCube((Vector3){ -16.0f, 2.5f, 0.0f }, 1.0f, 5.0f, 32.0f, BLUE); // Draw a blue wall + DrawCube((Vector3){ 16.0f, 2.5f, 0.0f }, 1.0f, 5.0f, 32.0f, LIME); // Draw a green wall + DrawCube((Vector3){ 0.0f, 2.5f, 16.0f }, 32.0f, 5.0f, 1.0f, GOLD); // Draw a yellow wall + + // Draw some cubes around + for (int i = 0; i < MAX_COLUMNS; i++) + { + DrawCube(positions[i], 2.0f, heights[i], 2.0f, colors[i]); + DrawCubeWires(positions[i], 2.0f, heights[i], 2.0f, MAROON); + } + + // Draw player cube + if (cameraMode == CAMERA_THIRD_PERSON) + { + DrawCube(camera.target, 0.5f, 0.5f, 0.5f, PURPLE); + DrawCubeWires(camera.target, 0.5f, 0.5f, 0.5f, DARKPURPLE); + } + + EndMode3D(); + + // Draw info boxes + DrawRectangle(5, 5, 330, 100, Fade(SKYBLUE, 0.5f)); + DrawRectangleLines(5, 5, 330, 100, BLUE); + + DrawText("Camera controls:", 15, 15, 10, BLACK); + DrawText("- Move keys: W, A, S, D, Space, Left-Ctrl", 15, 30, 10, BLACK); + DrawText("- Look around: arrow keys or mouse", 15, 45, 10, BLACK); + DrawText("- Camera mode keys: 1, 2, 3, 4", 15, 60, 10, BLACK); + DrawText("- Zoom keys: num-plus, num-minus or mouse scroll", 15, 75, 10, BLACK); + DrawText("- Camera projection key: P", 15, 90, 10, BLACK); + + DrawRectangle(600, 5, 195, 100, Fade(SKYBLUE, 0.5f)); + DrawRectangleLines(600, 5, 195, 100, BLUE); + + DrawText("Camera status:", 610, 15, 10, BLACK); + DrawText(TextFormat("- Mode: %s", (cameraMode == CAMERA_FREE) ? "FREE" : + (cameraMode == CAMERA_FIRST_PERSON) ? "FIRST_PERSON" : + (cameraMode == CAMERA_THIRD_PERSON) ? "THIRD_PERSON" : + (cameraMode == CAMERA_ORBITAL) ? "ORBITAL" : "CUSTOM"), 610, 30, 10, BLACK); + DrawText(TextFormat("- Projection: %s", (camera.projection == CAMERA_PERSPECTIVE) ? "PERSPECTIVE" : + (camera.projection == CAMERA_ORTHOGRAPHIC) ? "ORTHOGRAPHIC" : "CUSTOM"), 610, 45, 10, BLACK); + DrawText(TextFormat("- Position: (%06.3f, %06.3f, %06.3f)", camera.position.x, camera.position.y, camera.position.z), 610, 60, 10, BLACK); + DrawText(TextFormat("- Target: (%06.3f, %06.3f, %06.3f)", camera.target.x, camera.target.y, camera.target.z), 610, 75, 10, BLACK); + DrawText(TextFormat("- Up: (%06.3f, %06.3f, %06.3f)", camera.up.x, camera.up.y, camera.up.z), 610, 90, 10, BLACK); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/core/core_3d_camera_free.c b/examples/core/core_3d_camera_free.c new file mode 100644 index 0000000..59bd158 --- /dev/null +++ b/examples/core/core_3d_camera_free.c @@ -0,0 +1,88 @@ +/******************************************************************************************* +* +* raylib [core] example - Initialize 3d camera free +* +* Example originally created with raylib 1.3, last time updated with raylib 1.3 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2015-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [core] example - 3d camera free"); + + // Define the camera to look into our 3d world + Camera3D camera = { 0 }; + camera.position = (Vector3){ 10.0f, 10.0f, 10.0f }; // Camera position + camera.target = (Vector3){ 0.0f, 0.0f, 0.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 45.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera projection type + + Vector3 cubePosition = { 0.0f, 0.0f, 0.0f }; + + DisableCursor(); // Limit cursor to relative movement inside the window + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + UpdateCamera(&camera, CAMERA_FREE); + + if (IsKeyDown('Z')) camera.target = (Vector3){ 0.0f, 0.0f, 0.0f }; + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + + DrawCube(cubePosition, 2.0f, 2.0f, 2.0f, RED); + DrawCubeWires(cubePosition, 2.0f, 2.0f, 2.0f, MAROON); + + DrawGrid(10, 1.0f); + + EndMode3D(); + + DrawRectangle( 10, 10, 320, 133, Fade(SKYBLUE, 0.5f)); + DrawRectangleLines( 10, 10, 320, 133, BLUE); + + DrawText("Free camera default controls:", 20, 20, 10, BLACK); + DrawText("- Mouse Wheel to Zoom in-out", 40, 40, 10, DARKGRAY); + DrawText("- Mouse Wheel Pressed to Pan", 40, 60, 10, DARKGRAY); + DrawText("- Alt + Mouse Wheel Pressed to Rotate", 40, 80, 10, DARKGRAY); + DrawText("- Alt + Ctrl + Mouse Wheel Pressed for Smooth Zoom", 40, 100, 10, DARKGRAY); + DrawText("- Z to zoom to (0, 0, 0)", 40, 120, 10, DARKGRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/3d_camera_mode.js b/examples/core/core_3d_camera_mode.js similarity index 100% rename from examples/3d_camera_mode.js rename to examples/core/core_3d_camera_mode.js diff --git a/examples/core/core_3d_picking.c b/examples/core/core_3d_picking.c new file mode 100644 index 0000000..c7bf946 --- /dev/null +++ b/examples/core/core_3d_picking.c @@ -0,0 +1,118 @@ +/******************************************************************************************* +* +* raylib [core] example - Picking in 3d mode +* +* Example originally created with raylib 1.3, last time updated with raylib 4.0 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2015-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [core] example - 3d picking"); + + // Define the camera to look into our 3d world + Camera camera = { 0 }; + camera.position = (Vector3){ 10.0f, 10.0f, 10.0f }; // Camera position + camera.target = (Vector3){ 0.0f, 0.0f, 0.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 45.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera projection type + + Vector3 cubePosition = { 0.0f, 1.0f, 0.0f }; + Vector3 cubeSize = { 2.0f, 2.0f, 2.0f }; + + Ray ray = { 0 }; // Picking line ray + RayCollision collision = { 0 }; // Ray collision hit info + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + if (IsCursorHidden()) UpdateCamera(&camera, CAMERA_FIRST_PERSON); + + // Toggle camera controls + if (IsMouseButtonPressed(MOUSE_BUTTON_RIGHT)) + { + if (IsCursorHidden()) EnableCursor(); + else DisableCursor(); + } + + if (IsMouseButtonPressed(MOUSE_BUTTON_LEFT)) + { + if (!collision.hit) + { + ray = GetMouseRay(GetMousePosition(), camera); + + // Check collision between ray and box + collision = GetRayCollisionBox(ray, + (BoundingBox){(Vector3){ cubePosition.x - cubeSize.x/2, cubePosition.y - cubeSize.y/2, cubePosition.z - cubeSize.z/2 }, + (Vector3){ cubePosition.x + cubeSize.x/2, cubePosition.y + cubeSize.y/2, cubePosition.z + cubeSize.z/2 }}); + } + else collision.hit = false; + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + + if (collision.hit) + { + DrawCube(cubePosition, cubeSize.x, cubeSize.y, cubeSize.z, RED); + DrawCubeWires(cubePosition, cubeSize.x, cubeSize.y, cubeSize.z, MAROON); + + DrawCubeWires(cubePosition, cubeSize.x + 0.2f, cubeSize.y + 0.2f, cubeSize.z + 0.2f, GREEN); + } + else + { + DrawCube(cubePosition, cubeSize.x, cubeSize.y, cubeSize.z, GRAY); + DrawCubeWires(cubePosition, cubeSize.x, cubeSize.y, cubeSize.z, DARKGRAY); + } + + DrawRay(ray, MAROON); + DrawGrid(10, 1.0f); + + EndMode3D(); + + DrawText("Try clicking on the box with your mouse!", 240, 10, 20, DARKGRAY); + + if (collision.hit) DrawText("BOX SELECTED", (screenWidth - MeasureText("BOX SELECTED", 30)) / 2, (int)(screenHeight * 0.1f), 30, GREEN); + + DrawText("Right click mouse to toggle camera controls", 10, 430, 10, GRAY); + + DrawFPS(10, 10); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/basic_window.js b/examples/core/core_basic_window.js similarity index 100% rename from examples/basic_window.js rename to examples/core/core_basic_window.js diff --git a/examples/core/core_custom_logging.c b/examples/core/core_custom_logging.c new file mode 100644 index 0000000..b4da2d5 --- /dev/null +++ b/examples/core/core_custom_logging.c @@ -0,0 +1,88 @@ +/******************************************************************************************* +* +* raylib [core] example - Custom logging +* +* Example originally created with raylib 2.5, last time updated with raylib 2.5 +* +* Example contributed by Pablo Marcos Oltra (@pamarcos) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2018-2023 Pablo Marcos Oltra (@pamarcos) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#include // Required for: fopen(), fclose(), fputc(), fwrite(), printf(), fprintf(), funopen() +#include // Required for: time_t, tm, time(), localtime(), strftime() + +// Custom logging function +void CustomLog(int msgType, const char *text, va_list args) +{ + char timeStr[64] = { 0 }; + time_t now = time(NULL); + struct tm *tm_info = localtime(&now); + + strftime(timeStr, sizeof(timeStr), "%Y-%m-%d %H:%M:%S", tm_info); + printf("[%s] ", timeStr); + + switch (msgType) + { + case LOG_INFO: printf("[INFO] : "); break; + case LOG_ERROR: printf("[ERROR]: "); break; + case LOG_WARNING: printf("[WARN] : "); break; + case LOG_DEBUG: printf("[DEBUG]: "); break; + default: break; + } + + vprintf(text, args); + printf("\n"); +} + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + // Set custom logger + SetTraceLogCallback(CustomLog); + + InitWindow(screenWidth, screenHeight, "raylib [core] example - custom logging"); + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // TODO: Update your variables here + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawText("Check out the console output to see the custom logger in action!", 60, 200, 20, LIGHTGRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/core/core_input_gestures.c b/examples/core/core_input_gestures.c new file mode 100644 index 0000000..312e78f --- /dev/null +++ b/examples/core/core_input_gestures.c @@ -0,0 +1,119 @@ +/******************************************************************************************* +* +* raylib [core] example - Input Gestures Detection +* +* Example originally created with raylib 1.4, last time updated with raylib 4.2 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2016-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#define MAX_GESTURE_STRINGS 20 + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [core] example - input gestures"); + + Vector2 touchPosition = { 0, 0 }; + Rectangle touchArea = { 220, 10, screenWidth - 230.0f, screenHeight - 20.0f }; + + int gesturesCount = 0; + char gestureStrings[MAX_GESTURE_STRINGS][32]; + + int currentGesture = GESTURE_NONE; + int lastGesture = GESTURE_NONE; + + //SetGesturesEnabled(0b0000000000001001); // Enable only some gestures to be detected + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + lastGesture = currentGesture; + currentGesture = GetGestureDetected(); + touchPosition = GetTouchPosition(0); + + if (CheckCollisionPointRec(touchPosition, touchArea) && (currentGesture != GESTURE_NONE)) + { + if (currentGesture != lastGesture) + { + // Store gesture string + switch (currentGesture) + { + case GESTURE_TAP: TextCopy(gestureStrings[gesturesCount], "GESTURE TAP"); break; + case GESTURE_DOUBLETAP: TextCopy(gestureStrings[gesturesCount], "GESTURE DOUBLETAP"); break; + case GESTURE_HOLD: TextCopy(gestureStrings[gesturesCount], "GESTURE HOLD"); break; + case GESTURE_DRAG: TextCopy(gestureStrings[gesturesCount], "GESTURE DRAG"); break; + case GESTURE_SWIPE_RIGHT: TextCopy(gestureStrings[gesturesCount], "GESTURE SWIPE RIGHT"); break; + case GESTURE_SWIPE_LEFT: TextCopy(gestureStrings[gesturesCount], "GESTURE SWIPE LEFT"); break; + case GESTURE_SWIPE_UP: TextCopy(gestureStrings[gesturesCount], "GESTURE SWIPE UP"); break; + case GESTURE_SWIPE_DOWN: TextCopy(gestureStrings[gesturesCount], "GESTURE SWIPE DOWN"); break; + case GESTURE_PINCH_IN: TextCopy(gestureStrings[gesturesCount], "GESTURE PINCH IN"); break; + case GESTURE_PINCH_OUT: TextCopy(gestureStrings[gesturesCount], "GESTURE PINCH OUT"); break; + default: break; + } + + gesturesCount++; + + // Reset gestures strings + if (gesturesCount >= MAX_GESTURE_STRINGS) + { + for (int i = 0; i < MAX_GESTURE_STRINGS; i++) TextCopy(gestureStrings[i], "\0"); + + gesturesCount = 0; + } + } + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawRectangleRec(touchArea, GRAY); + DrawRectangle(225, 15, screenWidth - 240, screenHeight - 30, RAYWHITE); + + DrawText("GESTURES TEST AREA", screenWidth - 270, screenHeight - 40, 20, Fade(GRAY, 0.5f)); + + for (int i = 0; i < gesturesCount; i++) + { + if (i%2 == 0) DrawRectangle(10, 30 + 20*i, 200, 20, Fade(LIGHTGRAY, 0.5f)); + else DrawRectangle(10, 30 + 20*i, 200, 20, Fade(LIGHTGRAY, 0.3f)); + + if (i < gesturesCount - 1) DrawText(gestureStrings[i], 35, 36 + 20*i, 10, DARKGRAY); + else DrawText(gestureStrings[i], 35, 36 + 20*i, 10, MAROON); + } + + DrawRectangleLines(10, 29, 200, screenHeight - 50, GRAY); + DrawText("DETECTED GESTURES", 50, 15, 10, GRAY); + + if (currentGesture != GESTURE_NONE) DrawCircleV(touchPosition, 30, MAROON); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- +} \ No newline at end of file diff --git a/examples/input_keys.js b/examples/core/core_input_keys.js similarity index 100% rename from examples/input_keys.js rename to examples/core/core_input_keys.js diff --git a/examples/input_mouse.js b/examples/core/core_input_mouse.js similarity index 100% rename from examples/input_mouse.js rename to examples/core/core_input_mouse.js diff --git a/examples/input_mouse_wheel.js b/examples/core/core_input_mouse_wheel.js similarity index 100% rename from examples/input_mouse_wheel.js rename to examples/core/core_input_mouse_wheel.js diff --git a/examples/core/core_input_multitouch.c b/examples/core/core_input_multitouch.c new file mode 100644 index 0000000..37817e5 --- /dev/null +++ b/examples/core/core_input_multitouch.c @@ -0,0 +1,79 @@ +/******************************************************************************************* +* +* raylib [core] example - Input multitouch +* +* Example originally created with raylib 2.1, last time updated with raylib 2.5 +* +* Example contributed by Berni (@Berni8k) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2019-2023 Berni (@Berni8k) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#define MAX_TOUCH_POINTS 10 + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [core] example - input multitouch"); + + Vector2 touchPositions[MAX_TOUCH_POINTS] = { 0 }; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //--------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // Get the touch point count ( how many fingers are touching the screen ) + int tCount = GetTouchPointCount(); + // Clamp touch points available ( set the maximum touch points allowed ) + if(tCount > MAX_TOUCH_POINTS) tCount = MAX_TOUCH_POINTS; + // Get touch points positions + for (int i = 0; i < tCount; ++i) touchPositions[i] = GetTouchPosition(i); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + for (int i = 0; i < tCount; ++i) + { + // Make sure point is not (0, 0) as this means there is no touch for it + if ((touchPositions[i].x > 0) && (touchPositions[i].y > 0)) + { + // Draw circle and touch index number + DrawCircleV(touchPositions[i], 34, ORANGE); + DrawText(TextFormat("%d", i), (int)touchPositions[i].x - 10, (int)touchPositions[i].y - 70, 40, BLACK); + } + } + + DrawText("touch the screen at multiple locations to get multiple balls", 10, 10, 20, DARKGRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/core/core_random_values.c b/examples/core/core_random_values.c new file mode 100644 index 0000000..c2225bc --- /dev/null +++ b/examples/core/core_random_values.c @@ -0,0 +1,72 @@ +/******************************************************************************************* +* +* raylib [core] example - Generate random values +* +* Example originally created with raylib 1.1, last time updated with raylib 1.1 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2014-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [core] example - generate random values"); + + // SetRandomSeed(0xaabbccff); // Set a custom random seed if desired, by default: "time(NULL)" + + int randValue = GetRandomValue(-8, 5); // Get a random integer number between -8 and 5 (both included) + + int framesCounter = 0; // Variable used to count frames + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + framesCounter++; + + // Every two seconds (120 frames) a new random value is generated + if (((framesCounter/120)%2) == 1) + { + randValue = GetRandomValue(-8, 5); + framesCounter = 0; + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawText("Every 2 seconds a new random value is generated:", 130, 100, 20, MAROON); + + DrawText(TextFormat("%i", randValue), 360, 180, 80, LIGHTGRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/core/core_scissor_test.c b/examples/core/core_scissor_test.c new file mode 100644 index 0000000..c2b853c --- /dev/null +++ b/examples/core/core_scissor_test.c @@ -0,0 +1,76 @@ +/******************************************************************************************* +* +* raylib [core] example - Scissor test +* +* Example originally created with raylib 2.5, last time updated with raylib 3.0 +* +* Example contributed by Chris Dill (@MysteriousSpace) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2019-2023 Chris Dill (@MysteriousSpace) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [core] example - scissor test"); + + Rectangle scissorArea = { 0, 0, 300, 300 }; + bool scissorMode = true; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + if (IsKeyPressed(KEY_S)) scissorMode = !scissorMode; + + // Centre the scissor area around the mouse position + scissorArea.x = GetMouseX() - scissorArea.width/2; + scissorArea.y = GetMouseY() - scissorArea.height/2; + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + if (scissorMode) BeginScissorMode((int)scissorArea.x, (int)scissorArea.y, (int)scissorArea.width, (int)scissorArea.height); + + // Draw full screen rectangle and some text + // NOTE: Only part defined by scissor area will be rendered + DrawRectangle(0, 0, GetScreenWidth(), GetScreenHeight(), RED); + DrawText("Move the mouse around to reveal this text!", 190, 200, 20, LIGHTGRAY); + + if (scissorMode) EndScissorMode(); + + DrawRectangleLinesEx(scissorArea, 1, BLACK); + DrawText("Press S to toggle scissor test", 10, 10, 20, BLACK); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/core/core_smooth_pixelperfect.c b/examples/core/core_smooth_pixelperfect.c new file mode 100644 index 0000000..776706c --- /dev/null +++ b/examples/core/core_smooth_pixelperfect.c @@ -0,0 +1,122 @@ +/******************************************************************************************* +* +* raylib [core] example - smooth pixel-perfect camera +* +* Example originally created with raylib 3.7, last time updated with raylib 4.0 +* +* Example contributed by Giancamillo Alessandroni (@NotManyIdeasDev) and +* reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2021-2023 Giancamillo Alessandroni (@NotManyIdeasDev) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#include // Required for: sinf(), cosf() + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + const int virtualScreenWidth = 160; + const int virtualScreenHeight = 90; + + const float virtualRatio = (float)screenWidth/(float)virtualScreenWidth; + + InitWindow(screenWidth, screenHeight, "raylib [core] example - smooth pixel-perfect camera"); + + Camera2D worldSpaceCamera = { 0 }; // Game world camera + worldSpaceCamera.zoom = 1.0f; + + Camera2D screenSpaceCamera = { 0 }; // Smoothing camera + screenSpaceCamera.zoom = 1.0f; + + RenderTexture2D target = LoadRenderTexture(virtualScreenWidth, virtualScreenHeight); // This is where we'll draw all our objects. + + Rectangle rec01 = { 70.0f, 35.0f, 20.0f, 20.0f }; + Rectangle rec02 = { 90.0f, 55.0f, 30.0f, 10.0f }; + Rectangle rec03 = { 80.0f, 65.0f, 15.0f, 25.0f }; + + // The target's height is flipped (in the source Rectangle), due to OpenGL reasons + Rectangle sourceRec = { 0.0f, 0.0f, (float)target.texture.width, -(float)target.texture.height }; + Rectangle destRec = { -virtualRatio, -virtualRatio, screenWidth + (virtualRatio*2), screenHeight + (virtualRatio*2) }; + + Vector2 origin = { 0.0f, 0.0f }; + + float rotation = 0.0f; + + float cameraX = 0.0f; + float cameraY = 0.0f; + + SetTargetFPS(60); + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + rotation += 60.0f*GetFrameTime(); // Rotate the rectangles, 60 degrees per second + + // Make the camera move to demonstrate the effect + cameraX = (sinf(GetTime())*50.0f) - 10.0f; + cameraY = cosf(GetTime())*30.0f; + + // Set the camera's target to the values computed above + screenSpaceCamera.target = (Vector2){ cameraX, cameraY }; + + // Round worldSpace coordinates, keep decimals into screenSpace coordinates + worldSpaceCamera.target.x = (int)screenSpaceCamera.target.x; + screenSpaceCamera.target.x -= worldSpaceCamera.target.x; + screenSpaceCamera.target.x *= virtualRatio; + + worldSpaceCamera.target.y = (int)screenSpaceCamera.target.y; + screenSpaceCamera.target.y -= worldSpaceCamera.target.y; + screenSpaceCamera.target.y *= virtualRatio; + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginTextureMode(target); + ClearBackground(RAYWHITE); + + BeginMode2D(worldSpaceCamera); + DrawRectanglePro(rec01, origin, rotation, BLACK); + DrawRectanglePro(rec02, origin, -rotation, RED); + DrawRectanglePro(rec03, origin, rotation + 45.0f, BLUE); + EndMode2D(); + EndTextureMode(); + + BeginDrawing(); + ClearBackground(RED); + + BeginMode2D(screenSpaceCamera); + DrawTexturePro(target.texture, sourceRec, destRec, origin, 0.0f, WHITE); + EndMode2D(); + + DrawText(TextFormat("Screen resolution: %ix%i", screenWidth, screenHeight), 10, 10, 20, DARKBLUE); + DrawText(TextFormat("World resolution: %ix%i", virtualScreenWidth, virtualScreenHeight), 10, 40, 20, DARKGREEN); + DrawFPS(GetScreenWidth() - 95, 10); + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadRenderTexture(target); // Unload render texture + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/core/core_split_screen.c b/examples/core/core_split_screen.c new file mode 100644 index 0000000..50cfcf7 --- /dev/null +++ b/examples/core/core_split_screen.c @@ -0,0 +1,151 @@ +/******************************************************************************************* +* +* raylib [core] example - split screen +* +* Example originally created with raylib 3.7, last time updated with raylib 4.0 +* +* Example contributed by Jeffery Myers (@JeffM2501) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2021-2023 Jeffery Myers (@JeffM2501) +* +********************************************************************************************/ + +#include "raylib.h" + +Camera cameraPlayer1 = { 0 }; +Camera cameraPlayer2 = { 0 }; + +// Scene drawing +void DrawScene(void) +{ + int count = 5; + float spacing = 4; + + // Grid of cube trees on a plane to make a "world" + DrawPlane((Vector3){ 0, 0, 0 }, (Vector2){ 50, 50 }, BEIGE); // Simple world plane + + for (float x = -count*spacing; x <= count*spacing; x += spacing) + { + for (float z = -count*spacing; z <= count*spacing; z += spacing) + { + DrawCube((Vector3) { x, 1.5f, z }, 1, 1, 1, LIME); + DrawCube((Vector3) { x, 0.5f, z }, 0.25f, 1, 0.25f, BROWN); + } + } + + // Draw a cube at each player's position + DrawCube(cameraPlayer1.position, 1, 1, 1, RED); + DrawCube(cameraPlayer2.position, 1, 1, 1, BLUE); +} + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [core] example - split screen"); + + // Setup player 1 camera and screen + cameraPlayer1.fovy = 45.0f; + cameraPlayer1.up.y = 1.0f; + cameraPlayer1.target.y = 1.0f; + cameraPlayer1.position.z = -3.0f; + cameraPlayer1.position.y = 1.0f; + + RenderTexture screenPlayer1 = LoadRenderTexture(screenWidth/2, screenHeight); + + // Setup player two camera and screen + cameraPlayer2.fovy = 45.0f; + cameraPlayer2.up.y = 1.0f; + cameraPlayer2.target.y = 3.0f; + cameraPlayer2.position.x = -3.0f; + cameraPlayer2.position.y = 3.0f; + + RenderTexture screenPlayer2 = LoadRenderTexture(screenWidth / 2, screenHeight); + + // Build a flipped rectangle the size of the split view to use for drawing later + Rectangle splitScreenRect = { 0.0f, 0.0f, (float)screenPlayer1.texture.width, (float)-screenPlayer1.texture.height }; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // If anyone moves this frame, how far will they move based on the time since the last frame + // this moves thigns at 10 world units per second, regardless of the actual FPS + float offsetThisFrame = 10.0f*GetFrameTime(); + + // Move Player1 forward and backwards (no turning) + if (IsKeyDown(KEY_W)) + { + cameraPlayer1.position.z += offsetThisFrame; + cameraPlayer1.target.z += offsetThisFrame; + } + else if (IsKeyDown(KEY_S)) + { + cameraPlayer1.position.z -= offsetThisFrame; + cameraPlayer1.target.z -= offsetThisFrame; + } + + // Move Player2 forward and backwards (no turning) + if (IsKeyDown(KEY_UP)) + { + cameraPlayer2.position.x += offsetThisFrame; + cameraPlayer2.target.x += offsetThisFrame; + } + else if (IsKeyDown(KEY_DOWN)) + { + cameraPlayer2.position.x -= offsetThisFrame; + cameraPlayer2.target.x -= offsetThisFrame; + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + // Draw Player1 view to the render texture + BeginTextureMode(screenPlayer1); + ClearBackground(SKYBLUE); + BeginMode3D(cameraPlayer1); + DrawScene(); + EndMode3D(); + DrawText("PLAYER1 W/S to move", 10, 10, 20, RED); + EndTextureMode(); + + // Draw Player2 view to the render texture + BeginTextureMode(screenPlayer2); + ClearBackground(SKYBLUE); + BeginMode3D(cameraPlayer2); + DrawScene(); + EndMode3D(); + DrawText("PLAYER2 UP/DOWN to move", 10, 10, 20, BLUE); + EndTextureMode(); + + // Draw both views render textures to the screen side by side + BeginDrawing(); + ClearBackground(BLACK); + DrawTextureRec(screenPlayer1.texture, splitScreenRect, (Vector2){ 0, 0 }, WHITE); + DrawTextureRec(screenPlayer2.texture, splitScreenRect, (Vector2){ screenWidth/2.0f, 0 }, WHITE); + EndDrawing(); + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadRenderTexture(screenPlayer1); // Unload render texture + UnloadRenderTexture(screenPlayer2); // Unload render texture + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/core/core_window_flags.c b/examples/core/core_window_flags.c new file mode 100644 index 0000000..b1cbb1b --- /dev/null +++ b/examples/core/core_window_flags.c @@ -0,0 +1,196 @@ +/******************************************************************************************* +* +* raylib [core] example - window flags +* +* Example originally created with raylib 3.5, last time updated with raylib 3.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2020-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //--------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + // Possible window flags + /* + FLAG_VSYNC_HINT + FLAG_FULLSCREEN_MODE -> not working properly -> wrong scaling! + FLAG_WINDOW_RESIZABLE + FLAG_WINDOW_UNDECORATED + FLAG_WINDOW_TRANSPARENT + FLAG_WINDOW_HIDDEN + FLAG_WINDOW_MINIMIZED -> Not supported on window creation + FLAG_WINDOW_MAXIMIZED -> Not supported on window creation + FLAG_WINDOW_UNFOCUSED + FLAG_WINDOW_TOPMOST + FLAG_WINDOW_HIGHDPI -> errors after minimize-resize, fb size is recalculated + FLAG_WINDOW_ALWAYS_RUN + FLAG_MSAA_4X_HINT + */ + + // Set configuration flags for window creation + //SetConfigFlags(FLAG_VSYNC_HINT | FLAG_MSAA_4X_HINT | FLAG_WINDOW_HIGHDPI); + InitWindow(screenWidth, screenHeight, "raylib [core] example - window flags"); + + Vector2 ballPosition = { GetScreenWidth() / 2.0f, GetScreenHeight() / 2.0f }; + Vector2 ballSpeed = { 5.0f, 4.0f }; + float ballRadius = 20; + + int framesCounter = 0; + + //SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //---------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //----------------------------------------------------- + if (IsKeyPressed(KEY_F)) ToggleFullscreen(); // modifies window size when scaling! + + if (IsKeyPressed(KEY_R)) + { + if (IsWindowState(FLAG_WINDOW_RESIZABLE)) ClearWindowState(FLAG_WINDOW_RESIZABLE); + else SetWindowState(FLAG_WINDOW_RESIZABLE); + } + + if (IsKeyPressed(KEY_D)) + { + if (IsWindowState(FLAG_WINDOW_UNDECORATED)) ClearWindowState(FLAG_WINDOW_UNDECORATED); + else SetWindowState(FLAG_WINDOW_UNDECORATED); + } + + if (IsKeyPressed(KEY_H)) + { + if (!IsWindowState(FLAG_WINDOW_HIDDEN)) SetWindowState(FLAG_WINDOW_HIDDEN); + + framesCounter = 0; + } + + if (IsWindowState(FLAG_WINDOW_HIDDEN)) + { + framesCounter++; + if (framesCounter >= 240) ClearWindowState(FLAG_WINDOW_HIDDEN); // Show window after 3 seconds + } + + if (IsKeyPressed(KEY_N)) + { + if (!IsWindowState(FLAG_WINDOW_MINIMIZED)) MinimizeWindow(); + + framesCounter = 0; + } + + if (IsWindowState(FLAG_WINDOW_MINIMIZED)) + { + framesCounter++; + if (framesCounter >= 240) RestoreWindow(); // Restore window after 3 seconds + } + + if (IsKeyPressed(KEY_M)) + { + // NOTE: Requires FLAG_WINDOW_RESIZABLE enabled! + if (IsWindowState(FLAG_WINDOW_MAXIMIZED)) RestoreWindow(); + else MaximizeWindow(); + } + + if (IsKeyPressed(KEY_U)) + { + if (IsWindowState(FLAG_WINDOW_UNFOCUSED)) ClearWindowState(FLAG_WINDOW_UNFOCUSED); + else SetWindowState(FLAG_WINDOW_UNFOCUSED); + } + + if (IsKeyPressed(KEY_T)) + { + if (IsWindowState(FLAG_WINDOW_TOPMOST)) ClearWindowState(FLAG_WINDOW_TOPMOST); + else SetWindowState(FLAG_WINDOW_TOPMOST); + } + + if (IsKeyPressed(KEY_A)) + { + if (IsWindowState(FLAG_WINDOW_ALWAYS_RUN)) ClearWindowState(FLAG_WINDOW_ALWAYS_RUN); + else SetWindowState(FLAG_WINDOW_ALWAYS_RUN); + } + + if (IsKeyPressed(KEY_V)) + { + if (IsWindowState(FLAG_VSYNC_HINT)) ClearWindowState(FLAG_VSYNC_HINT); + else SetWindowState(FLAG_VSYNC_HINT); + } + + // Bouncing ball logic + ballPosition.x += ballSpeed.x; + ballPosition.y += ballSpeed.y; + if ((ballPosition.x >= (GetScreenWidth() - ballRadius)) || (ballPosition.x <= ballRadius)) ballSpeed.x *= -1.0f; + if ((ballPosition.y >= (GetScreenHeight() - ballRadius)) || (ballPosition.y <= ballRadius)) ballSpeed.y *= -1.0f; + //----------------------------------------------------- + + // Draw + //----------------------------------------------------- + BeginDrawing(); + + if (IsWindowState(FLAG_WINDOW_TRANSPARENT)) ClearBackground(BLANK); + else ClearBackground(RAYWHITE); + + DrawCircleV(ballPosition, ballRadius, MAROON); + DrawRectangleLinesEx((Rectangle) { 0, 0, (float)GetScreenWidth(), (float)GetScreenHeight() }, 4, RAYWHITE); + + DrawCircleV(GetMousePosition(), 10, DARKBLUE); + + DrawFPS(10, 10); + + DrawText(TextFormat("Screen Size: [%i, %i]", GetScreenWidth(), GetScreenHeight()), 10, 40, 10, GREEN); + + // Draw window state info + DrawText("Following flags can be set after window creation:", 10, 60, 10, GRAY); + if (IsWindowState(FLAG_FULLSCREEN_MODE)) DrawText("[F] FLAG_FULLSCREEN_MODE: on", 10, 80, 10, LIME); + else DrawText("[F] FLAG_FULLSCREEN_MODE: off", 10, 80, 10, MAROON); + if (IsWindowState(FLAG_WINDOW_RESIZABLE)) DrawText("[R] FLAG_WINDOW_RESIZABLE: on", 10, 100, 10, LIME); + else DrawText("[R] FLAG_WINDOW_RESIZABLE: off", 10, 100, 10, MAROON); + if (IsWindowState(FLAG_WINDOW_UNDECORATED)) DrawText("[D] FLAG_WINDOW_UNDECORATED: on", 10, 120, 10, LIME); + else DrawText("[D] FLAG_WINDOW_UNDECORATED: off", 10, 120, 10, MAROON); + if (IsWindowState(FLAG_WINDOW_HIDDEN)) DrawText("[H] FLAG_WINDOW_HIDDEN: on", 10, 140, 10, LIME); + else DrawText("[H] FLAG_WINDOW_HIDDEN: off", 10, 140, 10, MAROON); + if (IsWindowState(FLAG_WINDOW_MINIMIZED)) DrawText("[N] FLAG_WINDOW_MINIMIZED: on", 10, 160, 10, LIME); + else DrawText("[N] FLAG_WINDOW_MINIMIZED: off", 10, 160, 10, MAROON); + if (IsWindowState(FLAG_WINDOW_MAXIMIZED)) DrawText("[M] FLAG_WINDOW_MAXIMIZED: on", 10, 180, 10, LIME); + else DrawText("[M] FLAG_WINDOW_MAXIMIZED: off", 10, 180, 10, MAROON); + if (IsWindowState(FLAG_WINDOW_UNFOCUSED)) DrawText("[G] FLAG_WINDOW_UNFOCUSED: on", 10, 200, 10, LIME); + else DrawText("[U] FLAG_WINDOW_UNFOCUSED: off", 10, 200, 10, MAROON); + if (IsWindowState(FLAG_WINDOW_TOPMOST)) DrawText("[T] FLAG_WINDOW_TOPMOST: on", 10, 220, 10, LIME); + else DrawText("[T] FLAG_WINDOW_TOPMOST: off", 10, 220, 10, MAROON); + if (IsWindowState(FLAG_WINDOW_ALWAYS_RUN)) DrawText("[A] FLAG_WINDOW_ALWAYS_RUN: on", 10, 240, 10, LIME); + else DrawText("[A] FLAG_WINDOW_ALWAYS_RUN: off", 10, 240, 10, MAROON); + if (IsWindowState(FLAG_VSYNC_HINT)) DrawText("[V] FLAG_VSYNC_HINT: on", 10, 260, 10, LIME); + else DrawText("[V] FLAG_VSYNC_HINT: off", 10, 260, 10, MAROON); + + DrawText("Following flags can only be set before window creation:", 10, 300, 10, GRAY); + if (IsWindowState(FLAG_WINDOW_HIGHDPI)) DrawText("FLAG_WINDOW_HIGHDPI: on", 10, 320, 10, LIME); + else DrawText("FLAG_WINDOW_HIGHDPI: off", 10, 320, 10, MAROON); + if (IsWindowState(FLAG_WINDOW_TRANSPARENT)) DrawText("FLAG_WINDOW_TRANSPARENT: on", 10, 340, 10, LIME); + else DrawText("FLAG_WINDOW_TRANSPARENT: off", 10, 340, 10, MAROON); + if (IsWindowState(FLAG_MSAA_4X_HINT)) DrawText("FLAG_MSAA_4X_HINT: on", 10, 360, 10, LIME); + else DrawText("FLAG_MSAA_4X_HINT: off", 10, 360, 10, MAROON); + + EndDrawing(); + //----------------------------------------------------- + } + + // De-Initialization + //--------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //---------------------------------------------------------- + + return 0; +} diff --git a/examples/core/core_window_letterbox.c b/examples/core/core_window_letterbox.c new file mode 100644 index 0000000..751fb14 --- /dev/null +++ b/examples/core/core_window_letterbox.c @@ -0,0 +1,107 @@ +/******************************************************************************************* +* +* raylib [core] example - window scale letterbox (and virtual mouse) +* +* Example originally created with raylib 2.5, last time updated with raylib 4.0 +* +* Example contributed by Anata (@anatagawa) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2019-2023 Anata (@anatagawa) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#include "raymath.h" // Required for: Vector2Clamp() + +#define MAX(a, b) ((a)>(b)? (a) : (b)) +#define MIN(a, b) ((a)<(b)? (a) : (b)) + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + const int windowWidth = 800; + const int windowHeight = 450; + + // Enable config flags for resizable window and vertical synchro + SetConfigFlags(FLAG_WINDOW_RESIZABLE | FLAG_VSYNC_HINT); + InitWindow(windowWidth, windowHeight, "raylib [core] example - window scale letterbox"); + SetWindowMinSize(320, 240); + + int gameScreenWidth = 640; + int gameScreenHeight = 480; + + // Render texture initialization, used to hold the rendering result so we can easily resize it + RenderTexture2D target = LoadRenderTexture(gameScreenWidth, gameScreenHeight); + SetTextureFilter(target.texture, TEXTURE_FILTER_BILINEAR); // Texture scale filter to use + + Color colors[10] = { 0 }; + for (int i = 0; i < 10; i++) colors[i] = (Color){ GetRandomValue(100, 250), GetRandomValue(50, 150), GetRandomValue(10, 100), 255 }; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // Compute required framebuffer scaling + float scale = MIN((float)GetScreenWidth()/gameScreenWidth, (float)GetScreenHeight()/gameScreenHeight); + + if (IsKeyPressed(KEY_SPACE)) + { + // Recalculate random colors for the bars + for (int i = 0; i < 10; i++) colors[i] = (Color){ GetRandomValue(100, 250), GetRandomValue(50, 150), GetRandomValue(10, 100), 255 }; + } + + // Update virtual mouse (clamped mouse value behind game screen) + Vector2 mouse = GetMousePosition(); + Vector2 virtualMouse = { 0 }; + virtualMouse.x = (mouse.x - (GetScreenWidth() - (gameScreenWidth*scale))*0.5f)/scale; + virtualMouse.y = (mouse.y - (GetScreenHeight() - (gameScreenHeight*scale))*0.5f)/scale; + virtualMouse = Vector2Clamp(virtualMouse, (Vector2){ 0, 0 }, (Vector2){ (float)gameScreenWidth, (float)gameScreenHeight }); + + // Apply the same transformation as the virtual mouse to the real mouse (i.e. to work with raygui) + //SetMouseOffset(-(GetScreenWidth() - (gameScreenWidth*scale))*0.5f, -(GetScreenHeight() - (gameScreenHeight*scale))*0.5f); + //SetMouseScale(1/scale, 1/scale); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + // Draw everything in the render texture, note this will not be rendered on screen, yet + BeginTextureMode(target); + ClearBackground(RAYWHITE); // Clear render texture background color + + for (int i = 0; i < 10; i++) DrawRectangle(0, (gameScreenHeight/10)*i, gameScreenWidth, gameScreenHeight/10, colors[i]); + + DrawText("If executed inside a window,\nyou can resize the window,\nand see the screen scaling!", 10, 25, 20, WHITE); + DrawText(TextFormat("Default Mouse: [%i , %i]", (int)mouse.x, (int)mouse.y), 350, 25, 20, GREEN); + DrawText(TextFormat("Virtual Mouse: [%i , %i]", (int)virtualMouse.x, (int)virtualMouse.y), 350, 55, 20, YELLOW); + EndTextureMode(); + + BeginDrawing(); + ClearBackground(BLACK); // Clear screen background + + // Draw render texture to screen, properly scaled + DrawTexturePro(target.texture, (Rectangle){ 0.0f, 0.0f, (float)target.texture.width, (float)-target.texture.height }, + (Rectangle){ (GetScreenWidth() - ((float)gameScreenWidth*scale))*0.5f, (GetScreenHeight() - ((float)gameScreenHeight*scale))*0.5f, + (float)gameScreenWidth*scale, (float)gameScreenHeight*scale }, (Vector2){ 0, 0 }, 0.0f, WHITE); + EndDrawing(); + //-------------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadRenderTexture(target); // Unload render texture + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/core/core_window_should_close.c b/examples/core/core_window_should_close.c new file mode 100644 index 0000000..f0392b0 --- /dev/null +++ b/examples/core/core_window_should_close.c @@ -0,0 +1,77 @@ +/******************************************************************************************* +* +* raylib [core] example - Window should close +* +* Example originally created with raylib 4.2, last time updated with raylib 4.2 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2013-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main() +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [core] example - window should close"); + + SetExitKey(KEY_NULL); // Disable KEY_ESCAPE to close window, X-button still works + + bool exitWindowRequested = false; // Flag to request window to exit + bool exitWindow = false; // Flag to set window to exit + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!exitWindow) + { + // Update + //---------------------------------------------------------------------------------- + // Detect if X-button or KEY_ESCAPE have been pressed to close window + if (WindowShouldClose() || IsKeyPressed(KEY_ESCAPE)) exitWindowRequested = true; + + if (exitWindowRequested) + { + // A request for close window has been issued, we can save data before closing + // or just show a message asking for confirmation + + if (IsKeyPressed(KEY_Y)) exitWindow = true; + else if (IsKeyPressed(KEY_N)) exitWindowRequested = false; + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + if (exitWindowRequested) + { + DrawRectangle(0, 100, screenWidth, 200, BLACK); + DrawText("Are you sure you want to exit program? [Y/N]", 40, 180, 30, WHITE); + } + else DrawText("Try to close the window to get confirmation message!", 120, 200, 20, LIGHTGRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/core/core_world_screen.c b/examples/core/core_world_screen.c new file mode 100644 index 0000000..6c811a5 --- /dev/null +++ b/examples/core/core_world_screen.c @@ -0,0 +1,85 @@ +/******************************************************************************************* +* +* raylib [core] example - World to screen +* +* Example originally created with raylib 1.3, last time updated with raylib 1.4 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2015-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [core] example - core world screen"); + + // Define the camera to look into our 3d world + Camera camera = { 0 }; + camera.position = (Vector3){ 10.0f, 10.0f, 10.0f }; // Camera position + camera.target = (Vector3){ 0.0f, 0.0f, 0.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 45.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera projection type + + Vector3 cubePosition = { 0.0f, 0.0f, 0.0f }; + Vector2 cubeScreenPosition = { 0.0f, 0.0f }; + + DisableCursor(); // Limit cursor to relative movement inside the window + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + UpdateCamera(&camera, CAMERA_THIRD_PERSON); + + // Calculate cube screen space position (with a little offset to be in top) + cubeScreenPosition = GetWorldToScreen((Vector3){cubePosition.x, cubePosition.y + 2.5f, cubePosition.z}, camera); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + + DrawCube(cubePosition, 2.0f, 2.0f, 2.0f, RED); + DrawCubeWires(cubePosition, 2.0f, 2.0f, 2.0f, MAROON); + + DrawGrid(10, 1.0f); + + EndMode3D(); + + DrawText("Enemy: 100 / 100", (int)cubeScreenPosition.x - MeasureText("Enemy: 100/100", 20)/2, (int)cubeScreenPosition.y, 20, BLACK); + + DrawText(TextFormat("Cube position in screen space coordinates: [%i, %i]", (int)cubeScreenPosition.x, (int)cubeScreenPosition.y), 10, 10, 20, LIME); + DrawText("Text 2d should be always on top of the cube", 10, 40, 20, GRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/core/resources/LICENSE.md b/examples/core/resources/LICENSE.md new file mode 100644 index 0000000..d7d797a --- /dev/null +++ b/examples/core/resources/LICENSE.md @@ -0,0 +1,4 @@ +| resource | author | licence | notes | +| :------------ | :---------: | :------ | :---- | +| ps3.png | [@raysan5](https://github.com/raysan5) | [CC0](https://creativecommons.org/publicdomain/zero/1.0/) | - | +| xbox.png | [@raysan5](https://github.com/raysan5) | [CC0](https://creativecommons.org/publicdomain/zero/1.0/) | - | diff --git a/examples/core/resources/distortion100.fs b/examples/core/resources/distortion100.fs new file mode 100644 index 0000000..f72c689 --- /dev/null +++ b/examples/core/resources/distortion100.fs @@ -0,0 +1,52 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables +uniform vec2 leftLensCenter; +uniform vec2 rightLensCenter; +uniform vec2 leftScreenCenter; +uniform vec2 rightScreenCenter; +uniform vec2 scale; +uniform vec2 scaleIn; +uniform vec4 deviceWarpParam; +uniform vec4 chromaAbParam; + +void main() +{ + // Compute lens distortion + vec2 lensCenter = fragTexCoord.x < 0.5? leftLensCenter : rightLensCenter; + vec2 screenCenter = fragTexCoord.x < 0.5? leftScreenCenter : rightScreenCenter; + vec2 theta = (fragTexCoord - lensCenter)*scaleIn; + float rSq = theta.x*theta.x + theta.y*theta.y; + vec2 theta1 = theta*(deviceWarpParam.x + deviceWarpParam.y*rSq + deviceWarpParam.z*rSq*rSq + deviceWarpParam.w*rSq*rSq*rSq); + vec2 thetaBlue = theta1*(chromaAbParam.z + chromaAbParam.w*rSq); + vec2 tcBlue = lensCenter + scale*thetaBlue; + + if (any(bvec2(clamp(tcBlue, screenCenter - vec2(0.25, 0.5), screenCenter + vec2(0.25, 0.5)) - tcBlue))) + { + // Set black fragment for everything outside the lens border + gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0); + } + else + { + // Compute color chroma aberration + float blue = texture2D(texture0, tcBlue).b; + vec2 tcGreen = lensCenter + scale*theta1; + float green = texture2D(texture0, tcGreen).g; + + vec2 thetaRed = theta1*(chromaAbParam.x + chromaAbParam.y*rSq); + vec2 tcRed = lensCenter + scale*thetaRed; + + float red = texture2D(texture0, tcRed).r; + gl_FragColor = vec4(red, green, blue, 1.0); + } +} diff --git a/examples/core/resources/distortion330.fs b/examples/core/resources/distortion330.fs new file mode 100644 index 0000000..97044c4 --- /dev/null +++ b/examples/core/resources/distortion330.fs @@ -0,0 +1,53 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// Output fragment color +out vec4 finalColor; + +// NOTE: Add here your custom variables +uniform vec2 leftLensCenter = vec2(0.288, 0.5); +uniform vec2 rightLensCenter = vec2(0.712, 0.5); +uniform vec2 leftScreenCenter = vec2(0.25, 0.5); +uniform vec2 rightScreenCenter = vec2(0.75, 0.5); +uniform vec2 scale = vec2(0.25, 0.45); +uniform vec2 scaleIn = vec2(4, 2.2222); +uniform vec4 deviceWarpParam = vec4(1, 0.22, 0.24, 0); +uniform vec4 chromaAbParam = vec4(0.996, -0.004, 1.014, 0.0); + +void main() +{ + // Compute lens distortion + vec2 lensCenter = fragTexCoord.x < 0.5? leftLensCenter : rightLensCenter; + vec2 screenCenter = fragTexCoord.x < 0.5? leftScreenCenter : rightScreenCenter; + vec2 theta = (fragTexCoord - lensCenter)*scaleIn; + float rSq = theta.x*theta.x + theta.y*theta.y; + vec2 theta1 = theta*(deviceWarpParam.x + deviceWarpParam.y*rSq + deviceWarpParam.z*rSq*rSq + deviceWarpParam.w*rSq*rSq*rSq); + vec2 thetaBlue = theta1*(chromaAbParam.z + chromaAbParam.w*rSq); + vec2 tcBlue = lensCenter + scale*thetaBlue; + + if (any(bvec2(clamp(tcBlue, screenCenter - vec2(0.25, 0.5), screenCenter + vec2(0.25, 0.5)) - tcBlue))) + { + // Set black fragment for everything outside the lens border + finalColor = vec4(0.0, 0.0, 0.0, 1.0); + } + else + { + // Compute color chroma aberration + float blue = texture(texture0, tcBlue).b; + vec2 tcGreen = lensCenter + scale*theta1; + float green = texture(texture0, tcGreen).g; + + vec2 thetaRed = theta1*(chromaAbParam.x + chromaAbParam.y*rSq); + vec2 tcRed = lensCenter + scale*thetaRed; + + float red = texture(texture0, tcRed).r; + finalColor = vec4(red, green, blue, 1.0); + } +} diff --git a/examples/core/resources/ps3.png b/examples/core/resources/ps3.png new file mode 100644 index 0000000..59c0b35 Binary files /dev/null and b/examples/core/resources/ps3.png differ diff --git a/examples/core/resources/xbox.png b/examples/core/resources/xbox.png new file mode 100644 index 0000000..1a57058 Binary files /dev/null and b/examples/core/resources/xbox.png differ diff --git a/examples/models/models_animation.c b/examples/models/models_animation.c new file mode 100644 index 0000000..ffe2d01 --- /dev/null +++ b/examples/models/models_animation.c @@ -0,0 +1,111 @@ +/******************************************************************************************* +* +* raylib [models] example - Load 3d model with animations and play them +* +* Example originally created with raylib 2.5, last time updated with raylib 3.5 +* +* Example contributed by Culacant (@culacant) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2019-2023 Culacant (@culacant) and Ramon Santamaria (@raysan5) +* +******************************************************************************************** +* +* NOTE: To export a model from blender, make sure it is not posed, the vertices need to be +* in the same position as they would be in edit mode and the scale of your models is +* set to 0. Scaling can be done from the export menu. +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [models] example - model animation"); + + // Define the camera to look into our 3d world + Camera camera = { 0 }; + camera.position = (Vector3){ 10.0f, 10.0f, 10.0f }; // Camera position + camera.target = (Vector3){ 0.0f, 0.0f, 0.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 45.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera mode type + + Model model = LoadModel("resources/models/iqm/guy.iqm"); // Load the animated model mesh and basic data + Texture2D texture = LoadTexture("resources/models/iqm/guytex.png"); // Load model texture and set material + SetMaterialTexture(&model.materials[0], MATERIAL_MAP_DIFFUSE, texture); // Set model material map texture + + Vector3 position = { 0.0f, 0.0f, 0.0f }; // Set model position + + // Load animation data + unsigned int animsCount = 0; + ModelAnimation *anims = LoadModelAnimations("resources/models/iqm/guyanim.iqm", &animsCount); + int animFrameCounter = 0; + + DisableCursor(); // Catch cursor + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + UpdateCamera(&camera, CAMERA_FIRST_PERSON); + + // Play animation when spacebar is held down + if (IsKeyDown(KEY_SPACE)) + { + animFrameCounter++; + UpdateModelAnimation(model, anims[0], animFrameCounter); + if (animFrameCounter >= anims[0].frameCount) animFrameCounter = 0; + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + + DrawModelEx(model, position, (Vector3){ 1.0f, 0.0f, 0.0f }, -90.0f, (Vector3){ 1.0f, 1.0f, 1.0f }, WHITE); + + for (int i = 0; i < model.boneCount; i++) + { + DrawCube(anims[0].framePoses[animFrameCounter][i].translation, 0.2f, 0.2f, 0.2f, RED); + } + + DrawGrid(10, 1.0f); // Draw a grid + + EndMode3D(); + + DrawText("PRESS SPACE to PLAY MODEL ANIMATION", 10, 10, 20, MAROON); + DrawText("(c) Guy IQM 3D model by @culacant", screenWidth - 200, screenHeight - 20, 10, GRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(texture); // Unload texture + UnloadModelAnimations(anims, animsCount); // Unload model animations data + UnloadModel(model); // Unload model + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/models/models_billboard.c b/examples/models/models_billboard.c new file mode 100644 index 0000000..9b02a8a --- /dev/null +++ b/examples/models/models_billboard.c @@ -0,0 +1,111 @@ +/******************************************************************************************* +* +* raylib [models] example - Drawing billboards +* +* Example originally created with raylib 1.3, last time updated with raylib 3.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2015-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" +#include "raymath.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [models] example - drawing billboards"); + + // Define the camera to look into our 3d world + Camera camera = { 0 }; + camera.position = (Vector3){ 5.0f, 4.0f, 5.0f }; // Camera position + camera.target = (Vector3){ 0.0f, 2.0f, 0.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 45.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera projection type + + Texture2D bill = LoadTexture("resources/billboard.png"); // Our billboard texture + Vector3 billPositionStatic = { 0.0f, 2.0f, 0.0f }; // Position of static billboard + Vector3 billPositionRotating = { 1.0f, 2.0f, 1.0f }; // Position of rotating billboard + + // Entire billboard texture, source is used to take a segment from a larger texture. + Rectangle source = { 0.0f, 0.0f, (float)bill.width, (float)bill.height }; + + // NOTE: Billboard locked on axis-Y + Vector3 billUp = { 0.0f, 1.0f, 0.0f }; + + // Rotate around origin + // Here we choose to rotate around the image center + // NOTE: (-1, 1) is the range where origin.x, origin.y is inside the texture + Vector2 rotateOrigin = { 0.0f }; + + // Distance is needed for the correct billboard draw order + // Larger distance (further away from the camera) should be drawn prior to smaller distance. + float distanceStatic; + float distanceRotating; + float rotation = 0.0f; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + UpdateCamera(&camera, CAMERA_ORBITAL); + + rotation += 0.4f; + distanceStatic = Vector3Distance(camera.position, billPositionStatic); + distanceRotating = Vector3Distance(camera.position, billPositionRotating); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + + DrawGrid(10, 1.0f); // Draw a grid + + // Draw order matters! + if (distanceStatic > distanceRotating) + { + DrawBillboard(camera, bill, billPositionStatic, 2.0f, WHITE); + DrawBillboardPro(camera, bill, source, billPositionRotating, billUp, (Vector2) {1.0f, 1.0f}, rotateOrigin, rotation, WHITE); + } + else + { + DrawBillboardPro(camera, bill, source, billPositionRotating, billUp, (Vector2) {1.0f, 1.0f}, rotateOrigin, rotation, WHITE); + DrawBillboard(camera, bill, billPositionStatic, 2.0f, WHITE); + } + + EndMode3D(); + + DrawFPS(10, 10); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(bill); // Unload texture + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/models/models_box_collisions.c b/examples/models/models_box_collisions.c new file mode 100644 index 0000000..9cff5e0 --- /dev/null +++ b/examples/models/models_box_collisions.c @@ -0,0 +1,126 @@ +/******************************************************************************************* +* +* raylib [models] example - Detect basic 3d collisions (box vs sphere vs box) +* +* Example originally created with raylib 1.3, last time updated with raylib 3.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2015-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [models] example - box collisions"); + + // Define the camera to look into our 3d world + Camera camera = { { 0.0f, 10.0f, 10.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 1.0f, 0.0f }, 45.0f, 0 }; + + Vector3 playerPosition = { 0.0f, 1.0f, 2.0f }; + Vector3 playerSize = { 1.0f, 2.0f, 1.0f }; + Color playerColor = GREEN; + + Vector3 enemyBoxPos = { -4.0f, 1.0f, 0.0f }; + Vector3 enemyBoxSize = { 2.0f, 2.0f, 2.0f }; + + Vector3 enemySpherePos = { 4.0f, 0.0f, 0.0f }; + float enemySphereSize = 1.5f; + + bool collision = false; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + + // Move player + if (IsKeyDown(KEY_RIGHT)) playerPosition.x += 0.2f; + else if (IsKeyDown(KEY_LEFT)) playerPosition.x -= 0.2f; + else if (IsKeyDown(KEY_DOWN)) playerPosition.z += 0.2f; + else if (IsKeyDown(KEY_UP)) playerPosition.z -= 0.2f; + + collision = false; + + // Check collisions player vs enemy-box + if (CheckCollisionBoxes( + (BoundingBox){(Vector3){ playerPosition.x - playerSize.x/2, + playerPosition.y - playerSize.y/2, + playerPosition.z - playerSize.z/2 }, + (Vector3){ playerPosition.x + playerSize.x/2, + playerPosition.y + playerSize.y/2, + playerPosition.z + playerSize.z/2 }}, + (BoundingBox){(Vector3){ enemyBoxPos.x - enemyBoxSize.x/2, + enemyBoxPos.y - enemyBoxSize.y/2, + enemyBoxPos.z - enemyBoxSize.z/2 }, + (Vector3){ enemyBoxPos.x + enemyBoxSize.x/2, + enemyBoxPos.y + enemyBoxSize.y/2, + enemyBoxPos.z + enemyBoxSize.z/2 }})) collision = true; + + // Check collisions player vs enemy-sphere + if (CheckCollisionBoxSphere( + (BoundingBox){(Vector3){ playerPosition.x - playerSize.x/2, + playerPosition.y - playerSize.y/2, + playerPosition.z - playerSize.z/2 }, + (Vector3){ playerPosition.x + playerSize.x/2, + playerPosition.y + playerSize.y/2, + playerPosition.z + playerSize.z/2 }}, + enemySpherePos, enemySphereSize)) collision = true; + + if (collision) playerColor = RED; + else playerColor = GREEN; + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + + // Draw enemy-box + DrawCube(enemyBoxPos, enemyBoxSize.x, enemyBoxSize.y, enemyBoxSize.z, GRAY); + DrawCubeWires(enemyBoxPos, enemyBoxSize.x, enemyBoxSize.y, enemyBoxSize.z, DARKGRAY); + + // Draw enemy-sphere + DrawSphere(enemySpherePos, enemySphereSize, GRAY); + DrawSphereWires(enemySpherePos, enemySphereSize, 16, 16, DARKGRAY); + + // Draw player + DrawCubeV(playerPosition, playerSize, playerColor); + + DrawGrid(10, 1.0f); // Draw a grid + + EndMode3D(); + + DrawText("Move player with cursors to collide", 220, 40, 20, GRAY); + + DrawFPS(10, 10); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/models/models_cubicmap.c b/examples/models/models_cubicmap.c new file mode 100644 index 0000000..e0a2b30 --- /dev/null +++ b/examples/models/models_cubicmap.c @@ -0,0 +1,95 @@ +/******************************************************************************************* +* +* raylib [models] example - Cubicmap loading and drawing +* +* Example originally created with raylib 1.8, last time updated with raylib 3.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2015-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [models] example - cubesmap loading and drawing"); + + // Define the camera to look into our 3d world + Camera camera = { 0 }; + camera.position = (Vector3){ 16.0f, 14.0f, 16.0f }; // Camera position + camera.target = (Vector3){ 0.0f, 0.0f, 0.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 45.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera projection type + + Image image = LoadImage("resources/cubicmap.png"); // Load cubicmap image (RAM) + Texture2D cubicmap = LoadTextureFromImage(image); // Convert image to texture to display (VRAM) + + Mesh mesh = GenMeshCubicmap(image, (Vector3){ 1.0f, 1.0f, 1.0f }); + Model model = LoadModelFromMesh(mesh); + + // NOTE: By default each cube is mapped to one part of texture atlas + Texture2D texture = LoadTexture("resources/cubicmap_atlas.png"); // Load map texture + model.materials[0].maps[MATERIAL_MAP_DIFFUSE].texture = texture; // Set map diffuse texture + + Vector3 mapPosition = { -16.0f, 0.0f, -8.0f }; // Set model position + + UnloadImage(image); // Unload cubesmap image from RAM, already uploaded to VRAM + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + UpdateCamera(&camera, CAMERA_ORBITAL); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + + DrawModel(model, mapPosition, 1.0f, WHITE); + + EndMode3D(); + + DrawTextureEx(cubicmap, (Vector2){ screenWidth - cubicmap.width*4.0f - 20, 20.0f }, 0.0f, 4.0f, WHITE); + DrawRectangleLines(screenWidth - cubicmap.width*4 - 20, 20, cubicmap.width*4, cubicmap.height*4, GREEN); + + DrawText("cubicmap image used to", 658, 90, 10, GRAY); + DrawText("generate map 3d model", 658, 104, 10, GRAY); + + DrawFPS(10, 10); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(cubicmap); // Unload cubicmap texture + UnloadTexture(texture); // Unload map texture + UnloadModel(model); // Unload map model + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/models/models_draw_cube_texture.c b/examples/models/models_draw_cube_texture.c new file mode 100644 index 0000000..e43c3c8 --- /dev/null +++ b/examples/models/models_draw_cube_texture.c @@ -0,0 +1,245 @@ +/******************************************************************************************* +* +* raylib [models] example - Draw textured cube +* +* Example originally created with raylib 4.5, last time updated with raylib 4.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2022-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#include "rlgl.h" // Required to define vertex data (immediate-mode style) + +//------------------------------------------------------------------------------------ +// Custom Functions Declaration +//------------------------------------------------------------------------------------ +void DrawCubeTexture(Texture2D texture, Vector3 position, float width, float height, float length, Color color); // Draw cube textured +void DrawCubeTextureRec(Texture2D texture, Rectangle source, Vector3 position, float width, float height, float length, Color color); // Draw cube with a region of a texture + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [models] example - draw cube texture"); + + // Define the camera to look into our 3d world + Camera camera = { 0 }; + camera.position = (Vector3){ 0.0f, 10.0f, 10.0f }; + camera.target = (Vector3){ 0.0f, 0.0f, 0.0f }; + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; + camera.fovy = 45.0f; + camera.projection = CAMERA_PERSPECTIVE; + + // Load texture to be applied to the cubes sides + Texture2D texture = LoadTexture("resources/cubicmap_atlas.png"); + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // TODO: Update your variables here + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + + // Draw cube with an applied texture + DrawCubeTexture(texture, (Vector3){ -2.0f, 2.0f, 0.0f }, 2.0f, 4.0f, 2.0f, WHITE); + + // Draw cube with an applied texture, but only a defined rectangle piece of the texture + DrawCubeTextureRec(texture, (Rectangle){ 0, texture.height/2, texture.width/2, texture.height/2 }, + (Vector3){ 2.0f, 1.0f, 0.0f }, 2.0f, 2.0f, 2.0f, WHITE); + + DrawGrid(10, 1.0f); // Draw a grid + + EndMode3D(); + + DrawFPS(10, 10); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(texture); // Unload texture + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} + +//------------------------------------------------------------------------------------ +// Custom Functions Definition +//------------------------------------------------------------------------------------ +// Draw cube textured +// NOTE: Cube position is the center position +void DrawCubeTexture(Texture2D texture, Vector3 position, float width, float height, float length, Color color) +{ + float x = position.x; + float y = position.y; + float z = position.z; + + // Set desired texture to be enabled while drawing following vertex data + rlSetTexture(texture.id); + + // Vertex data transformation can be defined with the commented lines, + // but in this example we calculate the transformed vertex data directly when calling rlVertex3f() + //rlPushMatrix(); + // NOTE: Transformation is applied in inverse order (scale -> rotate -> translate) + //rlTranslatef(2.0f, 0.0f, 0.0f); + //rlRotatef(45, 0, 1, 0); + //rlScalef(2.0f, 2.0f, 2.0f); + + rlBegin(RL_QUADS); + rlColor4ub(color.r, color.g, color.b, color.a); + // Front Face + rlNormal3f(0.0f, 0.0f, 1.0f); // Normal Pointing Towards Viewer + rlTexCoord2f(0.0f, 0.0f); rlVertex3f(x - width/2, y - height/2, z + length/2); // Bottom Left Of The Texture and Quad + rlTexCoord2f(1.0f, 0.0f); rlVertex3f(x + width/2, y - height/2, z + length/2); // Bottom Right Of The Texture and Quad + rlTexCoord2f(1.0f, 1.0f); rlVertex3f(x + width/2, y + height/2, z + length/2); // Top Right Of The Texture and Quad + rlTexCoord2f(0.0f, 1.0f); rlVertex3f(x - width/2, y + height/2, z + length/2); // Top Left Of The Texture and Quad + // Back Face + rlNormal3f(0.0f, 0.0f, - 1.0f); // Normal Pointing Away From Viewer + rlTexCoord2f(1.0f, 0.0f); rlVertex3f(x - width/2, y - height/2, z - length/2); // Bottom Right Of The Texture and Quad + rlTexCoord2f(1.0f, 1.0f); rlVertex3f(x - width/2, y + height/2, z - length/2); // Top Right Of The Texture and Quad + rlTexCoord2f(0.0f, 1.0f); rlVertex3f(x + width/2, y + height/2, z - length/2); // Top Left Of The Texture and Quad + rlTexCoord2f(0.0f, 0.0f); rlVertex3f(x + width/2, y - height/2, z - length/2); // Bottom Left Of The Texture and Quad + // Top Face + rlNormal3f(0.0f, 1.0f, 0.0f); // Normal Pointing Up + rlTexCoord2f(0.0f, 1.0f); rlVertex3f(x - width/2, y + height/2, z - length/2); // Top Left Of The Texture and Quad + rlTexCoord2f(0.0f, 0.0f); rlVertex3f(x - width/2, y + height/2, z + length/2); // Bottom Left Of The Texture and Quad + rlTexCoord2f(1.0f, 0.0f); rlVertex3f(x + width/2, y + height/2, z + length/2); // Bottom Right Of The Texture and Quad + rlTexCoord2f(1.0f, 1.0f); rlVertex3f(x + width/2, y + height/2, z - length/2); // Top Right Of The Texture and Quad + // Bottom Face + rlNormal3f(0.0f, - 1.0f, 0.0f); // Normal Pointing Down + rlTexCoord2f(1.0f, 1.0f); rlVertex3f(x - width/2, y - height/2, z - length/2); // Top Right Of The Texture and Quad + rlTexCoord2f(0.0f, 1.0f); rlVertex3f(x + width/2, y - height/2, z - length/2); // Top Left Of The Texture and Quad + rlTexCoord2f(0.0f, 0.0f); rlVertex3f(x + width/2, y - height/2, z + length/2); // Bottom Left Of The Texture and Quad + rlTexCoord2f(1.0f, 0.0f); rlVertex3f(x - width/2, y - height/2, z + length/2); // Bottom Right Of The Texture and Quad + // Right face + rlNormal3f(1.0f, 0.0f, 0.0f); // Normal Pointing Right + rlTexCoord2f(1.0f, 0.0f); rlVertex3f(x + width/2, y - height/2, z - length/2); // Bottom Right Of The Texture and Quad + rlTexCoord2f(1.0f, 1.0f); rlVertex3f(x + width/2, y + height/2, z - length/2); // Top Right Of The Texture and Quad + rlTexCoord2f(0.0f, 1.0f); rlVertex3f(x + width/2, y + height/2, z + length/2); // Top Left Of The Texture and Quad + rlTexCoord2f(0.0f, 0.0f); rlVertex3f(x + width/2, y - height/2, z + length/2); // Bottom Left Of The Texture and Quad + // Left Face + rlNormal3f( - 1.0f, 0.0f, 0.0f); // Normal Pointing Left + rlTexCoord2f(0.0f, 0.0f); rlVertex3f(x - width/2, y - height/2, z - length/2); // Bottom Left Of The Texture and Quad + rlTexCoord2f(1.0f, 0.0f); rlVertex3f(x - width/2, y - height/2, z + length/2); // Bottom Right Of The Texture and Quad + rlTexCoord2f(1.0f, 1.0f); rlVertex3f(x - width/2, y + height/2, z + length/2); // Top Right Of The Texture and Quad + rlTexCoord2f(0.0f, 1.0f); rlVertex3f(x - width/2, y + height/2, z - length/2); // Top Left Of The Texture and Quad + rlEnd(); + //rlPopMatrix(); + + rlSetTexture(0); +} + +// Draw cube with texture piece applied to all faces +void DrawCubeTextureRec(Texture2D texture, Rectangle source, Vector3 position, float width, float height, float length, Color color) +{ + float x = position.x; + float y = position.y; + float z = position.z; + float texWidth = (float)texture.width; + float texHeight = (float)texture.height; + + // Set desired texture to be enabled while drawing following vertex data + rlSetTexture(texture.id); + + // We calculate the normalized texture coordinates for the desired texture-source-rectangle + // It means converting from (tex.width, tex.height) coordinates to [0.0f, 1.0f] equivalent + rlBegin(RL_QUADS); + rlColor4ub(color.r, color.g, color.b, color.a); + + // Front face + rlNormal3f(0.0f, 0.0f, 1.0f); + rlTexCoord2f(source.x/texWidth, (source.y + source.height)/texHeight); + rlVertex3f(x - width/2, y - height/2, z + length/2); + rlTexCoord2f((source.x + source.width)/texWidth, (source.y + source.height)/texHeight); + rlVertex3f(x + width/2, y - height/2, z + length/2); + rlTexCoord2f((source.x + source.width)/texWidth, source.y/texHeight); + rlVertex3f(x + width/2, y + height/2, z + length/2); + rlTexCoord2f(source.x/texWidth, source.y/texHeight); + rlVertex3f(x - width/2, y + height/2, z + length/2); + + // Back face + rlNormal3f(0.0f, 0.0f, - 1.0f); + rlTexCoord2f((source.x + source.width)/texWidth, (source.y + source.height)/texHeight); + rlVertex3f(x - width/2, y - height/2, z - length/2); + rlTexCoord2f((source.x + source.width)/texWidth, source.y/texHeight); + rlVertex3f(x - width/2, y + height/2, z - length/2); + rlTexCoord2f(source.x/texWidth, source.y/texHeight); + rlVertex3f(x + width/2, y + height/2, z - length/2); + rlTexCoord2f(source.x/texWidth, (source.y + source.height)/texHeight); + rlVertex3f(x + width/2, y - height/2, z - length/2); + + // Top face + rlNormal3f(0.0f, 1.0f, 0.0f); + rlTexCoord2f(source.x/texWidth, source.y/texHeight); + rlVertex3f(x - width/2, y + height/2, z - length/2); + rlTexCoord2f(source.x/texWidth, (source.y + source.height)/texHeight); + rlVertex3f(x - width/2, y + height/2, z + length/2); + rlTexCoord2f((source.x + source.width)/texWidth, (source.y + source.height)/texHeight); + rlVertex3f(x + width/2, y + height/2, z + length/2); + rlTexCoord2f((source.x + source.width)/texWidth, source.y/texHeight); + rlVertex3f(x + width/2, y + height/2, z - length/2); + + // Bottom face + rlNormal3f(0.0f, - 1.0f, 0.0f); + rlTexCoord2f((source.x + source.width)/texWidth, source.y/texHeight); + rlVertex3f(x - width/2, y - height/2, z - length/2); + rlTexCoord2f(source.x/texWidth, source.y/texHeight); + rlVertex3f(x + width/2, y - height/2, z - length/2); + rlTexCoord2f(source.x/texWidth, (source.y + source.height)/texHeight); + rlVertex3f(x + width/2, y - height/2, z + length/2); + rlTexCoord2f((source.x + source.width)/texWidth, (source.y + source.height)/texHeight); + rlVertex3f(x - width/2, y - height/2, z + length/2); + + // Right face + rlNormal3f(1.0f, 0.0f, 0.0f); + rlTexCoord2f((source.x + source.width)/texWidth, (source.y + source.height)/texHeight); + rlVertex3f(x + width/2, y - height/2, z - length/2); + rlTexCoord2f((source.x + source.width)/texWidth, source.y/texHeight); + rlVertex3f(x + width/2, y + height/2, z - length/2); + rlTexCoord2f(source.x/texWidth, source.y/texHeight); + rlVertex3f(x + width/2, y + height/2, z + length/2); + rlTexCoord2f(source.x/texWidth, (source.y + source.height)/texHeight); + rlVertex3f(x + width/2, y - height/2, z + length/2); + + // Left face + rlNormal3f( - 1.0f, 0.0f, 0.0f); + rlTexCoord2f(source.x/texWidth, (source.y + source.height)/texHeight); + rlVertex3f(x - width/2, y - height/2, z - length/2); + rlTexCoord2f((source.x + source.width)/texWidth, (source.y + source.height)/texHeight); + rlVertex3f(x - width/2, y - height/2, z + length/2); + rlTexCoord2f((source.x + source.width)/texWidth, source.y/texHeight); + rlVertex3f(x - width/2, y + height/2, z + length/2); + rlTexCoord2f(source.x/texWidth, source.y/texHeight); + rlVertex3f(x - width/2, y + height/2, z - length/2); + + rlEnd(); + + rlSetTexture(0); +} \ No newline at end of file diff --git a/examples/models/models_first_person_maze.c b/examples/models/models_first_person_maze.c new file mode 100644 index 0000000..6a4345a --- /dev/null +++ b/examples/models/models_first_person_maze.c @@ -0,0 +1,133 @@ +/******************************************************************************************* +* +* raylib [models] example - first person maze +* +* Example originally created with raylib 2.5, last time updated with raylib 3.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2019-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#include // Required for: free() + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [models] example - first person maze"); + + // Define the camera to look into our 3d world + Camera camera = { 0 }; + camera.position = (Vector3){ 0.2f, 0.4f, 0.2f }; // Camera position + camera.target = (Vector3){ 0.185f, 0.4f, 0.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 45.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera projection type + Vector3 position = { 0.0f, 0.0f, 0.0f }; // Set model position + + Image imMap = LoadImage("resources/cubicmap.png"); // Load cubicmap image (RAM) + Texture2D cubicmap = LoadTextureFromImage(imMap); // Convert image to texture to display (VRAM) + Mesh mesh = GenMeshCubicmap(imMap, (Vector3){ 1.0f, 1.0f, 1.0f }); + Model model = LoadModelFromMesh(mesh); + + // NOTE: By default each cube is mapped to one part of texture atlas + Texture2D texture = LoadTexture("resources/cubicmap_atlas.png"); // Load map texture + model.materials[0].maps[MATERIAL_MAP_DIFFUSE].texture = texture; // Set map diffuse texture + + // Get map image data to be used for collision detection + Color *mapPixels = LoadImageColors(imMap); + UnloadImage(imMap); // Unload image from RAM + + Vector3 mapPosition = { -16.0f, 0.0f, -8.0f }; // Set model position + + DisableCursor(); // Limit cursor to relative movement inside the window + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + Vector3 oldCamPos = camera.position; // Store old camera position + + UpdateCamera(&camera, CAMERA_FIRST_PERSON); + + // Check player collision (we simplify to 2D collision detection) + Vector2 playerPos = { camera.position.x, camera.position.z }; + float playerRadius = 0.1f; // Collision radius (player is modelled as a cilinder for collision) + + int playerCellX = (int)(playerPos.x - mapPosition.x + 0.5f); + int playerCellY = (int)(playerPos.y - mapPosition.z + 0.5f); + + // Out-of-limits security check + if (playerCellX < 0) playerCellX = 0; + else if (playerCellX >= cubicmap.width) playerCellX = cubicmap.width - 1; + + if (playerCellY < 0) playerCellY = 0; + else if (playerCellY >= cubicmap.height) playerCellY = cubicmap.height - 1; + + // Check map collisions using image data and player position + // TODO: Improvement: Just check player surrounding cells for collision + for (int y = 0; y < cubicmap.height; y++) + { + for (int x = 0; x < cubicmap.width; x++) + { + if ((mapPixels[y*cubicmap.width + x].r == 255) && // Collision: white pixel, only check R channel + (CheckCollisionCircleRec(playerPos, playerRadius, + (Rectangle){ mapPosition.x - 0.5f + x*1.0f, mapPosition.z - 0.5f + y*1.0f, 1.0f, 1.0f }))) + { + // Collision detected, reset camera position + camera.position = oldCamPos; + } + } + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + DrawModel(model, mapPosition, 1.0f, WHITE); // Draw maze map + EndMode3D(); + + DrawTextureEx(cubicmap, (Vector2){ GetScreenWidth() - cubicmap.width*4.0f - 20, 20.0f }, 0.0f, 4.0f, WHITE); + DrawRectangleLines(GetScreenWidth() - cubicmap.width*4 - 20, 20, cubicmap.width*4, cubicmap.height*4, GREEN); + + // Draw player position radar + DrawRectangle(GetScreenWidth() - cubicmap.width*4 - 20 + playerCellX*4, 20 + playerCellY*4, 4, 4, RED); + + DrawFPS(10, 10); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadImageColors(mapPixels); // Unload color array + + UnloadTexture(cubicmap); // Unload cubicmap texture + UnloadTexture(texture); // Unload map texture + UnloadModel(model); // Unload map model + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/models/models_geometric_shapes.c b/examples/models/models_geometric_shapes.c new file mode 100644 index 0000000..33c4063 --- /dev/null +++ b/examples/models/models_geometric_shapes.c @@ -0,0 +1,88 @@ +/******************************************************************************************* +* +* raylib [models] example - Draw some basic geometric shapes (cube, sphere, cylinder...) +* +* Example originally created with raylib 1.0, last time updated with raylib 3.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2014-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [models] example - geometric shapes"); + + // Define the camera to look into our 3d world + Camera camera = { 0 }; + camera.position = (Vector3){ 0.0f, 10.0f, 10.0f }; + camera.target = (Vector3){ 0.0f, 0.0f, 0.0f }; + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; + camera.fovy = 45.0f; + camera.projection = CAMERA_PERSPECTIVE; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // TODO: Update your variables here + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + + DrawCube((Vector3){-4.0f, 0.0f, 2.0f}, 2.0f, 5.0f, 2.0f, RED); + DrawCubeWires((Vector3){-4.0f, 0.0f, 2.0f}, 2.0f, 5.0f, 2.0f, GOLD); + DrawCubeWires((Vector3){-4.0f, 0.0f, -2.0f}, 3.0f, 6.0f, 2.0f, MAROON); + + DrawSphere((Vector3){-1.0f, 0.0f, -2.0f}, 1.0f, GREEN); + DrawSphereWires((Vector3){1.0f, 0.0f, 2.0f}, 2.0f, 16, 16, LIME); + + DrawCylinder((Vector3){4.0f, 0.0f, -2.0f}, 1.0f, 2.0f, 3.0f, 4, SKYBLUE); + DrawCylinderWires((Vector3){4.0f, 0.0f, -2.0f}, 1.0f, 2.0f, 3.0f, 4, DARKBLUE); + DrawCylinderWires((Vector3){4.5f, -1.0f, 2.0f}, 1.0f, 1.0f, 2.0f, 6, BROWN); + + DrawCylinder((Vector3){1.0f, 0.0f, -4.0f}, 0.0f, 1.5f, 3.0f, 8, GOLD); + DrawCylinderWires((Vector3){1.0f, 0.0f, -4.0f}, 0.0f, 1.5f, 3.0f, 8, PINK); + + DrawCapsule ((Vector3){-3.0f, 1.5f, -4.0f}, (Vector3){-4.0f, -1.0f, -4.0f}, 1.2f, 8, 8, VIOLET); + DrawCapsuleWires((Vector3){-3.0f, 1.5f, -4.0f}, (Vector3){-4.0f, -1.0f, -4.0f}, 1.2f, 8, 8, PURPLE); + + DrawGrid(10, 1.0f); // Draw a grid + + EndMode3D(); + + DrawFPS(10, 10); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/models/models_heightmap.c b/examples/models/models_heightmap.c new file mode 100644 index 0000000..e1c3e4f --- /dev/null +++ b/examples/models/models_heightmap.c @@ -0,0 +1,90 @@ +/******************************************************************************************* +* +* raylib [models] example - Heightmap loading and drawing +* +* Example originally created with raylib 1.8, last time updated with raylib 3.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2015-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [models] example - heightmap loading and drawing"); + + // Define our custom camera to look into our 3d world + Camera camera = { 0 }; + camera.position = (Vector3){ 18.0f, 21.0f, 18.0f }; // Camera position + camera.target = (Vector3){ 0.0f, 0.0f, 0.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 45.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera projection type + + Image image = LoadImage("resources/heightmap.png"); // Load heightmap image (RAM) + Texture2D texture = LoadTextureFromImage(image); // Convert image to texture (VRAM) + + Mesh mesh = GenMeshHeightmap(image, (Vector3){ 16, 8, 16 }); // Generate heightmap mesh (RAM and VRAM) + Model model = LoadModelFromMesh(mesh); // Load model from generated mesh + + model.materials[0].maps[MATERIAL_MAP_DIFFUSE].texture = texture; // Set map diffuse texture + Vector3 mapPosition = { -8.0f, 0.0f, -8.0f }; // Define model position + + UnloadImage(image); // Unload heightmap image from RAM, already uploaded to VRAM + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + UpdateCamera(&camera, CAMERA_ORBITAL); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + + DrawModel(model, mapPosition, 1.0f, RED); + + DrawGrid(20, 1.0f); + + EndMode3D(); + + DrawTexture(texture, screenWidth - texture.width - 20, 20, WHITE); + DrawRectangleLines(screenWidth - texture.width - 20, 20, texture.width, texture.height, GREEN); + + DrawFPS(10, 10); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(texture); // Unload texture + UnloadModel(model); // Unload model + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/models/models_loading.c b/examples/models/models_loading.c new file mode 100644 index 0000000..4bce2a7 --- /dev/null +++ b/examples/models/models_loading.c @@ -0,0 +1,153 @@ +/******************************************************************************************* +* +* raylib [models] example - Models loading +* +* NOTE: raylib supports multiple models file formats: +* +* - OBJ > Text file format. Must include vertex position-texcoords-normals information, +* if files references some .mtl materials file, it will be loaded (or try to). +* - GLTF > Text/binary file format. Includes lot of information and it could +* also reference external files, raylib will try loading mesh and materials data. +* - IQM > Binary file format. Includes mesh vertex data but also animation data, +* raylib can load .iqm animations. +* - VOX > Binary file format. MagikaVoxel mesh format: +* https://github.com/ephtracy/voxel-model/blob/master/MagicaVoxel-file-format-vox.txt +* - M3D > Binary file format. Model 3D format: +* https://bztsrc.gitlab.io/model3d +* +* Example originally created with raylib 2.0, last time updated with raylib 4.2 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2014-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [models] example - models loading"); + + // Define the camera to look into our 3d world + Camera camera = { 0 }; + camera.position = (Vector3){ 50.0f, 50.0f, 50.0f }; // Camera position + camera.target = (Vector3){ 0.0f, 10.0f, 0.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 45.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera mode type + + Model model = LoadModel("resources/models/obj/castle.obj"); // Load model + Texture2D texture = LoadTexture("resources/models/obj/castle_diffuse.png"); // Load model texture + model.materials[0].maps[MATERIAL_MAP_DIFFUSE].texture = texture; // Set map diffuse texture + + Vector3 position = { 0.0f, 0.0f, 0.0f }; // Set model position + + BoundingBox bounds = GetMeshBoundingBox(model.meshes[0]); // Set model bounds + + // NOTE: bounds are calculated from the original size of the model, + // if model is scaled on drawing, bounds must be also scaled + + bool selected = false; // Selected object flag + + DisableCursor(); // Limit cursor to relative movement inside the window + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + UpdateCamera(&camera, CAMERA_FIRST_PERSON); + + // Load new models/textures on drag&drop + if (IsFileDropped()) + { + FilePathList droppedFiles = LoadDroppedFiles(); + + if (droppedFiles.count == 1) // Only support one file dropped + { + if (IsFileExtension(droppedFiles.paths[0], ".obj") || + IsFileExtension(droppedFiles.paths[0], ".gltf") || + IsFileExtension(droppedFiles.paths[0], ".glb") || + IsFileExtension(droppedFiles.paths[0], ".vox") || + IsFileExtension(droppedFiles.paths[0], ".iqm") || + IsFileExtension(droppedFiles.paths[0], ".m3d")) // Model file formats supported + { + UnloadModel(model); // Unload previous model + model = LoadModel(droppedFiles.paths[0]); // Load new model + model.materials[0].maps[MATERIAL_MAP_DIFFUSE].texture = texture; // Set current map diffuse texture + + bounds = GetMeshBoundingBox(model.meshes[0]); + + // TODO: Move camera position from target enough distance to visualize model properly + } + else if (IsFileExtension(droppedFiles.paths[0], ".png")) // Texture file formats supported + { + // Unload current model texture and load new one + UnloadTexture(texture); + texture = LoadTexture(droppedFiles.paths[0]); + model.materials[0].maps[MATERIAL_MAP_DIFFUSE].texture = texture; + } + } + + UnloadDroppedFiles(droppedFiles); // Unload filepaths from memory + } + + // Select model on mouse click + if (IsMouseButtonPressed(MOUSE_BUTTON_LEFT)) + { + // Check collision between ray and box + if (GetRayCollisionBox(GetMouseRay(GetMousePosition(), camera), bounds).hit) selected = !selected; + else selected = false; + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + + DrawModel(model, position, 1.0f, WHITE); // Draw 3d model with texture + + DrawGrid(20, 10.0f); // Draw a grid + + if (selected) DrawBoundingBox(bounds, GREEN); // Draw selection box + + EndMode3D(); + + DrawText("Drag & drop model to load mesh/texture.", 10, GetScreenHeight() - 20, 10, DARKGRAY); + if (selected) DrawText("MODEL SELECTED", GetScreenWidth() - 110, 10, 10, GREEN); + + DrawText("(c) Castle 3D model by Alberto Cano", screenWidth - 200, screenHeight - 20, 10, GRAY); + + DrawFPS(10, 10); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(texture); // Unload texture + UnloadModel(model); // Unload model + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/models/models_loading_gltf.c b/examples/models/models_loading_gltf.c new file mode 100644 index 0000000..d8b34ef --- /dev/null +++ b/examples/models/models_loading_gltf.c @@ -0,0 +1,102 @@ +/******************************************************************************************* +* +* raylib [models] example - loading gltf with animations +* +* LIMITATIONS: +* - Only supports 1 armature per file, and skips loading it if there are multiple armatures +* - Only supports linear interpolation (default method in Blender when checked +* "Always Sample Animations" when exporting a GLTF file) +* - Only supports translation/rotation/scale animation channel.path, +* weights not considered (i.e. morph targets) +* +* Example originally created with raylib 3.7, last time updated with raylib 4.2 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2020-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [models] example - loading gltf"); + + // Define the camera to look into our 3d world + Camera camera = { 0 }; + camera.position = (Vector3){ 5.0f, 5.0f, 5.0f }; // Camera position + camera.target = (Vector3){ 0.0f, 2.0f, 0.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 45.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera projection type + + // Load gltf model + Model model = LoadModel("resources/models/gltf/robot.glb"); + + // Load gltf model animations + unsigned int animsCount = 0; + unsigned int animIndex = 0; + unsigned int animCurrentFrame = 0; + ModelAnimation *modelAnimations = LoadModelAnimations("resources/models/gltf/robot.glb", &animsCount); + + Vector3 position = { 0.0f, 0.0f, 0.0f }; // Set model position + + DisableCursor(); // Limit cursor to relative movement inside the window + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + UpdateCamera(&camera, CAMERA_THIRD_PERSON); + // Select current animation + if (IsKeyPressed(KEY_UP)) animIndex = (animIndex + 1)%animsCount; + else if (IsKeyPressed(KEY_DOWN)) animIndex = (animIndex + animsCount - 1)%animsCount; + + // Update model animation + ModelAnimation anim = modelAnimations[animIndex]; + animCurrentFrame = (animCurrentFrame + 1)%anim.frameCount; + UpdateModelAnimation(model, anim, animCurrentFrame); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + + DrawModel(model, position, 1.0f, WHITE); // Draw animated model + DrawGrid(10, 1.0f); + + EndMode3D(); + + DrawText("Use the UP/DOWN arrow keys to switch animation", 10, 10, 20, GRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadModel(model); // Unload model and meshes/material + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/models/models_loading_m3d.c b/examples/models/models_loading_m3d.c new file mode 100644 index 0000000..b9674b6 --- /dev/null +++ b/examples/models/models_loading_m3d.c @@ -0,0 +1,173 @@ +/******************************************************************************************* +* +* raylib [models] example - Load models M3D +* +* Example originally created with raylib 4.5, last time updated with raylib 4.5 +* +* Example contributed by bzt (@bztsrc) and reviewed by Ramon Santamaria (@raysan5) +* +* NOTES: +* - Model3D (M3D) fileformat specs: https://gitlab.com/bztsrc/model3d +* - Bender M3D exported: https://gitlab.com/bztsrc/model3d/-/tree/master/blender +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2022-2023 bzt (@bztsrc) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [models] example - M3D model loading"); + + // Define the camera to look into our 3d world + Camera camera = { 0 }; + camera.position = (Vector3){ 1.5f, 1.5f, 1.5f }; // Camera position + camera.target = (Vector3){ 0.0f, 0.4f, 0.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 45.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera projection type + + Vector3 position = { 0.0f, 0.0f, 0.0f }; // Set model position + + char modelFileName[128] = "resources/models/m3d/cesium_man.m3d"; + bool drawMesh = 1; + bool drawSkeleton = 1; + bool animPlaying = false; // Store anim state, what to draw + + // Load model + Model model = LoadModel(modelFileName); // Load the bind-pose model mesh and basic data + + // Load animations + unsigned int animsCount = 0; + int animFrameCounter = 0, animId = 0; + ModelAnimation *anims = LoadModelAnimations(modelFileName, &animsCount); // Load skeletal animation data + + DisableCursor(); // Limit cursor to relative movement inside the window + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + UpdateCamera(&camera, CAMERA_FIRST_PERSON); + + if (animsCount) + { + // Play animation when spacebar is held down (or step one frame with N) + if (IsKeyDown(KEY_SPACE) || IsKeyPressed(KEY_N)) + { + animFrameCounter++; + + if (animFrameCounter >= anims[animId].frameCount) animFrameCounter = 0; + + UpdateModelAnimation(model, anims[animId], animFrameCounter); + animPlaying = true; + } + + // Select animation by pressing A + if (IsKeyPressed(KEY_A)) + { + animFrameCounter = 0; + animId++; + + if (animId >= animsCount) animId = 0; + UpdateModelAnimation(model, anims[animId], 0); + animPlaying = true; + } + } + + // Toggle skeleton drawing + if (IsKeyPressed(KEY_S)) drawSkeleton ^= 1; + + // Toggle mesh drawing + if (IsKeyPressed(KEY_M)) drawMesh ^= 1; + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + + // Draw 3d model with texture + if (drawMesh) DrawModel(model, position, 1.0f, WHITE); + + // Draw the animated skeleton + if (drawSkeleton) + { + // Loop to (boneCount - 1) because the last one is a special "no bone" bone, + // needed to workaround buggy models + // without a -1, we would always draw a cube at the origin + for (int i = 0; i < model.boneCount - 1; i++) + { + // By default the model is loaded in bind-pose by LoadModel(). + // But if UpdateModelAnimation() has been called at least once + // then the model is already in animation pose, so we need the animated skeleton + if (!animPlaying || !animsCount) + { + // Display the bind-pose skeleton + DrawCube(model.bindPose[i].translation, 0.04f, 0.04f, 0.04f, RED); + + if (model.bones[i].parent >= 0) + { + DrawLine3D(model.bindPose[i].translation, + model.bindPose[model.bones[i].parent].translation, RED); + } + } + else + { + // Display the frame-pose skeleton + DrawCube(anims[animId].framePoses[animFrameCounter][i].translation, 0.05f, 0.05f, 0.05f, RED); + + if (anims[animId].bones[i].parent >= 0) + { + DrawLine3D(anims[animId].framePoses[animFrameCounter][i].translation, + anims[animId].framePoses[animFrameCounter][anims[animId].bones[i].parent].translation, RED); + } + } + } + } + + DrawGrid(10, 1.0f); // Draw a grid + + EndMode3D(); + + DrawText("PRESS SPACE to PLAY MODEL ANIMATION", 10, GetScreenHeight() - 60, 10, MAROON); + DrawText("PRESS A to CYCLE THROUGH ANIMATIONS", 10, GetScreenHeight() - 40, 10, DARKGRAY); + DrawText("PRESS M to toggle MESH, S to toggle SKELETON DRAWING", 10, GetScreenHeight() - 20, 10, DARKGRAY); + DrawText("(c) CesiumMan model by KhronosGroup", GetScreenWidth() - 210, GetScreenHeight() - 20, 10, GRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + + // Unload model animations data + UnloadModelAnimations(anims, animsCount); + + UnloadModel(model); // Unload model + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/models/models_loading_vox.c b/examples/models/models_loading_vox.c new file mode 100644 index 0000000..e148fd9 --- /dev/null +++ b/examples/models/models_loading_vox.c @@ -0,0 +1,133 @@ +/******************************************************************************************* +* +* raylib [models] example - Load models vox (MagicaVoxel) +* +* Example originally created with raylib 4.0, last time updated with raylib 4.0 +* +* Example contributed by Johann Nadalutti (@procfxgen) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2021-2023 Johann Nadalutti (@procfxgen) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#include "raymath.h" // Required for: MatrixTranslate() + +#define MAX_VOX_FILES 3 + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + const char *voxFileNames[] = { + "resources/models/vox/chr_knight.vox", + "resources/models/vox/chr_sword.vox", + "resources/models/vox/monu9.vox" + }; + + InitWindow(screenWidth, screenHeight, "raylib [models] example - magicavoxel loading"); + + // Define the camera to look into our 3d world + Camera camera = { 0 }; + camera.position = (Vector3){ 10.0f, 10.0f, 10.0f }; // Camera position + camera.target = (Vector3){ 0.0f, 0.0f, 0.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 45.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera projection type + + // Load MagicaVoxel files + Model models[MAX_VOX_FILES] = { 0 }; + + for (int i = 0; i < MAX_VOX_FILES; i++) + { + // Load VOX file and measure time + double t0 = GetTime()*1000.0; + models[i] = LoadModel(voxFileNames[i]); + double t1 = GetTime()*1000.0; + + TraceLog(LOG_WARNING, TextFormat("[%s] File loaded in %.3f ms", voxFileNames[i], t1 - t0)); + + // Compute model translation matrix to center model on draw position (0, 0 , 0) + BoundingBox bb = GetModelBoundingBox(models[i]); + Vector3 center = { 0 }; + center.x = bb.min.x + (((bb.max.x - bb.min.x)/2)); + center.z = bb.min.z + (((bb.max.z - bb.min.z)/2)); + + Matrix matTranslate = MatrixTranslate(-center.x, 0, -center.z); + models[i].transform = matTranslate; + } + + int currentModel = 0; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + UpdateCamera(&camera, CAMERA_ORBITAL); + + // Cycle between models on mouse click + if (IsMouseButtonPressed(MOUSE_BUTTON_LEFT)) currentModel = (currentModel + 1)%MAX_VOX_FILES; + + // Cycle between models on key pressed + if (IsKeyPressed(KEY_RIGHT)) + { + currentModel++; + if (currentModel >= MAX_VOX_FILES) currentModel = 0; + } + else if (IsKeyPressed(KEY_LEFT)) + { + currentModel--; + if (currentModel < 0) currentModel = MAX_VOX_FILES - 1; + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + // Draw 3D model + BeginMode3D(camera); + + DrawModel(models[currentModel], (Vector3){ 0, 0, 0 }, 1.0f, WHITE); + DrawGrid(10, 1.0); + + EndMode3D(); + + // Display info + DrawRectangle(10, 400, 310, 30, Fade(SKYBLUE, 0.5f)); + DrawRectangleLines(10, 400, 310, 30, Fade(DARKBLUE, 0.5f)); + DrawText("MOUSE LEFT BUTTON to CYCLE VOX MODELS", 40, 410, 10, BLUE); + DrawText(TextFormat("File: %s", GetFileName(voxFileNames[currentModel])), 10, 10, 20, GRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + // Unload models data (GPU VRAM) + for (int i = 0; i < MAX_VOX_FILES; i++) UnloadModel(models[i]); + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} + + diff --git a/examples/models/models_mesh_generation.c b/examples/models/models_mesh_generation.c new file mode 100644 index 0000000..d17a20a --- /dev/null +++ b/examples/models/models_mesh_generation.c @@ -0,0 +1,190 @@ +/******************************************************************************************* +* +* raylib example - procedural mesh generation +* +* Example originally created with raylib 1.8, last time updated with raylib 4.0 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2017-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#define NUM_MODELS 9 // Parametric 3d shapes to generate + +static Mesh GenMeshCustom(void); // Generate a simple triangle mesh from code + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [models] example - mesh generation"); + + // We generate a checked image for texturing + Image checked = GenImageChecked(2, 2, 1, 1, RED, GREEN); + Texture2D texture = LoadTextureFromImage(checked); + UnloadImage(checked); + + Model models[NUM_MODELS] = { 0 }; + + models[0] = LoadModelFromMesh(GenMeshPlane(2, 2, 5, 5)); + models[1] = LoadModelFromMesh(GenMeshCube(2.0f, 1.0f, 2.0f)); + models[2] = LoadModelFromMesh(GenMeshSphere(2, 32, 32)); + models[3] = LoadModelFromMesh(GenMeshHemiSphere(2, 16, 16)); + models[4] = LoadModelFromMesh(GenMeshCylinder(1, 2, 16)); + models[5] = LoadModelFromMesh(GenMeshTorus(0.25f, 4.0f, 16, 32)); + models[6] = LoadModelFromMesh(GenMeshKnot(1.0f, 2.0f, 16, 128)); + models[7] = LoadModelFromMesh(GenMeshPoly(5, 2.0f)); + models[8] = LoadModelFromMesh(GenMeshCustom()); + + // Generated meshes could be exported as .obj files + //ExportMesh(models[0].meshes[0], "plane.obj"); + //ExportMesh(models[1].meshes[0], "cube.obj"); + //ExportMesh(models[2].meshes[0], "sphere.obj"); + //ExportMesh(models[3].meshes[0], "hemisphere.obj"); + //ExportMesh(models[4].meshes[0], "cylinder.obj"); + //ExportMesh(models[5].meshes[0], "torus.obj"); + //ExportMesh(models[6].meshes[0], "knot.obj"); + //ExportMesh(models[7].meshes[0], "poly.obj"); + //ExportMesh(models[8].meshes[0], "custom.obj"); + + // Set checked texture as default diffuse component for all models material + for (int i = 0; i < NUM_MODELS; i++) models[i].materials[0].maps[MATERIAL_MAP_DIFFUSE].texture = texture; + + // Define the camera to look into our 3d world + Camera camera = { { 5.0f, 5.0f, 5.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 1.0f, 0.0f }, 45.0f, 0 }; + + // Model drawing position + Vector3 position = { 0.0f, 0.0f, 0.0f }; + + int currentModel = 0; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + UpdateCamera(&camera, CAMERA_ORBITAL); + + if (IsMouseButtonPressed(MOUSE_BUTTON_LEFT)) + { + currentModel = (currentModel + 1)%NUM_MODELS; // Cycle between the textures + } + + if (IsKeyPressed(KEY_RIGHT)) + { + currentModel++; + if (currentModel >= NUM_MODELS) currentModel = 0; + } + else if (IsKeyPressed(KEY_LEFT)) + { + currentModel--; + if (currentModel < 0) currentModel = NUM_MODELS - 1; + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + + DrawModel(models[currentModel], position, 1.0f, WHITE); + DrawGrid(10, 1.0); + + EndMode3D(); + + DrawRectangle(30, 400, 310, 30, Fade(SKYBLUE, 0.5f)); + DrawRectangleLines(30, 400, 310, 30, Fade(DARKBLUE, 0.5f)); + DrawText("MOUSE LEFT BUTTON to CYCLE PROCEDURAL MODELS", 40, 410, 10, BLUE); + + switch(currentModel) + { + case 0: DrawText("PLANE", 680, 10, 20, DARKBLUE); break; + case 1: DrawText("CUBE", 680, 10, 20, DARKBLUE); break; + case 2: DrawText("SPHERE", 680, 10, 20, DARKBLUE); break; + case 3: DrawText("HEMISPHERE", 640, 10, 20, DARKBLUE); break; + case 4: DrawText("CYLINDER", 680, 10, 20, DARKBLUE); break; + case 5: DrawText("TORUS", 680, 10, 20, DARKBLUE); break; + case 6: DrawText("KNOT", 680, 10, 20, DARKBLUE); break; + case 7: DrawText("POLY", 680, 10, 20, DARKBLUE); break; + case 8: DrawText("Custom (triangle)", 580, 10, 20, DARKBLUE); break; + default: break; + } + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(texture); // Unload texture + + // Unload models data (GPU VRAM) + for (int i = 0; i < NUM_MODELS; i++) UnloadModel(models[i]); + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} + +// Generate a simple triangle mesh from code +static Mesh GenMeshCustom(void) +{ + Mesh mesh = { 0 }; + mesh.triangleCount = 1; + mesh.vertexCount = mesh.triangleCount*3; + mesh.vertices = (float *)MemAlloc(mesh.vertexCount*3*sizeof(float)); // 3 vertices, 3 coordinates each (x, y, z) + mesh.texcoords = (float *)MemAlloc(mesh.vertexCount*2*sizeof(float)); // 3 vertices, 2 coordinates each (x, y) + mesh.normals = (float *)MemAlloc(mesh.vertexCount*3*sizeof(float)); // 3 vertices, 3 coordinates each (x, y, z) + + // Vertex at (0, 0, 0) + mesh.vertices[0] = 0; + mesh.vertices[1] = 0; + mesh.vertices[2] = 0; + mesh.normals[0] = 0; + mesh.normals[1] = 1; + mesh.normals[2] = 0; + mesh.texcoords[0] = 0; + mesh.texcoords[1] = 0; + + // Vertex at (1, 0, 2) + mesh.vertices[3] = 1; + mesh.vertices[4] = 0; + mesh.vertices[5] = 2; + mesh.normals[3] = 0; + mesh.normals[4] = 1; + mesh.normals[5] = 0; + mesh.texcoords[2] = 0.5f; + mesh.texcoords[3] = 1.0f; + + // Vertex at (2, 0, 0) + mesh.vertices[6] = 2; + mesh.vertices[7] = 0; + mesh.vertices[8] = 0; + mesh.normals[6] = 0; + mesh.normals[7] = 1; + mesh.normals[8] = 0; + mesh.texcoords[4] = 1; + mesh.texcoords[5] =0; + + // Upload mesh data from CPU (RAM) to GPU (VRAM) memory + UploadMesh(&mesh, false); + + return mesh; +} diff --git a/examples/models/models_mesh_picking.c b/examples/models/models_mesh_picking.c new file mode 100644 index 0000000..69d98aa --- /dev/null +++ b/examples/models/models_mesh_picking.c @@ -0,0 +1,246 @@ +/******************************************************************************************* +* +* raylib [models] example - Mesh picking in 3d mode, ground plane, triangle, mesh +* +* Example originally created with raylib 1.7, last time updated with raylib 4.0 +* +* Example contributed by Joel Davis (@joeld42) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2017-2023 Joel Davis (@joeld42) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" +#include "raymath.h" + +#define FLT_MAX 340282346638528859811704183484516925440.0f // Maximum value of a float, from bit pattern 01111111011111111111111111111111 + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [models] example - mesh picking"); + + // Define the camera to look into our 3d world + Camera camera = { 0 }; + camera.position = (Vector3){ 20.0f, 20.0f, 20.0f }; // Camera position + camera.target = (Vector3){ 0.0f, 8.0f, 0.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.6f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 45.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera projection type + + Ray ray = { 0 }; // Picking ray + + Model tower = LoadModel("resources/models/obj/turret.obj"); // Load OBJ model + Texture2D texture = LoadTexture("resources/models/obj/turret_diffuse.png"); // Load model texture + tower.materials[0].maps[MATERIAL_MAP_DIFFUSE].texture = texture; // Set model diffuse texture + + Vector3 towerPos = { 0.0f, 0.0f, 0.0f }; // Set model position + BoundingBox towerBBox = GetMeshBoundingBox(tower.meshes[0]); // Get mesh bounding box + + // Ground quad + Vector3 g0 = (Vector3){ -50.0f, 0.0f, -50.0f }; + Vector3 g1 = (Vector3){ -50.0f, 0.0f, 50.0f }; + Vector3 g2 = (Vector3){ 50.0f, 0.0f, 50.0f }; + Vector3 g3 = (Vector3){ 50.0f, 0.0f, -50.0f }; + + // Test triangle + Vector3 ta = (Vector3){ -25.0f, 0.5f, 0.0f }; + Vector3 tb = (Vector3){ -4.0f, 2.5f, 1.0f }; + Vector3 tc = (Vector3){ -8.0f, 6.5f, 0.0f }; + + Vector3 bary = { 0.0f, 0.0f, 0.0f }; + + // Test sphere + Vector3 sp = (Vector3){ -30.0f, 5.0f, 5.0f }; + float sr = 4.0f; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + if (IsCursorHidden()) UpdateCamera(&camera, CAMERA_FIRST_PERSON); // Update camera + + // Toggle camera controls + if (IsMouseButtonPressed(MOUSE_BUTTON_RIGHT)) + { + if (IsCursorHidden()) EnableCursor(); + else DisableCursor(); + } + + // Display information about closest hit + RayCollision collision = { 0 }; + char *hitObjectName = "None"; + collision.distance = FLT_MAX; + collision.hit = false; + Color cursorColor = WHITE; + + // Get ray and test against objects + ray = GetMouseRay(GetMousePosition(), camera); + + // Check ray collision against ground quad + RayCollision groundHitInfo = GetRayCollisionQuad(ray, g0, g1, g2, g3); + + if ((groundHitInfo.hit) && (groundHitInfo.distance < collision.distance)) + { + collision = groundHitInfo; + cursorColor = GREEN; + hitObjectName = "Ground"; + } + + // Check ray collision against test triangle + RayCollision triHitInfo = GetRayCollisionTriangle(ray, ta, tb, tc); + + if ((triHitInfo.hit) && (triHitInfo.distance < collision.distance)) + { + collision = triHitInfo; + cursorColor = PURPLE; + hitObjectName = "Triangle"; + + bary = Vector3Barycenter(collision.point, ta, tb, tc); + } + + // Check ray collision against test sphere + RayCollision sphereHitInfo = GetRayCollisionSphere(ray, sp, sr); + + if ((sphereHitInfo.hit) && (sphereHitInfo.distance < collision.distance)) + { + collision = sphereHitInfo; + cursorColor = ORANGE; + hitObjectName = "Sphere"; + } + + // Check ray collision against bounding box first, before trying the full ray-mesh test + RayCollision boxHitInfo = GetRayCollisionBox(ray, towerBBox); + + if ((boxHitInfo.hit) && (boxHitInfo.distance < collision.distance)) + { + collision = boxHitInfo; + cursorColor = ORANGE; + hitObjectName = "Box"; + + // Check ray collision against model meshes + RayCollision meshHitInfo = { 0 }; + for (int m = 0; m < tower.meshCount; m++) + { + // NOTE: We consider the model.transform for the collision check but + // it can be checked against any transform Matrix, used when checking against same + // model drawn multiple times with multiple transforms + meshHitInfo = GetRayCollisionMesh(ray, tower.meshes[m], tower.transform); + if (meshHitInfo.hit) + { + // Save the closest hit mesh + if ((!collision.hit) || (collision.distance > meshHitInfo.distance)) collision = meshHitInfo; + + break; // Stop once one mesh collision is detected, the colliding mesh is m + } + } + + if (meshHitInfo.hit) + { + collision = meshHitInfo; + cursorColor = ORANGE; + hitObjectName = "Mesh"; + } + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + + // Draw the tower + // WARNING: If scale is different than 1.0f, + // not considered by GetRayCollisionModel() + DrawModel(tower, towerPos, 1.0f, WHITE); + + // Draw the test triangle + DrawLine3D(ta, tb, PURPLE); + DrawLine3D(tb, tc, PURPLE); + DrawLine3D(tc, ta, PURPLE); + + // Draw the test sphere + DrawSphereWires(sp, sr, 8, 8, PURPLE); + + // Draw the mesh bbox if we hit it + if (boxHitInfo.hit) DrawBoundingBox(towerBBox, LIME); + + // If we hit something, draw the cursor at the hit point + if (collision.hit) + { + DrawCube(collision.point, 0.3f, 0.3f, 0.3f, cursorColor); + DrawCubeWires(collision.point, 0.3f, 0.3f, 0.3f, RED); + + Vector3 normalEnd; + normalEnd.x = collision.point.x + collision.normal.x; + normalEnd.y = collision.point.y + collision.normal.y; + normalEnd.z = collision.point.z + collision.normal.z; + + DrawLine3D(collision.point, normalEnd, RED); + } + + DrawRay(ray, MAROON); + + DrawGrid(10, 10.0f); + + EndMode3D(); + + // Draw some debug GUI text + DrawText(TextFormat("Hit Object: %s", hitObjectName), 10, 50, 10, BLACK); + + if (collision.hit) + { + int ypos = 70; + + DrawText(TextFormat("Distance: %3.2f", collision.distance), 10, ypos, 10, BLACK); + + DrawText(TextFormat("Hit Pos: %3.2f %3.2f %3.2f", + collision.point.x, + collision.point.y, + collision.point.z), 10, ypos + 15, 10, BLACK); + + DrawText(TextFormat("Hit Norm: %3.2f %3.2f %3.2f", + collision.normal.x, + collision.normal.y, + collision.normal.z), 10, ypos + 30, 10, BLACK); + + if (triHitInfo.hit && TextIsEqual(hitObjectName, "Triangle")) + DrawText(TextFormat("Barycenter: %3.2f %3.2f %3.2f", bary.x, bary.y, bary.z), 10, ypos + 45, 10, BLACK); + } + + DrawText("Right click mouse to toggle camera controls", 10, 430, 10, GRAY); + + DrawText("(c) Turret 3D model by Alberto Cano", screenWidth - 200, screenHeight - 20, 10, GRAY); + + DrawFPS(10, 10); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadModel(tower); // Unload model + UnloadTexture(texture); // Unload texture + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/models/models_orthographic_projection.c b/examples/models/models_orthographic_projection.c new file mode 100644 index 0000000..098e4b2 --- /dev/null +++ b/examples/models/models_orthographic_projection.c @@ -0,0 +1,102 @@ +/******************************************************************************************* +* +* raylib [models] example - Show the difference between perspective and orthographic projection +* +* Example originally created with raylib 2.0, last time updated with raylib 3.7 +* +* Example contributed by Max Danielsson (@autious) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2018-2023 Max Danielsson (@autious) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#define FOVY_PERSPECTIVE 45.0f +#define WIDTH_ORTHOGRAPHIC 10.0f + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [models] example - geometric shapes"); + + // Define the camera to look into our 3d world + Camera camera = { { 0.0f, 10.0f, 10.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 1.0f, 0.0f }, FOVY_PERSPECTIVE, CAMERA_PERSPECTIVE }; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + if (IsKeyPressed(KEY_SPACE)) + { + if (camera.projection == CAMERA_PERSPECTIVE) + { + camera.fovy = WIDTH_ORTHOGRAPHIC; + camera.projection = CAMERA_ORTHOGRAPHIC; + } + else + { + camera.fovy = FOVY_PERSPECTIVE; + camera.projection = CAMERA_PERSPECTIVE; + } + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + + DrawCube((Vector3){-4.0f, 0.0f, 2.0f}, 2.0f, 5.0f, 2.0f, RED); + DrawCubeWires((Vector3){-4.0f, 0.0f, 2.0f}, 2.0f, 5.0f, 2.0f, GOLD); + DrawCubeWires((Vector3){-4.0f, 0.0f, -2.0f}, 3.0f, 6.0f, 2.0f, MAROON); + + DrawSphere((Vector3){-1.0f, 0.0f, -2.0f}, 1.0f, GREEN); + DrawSphereWires((Vector3){1.0f, 0.0f, 2.0f}, 2.0f, 16, 16, LIME); + + DrawCylinder((Vector3){4.0f, 0.0f, -2.0f}, 1.0f, 2.0f, 3.0f, 4, SKYBLUE); + DrawCylinderWires((Vector3){4.0f, 0.0f, -2.0f}, 1.0f, 2.0f, 3.0f, 4, DARKBLUE); + DrawCylinderWires((Vector3){4.5f, -1.0f, 2.0f}, 1.0f, 1.0f, 2.0f, 6, BROWN); + + DrawCylinder((Vector3){1.0f, 0.0f, -4.0f}, 0.0f, 1.5f, 3.0f, 8, GOLD); + DrawCylinderWires((Vector3){1.0f, 0.0f, -4.0f}, 0.0f, 1.5f, 3.0f, 8, PINK); + + DrawGrid(10, 1.0f); // Draw a grid + + EndMode3D(); + + DrawText("Press Spacebar to switch camera type", 10, GetScreenHeight() - 30, 20, DARKGRAY); + + if (camera.projection == CAMERA_ORTHOGRAPHIC) DrawText("ORTHOGRAPHIC", 10, 40, 20, BLACK); + else if (camera.projection == CAMERA_PERSPECTIVE) DrawText("PERSPECTIVE", 10, 40, 20, BLACK); + + DrawFPS(10, 10); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/models/models_rlgl_solar_system.c b/examples/models/models_rlgl_solar_system.c new file mode 100644 index 0000000..e458036 --- /dev/null +++ b/examples/models/models_rlgl_solar_system.c @@ -0,0 +1,172 @@ +/******************************************************************************************* +* +* raylib [models] example - rlgl module usage with push/pop matrix transformations +* +* NOTE: This example uses [rlgl] module functionality (pseudo-OpenGL 1.1 style coding) +* +* Example originally created with raylib 2.5, last time updated with raylib 4.0 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2018-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" +#include "rlgl.h" + +#include // Required for: cosf(), sinf() + +//------------------------------------------------------------------------------------ +// Module Functions Declaration +//------------------------------------------------------------------------------------ +void DrawSphereBasic(Color color); // Draw sphere without any matrix transformation + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + const float sunRadius = 4.0f; + const float earthRadius = 0.6f; + const float earthOrbitRadius = 8.0f; + const float moonRadius = 0.16f; + const float moonOrbitRadius = 1.5f; + + InitWindow(screenWidth, screenHeight, "raylib [models] example - rlgl module usage with push/pop matrix transformations"); + + // Define the camera to look into our 3d world + Camera camera = { 0 }; + camera.position = (Vector3){ 16.0f, 16.0f, 16.0f }; // Camera position + camera.target = (Vector3){ 0.0f, 0.0f, 0.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 45.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera projection type + + float rotationSpeed = 0.2f; // General system rotation speed + + float earthRotation = 0.0f; // Rotation of earth around itself (days) in degrees + float earthOrbitRotation = 0.0f; // Rotation of earth around the Sun (years) in degrees + float moonRotation = 0.0f; // Rotation of moon around itself + float moonOrbitRotation = 0.0f; // Rotation of moon around earth in degrees + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + UpdateCamera(&camera, CAMERA_ORBITAL); + + earthRotation += (5.0f*rotationSpeed); + earthOrbitRotation += (365/360.0f*(5.0f*rotationSpeed)*rotationSpeed); + moonRotation += (2.0f*rotationSpeed); + moonOrbitRotation += (8.0f*rotationSpeed); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + + rlPushMatrix(); + rlScalef(sunRadius, sunRadius, sunRadius); // Scale Sun + DrawSphereBasic(GOLD); // Draw the Sun + rlPopMatrix(); + + rlPushMatrix(); + rlRotatef(earthOrbitRotation, 0.0f, 1.0f, 0.0f); // Rotation for Earth orbit around Sun + rlTranslatef(earthOrbitRadius, 0.0f, 0.0f); // Translation for Earth orbit + + rlPushMatrix(); + rlRotatef(earthRotation, 0.25, 1.0, 0.0); // Rotation for Earth itself + rlScalef(earthRadius, earthRadius, earthRadius);// Scale Earth + + DrawSphereBasic(BLUE); // Draw the Earth + rlPopMatrix(); + + rlRotatef(moonOrbitRotation, 0.0f, 1.0f, 0.0f); // Rotation for Moon orbit around Earth + rlTranslatef(moonOrbitRadius, 0.0f, 0.0f); // Translation for Moon orbit + rlRotatef(moonRotation, 0.0f, 1.0f, 0.0f); // Rotation for Moon itself + rlScalef(moonRadius, moonRadius, moonRadius); // Scale Moon + + DrawSphereBasic(LIGHTGRAY); // Draw the Moon + rlPopMatrix(); + + // Some reference elements (not affected by previous matrix transformations) + DrawCircle3D((Vector3){ 0.0f, 0.0f, 0.0f }, earthOrbitRadius, (Vector3){ 1, 0, 0 }, 90.0f, Fade(RED, 0.5f)); + DrawGrid(20, 1.0f); + + EndMode3D(); + + DrawText("EARTH ORBITING AROUND THE SUN!", 400, 10, 20, MAROON); + DrawFPS(10, 10); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} + +//-------------------------------------------------------------------------------------------- +// Module Functions Definitions (local) +//-------------------------------------------------------------------------------------------- + +// Draw sphere without any matrix transformation +// NOTE: Sphere is drawn in world position ( 0, 0, 0 ) with radius 1.0f +void DrawSphereBasic(Color color) +{ + int rings = 16; + int slices = 16; + + // Make sure there is enough space in the internal render batch + // buffer to store all required vertex, batch is reseted if required + rlCheckRenderBatchLimit((rings + 2)*slices*6); + + rlBegin(RL_TRIANGLES); + rlColor4ub(color.r, color.g, color.b, color.a); + + for (int i = 0; i < (rings + 2); i++) + { + for (int j = 0; j < slices; j++) + { + rlVertex3f(cosf(DEG2RAD*(270+(180/(rings + 1))*i))*sinf(DEG2RAD*(j*360/slices)), + sinf(DEG2RAD*(270+(180/(rings + 1))*i)), + cosf(DEG2RAD*(270+(180/(rings + 1))*i))*cosf(DEG2RAD*(j*360/slices))); + rlVertex3f(cosf(DEG2RAD*(270+(180/(rings + 1))*(i+1)))*sinf(DEG2RAD*((j+1)*360/slices)), + sinf(DEG2RAD*(270+(180/(rings + 1))*(i+1))), + cosf(DEG2RAD*(270+(180/(rings + 1))*(i+1)))*cosf(DEG2RAD*((j+1)*360/slices))); + rlVertex3f(cosf(DEG2RAD*(270+(180/(rings + 1))*(i+1)))*sinf(DEG2RAD*(j*360/slices)), + sinf(DEG2RAD*(270+(180/(rings + 1))*(i+1))), + cosf(DEG2RAD*(270+(180/(rings + 1))*(i+1)))*cosf(DEG2RAD*(j*360/slices))); + + rlVertex3f(cosf(DEG2RAD*(270+(180/(rings + 1))*i))*sinf(DEG2RAD*(j*360/slices)), + sinf(DEG2RAD*(270+(180/(rings + 1))*i)), + cosf(DEG2RAD*(270+(180/(rings + 1))*i))*cosf(DEG2RAD*(j*360/slices))); + rlVertex3f(cosf(DEG2RAD*(270+(180/(rings + 1))*(i)))*sinf(DEG2RAD*((j+1)*360/slices)), + sinf(DEG2RAD*(270+(180/(rings + 1))*(i))), + cosf(DEG2RAD*(270+(180/(rings + 1))*(i)))*cosf(DEG2RAD*((j+1)*360/slices))); + rlVertex3f(cosf(DEG2RAD*(270+(180/(rings + 1))*(i+1)))*sinf(DEG2RAD*((j+1)*360/slices)), + sinf(DEG2RAD*(270+(180/(rings + 1))*(i+1))), + cosf(DEG2RAD*(270+(180/(rings + 1))*(i+1)))*cosf(DEG2RAD*((j+1)*360/slices))); + } + } + rlEnd(); +} diff --git a/examples/models/models_skybox.c b/examples/models/models_skybox.c new file mode 100644 index 0000000..34616de --- /dev/null +++ b/examples/models/models_skybox.c @@ -0,0 +1,271 @@ +/******************************************************************************************* +* +* raylib [models] example - Skybox loading and drawing +* +* Example originally created with raylib 1.8, last time updated with raylib 4.0 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2017-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#include "rlgl.h" +#include "raymath.h" // Required for: MatrixPerspective(), MatrixLookAt() + +#if defined(PLATFORM_DESKTOP) + #define GLSL_VERSION 330 +#else // PLATFORM_RPI, PLATFORM_ANDROID, PLATFORM_WEB + #define GLSL_VERSION 100 +#endif + +// Generate cubemap (6 faces) from equirectangular (panorama) texture +static TextureCubemap GenTextureCubemap(Shader shader, Texture2D panorama, int size, int format); + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [models] example - skybox loading and drawing"); + + // Define the camera to look into our 3d world + Camera camera = { 0 }; + camera.position = (Vector3){ 1.0f, 1.0f, 1.0f }; // Camera position + camera.target = (Vector3){ 4.0f, 1.0f, 4.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 45.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera projection type + + // Load skybox model + Mesh cube = GenMeshCube(1.0f, 1.0f, 1.0f); + Model skybox = LoadModelFromMesh(cube); + + bool useHDR = true; + + // Load skybox shader and set required locations + // NOTE: Some locations are automatically set at shader loading + skybox.materials[0].shader = LoadShader(TextFormat("resources/shaders/glsl%i/skybox.vs", GLSL_VERSION), + TextFormat("resources/shaders/glsl%i/skybox.fs", GLSL_VERSION)); + + SetShaderValue(skybox.materials[0].shader, GetShaderLocation(skybox.materials[0].shader, "environmentMap"), (int[1]){ MATERIAL_MAP_CUBEMAP }, SHADER_UNIFORM_INT); + SetShaderValue(skybox.materials[0].shader, GetShaderLocation(skybox.materials[0].shader, "doGamma"), (int[1]) { useHDR ? 1 : 0 }, SHADER_UNIFORM_INT); + SetShaderValue(skybox.materials[0].shader, GetShaderLocation(skybox.materials[0].shader, "vflipped"), (int[1]){ useHDR ? 1 : 0 }, SHADER_UNIFORM_INT); + + // Load cubemap shader and setup required shader locations + Shader shdrCubemap = LoadShader(TextFormat("resources/shaders/glsl%i/cubemap.vs", GLSL_VERSION), + TextFormat("resources/shaders/glsl%i/cubemap.fs", GLSL_VERSION)); + + SetShaderValue(shdrCubemap, GetShaderLocation(shdrCubemap, "equirectangularMap"), (int[1]){ 0 }, SHADER_UNIFORM_INT); + + char skyboxFileName[256] = { 0 }; + + Texture2D panorama; + + if (useHDR) + { + TextCopy(skyboxFileName, "resources/dresden_square_2k.hdr"); + + // Load HDR panorama (sphere) texture + panorama = LoadTexture(skyboxFileName); + + // Generate cubemap (texture with 6 quads-cube-mapping) from panorama HDR texture + // NOTE 1: New texture is generated rendering to texture, shader calculates the sphere->cube coordinates mapping + // NOTE 2: It seems on some Android devices WebGL, fbo does not properly support a FLOAT-based attachment, + // despite texture can be successfully created.. so using PIXELFORMAT_UNCOMPRESSED_R8G8B8A8 instead of PIXELFORMAT_UNCOMPRESSED_R32G32B32A32 + skybox.materials[0].maps[MATERIAL_MAP_CUBEMAP].texture = GenTextureCubemap(shdrCubemap, panorama, 1024, PIXELFORMAT_UNCOMPRESSED_R8G8B8A8); + + //UnloadTexture(panorama); // Texture not required anymore, cubemap already generated + } + else + { + Image img = LoadImage("resources/skybox.png"); + skybox.materials[0].maps[MATERIAL_MAP_CUBEMAP].texture = LoadTextureCubemap(img, CUBEMAP_LAYOUT_AUTO_DETECT); // CUBEMAP_LAYOUT_PANORAMA + UnloadImage(img); + } + + DisableCursor(); // Limit cursor to relative movement inside the window + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + UpdateCamera(&camera, CAMERA_FIRST_PERSON); + + // Load new cubemap texture on drag&drop + if (IsFileDropped()) + { + FilePathList droppedFiles = LoadDroppedFiles(); + + if (droppedFiles.count == 1) // Only support one file dropped + { + if (IsFileExtension(droppedFiles.paths[0], ".png;.jpg;.hdr;.bmp;.tga")) + { + // Unload current cubemap texture and load new one + UnloadTexture(skybox.materials[0].maps[MATERIAL_MAP_CUBEMAP].texture); + if (useHDR) + { + Texture2D panorama = LoadTexture(droppedFiles.paths[0]); + + // Generate cubemap from panorama texture + skybox.materials[0].maps[MATERIAL_MAP_CUBEMAP].texture = GenTextureCubemap(shdrCubemap, panorama, 1024, PIXELFORMAT_UNCOMPRESSED_R8G8B8A8); + UnloadTexture(panorama); + } + else + { + Image img = LoadImage(droppedFiles.paths[0]); + skybox.materials[0].maps[MATERIAL_MAP_CUBEMAP].texture = LoadTextureCubemap(img, CUBEMAP_LAYOUT_AUTO_DETECT); + UnloadImage(img); + } + + TextCopy(skyboxFileName, droppedFiles.paths[0]); + } + } + + UnloadDroppedFiles(droppedFiles); // Unload filepaths from memory + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + + // We are inside the cube, we need to disable backface culling! + rlDisableBackfaceCulling(); + rlDisableDepthMask(); + DrawModel(skybox, (Vector3){0, 0, 0}, 1.0f, WHITE); + rlEnableBackfaceCulling(); + rlEnableDepthMask(); + + DrawGrid(10, 1.0f); + + EndMode3D(); + + //DrawTextureEx(panorama, (Vector2){ 0, 0 }, 0.0f, 0.5f, WHITE); + + if (useHDR) DrawText(TextFormat("Panorama image from hdrihaven.com: %s", GetFileName(skyboxFileName)), 10, GetScreenHeight() - 20, 10, BLACK); + else DrawText(TextFormat(": %s", GetFileName(skyboxFileName)), 10, GetScreenHeight() - 20, 10, BLACK); + + DrawFPS(10, 10); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadShader(skybox.materials[0].shader); + UnloadTexture(skybox.materials[0].maps[MATERIAL_MAP_CUBEMAP].texture); + + UnloadModel(skybox); // Unload skybox model + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} + +// Generate cubemap texture from HDR texture +static TextureCubemap GenTextureCubemap(Shader shader, Texture2D panorama, int size, int format) +{ + TextureCubemap cubemap = { 0 }; + + rlDisableBackfaceCulling(); // Disable backface culling to render inside the cube + + // STEP 1: Setup framebuffer + //------------------------------------------------------------------------------------------ + unsigned int rbo = rlLoadTextureDepth(size, size, true); + cubemap.id = rlLoadTextureCubemap(0, size, format); + + unsigned int fbo = rlLoadFramebuffer(size, size); + rlFramebufferAttach(fbo, rbo, RL_ATTACHMENT_DEPTH, RL_ATTACHMENT_RENDERBUFFER, 0); + rlFramebufferAttach(fbo, cubemap.id, RL_ATTACHMENT_COLOR_CHANNEL0, RL_ATTACHMENT_CUBEMAP_POSITIVE_X, 0); + + // Check if framebuffer is complete with attachments (valid) + if (rlFramebufferComplete(fbo)) TraceLog(LOG_INFO, "FBO: [ID %i] Framebuffer object created successfully", fbo); + //------------------------------------------------------------------------------------------ + + // STEP 2: Draw to framebuffer + //------------------------------------------------------------------------------------------ + // NOTE: Shader is used to convert HDR equirectangular environment map to cubemap equivalent (6 faces) + rlEnableShader(shader.id); + + // Define projection matrix and send it to shader + Matrix matFboProjection = MatrixPerspective(90.0*DEG2RAD, 1.0, RL_CULL_DISTANCE_NEAR, RL_CULL_DISTANCE_FAR); + rlSetUniformMatrix(shader.locs[SHADER_LOC_MATRIX_PROJECTION], matFboProjection); + + // Define view matrix for every side of the cubemap + Matrix fboViews[6] = { + MatrixLookAt((Vector3){ 0.0f, 0.0f, 0.0f }, (Vector3){ 1.0f, 0.0f, 0.0f }, (Vector3){ 0.0f, -1.0f, 0.0f }), + MatrixLookAt((Vector3){ 0.0f, 0.0f, 0.0f }, (Vector3){ -1.0f, 0.0f, 0.0f }, (Vector3){ 0.0f, -1.0f, 0.0f }), + MatrixLookAt((Vector3){ 0.0f, 0.0f, 0.0f }, (Vector3){ 0.0f, 1.0f, 0.0f }, (Vector3){ 0.0f, 0.0f, 1.0f }), + MatrixLookAt((Vector3){ 0.0f, 0.0f, 0.0f }, (Vector3){ 0.0f, -1.0f, 0.0f }, (Vector3){ 0.0f, 0.0f, -1.0f }), + MatrixLookAt((Vector3){ 0.0f, 0.0f, 0.0f }, (Vector3){ 0.0f, 0.0f, 1.0f }, (Vector3){ 0.0f, -1.0f, 0.0f }), + MatrixLookAt((Vector3){ 0.0f, 0.0f, 0.0f }, (Vector3){ 0.0f, 0.0f, -1.0f }, (Vector3){ 0.0f, -1.0f, 0.0f }) + }; + + rlViewport(0, 0, size, size); // Set viewport to current fbo dimensions + + // Activate and enable texture for drawing to cubemap faces + rlActiveTextureSlot(0); + rlEnableTexture(panorama.id); + + for (int i = 0; i < 6; i++) + { + // Set the view matrix for the current cube face + rlSetUniformMatrix(shader.locs[SHADER_LOC_MATRIX_VIEW], fboViews[i]); + + // Select the current cubemap face attachment for the fbo + // WARNING: This function by default enables->attach->disables fbo!!! + rlFramebufferAttach(fbo, cubemap.id, RL_ATTACHMENT_COLOR_CHANNEL0, RL_ATTACHMENT_CUBEMAP_POSITIVE_X + i, 0); + rlEnableFramebuffer(fbo); + + // Load and draw a cube, it uses the current enabled texture + rlClearScreenBuffers(); + rlLoadDrawCube(); + + // ALTERNATIVE: Try to use internal batch system to draw the cube instead of rlLoadDrawCube + // for some reason this method does not work, maybe due to cube triangles definition? normals pointing out? + // TODO: Investigate this issue... + //rlSetTexture(panorama.id); // WARNING: It must be called after enabling current framebuffer if using internal batch system! + //rlClearScreenBuffers(); + //DrawCubeV(Vector3Zero(), Vector3One(), WHITE); + //rlDrawRenderBatchActive(); + } + //------------------------------------------------------------------------------------------ + + // STEP 3: Unload framebuffer and reset state + //------------------------------------------------------------------------------------------ + rlDisableShader(); // Unbind shader + rlDisableTexture(); // Unbind texture + rlDisableFramebuffer(); // Unbind framebuffer + rlUnloadFramebuffer(fbo); // Unload framebuffer (and automatically attached depth texture/renderbuffer) + + // Reset viewport dimensions to default + rlViewport(0, 0, rlGetFramebufferWidth(), rlGetFramebufferHeight()); + rlEnableBackfaceCulling(); + //------------------------------------------------------------------------------------------ + + cubemap.width = size; + cubemap.height = size; + cubemap.mipmaps = 1; + cubemap.format = format; + + return cubemap; +} diff --git a/examples/models/models_waving_cubes.c b/examples/models/models_waving_cubes.c new file mode 100644 index 0000000..d382c99 --- /dev/null +++ b/examples/models/models_waving_cubes.c @@ -0,0 +1,117 @@ +/******************************************************************************************* +* +* raylib [models] example - Waving cubes +* +* Example originally created with raylib 2.5, last time updated with raylib 3.7 +* +* Example contributed by Codecat (@codecat) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2019-2023 Codecat (@codecat) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#include // Required for: sinf() + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main() +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [models] example - waving cubes"); + + // Initialize the camera + Camera3D camera = { 0 }; + camera.position = (Vector3){ 30.0f, 20.0f, 30.0f }; // Camera position + camera.target = (Vector3){ 0.0f, 0.0f, 0.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 70.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera projection type + + // Specify the amount of blocks in each direction + const int numBlocks = 15; + + SetTargetFPS(60); + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + double time = GetTime(); + + // Calculate time scale for cube position and size + float scale = (2.0f + (float)sin(time))*0.7f; + + // Move camera around the scene + double cameraTime = time*0.3; + camera.position.x = (float)cos(cameraTime)*40.0f; + camera.position.z = (float)sin(cameraTime)*40.0f; + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + + DrawGrid(10, 5.0f); + + for (int x = 0; x < numBlocks; x++) + { + for (int y = 0; y < numBlocks; y++) + { + for (int z = 0; z < numBlocks; z++) + { + // Scale of the blocks depends on x/y/z positions + float blockScale = (x + y + z)/30.0f; + + // Scatter makes the waving effect by adding blockScale over time + float scatter = sinf(blockScale*20.0f + (float)(time*4.0f)); + + // Calculate the cube position + Vector3 cubePos = { + (float)(x - numBlocks/2)*(scale*3.0f) + scatter, + (float)(y - numBlocks/2)*(scale*2.0f) + scatter, + (float)(z - numBlocks/2)*(scale*3.0f) + scatter + }; + + // Pick a color with a hue depending on cube position for the rainbow color effect + Color cubeColor = ColorFromHSV((float)(((x + y + z)*18)%360), 0.75f, 0.9f); + + // Calculate cube size + float cubeSize = (2.4f - scale)*blockScale; + + // And finally, draw the cube! + DrawCube(cubePos, cubeSize, cubeSize, cubeSize, cubeColor); + } + } + } + + EndMode3D(); + + DrawFPS(10, 10); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/models/models_yaw_pitch_roll.c b/examples/models/models_yaw_pitch_roll.c new file mode 100644 index 0000000..611ee31 --- /dev/null +++ b/examples/models/models_yaw_pitch_roll.c @@ -0,0 +1,122 @@ +/******************************************************************************************* +* +* raylib [models] example - Plane rotations (yaw, pitch, roll) +* +* Example originally created with raylib 1.8, last time updated with raylib 4.0 +* +* Example contributed by Berni (@Berni8k) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2017-2023 Berni (@Berni8k) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#include "raymath.h" // Required for: MatrixRotateXYZ() + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + //SetConfigFlags(FLAG_MSAA_4X_HINT | FLAG_WINDOW_HIGHDPI); + InitWindow(screenWidth, screenHeight, "raylib [models] example - plane rotations (yaw, pitch, roll)"); + + Camera camera = { 0 }; + camera.position = (Vector3){ 0.0f, 50.0f, -120.0f };// Camera position perspective + camera.target = (Vector3){ 0.0f, 0.0f, 0.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 30.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera type + + Model model = LoadModel("resources/models/obj/plane.obj"); // Load model + Texture2D texture = LoadTexture("resources/models/obj/plane_diffuse.png"); // Load model texture + model.materials[0].maps[MATERIAL_MAP_DIFFUSE].texture = texture; // Set map diffuse texture + + float pitch = 0.0f; + float roll = 0.0f; + float yaw = 0.0f; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // Plane pitch (x-axis) controls + if (IsKeyDown(KEY_DOWN)) pitch += 0.6f; + else if (IsKeyDown(KEY_UP)) pitch -= 0.6f; + else + { + if (pitch > 0.3f) pitch -= 0.3f; + else if (pitch < -0.3f) pitch += 0.3f; + } + + // Plane yaw (y-axis) controls + if (IsKeyDown(KEY_S)) yaw -= 1.0f; + else if (IsKeyDown(KEY_A)) yaw += 1.0f; + else + { + if (yaw > 0.0f) yaw -= 0.5f; + else if (yaw < 0.0f) yaw += 0.5f; + } + + // Plane roll (z-axis) controls + if (IsKeyDown(KEY_LEFT)) roll -= 1.0f; + else if (IsKeyDown(KEY_RIGHT)) roll += 1.0f; + else + { + if (roll > 0.0f) roll -= 0.5f; + else if (roll < 0.0f) roll += 0.5f; + } + + // Tranformation matrix for rotations + model.transform = MatrixRotateXYZ((Vector3){ DEG2RAD*pitch, DEG2RAD*yaw, DEG2RAD*roll }); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + // Draw 3D model (recomended to draw 3D always before 2D) + BeginMode3D(camera); + + DrawModel(model, (Vector3){ 0.0f, -8.0f, 0.0f }, 1.0f, WHITE); // Draw 3d model with texture + DrawGrid(10, 10.0f); + + EndMode3D(); + + // Draw controls info + DrawRectangle(30, 370, 260, 70, Fade(GREEN, 0.5f)); + DrawRectangleLines(30, 370, 260, 70, Fade(DARKGREEN, 0.5f)); + DrawText("Pitch controlled with: KEY_UP / KEY_DOWN", 40, 380, 10, DARKGRAY); + DrawText("Roll controlled with: KEY_LEFT / KEY_RIGHT", 40, 400, 10, DARKGRAY); + DrawText("Yaw controlled with: KEY_A / KEY_S", 40, 420, 10, DARKGRAY); + + DrawText("(c) WWI Plane Model created by GiaHanLam", screenWidth - 240, screenHeight - 20, 10, DARKGRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadModel(model); // Unload model data + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/models/resources/LICENSE.md b/examples/models/resources/LICENSE.md new file mode 100644 index 0000000..d7f85c0 --- /dev/null +++ b/examples/models/resources/LICENSE.md @@ -0,0 +1,22 @@ +| resource | author | licence | notes | +| :------------------- | :---------: | :------ | :---- | +| models/obj/castle.obj,
models/obj/castle_diffuse.png | [Alberto Cano](https://www.artstation.com/albertocano) | [CC-BY-NC](https://creativecommons.org/licenses/by-nc/4.0/legalcode) | - | +| models/obj/bridge.obj,
models/obj/bridge_diffuse.png | [Alberto Cano](https://www.artstation.com/albertocano) | [CC-BY-NC](https://creativecommons.org/licenses/by-nc/4.0/legalcode) | - | +| models/obj/house.obj,
models/obj/house_diffuse.png | [Alberto Cano](https://www.artstation.com/albertocano) | [CC-BY-NC](https://creativecommons.org/licenses/by-nc/4.0/legalcode) | - | +| models/obj/market.obj,
models/obj/market_diffuse.png | [Alberto Cano](https://www.artstation.com/albertocano) | [CC-BY-NC](https://creativecommons.org/licenses/by-nc/4.0/legalcode) | - | +| models/obj/turret.obj,
models/obj/turret_diffuse.png | [Alberto Cano](https://www.artstation.com/albertocano) | [CC-BY-NC](https://creativecommons.org/licenses/by-nc/4.0/legalcode) | - | +| models/obj/well.obj,
models/obj/well_diffuse.png | [Alberto Cano](https://www.artstation.com/albertocano) | [CC-BY-NC](https://creativecommons.org/licenses/by-nc/4.0/legalcode) | - | +| models/obj/cube.obj,
models/obj/cube_diffuse.png | [@raysan5](https://github.com/raysan5) | [CC0](https://creativecommons.org/publicdomain/zero/1.0/) | - | +| models/obj/plane.obj,
models/obj/plane_diffuse.png | [GiaHanLam](https://sketchfab.com/GiaHanLam) | [CC-BY](https://creativecommons.org/licenses/by/4.0/) | Used by: [`models_yaw_pitch_roll.c`](https://github.com/raysan5/raylib/blob/master/examples/models/models_yaw_pitch_roll.c) +| models/iqm/guy.iqm,
models/iqm/guyanim.iqm,
models/iqm/guytex.png,
models/iqm/guy.blend | [@culacant](https://github.com/culacant) | [CC0](https://creativecommons.org/publicdomain/zero/1.0/) | - | +| models/gltf/robot.glb,
models/gltf/robot.blend | [CC0](https://creativecommons.org/publicdomain/zero/1.0/) | - | +| models/vox/chr_knight.vox | ❔ | ❔ | - | +| models/vox/chr_sword.vox | ❔ | ❔ | - | +| models/vox/monu9.vox | ❔ | ❔ | - | +| billboard.png | [@emegeme](https://github.com/emegeme) | [CC0](https://creativecommons.org/publicdomain/zero/1.0/) | - | +| cubicmap.png | [@raysan5](https://github.com/raysan5) | [CC0](https://creativecommons.org/publicdomain/zero/1.0/) | - | +| cubicmap_atlas.png | [@emegeme](https://github.com/emegeme) | [CC0](https://creativecommons.org/publicdomain/zero/1.0/) | - | +| heightmap.png | [@raysan5](https://github.com/raysan5) | [CC0](https://creativecommons.org/publicdomain/zero/1.0/) | - | +| dresden_square_1k.hdr | [HDRIHaven](https://hdrihaven.com/hdri/?h=dresden_square) | [CC0](https://hdrihaven.com/p/license.php) | - | +| dresden_square_2k.hdr | [HDRIHaven](https://hdrihaven.com/hdri/?h=dresden_square) | [CC0](https://hdrihaven.com/p/license.php) | - | +| skybox.png | ❔ | ❔ | - | \ No newline at end of file diff --git a/examples/models/resources/billboard.png b/examples/models/resources/billboard.png new file mode 100644 index 0000000..8c99118 Binary files /dev/null and b/examples/models/resources/billboard.png differ diff --git a/examples/models/resources/cubicmap.png b/examples/models/resources/cubicmap.png new file mode 100644 index 0000000..392dbf2 Binary files /dev/null and b/examples/models/resources/cubicmap.png differ diff --git a/examples/models/resources/cubicmap_atlas.png b/examples/models/resources/cubicmap_atlas.png new file mode 100644 index 0000000..9fc404a Binary files /dev/null and b/examples/models/resources/cubicmap_atlas.png differ diff --git a/examples/models/resources/dresden_square_1k.hdr b/examples/models/resources/dresden_square_1k.hdr new file mode 100644 index 0000000..b6d0e77 Binary files /dev/null and b/examples/models/resources/dresden_square_1k.hdr differ diff --git a/examples/models/resources/dresden_square_2k.hdr b/examples/models/resources/dresden_square_2k.hdr new file mode 100644 index 0000000..60b4a4c Binary files /dev/null and b/examples/models/resources/dresden_square_2k.hdr differ diff --git a/examples/models/resources/heightmap.png b/examples/models/resources/heightmap.png new file mode 100644 index 0000000..474db87 Binary files /dev/null and b/examples/models/resources/heightmap.png differ diff --git a/examples/models/resources/models/gltf/LICENSE b/examples/models/resources/models/gltf/LICENSE new file mode 100644 index 0000000..3c9a38d --- /dev/null +++ b/examples/models/resources/models/gltf/LICENSE @@ -0,0 +1,2 @@ +robot.glb model by @Quaternius (https://www.patreon.com/quaternius) +Licensed under CC0 1.0 Universal (CC0 1.0) - Public Domain Dedication (https://creativecommons.org/publicdomain/zero/1.0/) \ No newline at end of file diff --git a/examples/models/resources/models/gltf/raylib_logo_3d.glb b/examples/models/resources/models/gltf/raylib_logo_3d.glb new file mode 100644 index 0000000..4fc56ad Binary files /dev/null and b/examples/models/resources/models/gltf/raylib_logo_3d.glb differ diff --git a/examples/models/resources/models/gltf/robot.blend b/examples/models/resources/models/gltf/robot.blend new file mode 100644 index 0000000..efe43c5 Binary files /dev/null and b/examples/models/resources/models/gltf/robot.blend differ diff --git a/examples/models/resources/models/gltf/robot.glb b/examples/models/resources/models/gltf/robot.glb new file mode 100644 index 0000000..549011e Binary files /dev/null and b/examples/models/resources/models/gltf/robot.glb differ diff --git a/examples/models/resources/models/iqm/guy.blend b/examples/models/resources/models/iqm/guy.blend new file mode 100644 index 0000000..3880467 Binary files /dev/null and b/examples/models/resources/models/iqm/guy.blend differ diff --git a/examples/models/resources/models/iqm/guy.iqm b/examples/models/resources/models/iqm/guy.iqm new file mode 100644 index 0000000..36bed5e Binary files /dev/null and b/examples/models/resources/models/iqm/guy.iqm differ diff --git a/examples/models/resources/models/iqm/guyanim.iqm b/examples/models/resources/models/iqm/guyanim.iqm new file mode 100644 index 0000000..824a68a Binary files /dev/null and b/examples/models/resources/models/iqm/guyanim.iqm differ diff --git a/examples/models/resources/models/iqm/guytex.png b/examples/models/resources/models/iqm/guytex.png new file mode 100644 index 0000000..05a58ee Binary files /dev/null and b/examples/models/resources/models/iqm/guytex.png differ diff --git a/examples/models/resources/models/m3d/cesium_man.m3d b/examples/models/resources/models/m3d/cesium_man.m3d new file mode 100644 index 0000000..ddf9f50 Binary files /dev/null and b/examples/models/resources/models/m3d/cesium_man.m3d differ diff --git a/examples/models/resources/models/m3d/seagull.m3d b/examples/models/resources/models/m3d/seagull.m3d new file mode 100644 index 0000000..8236820 Binary files /dev/null and b/examples/models/resources/models/m3d/seagull.m3d differ diff --git a/examples/models/resources/models/m3d/suzanne.m3d b/examples/models/resources/models/m3d/suzanne.m3d new file mode 100644 index 0000000..9bc64d7 Binary files /dev/null and b/examples/models/resources/models/m3d/suzanne.m3d differ diff --git a/examples/models/resources/models/obj/bridge.obj b/examples/models/resources/models/obj/bridge.obj new file mode 100644 index 0000000..ad283f1 --- /dev/null +++ b/examples/models/resources/models/obj/bridge.obj @@ -0,0 +1,1725 @@ +# (c) 2018 Medieval Assets Pack by Alberto Cano +# Licensed as Creative Commons Attribution-NonCommercial 4.0 + +# +# object bridge +# + +v 3.9982 -0.0023 11.9925 +v 4.0712 0.0000 6.5164 +v 3.9982 2.2042 6.5164 +v 3.9982 1.3553 8.7417 +v 4.1679 -0.0000 4.0663 +v 4.1413 1.0540 4.2689 +v 4.0712 2.8371 4.8031 +v 3.9982 2.2699 8.7359 +v 3.0685 2.2722 8.7359 +v 3.0685 0.9146 11.9866 +v 3.9982 0.9123 11.9866 +v 4.3287 2.2355 3.4001 +v 4.3287 3.3078 3.4952 +v 0.0000 0.0000 4.0663 +v 0.0000 1.4511 3.3640 +v 4.3287 1.4511 3.3640 +v 4.4633 3.0558 2.1675 +v 4.4633 3.7271 2.1035 +v 0.0000 2.4236 2.1918 +v 4.4633 2.4236 2.1918 +v 4.5231 3.3391 0.8674 +v 4.5231 3.8066 0.8674 +v 0.0000 2.7841 0.8674 +v 4.5231 2.7841 0.8674 +v 3.0685 2.2065 6.5164 +v 3.1415 2.8394 4.8031 +v 0.0000 2.8394 4.8031 +v 0.0000 2.2065 6.5164 +v 3.0685 1.3576 8.7417 +v 0.0000 1.3576 8.7417 +v 3.3990 3.3101 3.4952 +v 0.0000 3.3101 3.4952 +v 3.5336 3.7294 2.1035 +v 0.0000 3.7294 2.1035 +v 3.5934 3.8066 0.8674 +v 0.0000 3.8066 0.8674 +v 4.5862 3.4521 0.0062 +v 4.5862 3.8557 0.0062 +v 0.0000 2.9214 0.0062 +v 4.5862 2.9214 0.0062 +v 3.6565 3.8557 0.0062 +v 0.0000 3.8557 0.0062 +v 3.9982 1.3576 -8.7294 +v 3.9982 2.2065 -6.5040 +v 3.9982 0.0000 -6.5040 +v 3.9982 -0.0674 -11.9801 +v 4.0712 2.8394 -4.7908 +v 4.0712 1.0546 -4.2566 +v 4.0712 0.0000 -4.0540 +v 3.9982 0.8472 -11.9860 +v 3.0685 0.8472 -11.9860 +v 3.0685 2.2722 -8.7353 +v 3.9982 2.2722 -8.7353 +v 4.3287 3.3101 -3.4828 +v 4.3287 2.2361 -3.3877 +v 4.3287 1.4511 -3.3516 +v 0.0000 1.4511 -3.3516 +v 0.0000 0.0000 -4.0540 +v 4.4633 3.7294 -2.0911 +v 4.4633 3.0564 -2.1551 +v 4.4633 2.4236 -2.1794 +v 0.0000 2.4236 -2.1794 +v 4.5231 3.8066 -0.8551 +v 4.5231 3.3391 -0.8551 +v 4.5231 2.7841 -0.8551 +v 0.0000 2.7841 -0.8551 +v 0.0000 2.8394 -4.7908 +v 3.1415 2.8394 -4.7908 +v 3.0685 2.2065 -6.5040 +v 0.0000 2.2065 -6.5040 +v 3.0685 1.3576 -8.7294 +v 0.0000 1.3576 -8.7294 +v 0.0000 3.3101 -3.4828 +v 3.3990 3.3101 -3.4828 +v 0.0000 3.7294 -2.0911 +v 3.5336 3.7294 -2.0911 +v 0.0000 3.8066 -0.8551 +v 3.5934 3.8066 -0.8551 +v 0.0000 0.0000 11.9925 +v 3.0685 0.0000 11.9925 +v 3.9982 3.1188 6.5105 +v 4.0712 3.7517 4.7973 +v 3.1415 3.7540 4.7973 +v 3.0685 3.1211 6.5105 +v 4.3287 4.2224 3.4893 +v 3.3990 4.2247 3.4893 +v 4.4633 4.7189 1.8730 +v 3.5336 4.7213 1.8730 +v 4.5231 4.7213 0.8616 +v 3.5934 4.7213 0.8616 +v 4.5862 4.7213 0.0003 +v 3.6565 4.7213 0.0003 +v 3.0685 -0.0674 -11.9801 +v 0.0000 0.0000 -11.9801 +v 4.0712 3.7540 -4.7966 +v 3.9982 3.1211 -6.5099 +v 3.0685 3.1211 -6.5099 +v 3.1415 3.7540 -4.7966 +v 4.3287 4.2247 -3.4887 +v 3.3990 4.2247 -3.4887 +v 4.4633 4.7213 -1.8724 +v 3.5336 4.7213 -1.8724 +v 4.5231 4.7213 -0.8610 +v 3.5934 4.7213 -0.8610 +v 4.0914 1.3553 8.7417 +v 4.0914 2.2042 6.5164 +v 4.0914 3.1188 6.5105 +v 4.0914 2.2699 8.7359 +v 4.1643 2.8371 4.8031 +v 4.1643 3.7517 4.7973 +v 4.4218 3.3078 3.4952 +v 4.4218 4.2224 3.4893 +v 4.5564 3.7271 2.1035 +v 4.5564 4.7189 1.8730 +v 4.6162 3.8066 0.8674 +v 4.6163 4.7213 0.8616 +v 4.6793 3.8557 0.0062 +v 4.6793 4.7213 0.0003 +v 4.6162 3.8066 -0.8551 +v 4.6163 4.7213 -0.8610 +v 4.5564 3.7294 -2.0911 +v 4.5564 4.7213 -1.8724 +v 4.4218 3.3101 -3.4828 +v 4.4218 4.2247 -3.4887 +v 4.1643 2.8394 -4.7908 +v 4.1643 3.7540 -4.7966 +v 4.0914 2.2065 -6.5040 +v 4.0914 3.1211 -6.5099 +v 4.0914 1.3576 -8.7294 +v 4.0914 2.2722 -8.7353 +v 4.0913 -0.0674 -11.9801 +v 4.0914 0.8472 -11.9860 +v 3.9982 -0.0713 -13.3621 +v 3.0685 -0.0713 -13.3621 +v 3.0685 0.8434 -13.3680 +v 3.9982 0.8434 -13.3680 +v 3.0686 0.0039 13.3744 +v 3.9982 0.0016 13.3744 +v 3.9982 0.9162 13.3686 +v 3.0686 0.9185 13.3686 +v 4.0913 -0.0023 11.9925 +v 4.0914 0.9123 11.9866 +v 3.0685 1.8566 -11.9925 +v 3.9982 1.8566 -11.9925 +v 3.9982 1.8527 -13.3744 +v 3.0685 1.8527 -13.3744 +v 4.0913 -0.0713 -13.3621 +v 4.0914 0.8434 -13.3680 +v 4.0914 0.9162 13.3686 +v 4.0914 0.0016 13.3744 +v 4.0022 1.9216 11.9801 +v 3.0726 1.9239 11.9801 +v 3.0726 1.9278 13.3621 +v 4.0022 1.9255 13.3621 +v 4.3309 1.0532 -4.2736 +v 4.5388 2.3452 -3.4047 +v 4.5388 1.1804 -3.3687 +v 4.3102 -0.0008 -3.9892 +v 4.7395 3.1981 -2.1722 +v 4.7395 2.2978 -2.1965 +v 4.8125 3.4962 -0.8721 +v 4.8125 2.7824 -0.8721 +v 4.8215 3.5568 -0.0066 +v 4.8215 2.8673 -0.0066 +v 3.6673 0.0018 -3.9977 +v 3.8281 1.1836 -3.3772 +v 3.9627 2.3550 -2.2050 +v 4.0226 2.7850 -0.8806 +v 4.0856 2.8699 -0.0066 +v 4.5862 3.5594 -0.0066 +v 4.5231 3.4988 -0.8806 +v 4.4633 3.1460 -2.1807 +v 4.3287 2.3484 -3.4132 +v 4.0712 1.0557 -4.2821 +v 4.1503 -0.0013 -5.7369 +v 4.2574 1.0789 -5.6478 +v 3.9982 1.0815 -5.6563 +v 4.3309 1.0532 4.2604 +v 4.3102 -0.0008 3.9760 +v 4.5388 1.1804 3.3555 +v 4.5388 2.3452 3.3915 +v 4.7395 2.2978 2.1833 +v 4.7395 3.1981 2.1590 +v 4.8125 2.7824 0.8589 +v 4.8125 3.4962 0.8589 +v 3.6673 0.0018 3.9845 +v 3.8281 1.1836 3.3640 +v 3.9627 2.3550 2.1918 +v 4.0226 2.7850 0.8674 +v 4.5231 3.4988 0.8674 +v 4.4633 3.1460 2.1675 +v 4.3287 2.3484 3.4001 +v 4.1413 1.0557 4.2689 +v 4.2574 1.0789 5.6346 +v 4.1503 -0.0013 5.7237 +v 4.0712 1.0815 5.6346 +v 4.1764 4.0031 5.7280 +v 2.7107 4.0031 5.7280 +v 2.7107 4.0031 7.1178 +v 4.1764 4.0031 7.1178 +v 4.1764 0.0000 5.7280 +v 2.6101 0.0000 5.7280 +v 3.0500 2.0015 5.5403 +v 4.3606 2.0015 5.5403 +v 3.0500 2.0015 6.7032 +v 2.6101 0.0000 7.1178 +v 4.1764 0.0000 7.1178 +v 4.3606 2.0015 6.7032 +v 4.1764 4.0031 -5.7156 +v 4.1764 4.0031 -7.1054 +v 2.7107 4.0031 -7.1054 +v 2.7107 4.0031 -5.7156 +v 4.1764 -0.0000 -5.7156 +v 4.3606 2.0015 -5.5280 +v 3.0500 2.0015 -5.5280 +v 2.6101 -0.0000 -5.7156 +v 3.0500 2.0015 -6.6909 +v 2.6101 -0.0000 -7.1054 +v 4.3606 2.0015 -6.6909 +v 4.1764 -0.0000 -7.1054 +v -3.9982 -0.0023 11.9925 +v -3.9982 1.3553 8.7417 +v -3.9982 2.2042 6.5164 +v -4.0712 0.0000 6.5164 +v -4.0712 2.8371 4.8031 +v -4.1413 1.0540 4.2689 +v -4.1679 -0.0000 4.0663 +v -3.9982 2.2699 8.7359 +v -3.9982 0.9123 11.9866 +v -3.0685 0.9146 11.9866 +v -3.0685 2.2722 8.7359 +v -4.3287 3.3078 3.4952 +v -4.3287 2.2355 3.4001 +v -4.3287 1.4511 3.3640 +v -4.4633 3.7271 2.1035 +v -4.4633 3.0558 2.1675 +v -4.4633 2.4236 2.1918 +v -4.5231 3.8066 0.8674 +v -4.5231 3.3391 0.8674 +v -4.5231 2.7841 0.8674 +v -3.1415 2.8394 4.8031 +v -3.0685 2.2065 6.5164 +v -3.0685 1.3576 8.7417 +v -3.3990 3.3101 3.4952 +v -3.5336 3.7294 2.1035 +v -3.5934 3.8066 0.8674 +v -4.5862 3.8557 0.0062 +v -4.5862 3.4521 0.0062 +v -4.5862 2.9214 0.0062 +v -3.6565 3.8557 0.0062 +v -3.9982 1.3576 -8.7294 +v -3.9982 -0.0674 -11.9801 +v -3.9982 0.0000 -6.5040 +v -3.9982 2.2065 -6.5040 +v -4.0712 0.0000 -4.0540 +v -4.0712 1.0546 -4.2566 +v -4.0712 2.8394 -4.7908 +v -3.9982 0.8472 -11.9860 +v -3.9982 2.2722 -8.7353 +v -3.0685 2.2722 -8.7353 +v -3.0685 0.8472 -11.9860 +v -4.3287 2.2361 -3.3877 +v -4.3287 3.3101 -3.4828 +v -4.3287 1.4511 -3.3516 +v -4.4633 3.0564 -2.1551 +v -4.4633 3.7294 -2.0911 +v -4.4633 2.4236 -2.1794 +v -4.5231 3.3391 -0.8551 +v -4.5231 3.8066 -0.8551 +v -4.5231 2.7841 -0.8551 +v -3.0685 2.2065 -6.5040 +v -3.1415 2.8394 -4.7908 +v -3.0685 1.3576 -8.7294 +v -3.3990 3.3101 -3.4828 +v -3.5336 3.7294 -2.0911 +v -3.5934 3.8066 -0.8551 +v -3.0685 0.0000 11.9925 +v -3.1415 3.7540 4.7973 +v -4.0712 3.7517 4.7973 +v -3.9982 3.1188 6.5105 +v -3.0685 3.1211 6.5105 +v -3.3990 4.2247 3.4893 +v -4.3287 4.2224 3.4893 +v -3.5336 4.7213 1.8730 +v -4.4633 4.7189 1.8730 +v -3.5934 4.7213 0.8616 +v -4.5231 4.7213 0.8616 +v -3.6565 4.7213 0.0003 +v -4.5862 4.7213 0.0003 +v -3.0685 -0.0674 -11.9801 +v -3.0685 3.1211 -6.5099 +v -3.9982 3.1211 -6.5099 +v -4.0712 3.7540 -4.7966 +v -3.1415 3.7540 -4.7966 +v -4.3287 4.2247 -3.4887 +v -3.3990 4.2247 -3.4887 +v -4.4633 4.7213 -1.8724 +v -3.5336 4.7213 -1.8724 +v -4.5231 4.7213 -0.8610 +v -3.5934 4.7213 -0.8610 +v -4.0914 1.3553 8.7417 +v -4.0914 2.2699 8.7359 +v -4.0914 3.1188 6.5105 +v -4.0914 2.2042 6.5164 +v -4.1643 3.7517 4.7973 +v -4.1643 2.8371 4.8031 +v -4.4218 4.2224 3.4893 +v -4.4218 3.3078 3.4952 +v -4.5564 4.7189 1.8730 +v -4.5564 3.7271 2.1035 +v -4.6162 4.7213 0.8616 +v -4.6162 3.8066 0.8674 +v -4.6793 4.7213 0.0003 +v -4.6793 3.8557 0.0062 +v -4.6162 4.7213 -0.8610 +v -4.6162 3.8066 -0.8551 +v -4.5564 4.7213 -1.8724 +v -4.5564 3.7294 -2.0911 +v -4.4218 4.2247 -3.4887 +v -4.4218 3.3101 -3.4828 +v -4.1643 3.7540 -4.7966 +v -4.1643 2.8394 -4.7908 +v -4.0914 3.1211 -6.5099 +v -4.0914 2.2065 -6.5040 +v -4.0914 2.2722 -8.7353 +v -4.0914 1.3576 -8.7294 +v -4.0914 0.8472 -11.9860 +v -4.0913 -0.0674 -11.9801 +v -3.9982 -0.0713 -13.3621 +v -3.9982 0.8434 -13.3680 +v -3.0685 0.8434 -13.3680 +v -3.0685 -0.0713 -13.3621 +v -3.0686 0.0039 13.3744 +v -3.0686 0.9185 13.3686 +v -3.9982 0.9162 13.3686 +v -3.9982 0.0016 13.3744 +v -4.0913 -0.0023 11.9925 +v -4.0914 0.9123 11.9866 +v -3.0685 1.8566 -11.9925 +v -3.0685 1.8527 -13.3744 +v -3.9982 1.8527 -13.3744 +v -3.9982 1.8566 -11.9925 +v -4.0914 0.8434 -13.3680 +v -4.0913 -0.0713 -13.3621 +v -4.0914 0.0016 13.3744 +v -4.0914 0.9162 13.3686 +v -4.0022 1.9216 11.9801 +v -4.0022 1.9255 13.3621 +v -3.0726 1.9278 13.3621 +v -3.0726 1.9239 11.9801 +v -4.3309 1.0532 -4.2736 +v -4.3102 -0.0008 -3.9892 +v -4.5388 1.1804 -3.3687 +v -4.5388 2.3452 -3.4047 +v -4.7395 2.2978 -2.1965 +v -4.7395 3.1981 -2.1722 +v -4.8125 2.7824 -0.8721 +v -4.8125 3.4962 -0.8721 +v -4.8215 2.8673 -0.0066 +v -4.8215 3.5568 -0.0066 +v -3.6673 0.0018 -3.9977 +v -3.8281 1.1836 -3.3772 +v -3.9627 2.3550 -2.2050 +v -4.0226 2.7850 -0.8806 +v -4.0856 2.8699 -0.0066 +v -4.5862 3.5594 -0.0066 +v -4.5231 3.4988 -0.8806 +v -4.4633 3.1460 -2.1807 +v -4.3287 2.3484 -3.4132 +v -4.0712 1.0557 -4.2821 +v -4.2574 1.0789 -5.6478 +v -4.1503 -0.0013 -5.7369 +v -3.9982 1.0815 -5.6563 +v -4.3309 1.0532 4.2604 +v -4.5388 2.3452 3.3915 +v -4.5388 1.1804 3.3555 +v -4.3102 -0.0008 3.9760 +v -4.7395 3.1981 2.1590 +v -4.7395 2.2978 2.1833 +v -4.8125 3.4962 0.8589 +v -4.8125 2.7824 0.8589 +v -3.6673 0.0018 3.9845 +v -3.8281 1.1836 3.3640 +v -3.9627 2.3550 2.1918 +v -4.0226 2.7850 0.8674 +v -4.5231 3.4988 0.8674 +v -4.4633 3.1460 2.1675 +v -4.3287 2.3484 3.4001 +v -4.1413 1.0557 4.2689 +v -4.1503 -0.0013 5.7237 +v -4.2574 1.0789 5.6346 +v -4.0712 1.0815 5.6346 +v -4.1764 4.0031 5.7280 +v -4.1764 4.0031 7.1178 +v -2.7107 4.0031 7.1178 +v -2.7107 4.0031 5.7280 +v -4.1764 0.0000 5.7280 +v -4.3606 2.0015 5.5403 +v -3.0500 2.0015 5.5403 +v -2.6101 0.0000 5.7280 +v -3.0500 2.0015 6.7032 +v -2.6101 0.0000 7.1178 +v -4.3606 2.0015 6.7032 +v -4.1764 0.0000 7.1178 +v -4.1764 4.0031 -5.7156 +v -2.7107 4.0031 -5.7156 +v -2.7107 4.0031 -7.1054 +v -4.1764 4.0031 -7.1054 +v -4.1764 -0.0000 -5.7156 +v -2.6101 -0.0000 -5.7156 +v -3.0500 2.0015 -5.5280 +v -4.3606 2.0015 -5.5280 +v -3.0500 2.0015 -6.6909 +v -2.6101 -0.0000 -7.1054 +v -4.1764 -0.0000 -7.1054 +v -4.3606 2.0015 -6.6909 +# 416 vertices + +vn 0.9998 0.0187 0.0075 +vn 1.0000 -0.0000 -0.0000 +vn 0.9996 0.0187 0.0223 +vn 0.9995 0.0081 0.0318 +vn 0.9995 0.0135 0.0290 +vn 0.0041 0.9228 0.3854 +vn 0.9942 -0.0101 0.1073 +vn 0.9942 -0.0095 0.1071 +vn 0.0000 -0.4357 -0.9001 +vn -0.0000 -0.4357 -0.9001 +vn 0.9983 -0.0052 0.0581 +vn 0.9984 0.0054 0.0561 +vn -0.0000 -0.7696 -0.6385 +vn 0.0000 -0.7696 -0.6385 +vn 0.9996 0.0025 0.0265 +vn 0.9996 0.0000 0.0273 +vn 0.0000 -0.9649 -0.2627 +vn -0.0000 -0.9649 -0.2627 +vn 0.0000 0.9380 0.3465 +vn 0.0000 0.9343 0.3564 +vn -0.0000 0.9409 0.3386 +vn 0.0000 0.9409 0.3386 +vn -0.0000 0.9575 0.2885 +vn -0.0000 0.9981 0.0624 +vn 0.9991 0.0000 0.0413 +vn 0.0000 -0.9875 -0.1574 +vn 0.0000 0.9984 0.0568 +vn -0.0000 0.9984 0.0568 +vn 1.0000 0.0000 -0.0000 +vn 0.9997 -0.0065 -0.0216 +vn 0.9998 -0.0039 -0.0203 +vn 0.9999 0.0000 -0.0168 +vn -0.0000 0.9159 -0.4015 +vn 0.9942 -0.0095 -0.1071 +vn 0.9924 -0.0353 -0.1180 +vn 0.0000 -0.4357 0.9001 +vn 0.9984 0.0053 -0.0561 +vn 0.9983 -0.0051 -0.0581 +vn 0.0000 -0.7696 0.6385 +vn 0.9996 0.0000 -0.0273 +vn 0.9996 0.0025 -0.0265 +vn 0.0000 -0.9649 0.2627 +vn -0.0000 0.9380 -0.3465 +vn 0.0000 0.9380 -0.3465 +vn 0.0000 0.9343 -0.3564 +vn -0.0000 0.9343 -0.3564 +vn -0.0000 0.9409 -0.3386 +vn 0.0000 0.9575 -0.2885 +vn -0.0000 0.9575 -0.2885 +vn 0.0000 0.9981 -0.0624 +vn 0.9991 0.0000 -0.0413 +vn 0.0000 -0.9875 0.1574 +vn 0.0000 0.9984 -0.0568 +vn 0.0000 0.9228 0.3854 +vn 0.0041 0.9380 0.3466 +vn 0.0041 0.9343 0.3564 +vn 0.0042 0.9408 0.3390 +vn 0.0042 0.9558 0.2938 +vn -0.0000 1.0000 0.0023 +vn 0.0044 1.0000 0.0001 +vn 0.0000 1.0000 -0.0000 +vn -0.0000 1.0000 -0.0000 +vn 0.0359 0.9222 -0.3851 +vn -0.0000 0.9559 -0.2937 +vn -0.0000 1.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.9997 0.0002 0.0241 +vn 0.9939 0.0007 0.1107 +vn 0.9982 0.0136 0.0586 +vn 0.9989 0.0003 0.0470 +vn 0.9996 0.0002 0.0273 +vn 0.9994 0.0078 0.0334 +vn 0.9991 0.0003 0.0413 +vn 0.9991 -0.0003 -0.0413 +vn 0.9996 0.0061 -0.0277 +vn 0.9994 -0.0002 -0.0334 +vn 0.9985 -0.0004 -0.0544 +vn 0.9987 0.0111 -0.0503 +vn 0.9939 -0.0007 -0.1102 +vn 0.9997 -0.0002 -0.0240 +vn 1.0000 -0.0000 0.0000 +vn 0.0000 -0.0064 -1.0000 +vn -1.0000 0.0000 -0.0000 +vn -1.0000 0.0000 0.0000 +vn -0.9997 0.0002 0.0240 +vn -0.9939 0.0007 0.1102 +vn -0.9982 -0.0129 0.0584 +vn -0.9989 0.0003 0.0468 +vn -0.9996 0.0002 0.0273 +vn -0.9994 -0.0074 0.0334 +vn -0.9991 0.0003 0.0413 +vn -0.9991 -0.0003 -0.0413 +vn -0.9996 -0.0064 -0.0277 +vn -0.9994 -0.0002 -0.0334 +vn -0.9985 -0.0004 -0.0546 +vn -0.9987 -0.0117 -0.0505 +vn -0.9939 -0.0007 -0.1107 +vn -0.9997 -0.0002 -0.0241 +vn 0.0000 0.0064 1.0000 +vn 0.0000 1.0000 -0.0028 +vn 0.0044 1.0000 -0.0028 +vn -0.0000 0.0064 1.0000 +vn -0.0000 -0.0064 -1.0000 +vn -1.0000 0.0022 0.0000 +vn 1.0000 -0.0023 -0.0000 +vn -0.0000 -0.9343 -0.3564 +vn 0.0000 -0.9380 -0.3465 +vn -0.0000 -0.9380 -0.3465 +vn -0.0000 -0.9409 -0.3386 +vn 0.0000 -0.9409 -0.3386 +vn -0.0000 -0.9575 -0.2885 +vn -0.0000 -0.9979 -0.0642 +vn -0.0000 -0.9984 -0.0568 +vn -0.0000 -0.9984 0.0568 +vn -0.0000 -0.9981 0.0624 +vn -0.0000 -0.9575 0.2885 +vn -0.0000 -0.9409 0.3386 +vn -0.0000 -0.9380 0.3465 +vn -0.0000 -0.9343 0.3564 +vn -0.0000 -0.9159 0.4015 +vn 0.0000 0.9159 -0.4015 +vn 0.0000 0.9409 -0.3386 +vn 0.0000 0.9559 -0.2937 +vn 0.0000 1.0000 0.0023 +vn 0.0000 0.9559 0.2937 +vn -0.0000 -0.9228 -0.3854 +vn 0.9918 -0.0040 -0.1281 +vn 0.9915 -0.0440 -0.1224 +vn 0.9956 0.0025 -0.0932 +vn 0.9956 -0.0029 -0.0934 +vn 0.9995 0.0000 -0.0317 +vn 0.9995 0.0008 -0.0314 +vn 1.0000 0.0000 -0.0059 +vn -0.0241 -0.4629 0.8861 +vn -0.0225 -0.4634 0.8859 +vn -0.0204 -0.7227 0.6909 +vn -0.1050 -0.7000 0.7064 +vn -0.1280 -0.9301 0.3443 +vn -0.0114 -0.9510 0.3091 +vn -0.0076 -0.9952 0.0976 +vn -0.0062 -0.9953 0.0969 +vn 0.0194 0.9974 -0.0699 +vn 0.0271 0.9742 -0.2243 +vn -0.2950 0.9241 -0.2431 +vn -0.2404 0.8084 -0.5373 +vn 0.0616 0.8362 -0.5450 +vn 0.0745 0.5518 -0.8306 +vn 0.0580 0.5524 -0.8315 +vn 0.9973 -0.0516 -0.0515 +vn 0.9993 -0.0193 -0.0305 +vn 0.0166 0.9997 0.0182 +vn 0.9915 -0.0440 0.1224 +vn 0.9918 -0.0040 0.1281 +vn 0.9956 -0.0029 0.0934 +vn 0.9956 0.0025 0.0932 +vn 0.9995 0.0008 0.0314 +vn 0.9995 0.0000 0.0317 +vn 1.0000 0.0000 0.0059 +vn -0.0225 -0.4634 -0.8859 +vn -0.0241 -0.4629 -0.8861 +vn -0.1050 -0.7000 -0.7064 +vn -0.0204 -0.7227 -0.6909 +vn -0.0114 -0.9510 -0.3091 +vn -0.1280 -0.9301 -0.3443 +vn -0.0062 -0.9953 -0.0969 +vn -0.0076 -0.9952 -0.0976 +vn 0.0194 0.9974 0.0699 +vn -0.2950 0.9241 0.2431 +vn 0.0271 0.9742 0.2243 +vn 0.0617 0.8362 0.5450 +vn -0.2404 0.8084 0.5373 +vn 0.0794 0.5516 0.8303 +vn 0.0745 0.5518 0.8306 +vn 0.9993 -0.0193 0.0305 +vn 0.9973 -0.0516 0.0515 +vn 0.0227 0.9996 -0.0182 +vn 0.0246 0.9995 -0.0180 +vn 0.0000 -0.0933 -0.9956 +vn 0.0000 0.0933 -0.9956 +vn -0.9955 -0.0952 -0.0000 +vn 0.0000 0.2028 0.9792 +vn 0.0000 -0.2028 0.9792 +vn 0.9987 -0.0519 0.0000 +vn 0.9987 -0.0519 -0.0000 +vn 0.9987 0.0519 -0.0000 +vn 0.0000 -0.0933 0.9956 +vn 0.0000 0.0933 0.9956 +vn 0.0000 0.2028 -0.9792 +vn 0.0000 -0.2028 -0.9792 +vn -0.9998 0.0187 0.0075 +vn -0.9995 0.0135 0.0290 +vn -0.9995 0.0081 0.0318 +vn -0.9996 0.0187 0.0223 +vn -0.0041 0.9228 0.3854 +vn -0.9942 -0.0095 0.1071 +vn -0.9942 -0.0101 0.1073 +vn -0.9984 0.0054 0.0561 +vn -0.9983 -0.0052 0.0581 +vn -0.9996 0.0000 0.0273 +vn -0.9996 0.0025 0.0265 +vn -0.0000 0.9380 0.3465 +vn -0.0000 0.9343 0.3564 +vn 0.0000 0.9575 0.2885 +vn 0.0000 0.9981 0.0624 +vn -0.9991 0.0000 0.0413 +vn -0.0000 -0.9875 -0.1574 +vn -0.9999 0.0000 -0.0168 +vn -0.9998 -0.0039 -0.0203 +vn -0.9997 -0.0065 -0.0216 +vn -0.9924 -0.0353 -0.1180 +vn -0.9942 -0.0095 -0.1071 +vn -0.0000 -0.4357 0.9001 +vn -0.9983 -0.0051 -0.0581 +vn -0.9984 0.0053 -0.0561 +vn -0.0000 -0.7696 0.6385 +vn -0.9996 0.0025 -0.0265 +vn -0.9996 0.0000 -0.0273 +vn -0.0000 -0.9649 0.2627 +vn -0.9991 0.0000 -0.0413 +vn -0.0000 -0.9875 0.1574 +vn -0.0000 0.9228 0.3854 +vn -0.0041 0.9380 0.3466 +vn -0.0041 0.9343 0.3564 +vn -0.0042 0.9408 0.3390 +vn -0.0042 0.9558 0.2938 +vn -0.0044 1.0000 0.0001 +vn -0.0359 0.9222 -0.3851 +vn -1.0000 -0.0000 -0.0000 +vn -0.9997 0.0002 0.0241 +vn -0.9939 0.0007 0.1107 +vn -0.9989 0.0003 0.0470 +vn -0.9982 0.0136 0.0586 +vn -0.9994 0.0078 0.0334 +vn -0.9996 0.0061 -0.0277 +vn -0.9987 0.0111 -0.0503 +vn -0.9985 -0.0004 -0.0544 +vn -0.9939 -0.0007 -0.1102 +vn -0.9997 -0.0002 -0.0240 +vn -1.0000 -0.0000 0.0000 +vn 0.9997 0.0002 0.0240 +vn 0.9939 0.0007 0.1102 +vn 0.9989 0.0003 0.0468 +vn 0.9982 -0.0129 0.0584 +vn 0.9994 -0.0074 0.0334 +vn 0.9996 -0.0064 -0.0277 +vn 0.9987 -0.0117 -0.0505 +vn 0.9985 -0.0004 -0.0546 +vn 0.9939 -0.0007 -0.1107 +vn 0.9997 -0.0002 -0.0241 +vn -0.0044 1.0000 -0.0028 +vn 1.0000 0.0000 0.0000 +vn 1.0000 0.0023 -0.0000 +vn -1.0000 -0.0023 0.0000 +vn 0.0000 -0.9343 -0.3564 +vn 0.0000 -0.9575 -0.2885 +vn 0.0000 -0.9979 -0.0642 +vn 0.0000 -0.9984 -0.0568 +vn 0.0000 -0.9984 0.0568 +vn 0.0000 -0.9981 0.0624 +vn 0.0000 -0.9575 0.2885 +vn 0.0000 -0.9409 0.3386 +vn 0.0000 -0.9380 0.3465 +vn 0.0000 -0.9343 0.3564 +vn 0.0000 -0.9159 0.4015 +vn -0.0000 1.0000 -0.0028 +vn -0.0000 0.9559 0.2937 +vn 0.0000 -0.9228 -0.3854 +vn -0.9915 -0.0440 -0.1224 +vn -0.9918 -0.0040 -0.1281 +vn -0.9956 -0.0029 -0.0934 +vn -0.9956 0.0025 -0.0932 +vn -0.9995 0.0008 -0.0314 +vn -0.9995 0.0000 -0.0317 +vn -1.0000 0.0000 -0.0059 +vn 0.0225 -0.4634 0.8859 +vn 0.0241 -0.4629 0.8861 +vn 0.1050 -0.7000 0.7064 +vn 0.0204 -0.7227 0.6909 +vn 0.0114 -0.9510 0.3091 +vn 0.1280 -0.9301 0.3443 +vn 0.0062 -0.9953 0.0969 +vn 0.0076 -0.9952 0.0976 +vn -0.0194 0.9974 -0.0699 +vn 0.2950 0.9240 -0.2431 +vn -0.0271 0.9742 -0.2243 +vn -0.0616 0.8362 -0.5450 +vn 0.2404 0.8084 -0.5373 +vn -0.0580 0.5524 -0.8315 +vn -0.0745 0.5518 -0.8306 +vn -0.9993 -0.0193 -0.0305 +vn -0.9973 -0.0516 -0.0515 +vn -0.0166 0.9997 0.0182 +vn -0.9918 -0.0040 0.1281 +vn -0.9915 -0.0440 0.1224 +vn -0.9956 0.0025 0.0932 +vn -0.9956 -0.0029 0.0934 +vn -0.9995 0.0000 0.0317 +vn -0.9995 0.0008 0.0314 +vn -1.0000 0.0000 0.0059 +vn 0.0241 -0.4629 -0.8861 +vn 0.0225 -0.4634 -0.8859 +vn 0.0204 -0.7227 -0.6909 +vn 0.1050 -0.7000 -0.7064 +vn 0.1280 -0.9301 -0.3443 +vn 0.0114 -0.9510 -0.3091 +vn 0.0076 -0.9952 -0.0976 +vn 0.0062 -0.9953 -0.0969 +vn -0.0194 0.9974 0.0699 +vn -0.0271 0.9742 0.2243 +vn 0.2950 0.9241 0.2431 +vn 0.2404 0.8084 0.5373 +vn -0.0617 0.8362 0.5450 +vn -0.0745 0.5518 0.8306 +vn -0.0794 0.5516 0.8303 +vn -0.9973 -0.0516 0.0515 +vn -0.9993 -0.0193 0.0305 +vn -0.0246 0.9995 -0.0180 +vn -0.0227 0.9996 -0.0182 +vn 0.9955 -0.0952 -0.0000 +vn -0.9987 -0.0519 -0.0000 +vn -0.9987 -0.0519 0.0000 +vn -0.9987 0.0519 -0.0000 +# 322 vertex normals + +vt 0.0055 0.7726 0.0000 +vt 0.2148 0.7727 0.0000 +vt 0.2147 0.8639 0.0000 +vt 0.1297 0.8288 0.0000 +vt 0.3085 0.7727 0.0000 +vt 0.3007 0.8163 0.0000 +vt 0.2802 0.8900 0.0000 +vt 0.1697 0.7009 0.0000 +vt 0.1692 0.6636 0.0000 +vt 0.0461 0.6643 0.0000 +vt 0.0466 0.7016 0.0000 +vt 0.3350 0.8652 0.0000 +vt 0.3315 0.9095 0.0000 +vt 0.3723 0.8137 0.0000 +vt 0.3999 0.8136 0.0000 +vt 0.4003 0.8870 0.0000 +vt 0.3726 0.8844 0.0000 +vt 0.3826 0.8991 0.0000 +vt 0.3850 0.9268 0.0000 +vt 0.4256 0.8135 0.0000 +vt 0.4259 0.8892 0.0000 +vt 0.4323 0.9108 0.0000 +vt 0.4323 0.9301 0.0000 +vt 0.4509 0.8134 0.0000 +vt 0.4513 0.8901 0.0000 +vt 0.7184 0.6451 0.0000 +vt 0.6550 0.6472 0.0000 +vt 0.6551 0.5407 0.0000 +vt 0.7182 0.5411 0.0000 +vt 0.8032 0.6449 0.0000 +vt 0.8031 0.5410 0.0000 +vt 0.6057 0.6561 0.0000 +vt 0.6059 0.5409 0.0000 +vt 0.5512 0.6609 0.0000 +vt 0.5513 0.5412 0.0000 +vt 0.5132 0.6630 0.0000 +vt 0.5135 0.5412 0.0000 +vt 0.4653 0.9155 0.0000 +vt 0.4653 0.9321 0.0000 +vt 0.4646 0.8133 0.0000 +vt 0.4649 0.8911 0.0000 +vt 0.4819 0.6653 0.0000 +vt 0.4828 0.5414 0.0000 +vt 0.8014 0.8288 0.0000 +vt 0.7163 0.8639 0.0000 +vt 0.7163 0.7727 0.0000 +vt 0.9256 0.7699 0.0000 +vt 0.6506 0.8901 0.0000 +vt 0.6305 0.8163 0.0000 +vt 0.6227 0.7727 0.0000 +vt 0.9143 0.7019 0.0000 +vt 0.9142 0.6646 0.0000 +vt 0.7893 0.6638 0.0000 +vt 0.7895 0.7012 0.0000 +vt 0.5992 0.9096 0.0000 +vt 0.5956 0.8652 0.0000 +vt 0.5572 0.8820 0.0000 +vt 0.5296 0.8865 0.0000 +vt 0.5293 0.8131 0.0000 +vt 0.5569 0.8130 0.0000 +vt 0.5457 0.9269 0.0000 +vt 0.5481 0.8991 0.0000 +vt 0.5041 0.8889 0.0000 +vt 0.5037 0.8132 0.0000 +vt 0.4984 0.9301 0.0000 +vt 0.4984 0.9108 0.0000 +vt 0.4787 0.8900 0.0000 +vt 0.4783 0.8133 0.0000 +vt 0.3106 0.5420 0.0000 +vt 0.3104 0.6485 0.0000 +vt 0.2476 0.6456 0.0000 +vt 0.2475 0.5417 0.0000 +vt 0.1628 0.6457 0.0000 +vt 0.1626 0.5418 0.0000 +vt 0.3598 0.5418 0.0000 +vt 0.3596 0.6570 0.0000 +vt 0.4144 0.5416 0.0000 +vt 0.4143 0.6613 0.0000 +vt 0.4522 0.5415 0.0000 +vt 0.4519 0.6633 0.0000 +vt 0.9501 0.5408 0.0000 +vt 0.9502 0.6448 0.0000 +vt 0.2519 0.7005 0.0000 +vt 0.3148 0.7031 0.0000 +vt 0.3144 0.6658 0.0000 +vt 0.2515 0.6631 0.0000 +vt 0.3626 0.7133 0.0000 +vt 0.3622 0.6759 0.0000 +vt 0.4197 0.7185 0.0000 +vt 0.4194 0.6812 0.0000 +vt 0.4522 0.7209 0.0000 +vt 0.4518 0.6836 0.0000 +vt 0.4798 0.7234 0.0000 +vt 0.4795 0.6861 0.0000 +vt 0.0142 0.6459 0.0000 +vt 0.0160 0.5419 0.0000 +vt 0.6444 0.7033 0.0000 +vt 0.7072 0.7007 0.0000 +vt 0.7071 0.6634 0.0000 +vt 0.6442 0.6660 0.0000 +vt 0.5967 0.7134 0.0000 +vt 0.5965 0.6761 0.0000 +vt 0.5397 0.7186 0.0000 +vt 0.5395 0.6813 0.0000 +vt 0.5073 0.7209 0.0000 +vt 0.5071 0.6836 0.0000 +vt 0.1376 0.8475 0.0000 +vt 0.2215 0.8831 0.0000 +vt 0.2222 0.9224 0.0000 +vt 0.1383 0.8869 0.0000 +vt 0.2862 0.9096 0.0000 +vt 0.2869 0.9489 0.0000 +vt 0.3369 0.9293 0.0000 +vt 0.3376 0.9686 0.0000 +vt 0.3898 0.9467 0.0000 +vt 0.3989 0.9893 0.0000 +vt 0.4364 0.9496 0.0000 +vt 0.4370 0.9890 0.0000 +vt 0.4689 0.9514 0.0000 +vt 0.4695 0.9886 0.0000 +vt 0.5015 0.9489 0.0000 +vt 0.5014 0.9883 0.0000 +vt 0.5485 0.9461 0.0000 +vt 0.5386 0.9886 0.0000 +vt 0.6024 0.9297 0.0000 +vt 0.6000 0.9690 0.0000 +vt 0.6546 0.9116 0.0000 +vt 0.6514 0.9508 0.0000 +vt 0.7217 0.8877 0.0000 +vt 0.7179 0.9270 0.0000 +vt 0.8091 0.8562 0.0000 +vt 0.8049 0.8954 0.0000 +vt 0.9376 0.8026 0.0000 +vt 0.9333 0.8418 0.0000 +vt 0.1175 0.2765 0.0000 +vt 0.1172 0.2184 0.0000 +vt 0.0528 0.2186 0.0000 +vt 0.0531 0.2766 0.0000 +vt 0.0149 0.7906 0.0000 +vt 0.0156 0.8299 0.0000 +vt 0.1171 0.1374 0.0000 +vt 0.0526 0.1376 0.0000 +vt 0.1279 0.1213 0.0000 +vt 0.0641 0.1216 0.0000 +vt 0.0639 0.0185 0.0000 +vt 0.1276 0.0182 0.0000 +vt 0.0533 0.3601 0.0000 +vt 0.1177 0.3599 0.0000 +vt 0.1175 0.2816 0.0000 +vt 0.0531 0.2818 0.0000 +vt 0.5233 0.0680 0.0000 +vt 0.5233 0.0146 0.0000 +vt 0.4613 0.0144 0.0000 +vt 0.4612 0.0679 0.0000 +vt 0.5230 0.2785 0.0000 +vt 0.5231 0.1970 0.0000 +vt 0.4611 0.1969 0.0000 +vt 0.4610 0.2783 0.0000 +vt 0.5232 0.1436 0.0000 +vt 0.4612 0.1434 0.0000 +vt 0.1397 0.8448 0.0000 +vt 0.2234 0.8802 0.0000 +vt 0.2877 0.9066 0.0000 +vt 0.3381 0.9262 0.0000 +vt 0.3905 0.9436 0.0000 +vt 0.4365 0.9465 0.0000 +vt 0.4689 0.9482 0.0000 +vt 0.5015 0.9458 0.0000 +vt 0.5478 0.9429 0.0000 +vt 0.6014 0.9266 0.0000 +vt 0.6534 0.9085 0.0000 +vt 0.7201 0.8848 0.0000 +vt 0.8072 0.8534 0.0000 +vt 0.9356 0.7998 0.0000 +vt 0.0479 0.2818 0.0000 +vt 0.0481 0.3601 0.0000 +vt 0.7895 0.7049 0.0000 +vt 0.9144 0.7056 0.0000 +vt 0.7072 0.7044 0.0000 +vt 0.6444 0.7070 0.0000 +vt 0.5967 0.7172 0.0000 +vt 0.5397 0.7224 0.0000 +vt 0.5073 0.7247 0.0000 +vt 0.4798 0.7272 0.0000 +vt 0.4522 0.7246 0.0000 +vt 0.4198 0.7222 0.0000 +vt 0.3627 0.7170 0.0000 +vt 0.3149 0.7068 0.0000 +vt 0.2520 0.7042 0.0000 +vt 0.1697 0.7047 0.0000 +vt 0.0466 0.7053 0.0000 +vt 0.0171 0.7879 0.0000 +vt 0.2846 0.0635 0.0000 +vt 0.3350 0.1014 0.0000 +vt 0.2869 0.0984 0.0000 +vt 0.2402 0.0697 0.0000 +vt 0.3662 0.1505 0.0000 +vt 0.3291 0.1463 0.0000 +vt 0.3743 0.1993 0.0000 +vt 0.3449 0.1967 0.0000 +vt 0.3741 0.2313 0.0000 +vt 0.3456 0.2288 0.0000 +vt 0.9520 0.3232 0.0000 +vt 0.9511 0.3553 0.0000 +vt 0.8725 0.3642 0.0000 +vt 0.8736 0.3287 0.0000 +vt 0.7872 0.3718 0.0000 +vt 0.7856 0.3328 0.0000 +vt 0.7246 0.3759 0.0000 +vt 0.7245 0.3364 0.0000 +vt 0.6884 0.3767 0.0000 +vt 0.6880 0.3399 0.0000 +vt 0.9747 0.5705 0.0000 +vt 0.9874 0.5713 0.0000 +vt 0.9855 0.6101 0.0000 +vt 0.9700 0.6102 0.0000 +vt 0.9823 0.6717 0.0000 +vt 0.9673 0.6738 0.0000 +vt 0.9698 0.7513 0.0000 +vt 0.9586 0.7517 0.0000 +vt 0.9671 0.8478 0.0000 +vt 0.9532 0.8490 0.0000 +vt 0.2458 0.0054 0.0000 +vt 0.2902 0.0130 0.0000 +vt 0.9667 0.9098 0.0000 +vt 0.9528 0.9110 0.0000 +vt 0.2569 0.3810 0.0000 +vt 0.2142 0.3671 0.0000 +vt 0.2651 0.3469 0.0000 +vt 0.3131 0.3524 0.0000 +vt 0.3151 0.3071 0.0000 +vt 0.3523 0.3095 0.0000 +vt 0.3393 0.2602 0.0000 +vt 0.3688 0.2628 0.0000 +vt 0.4237 0.3291 0.0000 +vt 0.5022 0.3328 0.0000 +vt 0.5041 0.3683 0.0000 +vt 0.4253 0.3612 0.0000 +vt 0.5903 0.3350 0.0000 +vt 0.5895 0.3740 0.0000 +vt 0.6514 0.3372 0.0000 +vt 0.6522 0.3767 0.0000 +vt 0.9748 0.5306 0.0000 +vt 0.9902 0.5325 0.0000 +vt 0.9790 0.4672 0.0000 +vt 0.9938 0.4708 0.0000 +vt 0.9769 0.3892 0.0000 +vt 0.9881 0.3902 0.0000 +vt 0.9762 0.2924 0.0000 +vt 0.9863 0.2934 0.0000 +vt 0.2535 0.4317 0.0000 +vt 0.2085 0.4314 0.0000 +vt 0.9763 0.2308 0.0000 +vt 0.9863 0.2315 0.0000 +vt 0.9781 0.1864 0.0000 +vt 0.8088 0.1864 0.0000 +vt 0.8088 0.0170 0.0000 +vt 0.9781 0.0170 0.0000 +vt 0.7807 0.0185 0.0000 +vt 0.6794 0.0178 0.0000 +vt 0.7064 0.1575 0.0000 +vt 0.7912 0.1581 0.0000 +vt 0.6831 0.2968 0.0000 +vt 0.7779 0.2975 0.0000 +vt 0.6498 0.1633 0.0000 +vt 0.5711 0.1633 0.0000 +vt 0.5431 0.3053 0.0000 +vt 0.6371 0.3053 0.0000 +vt 0.5431 0.0214 0.0000 +vt 0.6371 0.0214 0.0000 +vt 0.3995 0.7402 0.0000 +vt 0.3720 0.7430 0.0000 +vt 0.4252 0.7378 0.0000 +vt 0.4506 0.7367 0.0000 +vt 0.6552 0.4343 0.0000 +vt 0.7180 0.4371 0.0000 +vt 0.8029 0.4370 0.0000 +vt 0.6060 0.4257 0.0000 +vt 0.5513 0.4214 0.0000 +vt 0.5137 0.4195 0.0000 +vt 0.4643 0.7356 0.0000 +vt 0.4838 0.4175 0.0000 +vt 0.5566 0.7439 0.0000 +vt 0.5290 0.7397 0.0000 +vt 0.5033 0.7375 0.0000 +vt 0.4780 0.7366 0.0000 +vt 0.2473 0.4377 0.0000 +vt 0.3107 0.4356 0.0000 +vt 0.1624 0.4378 0.0000 +vt 0.3600 0.4267 0.0000 +vt 0.4145 0.4219 0.0000 +vt 0.4525 0.4198 0.0000 +vt 0.9499 0.4368 0.0000 +vt 0.0139 0.4380 0.0000 +# 294 texture coords + +o bridge +g bridge +f 1/1/1 2/2/1 3/3/1 +f 3/3/2 4/4/2 1/1/2 +f 3/3/3 2/2/3 5/5/3 +f 3/3/4 5/5/4 6/6/4 +f 3/3/5 6/6/5 7/7/5 +f 8/8/6 9/9/6 10/10/6 +f 10/10/6 11/11/6 8/8/6 +f 7/7/7 6/6/7 12/12/7 +f 12/12/8 13/13/8 7/7/8 +f 14/14/9 15/15/9 16/16/9 +f 16/16/10 5/17/10 14/14/10 +f 13/13/11 12/12/11 17/18/11 +f 17/18/12 18/19/12 13/13/12 +f 15/15/13 19/20/13 20/21/13 +f 20/21/14 16/16/14 15/15/14 +f 18/19/15 17/18/15 21/22/15 +f 21/22/16 22/23/16 18/19/16 +f 19/20/17 23/24/17 24/25/17 +f 24/25/18 20/21/18 19/20/18 +f 25/26/19 26/27/19 27/28/19 +f 27/28/19 28/29/19 25/26/19 +f 29/30/20 25/26/20 28/29/20 +f 28/29/20 30/31/20 29/30/20 +f 26/27/21 31/32/21 32/33/21 +f 32/33/22 27/28/22 26/27/22 +f 31/32/23 33/34/23 34/35/23 +f 34/35/23 32/33/23 31/32/23 +f 33/34/24 35/36/24 36/37/24 +f 36/37/24 34/35/24 33/34/24 +f 22/23/25 21/22/25 37/38/25 +f 37/38/25 38/39/25 22/23/25 +f 23/24/26 39/40/26 40/41/26 +f 40/41/26 24/25/26 23/24/26 +f 35/36/27 41/42/27 42/43/27 +f 42/43/28 36/37/28 35/36/28 +f 43/44/29 44/45/29 45/46/29 +f 45/46/29 46/47/29 43/44/29 +f 44/45/30 47/48/30 48/49/30 +f 44/45/31 48/49/31 49/50/31 +f 44/45/32 49/50/32 45/46/32 +f 50/51/33 51/52/33 52/53/33 +f 52/53/33 53/54/33 50/51/33 +f 47/48/34 54/55/34 55/56/34 +f 55/56/35 48/49/35 47/48/35 +f 49/57/36 56/58/36 57/59/36 +f 57/59/36 58/60/36 49/57/36 +f 54/55/37 59/61/37 60/62/37 +f 60/62/38 55/56/38 54/55/38 +f 56/58/39 61/63/39 62/64/39 +f 62/64/39 57/59/39 56/58/39 +f 59/61/40 63/65/40 64/66/40 +f 64/66/41 60/62/41 59/61/41 +f 61/63/42 65/67/42 66/68/42 +f 66/68/42 62/64/42 61/63/42 +f 67/69/43 68/70/43 69/71/43 +f 69/71/44 70/72/44 67/69/44 +f 70/72/45 69/71/45 71/73/45 +f 71/73/46 72/74/46 70/72/46 +f 73/75/47 74/76/47 68/70/47 +f 68/70/47 67/69/47 73/75/47 +f 75/77/48 76/78/48 74/76/48 +f 74/76/49 73/75/49 75/77/49 +f 77/79/50 78/80/50 76/78/50 +f 76/78/50 75/77/50 77/79/50 +f 63/65/51 38/39/51 37/38/51 +f 37/38/51 64/66/51 63/65/51 +f 65/67/52 40/41/52 39/40/52 +f 39/40/52 66/68/52 65/67/52 +f 42/43/53 41/42/53 78/80/53 +f 78/80/53 77/79/53 42/43/53 +f 29/30/54 30/31/54 79/81/54 +f 79/81/54 80/82/54 29/30/54 +f 81/83/55 82/84/55 83/85/55 +f 83/85/55 84/86/55 81/83/55 +f 8/8/56 81/83/56 84/86/56 +f 84/86/56 9/9/56 8/8/56 +f 82/84/57 85/87/57 86/88/57 +f 86/88/57 83/85/57 82/84/57 +f 85/87/58 87/89/58 88/90/58 +f 88/90/58 86/88/58 85/87/58 +f 87/89/59 89/91/59 90/92/59 +f 90/92/60 88/90/60 87/89/60 +f 89/91/61 91/93/61 92/94/61 +f 92/94/62 90/92/62 89/91/62 +f 93/95/63 94/96/63 72/74/63 +f 72/74/33 71/73/33 93/95/33 +f 95/97/44 96/98/44 97/99/44 +f 97/99/43 98/100/43 95/97/43 +f 96/98/46 53/54/46 52/53/46 +f 52/53/45 97/99/45 96/98/45 +f 99/101/47 95/97/47 98/100/47 +f 98/100/47 100/102/47 99/101/47 +f 101/103/64 99/101/64 100/102/64 +f 100/102/64 102/104/64 101/103/64 +f 103/105/65 101/103/65 102/104/65 +f 102/104/65 104/106/65 103/105/65 +f 91/93/65 103/105/65 104/106/65 +f 104/106/66 92/94/66 91/93/66 +f 105/107/2 106/108/2 107/109/2 +f 107/109/2 108/110/2 105/107/2 +f 106/108/67 109/111/67 110/112/67 +f 110/112/67 107/109/67 106/108/67 +f 109/111/68 111/113/68 112/114/68 +f 112/114/68 110/112/68 109/111/68 +f 111/113/69 113/115/69 114/116/69 +f 114/116/70 112/114/70 111/113/70 +f 113/115/71 115/117/71 116/118/71 +f 116/118/72 114/116/72 113/115/72 +f 115/117/73 117/119/73 118/120/73 +f 118/120/73 116/118/73 115/117/73 +f 117/119/74 119/121/74 120/122/74 +f 120/122/74 118/120/74 117/119/74 +f 119/121/75 121/123/75 122/124/75 +f 122/124/76 120/122/76 119/121/76 +f 121/123/77 123/125/77 124/126/77 +f 124/126/78 122/124/78 121/123/78 +f 123/125/79 125/127/79 126/128/79 +f 126/128/79 124/126/79 123/125/79 +f 125/127/80 127/129/80 128/130/80 +f 128/130/80 126/128/80 125/127/80 +f 127/129/81 129/131/81 130/132/81 +f 130/132/81 128/130/81 127/129/81 +f 129/131/81 131/133/81 132/134/81 +f 132/134/81 130/132/81 129/131/81 +f 133/135/82 134/136/82 135/137/82 +f 135/137/82 136/138/82 133/135/82 +f 93/139/83 71/107/83 52/110/83 +f 52/110/83 51/140/83 93/139/83 +f 71/107/83 69/108/83 97/109/83 +f 97/109/84 52/110/84 71/107/84 +f 69/108/85 68/111/85 98/112/85 +f 98/112/85 97/109/85 69/108/85 +f 68/111/86 74/113/86 100/114/86 +f 100/114/86 98/112/86 68/111/86 +f 74/113/87 76/115/87 102/116/87 +f 102/116/88 100/114/88 74/113/88 +f 76/115/89 78/117/89 104/118/89 +f 104/118/90 102/116/90 76/115/90 +f 78/117/91 41/119/91 92/120/91 +f 92/120/91 104/118/91 78/117/91 +f 41/119/92 35/121/92 90/122/92 +f 90/122/92 92/120/92 41/119/92 +f 35/121/93 33/123/93 88/124/93 +f 88/124/94 90/122/94 35/121/94 +f 33/123/95 31/125/95 86/126/95 +f 86/126/96 88/124/96 33/123/96 +f 31/125/97 26/127/97 83/128/97 +f 83/128/97 86/126/97 31/125/97 +f 26/127/98 25/129/98 84/130/98 +f 84/130/98 83/128/98 26/127/98 +f 25/129/84 29/131/84 9/132/84 +f 9/132/84 84/130/84 25/129/84 +f 29/131/84 80/133/84 10/134/84 +f 10/134/84 9/132/84 29/131/84 +f 137/136/99 138/135/99 139/138/99 +f 139/138/99 140/137/99 137/136/99 +f 141/139/2 105/107/2 108/110/2 +f 108/110/2 142/140/2 141/139/2 +f 93/141/83 51/142/83 135/137/83 +f 135/137/83 134/136/83 93/141/83 +f 143/143/100 144/144/100 145/145/100 +f 145/145/100 146/146/100 143/143/100 +f 132/147/81 131/148/81 147/149/81 +f 147/149/81 148/150/81 132/147/81 +f 141/148/2 142/147/2 149/150/2 +f 149/150/2 150/149/2 141/148/2 +f 151/145/101 152/146/101 153/143/101 +f 153/143/101 154/144/101 151/145/101 +f 10/142/84 80/141/84 137/136/84 +f 137/136/84 140/137/84 10/142/84 +f 51/151/102 50/152/102 144/153/102 +f 144/153/99 143/154/99 51/151/99 +f 50/155/29 136/156/29 145/157/29 +f 145/157/29 144/158/29 50/155/29 +f 136/156/82 135/159/82 146/160/82 +f 146/160/82 145/157/82 136/156/82 +f 135/159/83 51/151/83 143/154/83 +f 143/154/83 146/160/83 135/159/83 +f 11/152/103 10/151/103 152/154/103 +f 152/154/103 151/153/103 11/152/103 +f 10/151/104 140/159/104 153/160/104 +f 153/160/104 152/154/104 10/151/104 +f 140/159/99 139/156/99 154/157/99 +f 154/157/99 153/160/99 140/159/99 +f 139/156/105 11/155/105 151/158/105 +f 151/158/105 154/157/105 139/156/105 +f 4/161/106 3/162/106 106/108/106 +f 106/108/106 105/107/106 4/161/106 +f 3/162/107 7/163/107 109/111/107 +f 109/111/108 106/108/108 3/162/108 +f 7/163/109 13/164/109 111/113/109 +f 111/113/110 109/111/110 7/163/110 +f 13/164/111 18/165/111 113/115/111 +f 113/115/111 111/113/111 13/164/111 +f 18/165/112 22/166/112 115/117/112 +f 115/117/112 113/115/112 18/165/112 +f 22/166/113 38/167/113 117/119/113 +f 117/119/113 115/117/113 22/166/113 +f 38/167/114 63/168/114 119/121/114 +f 119/121/114 117/119/114 38/167/114 +f 63/168/115 59/169/115 121/123/115 +f 121/123/115 119/121/115 63/168/115 +f 59/169/116 54/170/116 123/125/116 +f 123/125/116 121/123/116 59/169/116 +f 54/170/117 47/171/117 125/127/117 +f 125/127/117 123/125/117 54/170/117 +f 47/171/118 44/172/118 127/129/118 +f 127/129/118 125/127/118 47/171/118 +f 44/172/119 43/173/119 129/131/119 +f 129/131/119 127/129/119 44/172/119 +f 43/173/120 46/174/120 131/133/120 +f 131/133/120 129/131/120 43/173/120 +f 133/135/103 136/138/103 148/150/103 +f 148/150/103 147/149/103 133/135/103 +f 136/175/100 50/176/100 132/147/100 +f 132/147/100 148/150/100 136/175/100 +f 50/51/121 53/54/121 130/177/121 +f 130/177/121 132/178/121 50/51/121 +f 53/54/45 96/98/45 128/179/45 +f 128/179/45 130/177/45 53/54/45 +f 96/98/44 95/97/44 126/180/44 +f 126/180/44 128/179/44 96/98/44 +f 95/97/122 99/101/122 124/181/122 +f 124/181/122 126/180/122 95/97/122 +f 99/101/123 101/103/123 122/182/123 +f 122/182/123 124/181/123 99/101/123 +f 101/103/66 103/105/66 120/183/66 +f 120/183/66 122/182/66 101/103/66 +f 103/105/66 91/93/66 118/184/66 +f 118/184/66 120/183/66 103/105/66 +f 91/93/61 89/91/61 116/185/61 +f 116/185/61 118/184/61 91/93/61 +f 89/91/124 87/89/124 114/186/124 +f 114/186/124 116/185/124 89/91/124 +f 87/89/125 85/87/125 112/187/125 +f 112/187/125 114/186/125 87/89/125 +f 85/87/22 82/84/22 110/188/22 +f 110/188/22 112/187/22 85/87/22 +f 82/84/19 81/83/19 107/189/19 +f 107/189/19 110/188/19 82/84/19 +f 81/83/20 8/8/20 108/190/20 +f 108/190/20 107/189/20 81/83/20 +f 8/8/54 11/11/54 142/191/54 +f 142/191/54 108/190/54 8/8/54 +f 11/176/100 139/175/100 149/150/100 +f 149/150/100 142/147/100 11/176/100 +f 139/138/99 138/135/99 150/149/99 +f 150/149/99 149/150/99 139/138/99 +f 1/192/126 4/161/126 105/107/126 +f 105/107/126 141/139/126 1/192/126 +f 155/193/127 156/194/127 157/195/127 +f 157/195/128 158/196/128 155/193/128 +f 156/194/129 159/197/129 160/198/129 +f 160/198/130 157/195/130 156/194/130 +f 159/197/131 161/199/131 162/200/131 +f 162/200/132 160/198/132 159/197/132 +f 161/199/133 163/201/133 164/202/133 +f 164/202/133 162/200/133 161/199/133 +f 165/203/134 158/204/134 157/205/134 +f 157/205/135 166/206/135 165/203/135 +f 166/206/136 157/205/136 160/207/136 +f 160/207/137 167/208/137 166/206/137 +f 167/208/138 160/207/138 162/209/138 +f 162/209/139 168/210/139 167/208/139 +f 168/210/140 162/209/140 164/211/140 +f 164/211/141 169/212/141 168/210/141 +f 170/213/142 163/214/142 161/215/142 +f 161/215/142 171/216/142 170/213/142 +f 171/216/143 161/215/143 159/217/143 +f 159/217/144 172/218/144 171/216/144 +f 172/218/145 159/217/145 156/219/145 +f 156/219/146 173/220/146 172/218/146 +f 173/220/147 156/219/147 155/221/147 +f 155/221/148 174/222/148 173/220/148 +f 158/196/149 175/223/149 176/224/149 +f 176/224/150 155/193/150 158/196/150 +f 155/221/151 176/225/151 177/226/151 +f 177/226/151 174/222/151 155/221/151 +f 178/227/152 179/228/152 180/229/152 +f 180/229/153 181/230/153 178/227/153 +f 181/230/154 180/229/154 182/231/154 +f 182/231/155 183/232/155 181/230/155 +f 183/232/156 182/231/156 184/233/156 +f 184/233/157 185/234/157 183/232/157 +f 185/234/158 184/233/158 164/202/158 +f 164/202/158 163/201/158 185/234/158 +f 186/235/159 187/236/159 180/237/159 +f 180/237/160 179/238/160 186/235/160 +f 187/236/161 188/239/161 182/240/161 +f 182/240/162 180/237/162 187/236/162 +f 188/239/163 189/241/163 184/242/163 +f 184/242/164 182/240/164 188/239/164 +f 189/241/165 169/212/165 164/211/165 +f 164/211/166 184/242/166 189/241/166 +f 170/213/167 190/243/167 185/244/167 +f 185/244/167 163/214/167 170/213/167 +f 190/243/168 191/245/168 183/246/168 +f 183/246/169 185/244/169 190/243/169 +f 191/245/170 192/247/170 181/248/170 +f 181/248/171 183/246/171 191/245/171 +f 192/247/172 193/249/172 178/250/172 +f 178/250/173 181/248/173 192/247/173 +f 179/228/174 178/227/174 194/251/174 +f 194/251/175 195/252/175 179/228/175 +f 178/250/176 193/249/176 196/253/176 +f 196/253/177 194/254/177 178/250/177 +f 197/255/61 198/256/61 199/257/61 +f 199/257/61 200/258/61 197/255/61 +f 201/259/178 202/260/178 203/261/178 +f 203/261/178 204/262/178 201/259/178 +f 204/262/179 203/261/179 198/263/179 +f 198/263/179 197/264/179 204/262/179 +f 203/265/180 205/266/180 199/267/180 +f 199/267/180 198/268/180 203/265/180 +f 206/260/181 207/259/181 208/262/181 +f 208/262/181 205/261/181 206/260/181 +f 205/261/182 208/262/182 200/264/182 +f 200/264/182 199/263/182 205/261/182 +f 207/269/183 201/270/183 204/265/183 +f 204/265/184 208/266/184 207/269/184 +f 208/266/185 204/265/185 197/268/185 +f 197/268/185 200/267/185 208/266/185 +f 209/258/61 210/255/61 211/256/61 +f 211/256/61 212/257/61 209/258/61 +f 213/259/186 214/262/186 215/261/186 +f 215/261/186 216/260/186 213/259/186 +f 214/262/187 209/264/187 212/263/187 +f 212/263/187 215/261/187 214/262/187 +f 215/265/180 212/268/180 211/267/180 +f 211/267/180 217/266/180 215/265/180 +f 218/260/188 217/261/188 219/262/188 +f 219/262/188 220/259/188 218/260/188 +f 217/261/189 211/263/189 210/264/189 +f 210/264/189 219/262/189 217/261/189 +f 220/269/184 219/266/184 214/265/184 +f 214/265/183 213/270/183 220/269/183 +f 219/266/185 210/267/185 209/268/185 +f 209/268/185 214/265/185 219/266/185 +f 221/1/83 222/4/83 223/3/83 +f 223/3/190 224/2/190 221/1/190 +f 223/3/191 225/7/191 226/6/191 +f 223/3/192 226/6/192 227/5/192 +f 223/3/193 227/5/193 224/2/193 +f 228/8/194 229/11/194 230/10/194 +f 230/10/194 231/9/194 228/8/194 +f 225/7/195 232/13/195 233/12/195 +f 233/12/196 226/6/196 225/7/196 +f 234/271/10 15/15/10 14/14/10 +f 14/14/9 227/272/9 234/271/9 +f 232/13/197 235/19/197 236/18/197 +f 236/18/198 233/12/198 232/13/198 +f 237/273/14 19/20/14 15/15/14 +f 15/15/13 234/271/13 237/273/13 +f 235/19/199 238/23/199 239/22/199 +f 239/22/200 236/18/200 235/19/200 +f 240/274/18 23/24/18 19/20/18 +f 19/20/17 237/273/17 240/274/17 +f 27/28/201 241/275/201 242/276/201 +f 242/276/19 28/29/19 27/28/19 +f 28/29/20 242/276/20 243/277/20 +f 243/277/202 30/31/202 28/29/202 +f 32/33/22 244/278/22 241/275/22 +f 241/275/21 27/28/21 32/33/21 +f 34/35/203 245/279/203 244/278/203 +f 244/278/203 32/33/203 34/35/203 +f 36/37/204 246/280/204 245/279/204 +f 245/279/204 34/35/204 36/37/204 +f 238/23/205 247/39/205 248/38/205 +f 248/38/205 239/22/205 238/23/205 +f 249/281/206 39/40/206 23/24/206 +f 23/24/206 240/274/206 249/281/206 +f 42/43/27 250/282/27 246/280/27 +f 246/280/27 36/37/27 42/43/27 +f 251/44/83 252/47/83 253/46/83 +f 253/46/83 254/45/83 251/44/83 +f 254/45/207 253/46/207 255/50/207 +f 254/45/208 255/50/208 256/49/208 +f 254/45/209 256/49/209 257/48/209 +f 258/51/121 259/54/121 260/53/121 +f 260/53/121 261/52/121 258/51/121 +f 257/48/210 256/49/210 262/56/210 +f 262/56/211 263/55/211 257/48/211 +f 255/283/36 58/60/36 57/59/36 +f 57/59/212 264/284/212 255/283/212 +f 263/55/213 262/56/213 265/62/213 +f 265/62/214 266/61/214 263/55/214 +f 264/284/215 57/59/215 62/64/215 +f 62/64/215 267/285/215 264/284/215 +f 266/61/216 265/62/216 268/66/216 +f 268/66/217 269/65/217 266/61/217 +f 267/285/218 62/64/218 66/68/218 +f 66/68/218 270/286/218 267/285/218 +f 271/287/44 272/288/44 67/69/44 +f 67/69/44 70/72/44 271/287/44 +f 273/289/45 271/287/45 70/72/45 +f 70/72/45 72/74/45 273/289/45 +f 272/288/122 274/290/122 73/75/122 +f 73/75/122 67/69/122 272/288/122 +f 274/290/48 275/291/48 75/77/48 +f 75/77/48 73/75/48 274/290/48 +f 275/291/50 276/292/50 77/79/50 +f 77/79/50 75/77/50 275/291/50 +f 269/65/219 268/66/219 248/38/219 +f 248/38/219 247/39/219 269/65/219 +f 270/286/220 66/68/220 39/40/220 +f 39/40/220 249/281/220 270/286/220 +f 276/292/53 250/282/53 42/43/53 +f 42/43/53 77/79/53 276/292/53 +f 243/277/54 277/293/54 79/81/54 +f 79/81/221 30/31/221 243/277/221 +f 278/85/222 279/84/222 280/83/222 +f 280/83/222 281/86/222 278/85/222 +f 281/86/223 280/83/223 228/8/223 +f 228/8/223 231/9/223 281/86/223 +f 282/88/224 283/87/224 279/84/224 +f 279/84/224 278/85/224 282/88/224 +f 284/90/225 285/89/225 283/87/225 +f 283/87/225 282/88/225 284/90/225 +f 286/92/124 287/91/124 285/89/124 +f 285/89/226 284/90/226 286/92/226 +f 288/94/61 289/93/61 287/91/61 +f 287/91/61 286/92/61 288/94/61 +f 290/294/121 273/289/121 72/74/121 +f 72/74/227 94/96/227 290/294/227 +f 291/99/44 292/98/44 293/97/44 +f 293/97/44 294/100/44 291/99/44 +f 260/53/45 259/54/45 292/98/45 +f 292/98/45 291/99/45 260/53/45 +f 294/100/122 293/97/122 295/101/122 +f 295/101/122 296/102/122 294/100/122 +f 296/102/123 295/101/123 297/103/123 +f 297/103/123 298/104/123 296/102/123 +f 298/104/66 297/103/66 299/105/66 +f 299/105/66 300/106/66 298/104/66 +f 300/106/66 299/105/66 289/93/66 +f 289/93/66 288/94/66 300/106/66 +f 301/131/228 302/132/228 303/130/228 +f 303/130/228 304/129/228 301/131/228 +f 304/129/229 303/130/229 305/128/229 +f 305/128/229 306/127/229 304/129/229 +f 306/127/230 305/128/230 307/126/230 +f 307/126/230 308/125/230 306/127/230 +f 308/125/231 307/126/231 309/124/231 +f 309/124/232 310/123/232 308/125/232 +f 310/123/233 309/124/233 311/122/233 +f 311/122/89 312/121/89 310/123/89 +f 312/121/91 311/122/91 313/120/91 +f 313/120/91 314/119/91 312/121/91 +f 314/119/92 313/120/92 315/118/92 +f 315/118/92 316/117/92 314/119/92 +f 316/117/94 315/118/94 317/116/94 +f 317/116/234 318/115/234 316/117/234 +f 318/115/235 317/116/235 319/114/235 +f 319/114/236 320/113/236 318/115/236 +f 320/113/237 319/114/237 321/112/237 +f 321/112/237 322/111/237 320/113/237 +f 322/111/238 321/112/238 323/109/238 +f 323/109/238 324/108/238 322/111/238 +f 324/108/239 323/109/239 325/110/239 +f 325/110/239 326/107/239 324/108/239 +f 326/107/239 325/110/239 327/140/239 +f 327/140/239 328/139/239 326/107/239 +f 329/135/103 330/138/103 331/137/103 +f 331/137/82 332/136/82 329/135/82 +f 290/139/29 261/140/29 260/110/29 +f 260/110/29 273/107/29 290/139/29 +f 273/107/29 260/110/29 291/109/29 +f 291/109/29 271/108/29 273/107/29 +f 271/108/240 291/109/240 294/112/240 +f 294/112/240 272/111/240 271/108/240 +f 272/111/241 294/112/241 296/114/241 +f 296/114/241 274/113/241 272/111/241 +f 274/113/242 296/114/242 298/116/242 +f 298/116/243 275/115/243 274/113/243 +f 275/115/244 298/116/244 300/118/244 +f 300/118/71 276/117/71 275/115/71 +f 276/117/73 300/118/73 288/120/73 +f 288/120/73 250/119/73 276/117/73 +f 250/119/74 288/120/74 286/122/74 +f 286/122/74 246/121/74 250/119/74 +f 246/121/76 286/122/76 284/124/76 +f 284/124/245 245/123/245 246/121/245 +f 245/123/246 284/124/246 282/126/246 +f 282/126/247 244/125/247 245/123/247 +f 244/125/248 282/126/248 278/128/248 +f 278/128/248 241/127/248 244/125/248 +f 241/127/249 278/128/249 281/130/249 +f 281/130/249 242/129/249 241/127/249 +f 242/129/29 281/130/29 231/132/29 +f 231/132/29 243/131/29 242/129/29 +f 243/131/29 231/132/29 230/134/29 +f 230/134/29 277/133/29 243/131/29 +f 333/136/102 334/137/102 335/138/102 +f 335/138/102 336/135/102 333/136/102 +f 337/133/228 338/134/228 302/132/228 +f 302/132/228 301/131/228 337/133/228 +f 290/141/29 332/136/29 331/137/29 +f 331/137/29 261/142/29 290/141/29 +f 339/144/100 340/145/100 341/146/100 +f 341/146/100 342/143/100 339/144/100 +f 327/147/239 343/150/239 344/149/239 +f 344/149/239 328/148/239 327/147/239 +f 337/148/228 345/149/228 346/150/228 +f 346/150/228 338/147/228 337/148/228 +f 347/146/250 348/143/250 349/144/250 +f 349/144/250 350/145/250 347/146/250 +f 230/142/251 334/137/251 333/136/251 +f 333/136/251 277/141/251 230/142/251 +f 261/151/99 339/154/99 342/153/99 +f 342/153/99 258/152/99 261/151/99 +f 258/155/83 342/158/83 341/157/83 +f 341/157/83 330/156/83 258/155/83 +f 330/156/82 341/157/82 340/160/82 +f 340/160/103 331/159/103 330/156/103 +f 331/159/29 340/160/29 339/154/29 +f 339/154/29 261/151/29 331/159/29 +f 229/152/82 347/153/82 350/154/82 +f 350/154/82 230/151/82 229/152/82 +f 230/151/252 350/154/252 349/160/252 +f 349/160/252 334/159/252 230/151/252 +f 334/159/102 349/160/102 348/157/102 +f 348/157/102 335/156/102 334/159/102 +f 335/156/253 348/157/253 347/158/253 +f 347/158/253 229/155/253 335/156/253 +f 222/173/254 301/131/254 304/129/254 +f 304/129/254 223/172/254 222/173/254 +f 223/172/107 304/129/107 306/127/107 +f 306/127/107 225/171/107 223/172/107 +f 225/171/110 306/127/110 308/125/110 +f 308/125/110 232/170/110 225/171/110 +f 232/170/255 308/125/255 310/123/255 +f 310/123/255 235/169/255 232/170/255 +f 235/169/256 310/123/256 312/121/256 +f 312/121/256 238/168/256 235/169/256 +f 238/168/257 312/121/257 314/119/257 +f 314/119/257 247/167/257 238/168/257 +f 247/167/258 314/119/258 316/117/258 +f 316/117/258 269/166/258 247/167/258 +f 269/166/259 316/117/259 318/115/259 +f 318/115/259 266/165/259 269/166/259 +f 266/165/260 318/115/260 320/113/260 +f 320/113/260 263/164/260 266/165/260 +f 263/164/261 320/113/261 322/111/261 +f 322/111/261 257/163/261 263/164/261 +f 257/163/262 322/111/262 324/108/262 +f 324/108/262 254/162/262 257/163/262 +f 254/162/263 324/108/263 326/107/263 +f 326/107/263 251/161/263 254/162/263 +f 251/161/264 326/107/264 328/139/264 +f 328/139/264 252/192/264 251/161/264 +f 329/135/82 344/149/82 343/150/82 +f 343/150/82 330/138/82 329/135/82 +f 330/175/265 343/150/265 327/147/265 +f 327/147/265 258/176/265 330/175/265 +f 258/51/33 327/178/33 325/177/33 +f 325/177/33 259/54/33 258/51/33 +f 259/54/46 325/177/46 323/179/46 +f 323/179/46 292/98/46 259/54/46 +f 292/98/43 323/179/43 321/180/43 +f 321/180/43 293/97/43 292/98/43 +f 293/97/47 321/180/47 319/181/47 +f 319/181/47 295/101/47 293/97/47 +f 295/101/64 319/181/64 317/182/64 +f 317/182/123 297/103/123 295/101/123 +f 297/103/66 317/182/66 315/183/66 +f 315/183/66 299/105/66 297/103/66 +f 299/105/66 315/183/66 313/184/66 +f 313/184/65 289/93/65 299/105/65 +f 289/93/62 313/184/62 311/185/62 +f 311/185/62 287/91/62 289/93/62 +f 287/91/59 311/185/59 309/186/59 +f 309/186/124 285/89/124 287/91/124 +f 285/89/125 309/186/125 307/187/125 +f 307/187/266 283/87/266 285/89/266 +f 283/87/21 307/187/21 305/188/21 +f 305/188/22 279/84/22 283/87/22 +f 279/84/19 305/188/19 303/189/19 +f 303/189/201 280/83/201 279/84/201 +f 280/83/202 303/189/202 302/190/202 +f 302/190/202 228/8/202 280/83/202 +f 228/8/221 302/190/221 338/191/221 +f 338/191/221 229/11/221 228/8/221 +f 229/176/265 338/147/265 346/150/265 +f 346/150/265 335/175/265 229/176/265 +f 335/138/102 346/150/102 345/149/102 +f 345/149/102 336/135/102 335/138/102 +f 221/174/267 337/133/267 301/131/267 +f 301/131/267 222/173/267 221/174/267 +f 351/193/268 352/196/268 353/195/268 +f 353/195/269 354/194/269 351/193/269 +f 354/194/270 353/195/270 355/198/270 +f 355/198/271 356/197/271 354/194/271 +f 356/197/272 355/198/272 357/200/272 +f 357/200/273 358/199/273 356/197/273 +f 358/199/274 357/200/274 359/202/274 +f 359/202/274 360/201/274 358/199/274 +f 361/203/275 362/206/275 353/205/275 +f 353/205/276 352/204/276 361/203/276 +f 362/206/277 363/208/277 355/207/277 +f 355/207/278 353/205/278 362/206/278 +f 363/208/279 364/210/279 357/209/279 +f 357/209/280 355/207/280 363/208/280 +f 364/210/281 365/212/281 359/211/281 +f 359/211/282 357/209/282 364/210/282 +f 366/213/283 367/216/283 358/215/283 +f 358/215/283 360/214/283 366/213/283 +f 367/216/284 368/218/284 356/217/284 +f 356/217/285 358/215/285 367/216/285 +f 368/218/286 369/220/286 354/219/286 +f 354/219/287 356/217/287 368/218/287 +f 369/220/288 370/222/288 351/221/288 +f 351/221/289 354/219/289 369/220/289 +f 352/196/290 351/193/290 371/224/290 +f 371/224/291 372/223/291 352/196/291 +f 351/221/292 370/222/292 373/226/292 +f 373/226/292 371/225/292 351/221/292 +f 374/227/293 375/230/293 376/229/293 +f 376/229/294 377/228/294 374/227/294 +f 375/230/295 378/232/295 379/231/295 +f 379/231/296 376/229/296 375/230/296 +f 378/232/297 380/234/297 381/233/297 +f 381/233/298 379/231/298 378/232/298 +f 380/234/299 360/201/299 359/202/299 +f 359/202/299 381/233/299 380/234/299 +f 382/235/300 377/238/300 376/237/300 +f 376/237/301 383/236/301 382/235/301 +f 383/236/302 376/237/302 379/240/302 +f 379/240/303 384/239/303 383/236/303 +f 384/239/304 379/240/304 381/242/304 +f 381/242/305 385/241/305 384/239/305 +f 385/241/306 381/242/306 359/211/306 +f 359/211/307 365/212/307 385/241/307 +f 366/213/308 360/214/308 380/244/308 +f 380/244/308 386/243/308 366/213/308 +f 386/243/309 380/244/309 378/246/309 +f 378/246/310 387/245/310 386/243/310 +f 387/245/311 378/246/311 375/248/311 +f 375/248/312 388/247/312 387/245/312 +f 388/247/313 375/248/313 374/250/313 +f 374/250/314 389/249/314 388/247/314 +f 377/228/315 390/252/315 391/251/315 +f 391/251/316 374/227/316 377/228/316 +f 374/250/317 391/254/317 392/253/317 +f 392/253/318 389/249/318 374/250/318 +f 393/256/61 394/257/61 395/258/61 +f 395/258/61 396/255/61 393/256/61 +f 397/259/178 398/262/178 399/261/178 +f 399/261/178 400/260/178 397/259/178 +f 398/262/179 393/264/179 396/263/179 +f 396/263/179 399/261/179 398/262/179 +f 399/265/319 396/268/319 395/267/319 +f 395/267/319 401/266/319 399/265/319 +f 402/260/181 401/261/181 403/262/181 +f 403/262/181 404/259/181 402/260/181 +f 401/261/182 395/263/182 394/264/182 +f 394/264/182 403/262/182 401/261/182 +f 404/269/320 403/266/320 398/265/320 +f 398/265/321 397/270/321 404/269/321 +f 403/266/322 394/267/322 393/268/322 +f 393/268/322 398/265/322 403/266/322 +f 405/257/61 406/258/61 407/255/61 +f 407/255/61 408/256/61 405/257/61 +f 409/259/186 410/260/186 411/261/186 +f 411/261/186 412/262/186 409/259/186 +f 412/262/187 411/261/187 406/263/187 +f 406/263/187 405/264/187 412/262/187 +f 411/265/319 413/266/319 407/267/319 +f 407/267/319 406/268/319 411/265/319 +f 414/260/188 415/259/188 416/262/188 +f 416/262/188 413/261/188 414/260/188 +f 413/261/189 416/262/189 408/264/189 +f 408/264/189 407/263/189 413/261/189 +f 415/269/321 409/270/321 412/265/321 +f 412/265/320 416/266/320 415/269/320 +f 416/266/322 412/265/322 405/268/322 +f 405/268/322 408/267/322 416/266/322 +# 676 faces + diff --git a/examples/models/resources/models/obj/bridge_diffuse.png b/examples/models/resources/models/obj/bridge_diffuse.png new file mode 100644 index 0000000..45a86b5 Binary files /dev/null and b/examples/models/resources/models/obj/bridge_diffuse.png differ diff --git a/examples/models/resources/models/obj/castle.obj b/examples/models/resources/models/obj/castle.obj new file mode 100644 index 0000000..a4ec921 --- /dev/null +++ b/examples/models/resources/models/obj/castle.obj @@ -0,0 +1,12919 @@ +# (c) 2018 Medieval Assets Pack by Alberto Cano +# Licensed as Creative Commons Attribution-NonCommercial 4.0 + +# +# object castle +# + +v -17.17 7.76 -10.68 +v -16.55 7.76 -12.98 +v -16.55 0.00 -12.98 +v -17.17 0.00 -10.68 +v -14.87 7.76 -14.66 +v -14.87 0.00 -14.66 +v -12.57 7.76 -15.28 +v -12.57 0.00 -15.28 +v -10.27 7.76 -14.66 +v -10.27 0.00 -14.66 +v -8.58 7.76 -12.98 +v -8.58 0.00 -12.98 +v -7.97 7.76 -10.68 +v -7.97 0.00 -10.68 +v -8.58 7.76 -8.38 +v -8.58 0.00 -8.38 +v -10.27 7.76 -6.69 +v -10.27 0.00 -6.69 +v -12.57 7.76 -6.08 +v -12.57 0.00 -6.08 +v -14.87 7.76 -6.69 +v -14.87 0.00 -6.69 +v -16.55 7.76 -8.38 +v -16.55 0.00 -8.38 +v -16.78 7.76 -13.11 +v -17.43 7.76 -10.68 +v -17.43 8.57 -10.68 +v -16.78 8.57 -13.11 +v -15.00 7.76 -14.89 +v -15.00 8.57 -14.89 +v -12.57 7.76 -15.54 +v -12.57 8.57 -15.54 +v -10.13 7.76 -14.89 +v -10.13 8.57 -14.89 +v -8.35 7.76 -13.11 +v -8.35 8.57 -13.11 +v -7.70 7.76 -10.68 +v -7.70 8.57 -10.68 +v -8.35 7.76 -8.24 +v -8.35 8.57 -8.24 +v -10.13 7.76 -6.46 +v -10.13 8.57 -6.46 +v -12.57 7.76 -5.81 +v -12.57 8.57 -5.81 +v -15.00 7.76 -6.46 +v -15.00 8.57 -6.46 +v -16.78 7.76 -8.24 +v -16.78 8.57 -8.24 +v -17.17 8.57 -10.68 +v -16.55 8.57 -12.98 +v -14.87 8.57 -14.66 +v -12.57 8.57 -15.28 +v -10.27 8.57 -14.66 +v -8.58 8.57 -12.98 +v -7.97 8.57 -10.68 +v -8.58 8.57 -8.38 +v -10.27 8.57 -6.69 +v -12.57 8.57 -6.08 +v -14.87 8.57 -6.69 +v -16.55 8.57 -8.38 +v -17.17 16.89 -10.68 +v -16.55 16.89 -12.98 +v -14.87 16.89 -14.66 +v -12.57 16.89 -15.28 +v -10.27 16.89 -14.66 +v -8.58 16.89 -12.98 +v -7.97 16.89 -10.68 +v -8.58 16.89 -8.38 +v -10.27 16.89 -6.69 +v -12.57 16.89 -6.08 +v -14.87 16.89 -6.69 +v -16.55 16.89 -8.38 +v -17.13 21.30 -13.31 +v -17.83 21.30 -10.68 +v -18.23 21.30 -10.68 +v -17.47 21.30 -13.51 +v -15.20 21.30 -15.24 +v -15.40 21.30 -15.58 +v -12.57 21.30 -15.94 +v -12.57 21.30 -16.34 +v -9.93 21.30 -15.24 +v -9.73 21.30 -15.58 +v -8.01 21.30 -13.31 +v -7.66 21.30 -13.51 +v -7.30 21.30 -10.68 +v -6.90 21.30 -10.68 +v -8.01 21.30 -8.04 +v -7.66 21.30 -7.84 +v -9.93 21.30 -6.12 +v -9.73 21.30 -5.77 +v -12.57 21.30 -5.41 +v -12.57 21.30 -5.01 +v -15.20 21.30 -6.12 +v -15.40 21.30 -5.77 +v -17.13 21.30 -8.04 +v -17.47 21.30 -7.84 +v -16.72 24.76 -10.68 +v -16.17 24.76 -12.76 +v -14.64 24.76 -14.28 +v -12.57 24.76 -14.83 +v -10.49 24.76 -14.28 +v -8.97 24.76 -12.76 +v -8.41 24.76 -10.68 +v -8.97 24.76 -8.60 +v -10.49 24.76 -7.08 +v -12.57 24.76 -6.52 +v -14.64 24.76 -7.08 +v -16.17 24.76 -8.60 +v -16.69 28.50 -10.68 +v -16.13 28.50 -12.74 +v -14.63 28.50 -14.24 +v -12.57 28.50 -14.80 +v -10.51 28.50 -14.24 +v -9.00 28.50 -12.74 +v -8.45 28.50 -10.68 +v -9.00 28.50 -8.62 +v -10.51 28.50 -7.11 +v -12.57 28.50 -6.56 +v -14.63 28.50 -7.11 +v -16.13 28.50 -8.62 +v -17.83 17.36 -10.68 +v -17.13 17.36 -13.31 +v -15.20 17.36 -15.24 +v -12.57 17.36 -15.94 +v -9.93 17.36 -15.24 +v -8.01 17.36 -13.31 +v -7.30 17.36 -10.68 +v -8.01 17.36 -8.04 +v -9.93 17.36 -6.12 +v -12.57 17.36 -5.41 +v -15.20 17.36 -6.12 +v -17.13 17.36 -8.04 +v -17.91 20.21 -10.37 +v -17.91 20.52 -10.80 +v -17.91 19.21 -10.80 +v -17.91 19.23 -10.37 +v -17.81 19.26 -10.03 +v -17.91 19.26 -10.04 +v -17.91 19.12 -10.04 +v -17.81 19.12 -10.03 +v -17.89 20.75 -10.80 +v -17.98 20.75 -10.81 +v -17.94 20.29 -10.15 +v -17.84 20.29 -10.15 +v -17.68 19.12 -11.55 +v -17.78 19.12 -11.56 +v -17.78 19.26 -11.56 +v -17.68 19.26 -11.55 +v -17.89 19.07 -10.80 +v -17.98 19.07 -10.81 +v -17.82 19.12 -11.45 +v -17.73 19.12 -11.45 +v -18.05 19.12 -10.16 +v -18.05 19.26 -10.16 +v -18.08 19.23 -10.39 +v -17.98 20.52 -10.81 +v -17.98 20.21 -10.38 +v -17.93 19.26 -11.46 +v -17.93 19.12 -11.46 +v -18.01 19.24 -11.24 +v -18.09 19.07 -10.82 +v -18.09 19.21 -10.82 +v -17.83 20.21 -11.23 +v -17.83 19.24 -11.23 +v -17.73 20.29 -11.45 +v -17.82 20.29 -11.45 +v -17.84 19.12 -10.15 +v -17.94 19.12 -10.15 +v -17.90 20.21 -11.23 +v -17.98 19.23 -10.38 +v -17.90 19.24 -11.23 +v -17.98 19.21 -10.81 +v -17.82 19.26 -11.45 +v -17.73 19.26 -11.45 +v -17.94 19.26 -10.15 +v -17.84 19.26 -10.15 +v -18.02 19.26 -10.05 +v -18.02 19.12 -10.05 +v -17.88 19.12 -11.57 +v -17.88 19.26 -11.57 +v -12.87 20.21 -16.02 +v -12.44 20.52 -16.02 +v -12.44 19.21 -16.02 +v -12.87 19.23 -16.02 +v -13.21 19.26 -15.92 +v -13.20 19.26 -16.02 +v -13.20 19.12 -16.02 +v -13.21 19.12 -15.92 +v -12.44 20.75 -16.00 +v -12.43 20.75 -16.10 +v -13.09 20.29 -16.05 +v -13.10 20.29 -15.95 +v -11.69 19.12 -15.79 +v -11.68 19.12 -15.89 +v -11.68 19.26 -15.89 +v -11.69 19.26 -15.79 +v -12.44 19.07 -16.00 +v -12.43 19.07 -16.10 +v -11.79 19.12 -15.94 +v -11.80 19.12 -15.84 +v -13.08 19.12 -16.16 +v -13.08 19.26 -16.16 +v -12.85 19.23 -16.20 +v -12.43 20.52 -16.10 +v -12.86 20.21 -16.09 +v -11.78 19.26 -16.04 +v -11.78 19.12 -16.04 +v -12.00 19.24 -16.12 +v -12.42 19.07 -16.20 +v -12.42 19.21 -16.20 +v -12.01 20.21 -15.94 +v -12.01 19.24 -15.94 +v -11.80 20.29 -15.84 +v -11.79 20.29 -15.94 +v -13.10 19.12 -15.95 +v -13.09 19.12 -16.05 +v -12.01 20.21 -16.01 +v -12.86 19.23 -16.09 +v -12.01 19.24 -16.01 +v -12.43 19.21 -16.10 +v -11.79 19.26 -15.94 +v -11.80 19.26 -15.84 +v -13.09 19.26 -16.05 +v -13.10 19.26 -15.95 +v -13.19 19.26 -16.13 +v -13.19 19.12 -16.13 +v -11.67 19.12 -16.00 +v -11.67 19.26 -16.00 +v -9.24 23.34 -12.52 +v -9.78 23.34 -13.29 +v -9.10 24.92 -13.76 +v -8.56 24.92 -12.99 +v -8.63 28.41 -12.92 +v -9.53 28.41 -12.29 +v -9.18 28.41 -13.70 +v -10.08 28.41 -13.07 +v -12.87 27.21 -14.81 +v -12.44 27.52 -14.82 +v -12.44 26.21 -14.82 +v -12.87 26.24 -14.81 +v -13.21 26.26 -14.72 +v -13.20 26.26 -14.82 +v -13.20 26.12 -14.82 +v -13.21 26.12 -14.72 +v -12.44 27.75 -14.80 +v -12.43 27.75 -14.89 +v -13.09 27.30 -14.85 +v -13.10 27.30 -14.75 +v -11.69 26.12 -14.59 +v -11.68 26.12 -14.69 +v -11.68 26.26 -14.69 +v -11.69 26.26 -14.59 +v -12.44 26.07 -14.80 +v -12.43 26.07 -14.89 +v -11.79 26.12 -14.73 +v -11.80 26.12 -14.64 +v -13.08 26.12 -14.96 +v -13.08 26.26 -14.96 +v -12.85 26.24 -14.99 +v -12.43 27.52 -14.89 +v -12.86 27.21 -14.89 +v -11.78 26.26 -14.84 +v -11.78 26.12 -14.84 +v -12.00 26.25 -14.92 +v -12.42 26.07 -15.00 +v -12.42 26.21 -15.00 +v -12.01 27.21 -14.74 +v -12.01 26.25 -14.74 +v -11.80 27.30 -14.64 +v -11.79 27.30 -14.73 +v -13.10 26.12 -14.75 +v -13.09 26.12 -14.85 +v -12.01 27.21 -14.81 +v -12.86 26.24 -14.89 +v -12.01 26.25 -14.81 +v -12.43 26.21 -14.89 +v -11.79 26.26 -14.73 +v -11.80 26.26 -14.64 +v -13.09 26.26 -14.85 +v -13.10 26.26 -14.75 +v -13.19 26.26 -14.93 +v -13.19 26.12 -14.93 +v -11.67 26.12 -14.79 +v -11.67 26.26 -14.79 +v -14.41 23.34 -14.01 +v -15.18 23.34 -13.46 +v -15.65 24.92 -14.14 +v -14.88 24.92 -14.68 +v -14.81 28.41 -14.61 +v -14.18 28.41 -13.71 +v -15.59 28.41 -14.07 +v -14.96 28.41 -13.17 +v -8.43 27.21 -10.98 +v -8.42 27.52 -10.55 +v -8.42 26.21 -10.55 +v -8.43 26.24 -10.98 +v -8.52 26.26 -11.32 +v -8.42 26.26 -11.31 +v -8.42 26.12 -11.31 +v -8.52 26.12 -11.32 +v -8.45 27.75 -10.55 +v -8.35 27.75 -10.54 +v -8.39 27.30 -11.20 +v -8.49 27.30 -11.21 +v -8.65 26.12 -9.80 +v -8.56 26.12 -9.79 +v -8.56 26.26 -9.79 +v -8.65 26.26 -9.80 +v -8.45 26.07 -10.55 +v -8.35 26.07 -10.54 +v -8.51 26.12 -9.90 +v -8.61 26.12 -9.91 +v -8.29 26.12 -11.19 +v -8.29 26.26 -11.19 +v -8.25 26.24 -10.96 +v -8.35 27.52 -10.54 +v -8.35 27.21 -10.97 +v -8.40 26.26 -9.89 +v -8.40 26.12 -9.89 +v -8.32 26.25 -10.11 +v -8.24 26.07 -10.53 +v -8.24 26.21 -10.53 +v -8.50 27.21 -10.13 +v -8.50 26.25 -10.13 +v -8.61 27.30 -9.91 +v -8.51 27.30 -9.90 +v -8.49 26.12 -11.21 +v -8.39 26.12 -11.20 +v -8.43 27.21 -10.12 +v -8.35 26.24 -10.97 +v -8.43 26.25 -10.12 +v -8.35 26.21 -10.54 +v -8.51 26.26 -9.90 +v -8.61 26.26 -9.91 +v -8.39 26.26 -11.20 +v -8.49 26.26 -11.21 +v -8.32 26.26 -11.30 +v -8.32 26.12 -11.30 +v -8.45 26.12 -9.78 +v -8.45 26.26 -9.78 +v -13.04 12.70 -6.81 +v -12.09 12.70 -6.81 +v -12.09 14.28 -5.99 +v -13.04 14.28 -5.99 +v -13.04 17.34 -5.64 +v -13.04 17.34 -6.74 +v -12.09 17.34 -5.64 +v -12.09 17.34 -6.74 +v -8.98 12.70 -12.20 +v -9.46 12.70 -13.02 +v -8.74 14.28 -13.43 +v -8.27 14.28 -12.61 +v -7.97 17.34 -12.79 +v -8.92 17.34 -12.24 +v -8.44 17.34 -13.61 +v -9.39 17.34 -13.06 +v -12.09 12.70 -14.54 +v -13.04 12.70 -14.54 +v -13.04 14.28 -15.36 +v -12.09 14.28 -15.36 +v -12.09 17.34 -15.71 +v -12.09 17.34 -14.62 +v -13.04 17.34 -15.71 +v -13.04 17.34 -14.62 +v -10.73 23.34 -7.35 +v -9.95 23.34 -7.89 +v -9.48 24.92 -7.22 +v -10.25 24.92 -6.67 +v -10.32 28.41 -6.74 +v -10.95 28.41 -7.65 +v -9.55 28.41 -7.29 +v -10.18 28.41 -8.19 +v -9.46 12.70 -8.34 +v -8.98 12.70 -9.15 +v -8.27 14.28 -8.74 +v -8.74 14.28 -7.92 +v -8.44 17.34 -7.75 +v -9.39 17.34 -8.30 +v -7.97 17.34 -8.57 +v -8.92 17.34 -9.12 +v -7.23 20.21 -10.98 +v -7.22 20.52 -10.55 +v -7.22 19.21 -10.55 +v -7.23 19.23 -10.98 +v -7.32 19.26 -11.32 +v -7.22 19.26 -11.31 +v -7.22 19.12 -11.31 +v -7.32 19.12 -11.32 +v -7.24 20.75 -10.55 +v -7.15 20.75 -10.54 +v -7.19 20.29 -11.20 +v -7.29 20.29 -11.21 +v -7.45 19.12 -9.80 +v -7.35 19.12 -9.79 +v -7.35 19.26 -9.79 +v -7.45 19.26 -9.80 +v -7.24 19.07 -10.55 +v -7.15 19.07 -10.54 +v -7.31 19.12 -9.90 +v -7.41 19.12 -9.91 +v -7.09 19.12 -11.19 +v -7.09 19.26 -11.19 +v -7.05 19.23 -10.96 +v -7.15 20.52 -10.54 +v -7.15 20.21 -10.97 +v -7.20 19.26 -9.89 +v -7.20 19.12 -9.89 +v -7.12 19.24 -10.11 +v -7.04 19.07 -10.53 +v -7.04 19.21 -10.53 +v -7.30 20.21 -10.13 +v -7.30 19.24 -10.13 +v -7.41 20.29 -9.91 +v -7.31 20.29 -9.90 +v -7.29 19.12 -11.21 +v -7.19 19.12 -11.20 +v -7.23 20.21 -10.12 +v -7.15 19.23 -10.97 +v -7.23 19.24 -10.12 +v -7.15 19.21 -10.54 +v -7.31 19.26 -9.90 +v -7.41 19.26 -9.91 +v -7.19 19.26 -11.20 +v -7.29 19.26 -11.21 +v -7.11 19.26 -11.30 +v -7.11 19.12 -11.30 +v -7.25 19.12 -9.78 +v -7.25 19.26 -9.78 +v -12.26 27.21 -6.54 +v -12.69 27.52 -6.53 +v -12.69 26.21 -6.53 +v -12.26 26.24 -6.54 +v -11.92 26.26 -6.63 +v -11.93 26.26 -6.53 +v -11.93 26.12 -6.53 +v -11.92 26.12 -6.63 +v -12.69 27.75 -6.56 +v -12.70 27.75 -6.46 +v -12.04 27.30 -6.51 +v -12.03 27.30 -6.60 +v -13.44 26.12 -6.76 +v -13.45 26.12 -6.67 +v -13.45 26.26 -6.67 +v -13.44 26.26 -6.76 +v -12.69 26.07 -6.56 +v -12.70 26.07 -6.46 +v -13.34 26.12 -6.62 +v -13.34 26.12 -6.72 +v -12.05 26.12 -6.40 +v -12.05 26.26 -6.40 +v -12.28 26.24 -6.36 +v -12.70 27.52 -6.46 +v -12.27 27.21 -6.47 +v -13.35 26.26 -6.51 +v -13.35 26.12 -6.51 +v -13.13 26.25 -6.43 +v -12.71 26.07 -6.35 +v -12.71 26.21 -6.35 +v -13.12 27.21 -6.61 +v -13.12 26.25 -6.61 +v -13.34 27.30 -6.72 +v -13.34 27.30 -6.62 +v -12.03 26.12 -6.60 +v -12.04 26.12 -6.51 +v -13.12 27.21 -6.54 +v -12.27 26.24 -6.47 +v -13.12 26.25 -6.54 +v -12.70 26.21 -6.46 +v -13.34 26.26 -6.62 +v -13.34 26.26 -6.72 +v -12.04 26.26 -6.51 +v -12.03 26.26 -6.60 +v -11.94 26.26 -6.43 +v -11.94 26.12 -6.43 +v -13.46 26.12 -6.56 +v -13.46 26.26 -6.56 +v -16.15 12.70 -9.15 +v -15.67 12.70 -8.34 +v -16.39 14.28 -7.92 +v -16.86 14.28 -8.74 +v -17.17 17.34 -8.57 +v -16.21 17.34 -9.12 +v -16.69 17.34 -7.75 +v -15.74 17.34 -8.30 +v -12.26 20.21 -5.34 +v -12.69 20.52 -5.33 +v -12.69 19.21 -5.33 +v -12.26 19.23 -5.34 +v -11.92 19.26 -5.43 +v -11.93 19.26 -5.33 +v -11.93 19.12 -5.33 +v -11.92 19.12 -5.43 +v -12.69 20.75 -5.36 +v -12.70 20.75 -5.26 +v -12.04 20.29 -5.30 +v -12.03 20.29 -5.40 +v -13.44 19.12 -5.56 +v -13.45 19.12 -5.47 +v -13.45 19.26 -5.47 +v -13.44 19.26 -5.56 +v -12.69 19.07 -5.36 +v -12.70 19.07 -5.26 +v -13.34 19.12 -5.42 +v -13.34 19.12 -5.52 +v -12.05 19.12 -5.20 +v -12.05 19.26 -5.20 +v -12.28 19.23 -5.16 +v -12.70 20.52 -5.26 +v -12.27 20.21 -5.26 +v -13.35 19.26 -5.31 +v -13.35 19.12 -5.31 +v -13.13 19.24 -5.23 +v -12.71 19.07 -5.15 +v -12.71 19.21 -5.15 +v -13.12 20.21 -5.41 +v -13.12 19.24 -5.41 +v -13.34 20.29 -5.52 +v -13.34 20.29 -5.42 +v -12.03 19.12 -5.40 +v -12.04 19.12 -5.30 +v -13.12 20.21 -5.34 +v -12.27 19.23 -5.26 +v -13.12 19.24 -5.34 +v -12.70 19.21 -5.26 +v -13.34 19.26 -5.42 +v -13.34 19.26 -5.52 +v -12.04 19.26 -5.30 +v -12.03 19.26 -5.40 +v -11.94 19.26 -5.23 +v -11.94 19.12 -5.23 +v -13.46 19.12 -5.36 +v -13.46 19.26 -5.36 +v -15.89 23.34 -8.84 +v -15.35 23.34 -8.06 +v -16.03 24.92 -7.59 +v -16.57 24.92 -8.36 +v -16.50 28.41 -8.43 +v -15.60 28.41 -9.06 +v -15.96 28.41 -7.66 +v -15.06 28.41 -8.29 +v -16.70 27.21 -10.37 +v -16.71 27.52 -10.80 +v -16.71 26.21 -10.80 +v -16.70 26.24 -10.37 +v -16.61 26.26 -10.03 +v -16.71 26.26 -10.04 +v -16.71 26.12 -10.04 +v -16.61 26.12 -10.03 +v -16.69 27.75 -10.80 +v -16.78 27.75 -10.81 +v -16.74 27.30 -10.15 +v -16.64 27.30 -10.15 +v -16.48 26.12 -11.55 +v -16.58 26.12 -11.56 +v -16.58 26.26 -11.56 +v -16.48 26.26 -11.55 +v -16.69 26.07 -10.80 +v -16.78 26.07 -10.81 +v -16.62 26.12 -11.45 +v -16.53 26.12 -11.45 +v -16.84 26.12 -10.16 +v -16.84 26.26 -10.16 +v -16.88 26.24 -10.39 +v -16.78 27.52 -10.81 +v -16.78 27.21 -10.38 +v -16.73 26.26 -11.46 +v -16.73 26.12 -11.46 +v -16.81 26.25 -11.24 +v -16.89 26.07 -10.82 +v -16.89 26.21 -10.82 +v -16.63 27.21 -11.23 +v -16.63 26.25 -11.23 +v -16.53 27.30 -11.45 +v -16.62 27.30 -11.45 +v -16.64 26.12 -10.15 +v -16.74 26.12 -10.15 +v -16.70 27.21 -11.23 +v -16.78 26.24 -10.38 +v -16.70 26.25 -11.23 +v -16.78 26.21 -10.81 +v -16.62 26.26 -11.45 +v -16.53 26.26 -11.45 +v -16.74 26.26 -10.15 +v -16.64 26.26 -10.15 +v -16.82 26.26 -10.05 +v -16.82 26.12 -10.05 +v -16.68 26.12 -11.57 +v -16.68 26.26 -11.57 +v -15.67 12.70 -13.02 +v -16.15 12.70 -12.20 +v -16.86 14.28 -12.61 +v -16.39 14.28 -13.43 +v -16.69 17.34 -13.61 +v -15.74 17.34 -13.06 +v -17.17 17.34 -12.79 +v -16.21 17.34 -12.24 +v -16.83 28.50 -13.14 +v -17.49 28.50 -10.68 +v -17.49 30.29 -10.68 +v -16.83 30.29 -13.14 +v -15.03 28.50 -14.94 +v -15.03 30.29 -14.94 +v -12.57 28.50 -15.60 +v -12.57 30.29 -15.60 +v -10.10 28.50 -14.94 +v -10.10 30.29 -14.94 +v -8.30 28.50 -13.14 +v -8.30 30.29 -13.14 +v -7.64 28.50 -10.68 +v -7.64 30.29 -10.68 +v -8.30 28.50 -8.21 +v -8.30 30.29 -8.21 +v -10.10 28.50 -6.41 +v -10.10 30.29 -6.41 +v -12.57 28.50 -5.75 +v -12.57 30.29 -5.75 +v -15.03 28.50 -6.41 +v -15.03 30.29 -6.41 +v -16.83 28.50 -8.21 +v -16.83 30.29 -8.21 +v -16.78 30.29 -10.68 +v -16.21 30.29 -12.78 +v -15.03 30.90 -14.94 +v -16.83 30.90 -13.14 +v -16.21 30.90 -12.78 +v -14.67 30.90 -14.32 +v -14.67 30.29 -14.32 +v -12.57 30.29 -14.89 +v -10.10 30.90 -14.94 +v -12.57 30.90 -15.60 +v -12.57 30.90 -14.89 +v -10.46 30.90 -14.32 +v -10.46 30.29 -14.32 +v -8.92 30.29 -12.78 +v -7.64 30.90 -10.68 +v -8.30 30.90 -13.14 +v -8.92 30.90 -12.78 +v -8.36 30.90 -10.68 +v -8.36 30.29 -10.68 +v -8.92 30.29 -8.57 +v -10.10 30.90 -6.41 +v -8.30 30.90 -8.21 +v -8.92 30.90 -8.57 +v -10.46 30.90 -7.03 +v -10.46 30.29 -7.03 +v -12.57 30.29 -6.47 +v -15.03 30.90 -6.41 +v -12.57 30.90 -5.75 +v -12.57 30.90 -6.47 +v -14.67 30.90 -7.03 +v -14.67 30.29 -7.03 +v -16.21 30.29 -8.57 +v -17.49 30.90 -10.68 +v -16.83 30.90 -8.21 +v -16.21 30.90 -8.57 +v -16.78 30.90 -10.68 +v -16.78 29.42 -10.68 +v -16.21 29.42 -12.78 +v -14.67 29.42 -14.32 +v -12.57 29.42 -14.89 +v -10.46 29.42 -14.32 +v -8.92 29.42 -12.78 +v -8.36 29.42 -10.68 +v -8.92 29.42 -8.57 +v -10.46 29.42 -7.03 +v -12.57 29.42 -6.47 +v -14.67 29.42 -7.03 +v -16.21 29.42 -8.57 +v -12.57 29.42 -10.68 +v 15.69 11.78 11.98 +v 15.69 11.78 -12.46 +v 10.74 17.79 -7.40 +v 10.74 17.79 7.40 +v -15.69 11.78 -12.46 +v -10.74 17.79 -7.40 +v -15.69 11.78 11.98 +v -10.74 17.79 7.40 +v 12.89 0.00 11.03 +v 12.89 0.00 -11.03 +v 12.89 11.78 -11.03 +v 12.89 11.78 11.03 +v -12.89 0.00 -11.03 +v -12.89 11.78 -11.03 +v -23.42 0.00 -6.76 +v -23.42 0.00 6.76 +v -23.42 6.95 6.76 +v -23.42 6.95 -6.76 +v -12.89 0.00 11.03 +v -12.89 11.78 11.03 +v 8.74 17.79 -3.62 +v 8.74 17.79 3.62 +v -8.74 17.79 -3.62 +v -8.74 17.79 3.62 +v -12.89 6.95 6.76 +v -12.89 0.00 6.76 +v -12.89 6.95 -6.76 +v -12.89 0.00 -6.76 +v -9.46 12.70 7.57 +v -8.74 14.28 7.16 +v -8.27 14.28 7.98 +v -8.98 12.70 8.39 +v -9.39 17.34 7.53 +v -8.44 17.34 6.98 +v -7.97 17.34 7.80 +v -8.92 17.34 8.35 +v -9.31 28.15 -0.00 +v -9.31 23.30 4.54 +v 0.00 22.65 4.30 +v -0.11 25.84 -0.00 +v -9.31 27.72 -0.00 +v -9.31 22.87 4.55 +v 0.00 22.23 4.31 +v 0.00 22.65 -4.30 +v -9.31 23.30 -4.54 +v -9.31 22.87 -4.55 +v 0.00 22.23 -4.31 +v 9.31 28.15 -0.00 +v 9.31 23.30 4.54 +v 9.31 27.72 -0.00 +v 9.31 22.87 4.55 +v 9.31 23.30 -4.54 +v 9.31 22.87 -4.55 +v 4.76 26.71 -0.63 +v 5.87 26.95 -0.63 +v 5.91 26.75 -0.63 +v 4.80 26.52 -0.63 +v 4.68 27.10 -0.11 +v 5.79 27.34 -0.11 +v 4.72 26.91 -0.11 +v 5.79 27.35 -0.00 +v 4.68 27.12 -0.00 +v 4.72 26.93 -0.00 +v 5.91 26.75 0.63 +v 5.87 26.95 0.63 +v 4.76 26.71 0.63 +v 4.80 26.52 0.63 +v 5.79 27.34 0.11 +v 4.68 27.10 0.11 +v 4.72 26.91 0.11 +v 3.88 26.49 -0.63 +v 5.00 26.69 -0.63 +v 5.03 26.49 -0.63 +v 3.91 26.30 -0.63 +v 3.81 26.89 -0.11 +v 4.93 27.08 -0.11 +v 3.84 26.69 -0.11 +v 4.92 27.09 -0.00 +v 3.81 26.90 -0.00 +v 3.84 26.71 -0.00 +v 5.03 26.49 0.63 +v 5.00 26.69 0.63 +v 3.88 26.49 0.63 +v 3.91 26.30 0.63 +v 4.93 27.08 0.11 +v 3.81 26.89 0.11 +v 3.84 26.69 0.11 +v 2.89 26.32 -0.63 +v 4.01 26.46 -0.63 +v 4.04 26.27 -0.63 +v 2.91 26.13 -0.63 +v 2.84 26.72 -0.11 +v 3.96 26.86 -0.11 +v 2.86 26.53 -0.11 +v 3.96 26.87 -0.00 +v 2.84 26.74 -0.00 +v 2.86 26.54 -0.00 +v 4.04 26.27 0.63 +v 4.01 26.46 0.63 +v 2.89 26.32 0.63 +v 2.91 26.13 0.63 +v 3.96 26.86 0.11 +v 2.84 26.72 0.11 +v 2.86 26.53 0.11 +v 1.88 26.15 -0.63 +v 3.00 26.29 -0.63 +v 3.02 26.09 -0.63 +v 1.90 25.96 -0.63 +v 1.83 26.55 -0.11 +v 2.95 26.69 -0.11 +v 1.85 26.36 -0.11 +v 2.95 26.70 -0.00 +v 1.83 26.56 -0.00 +v 1.85 26.37 -0.00 +v 3.02 26.09 0.63 +v 3.00 26.29 0.63 +v 1.88 26.15 0.63 +v 1.90 25.96 0.63 +v 2.95 26.69 0.11 +v 1.83 26.55 0.11 +v 1.85 26.36 0.11 +v 0.78 26.08 -0.63 +v 1.91 26.12 -0.63 +v 1.92 25.93 -0.63 +v 0.79 25.89 -0.63 +v 0.77 26.49 -0.11 +v 1.90 26.52 -0.11 +v 0.77 26.29 -0.11 +v 1.90 26.54 -0.00 +v 0.77 26.50 -0.00 +v 0.77 26.30 -0.00 +v 1.92 25.93 0.63 +v 1.91 26.12 0.63 +v 0.78 26.08 0.63 +v 0.79 25.89 0.63 +v 1.90 26.52 0.11 +v 0.77 26.49 0.11 +v 0.77 26.29 0.11 +v -0.35 26.05 -0.63 +v 0.78 26.11 -0.63 +v 0.79 25.91 -0.63 +v -0.34 25.85 -0.63 +v -0.37 26.45 -0.11 +v 0.76 26.51 -0.11 +v -0.36 26.25 -0.11 +v 0.76 26.52 -0.00 +v -0.38 26.46 -0.00 +v -0.37 26.27 -0.00 +v 0.79 25.91 0.63 +v 0.78 26.11 0.63 +v -0.35 26.05 0.63 +v -0.34 25.85 0.63 +v 0.76 26.51 0.11 +v -0.37 26.45 0.11 +v -0.36 26.25 0.11 +v 6.98 27.27 -0.63 +v 8.09 27.50 -0.63 +v 8.13 27.31 -0.63 +v 7.02 27.08 -0.63 +v 6.90 27.66 -0.11 +v 8.01 27.90 -0.11 +v 6.94 27.47 -0.11 +v 8.00 27.91 -0.00 +v 6.89 27.68 -0.00 +v 6.93 27.48 -0.00 +v 8.13 27.31 0.63 +v 8.09 27.50 0.63 +v 6.98 27.27 0.63 +v 7.02 27.08 0.63 +v 8.01 27.90 0.11 +v 6.90 27.66 0.11 +v 6.94 27.47 0.11 +v 5.87 26.96 -0.63 +v 6.98 27.20 -0.63 +v 7.02 27.01 -0.63 +v 5.91 26.77 -0.63 +v 5.79 27.36 -0.11 +v 6.90 27.59 -0.11 +v 5.83 27.17 -0.11 +v 6.89 27.60 -0.00 +v 5.79 27.37 -0.00 +v 5.83 27.18 -0.00 +v 7.02 27.01 0.63 +v 6.98 27.20 0.63 +v 5.87 26.96 0.63 +v 5.91 26.77 0.63 +v 6.90 27.59 0.11 +v 5.79 27.36 0.11 +v 5.83 27.17 0.11 +v -6.20 26.77 -0.63 +v -6.16 26.96 -0.63 +v -5.05 26.72 -0.63 +v -5.09 26.53 -0.63 +v -4.97 27.12 -0.11 +v -6.08 27.35 -0.11 +v -5.01 26.92 -0.11 +v -6.07 27.36 -0.00 +v -4.96 27.13 -0.00 +v -5.01 26.94 -0.00 +v -5.05 26.72 0.63 +v -6.16 26.96 0.63 +v -6.20 26.77 0.63 +v -5.09 26.53 0.63 +v -4.97 27.12 0.11 +v -6.08 27.35 0.11 +v -5.01 26.92 0.11 +v -5.32 26.52 -0.63 +v -5.28 26.71 -0.63 +v -4.17 26.51 -0.63 +v -4.20 26.32 -0.63 +v -4.10 26.91 -0.11 +v -5.21 27.11 -0.11 +v -4.13 26.72 -0.11 +v -5.21 27.12 -0.00 +v -4.10 26.92 -0.00 +v -4.13 26.73 -0.00 +v -4.17 26.51 0.63 +v -5.28 26.71 0.63 +v -5.32 26.52 0.63 +v -4.20 26.32 0.63 +v -4.10 26.91 0.11 +v -5.21 27.11 0.11 +v -4.13 26.72 0.11 +v -4.32 26.27 -0.63 +v -4.30 26.46 -0.63 +v -3.18 26.32 -0.63 +v -3.20 26.13 -0.63 +v -3.13 26.72 -0.11 +v -4.25 26.86 -0.11 +v -3.15 26.53 -0.11 +v -4.25 26.87 -0.00 +v -3.13 26.73 -0.00 +v -3.15 26.54 -0.00 +v -3.18 26.32 0.63 +v -4.30 26.46 0.63 +v -4.32 26.27 0.63 +v -3.20 26.13 0.63 +v -3.13 26.72 0.11 +v -4.25 26.86 0.11 +v -3.15 26.53 0.11 +v -3.31 26.05 -0.63 +v -3.29 26.24 -0.63 +v -2.16 26.11 -0.63 +v -2.19 25.91 -0.63 +v -2.12 26.50 -0.11 +v -3.24 26.64 -0.11 +v -2.14 26.31 -0.11 +v -3.24 26.65 -0.00 +v -2.11 26.52 -0.00 +v -2.14 26.32 -0.00 +v -2.16 26.11 0.63 +v -3.29 26.24 0.63 +v -3.31 26.05 0.63 +v -2.19 25.91 0.63 +v -2.12 26.50 0.11 +v -3.24 26.64 0.11 +v -2.14 26.31 0.11 +v -2.21 25.88 -0.63 +v -2.20 26.08 -0.63 +v -1.07 26.04 -0.63 +v -1.07 25.84 -0.63 +v -1.05 26.44 -0.11 +v -2.19 26.48 -0.11 +v -1.06 26.25 -0.11 +v -2.19 26.49 -0.00 +v -1.05 26.45 -0.00 +v -1.06 26.26 -0.00 +v -1.07 26.04 0.63 +v -2.20 26.08 0.63 +v -2.21 25.88 0.63 +v -1.07 25.84 0.63 +v -1.05 26.44 0.11 +v -2.19 26.48 0.11 +v -1.06 26.25 0.11 +v -1.08 25.87 -0.63 +v -1.07 26.06 -0.63 +v 0.07 26.00 -0.63 +v 0.06 25.80 -0.63 +v 0.09 26.40 -0.11 +v -1.04 26.46 -0.11 +v 0.08 26.21 -0.11 +v -1.04 26.47 -0.00 +v 0.09 26.41 -0.00 +v 0.08 26.22 -0.00 +v 0.07 26.00 0.63 +v -1.07 26.06 0.63 +v -1.08 25.87 0.63 +v 0.06 25.80 0.63 +v 0.09 26.40 0.11 +v -1.04 26.46 0.11 +v 0.08 26.21 0.11 +v -8.19 27.32 -0.63 +v -8.15 27.51 -0.63 +v -7.04 27.28 -0.63 +v -7.08 27.09 -0.63 +v -6.96 27.67 -0.11 +v -8.07 27.90 -0.11 +v -7.00 27.48 -0.11 +v -8.06 27.92 -0.00 +v -6.95 27.68 -0.00 +v -6.99 27.49 -0.00 +v -7.04 27.28 0.63 +v -8.15 27.51 0.63 +v -8.19 27.32 0.63 +v -7.08 27.09 0.63 +v -6.96 27.67 0.11 +v -8.07 27.90 0.11 +v -7.00 27.48 0.11 +v -7.06 27.02 -0.63 +v -7.02 27.21 -0.63 +v -5.92 26.97 -0.63 +v -5.96 26.78 -0.63 +v -5.83 27.37 -0.11 +v -6.94 27.60 -0.11 +v -5.87 27.18 -0.11 +v -6.94 27.61 -0.00 +v -5.83 27.38 -0.00 +v -5.87 27.19 -0.00 +v -5.92 26.97 0.63 +v -7.02 27.21 0.63 +v -7.06 27.02 0.63 +v -5.96 26.78 0.63 +v -5.83 27.37 0.11 +v -6.94 27.60 0.11 +v -5.87 27.18 0.11 +v -9.18 27.83 -0.63 +v -8.10 27.48 -0.63 +v -8.16 27.29 -0.63 +v -9.24 27.64 -0.63 +v -9.05 28.21 -0.11 +v -7.98 27.86 -0.11 +v -9.11 28.02 -0.11 +v -7.97 27.87 -0.00 +v -9.05 28.22 -0.00 +v -9.11 28.04 -0.00 +v -8.16 27.29 0.63 +v -8.10 27.48 0.63 +v -9.18 27.83 0.63 +v -9.24 27.64 0.63 +v -7.98 27.86 0.11 +v -9.05 28.21 0.11 +v -9.11 28.02 0.11 +v 8.19 27.28 -0.63 +v 8.13 27.46 -0.63 +v 9.21 27.81 -0.63 +v 9.27 27.63 -0.63 +v 9.08 28.20 -0.11 +v 8.01 27.84 -0.11 +v 9.15 28.01 -0.11 +v 8.00 27.86 -0.00 +v 9.08 28.21 -0.00 +v 9.14 28.02 -0.00 +v 9.21 27.81 0.63 +v 8.13 27.46 0.63 +v 8.19 27.28 0.63 +v 9.27 27.63 0.63 +v 9.08 28.20 0.11 +v 8.01 27.84 0.11 +v 9.15 28.01 0.11 +v 9.46 12.70 7.57 +v 8.98 12.70 8.39 +v 8.27 14.28 7.98 +v 8.74 14.28 7.16 +v 8.44 17.34 6.98 +v 9.39 17.34 7.53 +v 7.97 17.34 7.80 +v 8.92 17.34 8.35 +v -15.48 7.80 6.90 +v -15.48 7.80 6.03 +v -17.46 7.80 6.03 +v -17.46 7.80 6.90 +v -15.48 6.95 6.90 +v -15.48 6.95 6.03 +v -17.46 6.95 6.03 +v -17.46 6.95 6.90 +v -18.47 7.80 6.90 +v -18.47 7.80 6.03 +v -20.45 7.80 6.03 +v -20.45 7.80 6.90 +v -18.47 6.95 6.90 +v -18.47 6.95 6.03 +v -20.45 6.95 6.03 +v -20.45 6.95 6.90 +v -21.45 7.80 6.90 +v -21.45 7.80 6.03 +v -23.44 7.80 6.03 +v -23.44 7.80 6.90 +v -21.45 6.95 6.90 +v -21.45 6.95 6.03 +v -23.44 6.95 6.03 +v -23.44 6.95 6.90 +v -23.40 7.80 5.50 +v -22.53 7.80 5.50 +v -22.53 7.80 3.51 +v -23.40 7.80 3.51 +v -23.40 6.95 5.50 +v -22.53 6.95 5.50 +v -22.53 6.95 3.51 +v -23.40 6.95 3.51 +v -23.40 7.80 2.51 +v -22.53 7.80 2.51 +v -22.53 7.80 0.53 +v -23.40 7.80 0.53 +v -23.40 6.95 2.51 +v -22.53 6.95 2.51 +v -22.53 6.95 0.53 +v -23.40 6.95 0.53 +v -23.40 7.80 -0.48 +v -22.53 7.80 -0.48 +v -22.53 7.80 -2.46 +v -23.40 7.80 -2.46 +v -23.40 6.95 -0.48 +v -22.53 6.95 -0.48 +v -22.53 6.95 -2.46 +v -23.40 6.95 -2.46 +v -23.40 7.80 -3.47 +v -22.53 7.80 -3.47 +v -22.53 7.80 -5.45 +v -23.40 7.80 -5.45 +v -23.40 6.95 -3.47 +v -22.53 6.95 -3.47 +v -22.53 6.95 -5.45 +v -23.40 6.95 -5.45 +v -21.45 7.80 -6.02 +v -21.45 7.80 -6.88 +v -23.44 7.80 -6.88 +v -23.44 7.80 -6.02 +v -21.45 6.95 -6.02 +v -21.45 6.95 -6.88 +v -23.44 6.95 -6.88 +v -23.44 6.95 -6.02 +v -18.47 7.80 -6.02 +v -18.47 7.80 -6.88 +v -20.45 7.80 -6.88 +v -20.45 7.80 -6.02 +v -18.47 6.95 -6.02 +v -18.47 6.95 -6.88 +v -20.45 6.95 -6.88 +v -20.45 6.95 -6.02 +v -15.48 7.80 -6.02 +v -15.48 7.80 -6.88 +v -17.46 7.80 -6.88 +v -17.46 7.80 -6.02 +v -15.48 6.95 -6.02 +v -15.48 6.95 -6.88 +v -17.46 6.95 -6.88 +v -17.46 6.95 -6.02 +v -7.10 7.80 -12.06 +v -7.10 7.80 -12.93 +v -9.08 7.80 -12.93 +v -9.08 7.80 -12.06 +v -7.10 6.95 -12.06 +v -7.10 6.95 -12.93 +v -9.08 6.95 -12.93 +v -9.08 6.95 -12.06 +v -4.46 7.80 -12.06 +v -4.46 7.80 -12.93 +v -6.45 7.80 -12.93 +v -6.45 7.80 -12.06 +v -4.46 6.95 -12.06 +v -4.46 6.95 -12.93 +v -6.45 6.95 -12.93 +v -6.45 6.95 -12.06 +v -1.83 7.80 -12.06 +v -1.83 7.80 -12.93 +v -3.81 7.80 -12.93 +v -3.81 7.80 -12.06 +v -1.83 6.95 -12.06 +v -1.83 6.95 -12.93 +v -3.81 6.95 -12.93 +v -3.81 6.95 -12.06 +v 0.81 7.80 -12.06 +v 0.81 7.80 -12.93 +v -1.17 7.80 -12.93 +v -1.17 7.80 -12.06 +v 0.81 6.95 -12.06 +v 0.81 6.95 -12.93 +v -1.17 6.95 -12.93 +v -1.17 6.95 -12.06 +v 3.44 7.80 -12.06 +v 3.44 7.80 -12.93 +v 1.46 7.80 -12.93 +v 1.46 7.80 -12.06 +v 3.44 6.95 -12.06 +v 3.44 6.95 -12.93 +v 1.46 6.95 -12.93 +v 1.46 6.95 -12.06 +v 6.08 7.80 -12.06 +v 6.08 7.80 -12.93 +v 4.10 7.80 -12.93 +v 4.10 7.80 -12.06 +v 6.08 6.95 -12.06 +v 6.08 6.95 -12.93 +v 4.10 6.95 -12.93 +v 4.10 6.95 -12.06 +v 8.72 7.80 -12.06 +v 8.72 7.80 -12.93 +v 6.74 7.80 -12.93 +v 6.74 7.80 -12.06 +v 8.72 6.95 -12.06 +v 8.72 6.95 -12.93 +v 6.74 6.95 -12.93 +v 6.74 6.95 -12.06 +v -4.39 18.64 -6.78 +v -4.39 18.64 -7.64 +v -6.37 18.64 -7.64 +v -6.37 18.64 -6.78 +v -4.39 17.79 -6.78 +v -4.39 17.79 -7.64 +v -6.37 17.79 -7.64 +v -6.37 17.79 -6.78 +v -1.66 18.64 -6.78 +v -1.66 18.64 -7.64 +v -3.64 18.64 -7.64 +v -3.64 18.64 -6.78 +v -1.66 17.79 -6.78 +v -1.66 17.79 -7.64 +v -3.64 17.79 -7.64 +v -3.64 17.79 -6.78 +v 1.06 18.64 -6.78 +v 1.06 18.64 -7.64 +v -0.92 18.64 -7.64 +v -0.92 18.64 -6.78 +v 1.06 17.79 -6.78 +v 1.06 17.79 -7.64 +v -0.92 17.79 -7.64 +v -0.92 17.79 -6.78 +v 3.79 18.64 -6.78 +v 3.79 18.64 -7.64 +v 1.80 18.64 -7.64 +v 1.80 18.64 -6.78 +v 3.79 17.79 -6.78 +v 3.79 17.79 -7.64 +v 1.80 17.79 -7.64 +v 1.80 17.79 -6.78 +v 6.51 18.64 -6.78 +v 6.51 18.64 -7.64 +v 4.53 18.64 -7.64 +v 4.53 18.64 -6.78 +v 6.51 17.79 -6.78 +v 6.51 17.79 -7.64 +v 4.53 17.79 -7.64 +v 4.53 17.79 -6.78 +v 9.24 18.64 -6.78 +v 9.24 18.64 -7.64 +v 7.25 18.64 -7.64 +v 7.25 18.64 -6.78 +v 9.24 17.79 -6.78 +v 9.24 17.79 -7.64 +v 7.25 17.79 -7.64 +v 7.25 17.79 -6.78 +v -7.11 18.64 -6.78 +v -7.11 18.64 -7.64 +v -9.09 18.64 -7.64 +v -9.09 18.64 -6.78 +v -7.11 17.79 -6.78 +v -7.11 17.79 -7.64 +v -9.09 17.79 -7.64 +v -9.09 17.79 -6.78 +v -9.92 18.64 -6.55 +v -10.78 18.64 -6.55 +v -10.78 18.64 -4.56 +v -9.92 18.64 -4.56 +v -9.92 17.79 -6.55 +v -10.78 17.79 -6.55 +v -10.78 17.79 -4.56 +v -9.92 17.79 -4.56 +v -9.92 18.64 -3.82 +v -10.78 18.64 -3.82 +v -10.78 18.64 -1.84 +v -9.92 18.64 -1.84 +v -9.92 17.79 -3.82 +v -10.78 17.79 -3.82 +v -10.78 17.79 -1.84 +v -9.92 17.79 -1.84 +v -9.92 18.64 -1.10 +v -10.78 18.64 -1.10 +v -10.78 18.64 0.88 +v -9.92 18.64 0.88 +v -9.92 17.79 -1.10 +v -10.78 17.79 -1.10 +v -10.78 17.79 0.88 +v -9.92 17.79 0.88 +v -9.92 18.64 1.63 +v -10.78 18.64 1.63 +v -10.78 18.64 3.61 +v -9.92 18.64 3.61 +v -9.92 17.79 1.63 +v -10.78 17.79 1.63 +v -10.78 17.79 3.61 +v -9.92 17.79 3.61 +v -7.11 18.64 7.48 +v -7.11 18.64 6.62 +v -9.09 18.64 6.62 +v -9.09 18.64 7.48 +v -7.11 17.79 7.48 +v -7.11 17.79 6.62 +v -9.09 17.79 6.62 +v -9.09 17.79 7.48 +v -4.39 18.64 7.48 +v -4.39 18.64 6.62 +v -6.37 18.64 6.62 +v -6.37 18.64 7.48 +v -4.39 17.79 7.48 +v -4.39 17.79 6.62 +v -6.37 17.79 6.62 +v -6.37 17.79 7.48 +v -1.66 18.64 7.48 +v -1.66 18.64 6.62 +v -3.64 18.64 6.62 +v -3.64 18.64 7.48 +v -1.66 17.79 7.48 +v -1.66 17.79 6.62 +v -3.64 17.79 6.62 +v -3.64 17.79 7.48 +v 1.06 18.64 7.48 +v 1.06 18.64 6.62 +v -0.92 18.64 6.62 +v -0.92 18.64 7.48 +v 1.06 17.79 7.48 +v 1.06 17.79 6.62 +v -0.92 17.79 6.62 +v -0.92 17.79 7.48 +v 3.79 18.64 7.48 +v 3.79 18.64 6.62 +v 1.80 18.64 6.62 +v 1.80 18.64 7.48 +v 3.79 17.79 7.48 +v 3.79 17.79 6.62 +v 1.80 17.79 6.62 +v 1.80 17.79 7.48 +v 9.24 18.64 7.48 +v 9.24 18.64 6.62 +v 7.25 18.64 6.62 +v 7.25 18.64 7.48 +v 9.24 17.79 7.48 +v 9.24 17.79 6.62 +v 7.25 17.79 6.62 +v 7.25 17.79 7.48 +v 6.51 18.64 7.48 +v 6.51 18.64 6.62 +v 4.53 18.64 6.62 +v 4.53 18.64 7.48 +v 6.51 17.79 7.48 +v 6.51 17.79 6.62 +v 4.53 17.79 6.62 +v 4.53 17.79 7.48 +v 10.85 18.64 -6.55 +v 9.99 18.64 -6.55 +v 9.99 18.64 -4.56 +v 10.85 18.64 -4.56 +v 10.85 17.79 -6.55 +v 9.99 17.79 -6.55 +v 9.99 17.79 -4.56 +v 10.85 17.79 -4.56 +v 10.85 18.64 -3.82 +v 9.99 18.64 -3.82 +v 9.99 18.64 -1.84 +v 10.85 18.64 -1.84 +v 10.85 17.79 -3.82 +v 9.99 17.79 -3.82 +v 9.99 17.79 -1.84 +v 10.85 17.79 -1.84 +v 10.85 18.64 -1.10 +v 9.99 18.64 -1.10 +v 9.99 18.64 0.88 +v 10.85 18.64 0.88 +v 10.85 17.79 -1.10 +v 9.99 17.79 -1.10 +v 9.99 17.79 0.88 +v 10.85 17.79 0.88 +v 10.85 18.64 1.63 +v 9.99 18.64 1.63 +v 9.99 18.64 3.61 +v 10.85 18.64 3.61 +v 10.85 17.79 1.63 +v 9.99 17.79 1.63 +v 9.99 17.79 3.61 +v 10.85 17.79 3.61 +v 10.85 18.64 4.35 +v 9.99 18.64 4.35 +v 9.99 18.64 6.33 +v 10.85 18.64 6.33 +v 10.85 17.79 4.35 +v 9.99 17.79 4.35 +v 9.99 17.79 6.33 +v 10.85 17.79 6.33 +v 11.17 6.95 -11.03 +v 11.17 6.95 -12.83 +v -11.17 6.95 -12.83 +v -11.17 6.95 -11.03 +v 11.17 -0.02 -12.83 +v -11.17 -0.02 -12.83 +v -19.96 4.66 -6.77 +v -19.60 5.22 -6.77 +v -19.60 2.88 -6.77 +v -19.96 2.92 -6.77 +v -20.24 2.96 -6.83 +v -20.24 2.71 -6.83 +v -20.24 2.71 -6.75 +v -20.24 2.96 -6.75 +v -19.60 5.63 -6.83 +v -20.15 4.82 -6.83 +v -20.15 4.82 -6.75 +v -19.60 5.63 -6.75 +v -18.96 2.71 -6.83 +v -18.96 2.96 -6.83 +v -18.96 2.96 -6.75 +v -18.96 2.71 -6.75 +v -19.60 2.63 -6.83 +v -19.05 2.71 -6.83 +v -19.05 2.71 -6.75 +v -19.60 2.63 -6.75 +v -20.15 2.71 -6.92 +v -20.15 2.96 -6.92 +v -19.96 2.92 -6.92 +v -19.60 5.22 -6.83 +v -19.96 4.66 -6.83 +v -19.05 2.96 -6.92 +v -19.05 2.71 -6.92 +v -19.24 2.94 -6.92 +v -19.60 2.63 -6.92 +v -19.60 2.88 -6.92 +v -19.24 4.66 -6.77 +v -19.24 2.94 -6.77 +v -19.05 4.82 -6.83 +v -19.05 4.82 -6.75 +v -20.15 2.71 -6.83 +v -20.15 2.71 -6.75 +v -19.24 4.66 -6.83 +v -19.96 2.92 -6.83 +v -19.24 2.94 -6.83 +v -19.60 2.88 -6.83 +v -19.05 2.96 -6.83 +v -19.05 2.96 -6.75 +v -20.15 2.96 -6.83 +v -20.15 2.96 -6.75 +v -20.24 2.96 -6.92 +v -20.24 2.71 -6.92 +v -18.96 2.71 -6.92 +v -18.96 2.96 -6.92 +v -6.81 4.66 -12.83 +v -6.45 5.22 -12.83 +v -6.45 2.88 -12.83 +v -6.81 2.92 -12.83 +v -7.09 2.96 -12.89 +v -7.09 2.71 -12.89 +v -7.09 2.71 -12.81 +v -7.09 2.96 -12.81 +v -6.45 5.63 -12.89 +v -6.99 4.82 -12.89 +v -6.99 4.82 -12.81 +v -6.45 5.63 -12.81 +v -5.81 2.71 -12.89 +v -5.81 2.96 -12.89 +v -5.81 2.96 -12.81 +v -5.81 2.71 -12.81 +v -6.45 2.63 -12.89 +v -5.90 2.71 -12.89 +v -5.90 2.71 -12.81 +v -6.45 2.63 -12.81 +v -6.99 2.71 -12.98 +v -6.99 2.96 -12.98 +v -6.81 2.92 -12.98 +v -6.45 5.22 -12.89 +v -6.81 4.66 -12.89 +v -5.90 2.96 -12.98 +v -5.90 2.71 -12.98 +v -6.09 2.94 -12.98 +v -6.45 2.63 -12.98 +v -6.45 2.88 -12.98 +v -6.09 4.66 -12.83 +v -6.09 2.94 -12.83 +v -5.90 4.82 -12.89 +v -5.90 4.82 -12.81 +v -6.99 2.71 -12.89 +v -6.99 2.71 -12.81 +v -6.09 4.66 -12.89 +v -6.81 2.92 -12.89 +v -6.09 2.94 -12.89 +v -6.45 2.88 -12.89 +v -5.90 2.96 -12.89 +v -5.90 2.96 -12.81 +v -6.99 2.96 -12.89 +v -6.99 2.96 -12.81 +v -7.09 2.96 -12.98 +v -7.09 2.71 -12.98 +v -5.81 2.71 -12.98 +v -5.81 2.96 -12.98 +v -4.17 10.56 -11.04 +v -3.81 11.12 -11.04 +v -3.81 8.77 -11.04 +v -4.17 8.82 -11.04 +v -4.45 8.86 -11.10 +v -4.45 8.61 -11.10 +v -4.45 8.61 -11.02 +v -4.45 8.86 -11.02 +v -3.81 11.53 -11.10 +v -4.36 10.72 -11.10 +v -4.36 10.72 -11.02 +v -3.81 11.53 -11.02 +v -3.17 8.61 -11.10 +v -3.17 8.86 -11.10 +v -3.17 8.86 -11.02 +v -3.17 8.61 -11.02 +v -3.81 8.52 -11.10 +v -3.27 8.61 -11.10 +v -3.27 8.61 -11.02 +v -3.81 8.52 -11.02 +v -4.36 8.61 -11.19 +v -4.36 8.86 -11.19 +v -4.17 8.82 -11.19 +v -3.81 11.12 -11.10 +v -4.17 10.56 -11.10 +v -3.27 8.86 -11.19 +v -3.27 8.61 -11.19 +v -3.45 8.83 -11.19 +v -3.81 8.52 -11.19 +v -3.81 8.77 -11.19 +v -3.45 10.56 -11.04 +v -3.45 8.83 -11.04 +v -3.27 10.72 -11.10 +v -3.27 10.72 -11.02 +v -4.36 8.61 -11.10 +v -4.36 8.61 -11.02 +v -3.45 10.56 -11.10 +v -4.17 8.82 -11.10 +v -3.45 8.83 -11.10 +v -3.81 8.77 -11.10 +v -3.27 8.86 -11.10 +v -3.27 8.86 -11.02 +v -4.36 8.86 -11.10 +v -4.36 8.86 -11.02 +v -4.45 8.86 -11.19 +v -4.45 8.61 -11.19 +v -3.17 8.61 -11.19 +v -3.17 8.86 -11.19 +v 3.09 10.56 -11.04 +v 3.44 11.12 -11.04 +v 3.44 8.77 -11.04 +v 3.09 8.82 -11.04 +v 2.81 8.86 -11.10 +v 2.81 8.61 -11.10 +v 2.81 8.61 -11.02 +v 2.81 8.86 -11.02 +v 3.44 11.53 -11.10 +v 2.90 10.72 -11.10 +v 2.90 10.72 -11.02 +v 3.44 11.53 -11.02 +v 4.08 8.61 -11.10 +v 4.08 8.86 -11.10 +v 4.08 8.86 -11.02 +v 4.08 8.61 -11.02 +v 3.44 8.52 -11.10 +v 3.99 8.61 -11.10 +v 3.99 8.61 -11.02 +v 3.44 8.52 -11.02 +v 2.90 8.61 -11.19 +v 2.90 8.86 -11.19 +v 3.09 8.82 -11.19 +v 3.44 11.12 -11.10 +v 3.09 10.56 -11.10 +v 3.99 8.86 -11.19 +v 3.99 8.61 -11.19 +v 3.80 8.83 -11.19 +v 3.44 8.52 -11.19 +v 3.44 8.77 -11.19 +v 3.80 10.56 -11.04 +v 3.80 8.83 -11.04 +v 3.99 10.72 -11.10 +v 3.99 10.72 -11.02 +v 2.90 8.61 -11.10 +v 2.90 8.61 -11.02 +v 3.80 10.56 -11.10 +v 3.09 8.82 -11.10 +v 3.80 8.83 -11.10 +v 3.44 8.77 -11.10 +v 3.99 8.86 -11.10 +v 3.99 8.86 -11.02 +v 2.90 8.86 -11.10 +v 2.90 8.86 -11.02 +v 2.81 8.86 -11.19 +v 2.81 8.61 -11.19 +v 4.08 8.61 -11.19 +v 4.08 8.86 -11.19 +v 5.72 4.66 -12.83 +v 6.08 5.22 -12.83 +v 6.08 2.88 -12.83 +v 5.72 2.92 -12.83 +v 5.44 2.96 -12.89 +v 5.44 2.71 -12.89 +v 5.44 2.71 -12.81 +v 5.44 2.96 -12.81 +v 6.08 5.63 -12.89 +v 5.54 4.82 -12.89 +v 5.54 4.82 -12.81 +v 6.08 5.63 -12.81 +v 6.72 2.71 -12.89 +v 6.72 2.96 -12.89 +v 6.72 2.96 -12.81 +v 6.72 2.71 -12.81 +v 6.08 2.63 -12.89 +v 6.63 2.71 -12.89 +v 6.63 2.71 -12.81 +v 6.08 2.63 -12.81 +v 5.54 2.71 -12.98 +v 5.54 2.96 -12.98 +v 5.72 2.92 -12.98 +v 6.08 5.22 -12.89 +v 5.72 4.66 -12.89 +v 6.63 2.96 -12.98 +v 6.63 2.71 -12.98 +v 6.44 2.94 -12.98 +v 6.08 2.63 -12.98 +v 6.08 2.88 -12.98 +v 6.44 4.66 -12.83 +v 6.44 2.94 -12.83 +v 6.63 4.82 -12.89 +v 6.63 4.82 -12.81 +v 5.54 2.71 -12.89 +v 5.54 2.71 -12.81 +v 6.44 4.66 -12.89 +v 5.72 2.92 -12.89 +v 6.44 2.94 -12.89 +v 6.08 2.88 -12.89 +v 6.63 2.96 -12.89 +v 6.63 2.96 -12.81 +v 5.54 2.96 -12.89 +v 5.54 2.96 -12.81 +v 5.44 2.96 -12.98 +v 5.44 2.71 -12.98 +v 6.72 2.71 -12.98 +v 6.72 2.96 -12.98 +v -6.30 20.76 -3.63 +v -5.94 21.32 -3.63 +v -5.94 18.98 -3.63 +v -6.30 19.02 -3.63 +v -6.58 19.06 -3.69 +v -6.58 18.81 -3.69 +v -6.58 18.81 -3.60 +v -6.58 19.06 -3.60 +v -5.94 21.73 -3.69 +v -6.49 20.92 -3.69 +v -6.49 20.92 -3.60 +v -5.94 21.73 -3.60 +v -5.30 18.81 -3.69 +v -5.30 19.06 -3.69 +v -5.30 19.06 -3.60 +v -5.30 18.81 -3.60 +v -5.94 18.73 -3.69 +v -5.40 18.81 -3.69 +v -5.40 18.81 -3.60 +v -5.94 18.73 -3.60 +v -6.49 18.81 -3.78 +v -6.49 19.06 -3.78 +v -6.30 19.02 -3.78 +v -5.94 21.32 -3.69 +v -6.30 20.76 -3.69 +v -5.40 19.06 -3.78 +v -5.40 18.81 -3.78 +v -5.58 19.04 -3.78 +v -5.94 18.73 -3.78 +v -5.94 18.98 -3.78 +v -5.58 20.76 -3.63 +v -5.58 19.04 -3.63 +v -5.40 20.92 -3.69 +v -5.40 20.92 -3.60 +v -6.49 18.81 -3.69 +v -6.49 18.81 -3.60 +v -5.58 20.76 -3.69 +v -6.30 19.02 -3.69 +v -5.58 19.04 -3.69 +v -5.94 18.98 -3.69 +v -5.40 19.06 -3.69 +v -5.40 19.06 -3.60 +v -6.49 19.06 -3.69 +v -6.49 19.06 -3.60 +v -6.58 19.06 -3.78 +v -6.58 18.81 -3.78 +v -5.30 18.81 -3.78 +v -5.30 19.06 -3.78 +v 5.89 20.76 -3.63 +v 6.25 21.32 -3.63 +v 6.25 18.98 -3.63 +v 5.89 19.02 -3.63 +v 5.61 19.06 -3.69 +v 5.61 18.81 -3.69 +v 5.61 18.81 -3.60 +v 5.61 19.06 -3.60 +v 6.25 21.73 -3.69 +v 5.70 20.92 -3.69 +v 5.70 20.92 -3.60 +v 6.25 21.73 -3.60 +v 6.89 18.81 -3.69 +v 6.89 19.06 -3.69 +v 6.89 19.06 -3.60 +v 6.89 18.81 -3.60 +v 6.25 18.73 -3.69 +v 6.79 18.81 -3.69 +v 6.79 18.81 -3.60 +v 6.25 18.73 -3.60 +v 5.70 18.81 -3.78 +v 5.70 19.06 -3.78 +v 5.89 19.02 -3.78 +v 6.25 21.32 -3.69 +v 5.89 20.76 -3.69 +v 6.79 19.06 -3.78 +v 6.79 18.81 -3.78 +v 6.61 19.04 -3.78 +v 6.25 18.73 -3.78 +v 6.25 18.98 -3.78 +v 6.61 20.76 -3.63 +v 6.61 19.04 -3.63 +v 6.79 20.92 -3.69 +v 6.79 20.92 -3.60 +v 5.70 18.81 -3.69 +v 5.70 18.81 -3.60 +v 6.61 20.76 -3.69 +v 5.89 19.02 -3.69 +v 6.61 19.04 -3.69 +v 6.25 18.98 -3.69 +v 6.79 19.06 -3.69 +v 6.79 19.06 -3.60 +v 5.70 19.06 -3.69 +v 5.70 19.06 -3.60 +v 5.61 19.06 -3.78 +v 5.61 18.81 -3.78 +v 6.89 18.81 -3.78 +v 6.89 19.06 -3.78 +v -8.76 20.76 0.36 +v -8.76 21.32 -0.00 +v -8.76 18.98 -0.00 +v -8.76 19.02 0.36 +v -8.82 19.06 0.64 +v -8.82 18.81 0.64 +v -8.74 18.81 0.64 +v -8.74 19.06 0.64 +v -8.82 21.73 -0.00 +v -8.82 20.92 0.55 +v -8.74 20.92 0.55 +v -8.74 21.73 -0.00 +v -8.82 18.81 -0.64 +v -8.82 19.06 -0.64 +v -8.74 19.06 -0.64 +v -8.74 18.81 -0.64 +v -8.82 18.73 -0.00 +v -8.82 18.81 -0.55 +v -8.74 18.81 -0.55 +v -8.74 18.73 -0.00 +v -8.91 18.81 0.55 +v -8.91 19.06 0.55 +v -8.91 19.02 0.36 +v -8.82 21.32 -0.00 +v -8.82 20.76 0.36 +v -8.91 19.06 -0.55 +v -8.91 18.81 -0.55 +v -8.91 19.04 -0.36 +v -8.91 18.73 -0.00 +v -8.91 18.98 -0.00 +v -8.76 20.76 -0.36 +v -8.76 19.04 -0.36 +v -8.82 20.92 -0.55 +v -8.74 20.92 -0.55 +v -8.82 18.81 0.55 +v -8.74 18.81 0.55 +v -8.82 20.76 -0.36 +v -8.82 19.02 0.36 +v -8.82 19.04 -0.36 +v -8.82 18.98 -0.00 +v -8.82 19.06 -0.55 +v -8.74 19.06 -0.55 +v -8.82 19.06 0.55 +v -8.74 19.06 0.55 +v -8.91 19.06 0.64 +v -8.91 18.81 0.64 +v -8.91 18.81 -0.64 +v -8.91 19.06 -0.64 +v -23.42 4.66 -0.35 +v -23.42 2.92 -0.35 +v -23.42 2.88 0.01 +v -23.42 5.22 0.01 +v -23.48 2.96 -0.63 +v -23.40 2.96 -0.63 +v -23.40 2.71 -0.63 +v -23.48 2.71 -0.63 +v -23.48 5.63 0.01 +v -23.40 5.63 0.01 +v -23.40 4.82 -0.54 +v -23.48 4.82 -0.54 +v -23.48 2.71 0.65 +v -23.40 2.71 0.65 +v -23.40 2.96 0.65 +v -23.48 2.96 0.65 +v -23.48 2.63 0.01 +v -23.40 2.63 0.01 +v -23.40 2.71 0.55 +v -23.48 2.71 0.55 +v -23.57 2.71 -0.54 +v -23.57 2.92 -0.35 +v -23.57 2.96 -0.54 +v -23.48 5.22 0.01 +v -23.48 4.66 -0.35 +v -23.57 2.96 0.55 +v -23.57 2.94 0.37 +v -23.57 2.71 0.55 +v -23.57 2.63 0.01 +v -23.57 2.88 0.01 +v -23.42 4.66 0.37 +v -23.42 2.94 0.37 +v -23.48 4.82 0.55 +v -23.40 4.82 0.55 +v -23.48 2.71 -0.54 +v -23.40 2.71 -0.54 +v -23.48 4.66 0.37 +v -23.48 2.92 -0.35 +v -23.48 2.94 0.37 +v -23.48 2.88 0.01 +v -23.48 2.96 0.55 +v -23.40 2.96 0.55 +v -23.40 2.96 -0.54 +v -23.48 2.96 -0.54 +v -23.57 2.71 -0.63 +v -23.57 2.96 -0.63 +v -23.57 2.96 0.65 +v -23.57 2.71 0.65 +v -19.96 4.66 6.78 +v -19.96 2.92 6.78 +v -19.60 2.88 6.78 +v -19.60 5.22 6.78 +v -20.24 2.96 6.85 +v -20.24 2.96 6.76 +v -20.24 2.71 6.76 +v -20.24 2.71 6.85 +v -19.60 5.63 6.85 +v -19.60 5.63 6.76 +v -20.15 4.82 6.76 +v -20.15 4.82 6.85 +v -18.96 2.71 6.85 +v -18.96 2.71 6.76 +v -18.96 2.96 6.76 +v -18.96 2.96 6.85 +v -19.60 2.63 6.85 +v -19.60 2.63 6.76 +v -19.05 2.71 6.76 +v -19.05 2.71 6.85 +v -20.15 2.71 6.94 +v -19.96 2.92 6.94 +v -20.15 2.96 6.94 +v -19.60 5.22 6.85 +v -19.96 4.66 6.85 +v -19.05 2.96 6.94 +v -19.24 2.94 6.94 +v -19.05 2.71 6.94 +v -19.60 2.63 6.94 +v -19.60 2.88 6.94 +v -19.24 4.66 6.78 +v -19.24 2.94 6.78 +v -19.05 4.82 6.85 +v -19.05 4.82 6.76 +v -20.15 2.71 6.85 +v -20.15 2.71 6.76 +v -19.24 4.66 6.85 +v -19.96 2.92 6.85 +v -19.24 2.94 6.85 +v -19.60 2.88 6.85 +v -19.05 2.96 6.85 +v -19.05 2.96 6.76 +v -20.15 2.96 6.76 +v -20.15 2.96 6.85 +v -20.24 2.71 6.94 +v -20.24 2.96 6.94 +v -18.96 2.96 6.94 +v -18.96 2.71 6.94 +v -5.42 9.62 11.04 +v -5.42 7.88 11.04 +v -5.06 7.83 11.04 +v -5.06 10.18 11.04 +v -5.70 7.92 11.10 +v -5.70 7.92 11.01 +v -5.70 7.67 11.01 +v -5.70 7.67 11.10 +v -5.06 10.59 11.10 +v -5.06 10.59 11.01 +v -5.61 9.78 11.01 +v -5.61 9.78 11.10 +v -4.43 7.67 11.10 +v -4.43 7.67 11.01 +v -4.43 7.92 11.01 +v -4.43 7.92 11.10 +v -5.06 7.58 11.10 +v -5.06 7.58 11.01 +v -4.52 7.67 11.01 +v -4.52 7.67 11.10 +v -5.61 7.67 11.19 +v -5.42 7.88 11.19 +v -5.61 7.92 11.19 +v -5.06 10.18 11.10 +v -5.42 9.62 11.10 +v -4.52 7.92 11.19 +v -4.71 7.89 11.19 +v -4.52 7.67 11.19 +v -5.06 7.58 11.19 +v -5.06 7.83 11.19 +v -4.71 9.62 11.04 +v -4.71 7.89 11.04 +v -4.52 9.78 11.10 +v -4.52 9.78 11.01 +v -5.61 7.67 11.10 +v -5.61 7.67 11.01 +v -4.71 9.62 11.10 +v -5.42 7.88 11.10 +v -4.71 7.89 11.10 +v -5.06 7.83 11.10 +v -4.52 7.92 11.10 +v -4.52 7.92 11.01 +v -5.61 7.92 11.01 +v -5.61 7.92 11.10 +v -5.70 7.67 11.19 +v -5.70 7.92 11.19 +v -4.43 7.92 11.19 +v -4.43 7.67 11.19 +v 3.43 9.62 11.04 +v 3.43 7.88 11.04 +v 3.79 7.83 11.04 +v 3.79 10.18 11.04 +v 3.15 7.92 11.10 +v 3.15 7.92 11.01 +v 3.15 7.67 11.01 +v 3.15 7.67 11.10 +v 3.79 10.59 11.10 +v 3.79 10.59 11.01 +v 3.24 9.78 11.01 +v 3.24 9.78 11.10 +v 4.43 7.67 11.10 +v 4.43 7.67 11.01 +v 4.43 7.92 11.01 +v 4.43 7.92 11.10 +v 3.79 7.58 11.10 +v 3.79 7.58 11.01 +v 4.33 7.67 11.01 +v 4.33 7.67 11.10 +v 3.24 7.67 11.19 +v 3.43 7.88 11.19 +v 3.24 7.92 11.19 +v 3.79 10.18 11.10 +v 3.43 9.62 11.10 +v 4.33 7.92 11.19 +v 4.15 7.89 11.19 +v 4.33 7.67 11.19 +v 3.79 7.58 11.19 +v 3.79 7.83 11.19 +v 4.15 9.62 11.04 +v 4.15 7.89 11.04 +v 4.33 9.78 11.10 +v 4.33 9.78 11.01 +v 3.24 7.67 11.10 +v 3.24 7.67 11.01 +v 4.15 9.62 11.10 +v 3.43 7.88 11.10 +v 4.15 7.89 11.10 +v 3.79 7.83 11.10 +v 4.33 7.92 11.10 +v 4.33 7.92 11.01 +v 3.24 7.92 11.01 +v 3.24 7.92 11.10 +v 3.15 7.67 11.19 +v 3.15 7.92 11.19 +v 4.43 7.92 11.19 +v 4.43 7.67 11.19 +v -0.84 4.66 11.04 +v -0.84 2.92 11.04 +v -0.48 2.88 11.04 +v -0.48 5.22 11.04 +v -1.12 2.96 11.10 +v -1.12 2.96 11.01 +v -1.12 2.71 11.01 +v -1.12 2.71 11.10 +v -0.48 5.63 11.10 +v -0.48 5.63 11.01 +v -1.03 4.82 11.01 +v -1.03 4.82 11.10 +v 0.15 2.71 11.10 +v 0.15 2.71 11.01 +v 0.15 2.96 11.01 +v 0.15 2.96 11.10 +v -0.48 2.63 11.10 +v -0.48 2.63 11.01 +v 0.06 2.71 11.01 +v 0.06 2.71 11.10 +v -1.03 2.71 11.19 +v -0.84 2.92 11.19 +v -1.03 2.96 11.19 +v -0.48 5.22 11.10 +v -0.84 4.66 11.10 +v 0.06 2.96 11.19 +v -0.13 2.94 11.19 +v 0.06 2.71 11.19 +v -0.48 2.63 11.19 +v -0.48 2.88 11.19 +v -0.13 4.66 11.04 +v -0.13 2.94 11.04 +v 0.06 4.82 11.10 +v 0.06 4.82 11.01 +v -1.03 2.71 11.10 +v -1.03 2.71 11.01 +v -0.13 4.66 11.10 +v -0.84 2.92 11.10 +v -0.13 2.94 11.10 +v -0.48 2.88 11.10 +v 0.06 2.96 11.10 +v 0.06 2.96 11.01 +v -1.03 2.96 11.01 +v -1.03 2.96 11.10 +v -1.12 2.71 11.19 +v -1.12 2.96 11.19 +v 0.15 2.96 11.19 +v 0.15 2.71 11.19 +v 0.43 20.76 3.64 +v 0.07 21.32 3.64 +v 0.07 18.98 3.64 +v 0.43 19.02 3.64 +v 0.71 19.06 3.70 +v 0.71 18.81 3.70 +v 0.71 18.81 3.61 +v 0.71 19.06 3.61 +v 0.07 21.73 3.70 +v 0.62 20.92 3.70 +v 0.62 20.92 3.61 +v 0.07 21.73 3.61 +v -0.57 18.81 3.70 +v -0.57 19.06 3.70 +v -0.57 19.06 3.61 +v -0.57 18.81 3.61 +v 0.07 18.73 3.70 +v -0.47 18.81 3.70 +v -0.47 18.81 3.61 +v 0.07 18.73 3.61 +v 0.62 18.81 3.79 +v 0.62 19.06 3.79 +v 0.43 19.02 3.79 +v 0.07 21.32 3.70 +v 0.43 20.76 3.70 +v -0.47 19.06 3.79 +v -0.47 18.81 3.79 +v -0.29 19.04 3.79 +v 0.07 18.73 3.79 +v 0.07 18.98 3.79 +v -0.29 20.76 3.64 +v -0.29 19.04 3.64 +v -0.47 20.92 3.70 +v -0.47 20.92 3.61 +v 0.62 18.81 3.70 +v 0.62 18.81 3.61 +v -0.29 20.76 3.70 +v 0.43 19.02 3.70 +v -0.29 19.04 3.70 +v 0.07 18.98 3.70 +v -0.47 19.06 3.70 +v -0.47 19.06 3.61 +v 0.62 19.06 3.70 +v 0.62 19.06 3.61 +v 0.71 19.06 3.79 +v 0.71 18.81 3.79 +v -0.57 18.81 3.79 +v -0.57 19.06 3.79 +v 6.58 20.76 3.64 +v 6.22 21.32 3.64 +v 6.22 18.98 3.64 +v 6.58 19.02 3.64 +v 6.86 19.06 3.70 +v 6.86 18.81 3.70 +v 6.86 18.81 3.61 +v 6.86 19.06 3.61 +v 6.22 21.73 3.70 +v 6.76 20.92 3.70 +v 6.76 20.92 3.61 +v 6.22 21.73 3.61 +v 5.58 18.81 3.70 +v 5.58 19.06 3.70 +v 5.58 19.06 3.61 +v 5.58 18.81 3.61 +v 6.22 18.73 3.70 +v 5.67 18.81 3.70 +v 5.67 18.81 3.61 +v 6.22 18.73 3.61 +v 6.76 18.81 3.79 +v 6.76 19.06 3.79 +v 6.58 19.02 3.79 +v 6.22 21.32 3.70 +v 6.58 20.76 3.70 +v 5.67 19.06 3.79 +v 5.67 18.81 3.79 +v 5.86 19.04 3.79 +v 6.22 18.73 3.79 +v 6.22 18.98 3.79 +v 5.86 20.76 3.64 +v 5.86 19.04 3.64 +v 5.67 20.92 3.70 +v 5.67 20.92 3.61 +v 6.76 18.81 3.70 +v 6.76 18.81 3.61 +v 5.86 20.76 3.70 +v 6.58 19.02 3.70 +v 5.86 19.04 3.70 +v 6.22 18.98 3.70 +v 5.67 19.06 3.70 +v 5.67 19.06 3.61 +v 6.76 19.06 3.70 +v 6.76 19.06 3.61 +v 6.86 19.06 3.79 +v 6.86 18.81 3.79 +v 5.58 18.81 3.79 +v 5.58 19.06 3.79 +v 12.89 4.66 -3.98 +v 12.89 5.22 -3.62 +v 12.89 2.88 -3.62 +v 12.89 2.92 -3.98 +v 12.96 2.96 -4.26 +v 12.96 2.71 -4.26 +v 12.87 2.71 -4.26 +v 12.87 2.96 -4.26 +v 12.96 5.63 -3.62 +v 12.96 4.82 -4.17 +v 12.87 4.82 -4.17 +v 12.87 5.63 -3.62 +v 12.96 2.71 -2.98 +v 12.96 2.96 -2.98 +v 12.87 2.96 -2.98 +v 12.87 2.71 -2.98 +v 12.96 2.63 -3.62 +v 12.96 2.71 -3.08 +v 12.87 2.71 -3.08 +v 12.87 2.63 -3.62 +v 13.05 2.71 -4.17 +v 13.05 2.96 -4.17 +v 13.05 2.92 -3.98 +v 12.96 5.22 -3.62 +v 12.96 4.66 -3.98 +v 13.05 2.96 -3.08 +v 13.05 2.71 -3.08 +v 13.05 2.94 -3.26 +v 13.05 2.63 -3.62 +v 13.05 2.88 -3.62 +v 12.89 4.66 -3.26 +v 12.89 2.94 -3.26 +v 12.96 4.82 -3.08 +v 12.87 4.82 -3.08 +v 12.96 2.71 -4.17 +v 12.87 2.71 -4.17 +v 12.96 4.66 -3.26 +v 12.96 2.92 -3.98 +v 12.96 2.94 -3.26 +v 12.96 2.88 -3.62 +v 12.96 2.96 -3.08 +v 12.87 2.96 -3.08 +v 12.96 2.96 -4.17 +v 12.87 2.96 -4.17 +v 13.05 2.96 -4.26 +v 13.05 2.71 -4.26 +v 13.05 2.71 -2.98 +v 13.05 2.96 -2.98 +v 12.89 4.66 3.26 +v 12.89 5.22 3.62 +v 12.89 2.88 3.62 +v 12.89 2.92 3.26 +v 12.96 2.96 2.98 +v 12.96 2.71 2.98 +v 12.87 2.71 2.98 +v 12.87 2.96 2.98 +v 12.96 5.63 3.62 +v 12.96 4.82 3.08 +v 12.87 4.82 3.08 +v 12.87 5.63 3.62 +v 12.96 2.71 4.26 +v 12.96 2.96 4.26 +v 12.87 2.96 4.26 +v 12.87 2.71 4.26 +v 12.96 2.63 3.62 +v 12.96 2.71 4.17 +v 12.87 2.71 4.17 +v 12.87 2.63 3.62 +v 13.05 2.71 3.08 +v 13.05 2.96 3.08 +v 13.05 2.92 3.26 +v 12.96 5.22 3.62 +v 12.96 4.66 3.26 +v 13.05 2.96 4.17 +v 13.05 2.71 4.17 +v 13.05 2.94 3.98 +v 13.05 2.63 3.62 +v 13.05 2.88 3.62 +v 12.89 4.66 3.98 +v 12.89 2.94 3.98 +v 12.96 4.82 4.17 +v 12.87 4.82 4.17 +v 12.96 2.71 3.08 +v 12.87 2.71 3.08 +v 12.96 4.66 3.98 +v 12.96 2.92 3.26 +v 12.96 2.94 3.98 +v 12.96 2.88 3.62 +v 12.96 2.96 4.17 +v 12.87 2.96 4.17 +v 12.96 2.96 3.08 +v 12.87 2.96 3.08 +v 13.05 2.96 2.98 +v 13.05 2.71 2.98 +v 13.05 2.71 4.26 +v 13.05 2.96 4.26 +v 8.75 20.76 0.36 +v 8.75 19.02 0.36 +v 8.75 18.98 -0.00 +v 8.75 21.32 -0.00 +v 8.81 19.06 0.64 +v 8.73 19.06 0.64 +v 8.73 18.81 0.64 +v 8.81 18.81 0.64 +v 8.81 21.73 -0.00 +v 8.73 21.73 -0.00 +v 8.73 20.92 0.55 +v 8.81 20.92 0.55 +v 8.81 18.81 -0.64 +v 8.73 18.81 -0.64 +v 8.73 19.06 -0.64 +v 8.81 19.06 -0.64 +v 8.81 18.73 -0.00 +v 8.73 18.73 -0.00 +v 8.73 18.81 -0.55 +v 8.81 18.81 -0.55 +v 8.90 18.81 0.55 +v 8.90 19.02 0.36 +v 8.90 19.06 0.55 +v 8.81 21.32 -0.00 +v 8.81 20.76 0.36 +v 8.90 19.06 -0.55 +v 8.90 19.04 -0.36 +v 8.90 18.81 -0.55 +v 8.90 18.73 -0.00 +v 8.90 18.98 -0.00 +v 8.75 20.76 -0.36 +v 8.75 19.04 -0.36 +v 8.81 20.92 -0.55 +v 8.73 20.92 -0.55 +v 8.81 18.81 0.55 +v 8.73 18.81 0.55 +v 8.81 20.76 -0.36 +v 8.81 19.02 0.36 +v 8.81 19.04 -0.36 +v 8.81 18.98 -0.00 +v 8.81 19.06 -0.55 +v 8.73 19.06 -0.55 +v 8.73 19.06 0.55 +v 8.81 19.06 0.55 +v 8.90 18.81 0.64 +v 8.90 19.06 0.64 +v 8.90 19.06 -0.64 +v 8.90 18.81 -0.64 +v -5.91 20.76 3.64 +v -6.27 21.32 3.64 +v -6.27 18.98 3.64 +v -5.91 19.02 3.64 +v -5.63 19.06 3.70 +v -5.63 18.81 3.70 +v -5.63 18.81 3.61 +v -5.63 19.06 3.61 +v -6.27 21.73 3.70 +v -5.73 20.92 3.70 +v -5.73 20.92 3.61 +v -6.27 21.73 3.61 +v -6.91 18.81 3.70 +v -6.91 19.06 3.70 +v -6.91 19.06 3.61 +v -6.91 18.81 3.61 +v -6.27 18.73 3.70 +v -6.82 18.81 3.70 +v -6.82 18.81 3.61 +v -6.27 18.73 3.61 +v -5.73 18.81 3.79 +v -5.73 19.06 3.79 +v -5.91 19.02 3.79 +v -6.27 21.32 3.70 +v -5.91 20.76 3.70 +v -6.82 19.06 3.79 +v -6.82 18.81 3.79 +v -6.63 19.04 3.79 +v -6.27 18.73 3.79 +v -6.27 18.98 3.79 +v -6.63 20.76 3.64 +v -6.63 19.04 3.64 +v -6.82 20.92 3.70 +v -6.82 20.92 3.61 +v -5.73 18.81 3.70 +v -5.73 18.81 3.61 +v -6.63 20.76 3.70 +v -5.91 19.02 3.70 +v -6.63 19.04 3.70 +v -6.27 18.98 3.70 +v -6.82 19.06 3.70 +v -6.82 19.06 3.61 +v -5.73 19.06 3.70 +v -5.73 19.06 3.61 +v -5.63 19.06 3.79 +v -5.63 18.81 3.79 +v -6.91 18.81 3.79 +v -6.91 19.06 3.79 +v 1.22 3.89 -13.04 +v 1.22 0.00 -13.04 +v 0.00 0.00 -13.04 +v 0.00 4.45 -13.04 +v -2.44 3.02 -13.04 +v -1.22 3.89 -13.04 +v -1.22 0.00 -13.04 +v -2.44 0.00 -13.04 +v 2.44 3.02 -13.04 +v 2.44 0.00 -13.04 +v 2.76 0.00 -12.61 +v 2.76 0.00 -13.28 +v 2.72 2.63 -13.28 +v 2.72 2.63 -12.61 +v 2.32 0.00 -13.28 +v 2.28 2.21 -13.28 +v 2.32 0.00 -12.61 +v 2.28 2.21 -12.61 +v 1.57 4.51 -13.28 +v 1.57 4.51 -12.61 +v 1.32 3.79 -13.28 +v 1.32 3.79 -12.61 +v 0.00 5.20 -13.28 +v 0.00 5.20 -12.61 +v 0.00 4.45 -13.28 +v 0.00 4.45 -12.61 +v -1.57 4.51 -13.28 +v -1.57 4.51 -12.61 +v -1.32 3.79 -13.28 +v -1.32 3.79 -12.61 +v -2.72 2.63 -13.28 +v -2.72 2.63 -12.61 +v -2.28 2.21 -13.28 +v -2.28 2.21 -12.61 +v -2.76 0.00 -13.28 +v -2.76 0.00 -12.61 +v -2.32 0.00 -13.28 +v -2.32 0.00 -12.61 +v -23.02 0.02 -7.19 +v -23.81 0.02 -7.26 +v -23.50 3.76 -6.94 +v -22.95 3.76 -6.89 +v -23.10 0.02 -6.35 +v -23.01 3.76 -6.25 +v -23.88 0.02 -6.42 +v -23.56 3.76 -6.30 +v -23.00 6.77 -7.20 +v -23.83 6.77 -7.27 +v -23.08 7.23 -6.33 +v -23.90 7.23 -6.41 +v -23.14 6.61 -6.66 +v -23.14 6.39 0.01 +v -23.82 6.39 0.01 +v -23.82 6.61 -6.66 +v -23.82 7.03 0.01 +v -23.82 7.24 -6.66 +v -23.14 7.03 0.01 +v -23.14 7.24 -6.66 +v -23.14 6.61 6.68 +v -23.82 6.61 6.68 +v -23.82 7.24 6.68 +v -23.14 7.24 6.68 +v -10.64 6.61 -6.65 +v -17.31 6.39 -6.65 +v -17.31 6.39 -7.33 +v -10.64 6.61 -7.33 +v -17.31 7.03 -7.33 +v -10.64 7.24 -7.33 +v -17.31 7.03 -6.65 +v -10.64 7.24 -6.65 +v -23.99 6.61 -6.65 +v -23.99 6.61 -7.33 +v -23.99 7.24 -7.33 +v -23.99 7.24 -6.65 +v -23.02 0.02 7.20 +v -22.95 3.76 6.91 +v -23.50 3.76 6.95 +v -23.81 0.02 7.27 +v -23.10 0.02 6.37 +v -23.01 3.76 6.27 +v -23.88 0.02 6.44 +v -23.56 3.76 6.32 +v -23.00 6.77 7.22 +v -23.83 6.77 7.29 +v -23.08 7.23 6.35 +v -23.90 7.23 6.42 +v -10.64 6.61 6.68 +v -10.64 6.61 7.36 +v -17.31 6.39 7.36 +v -17.31 6.39 6.68 +v -10.64 7.24 7.36 +v -17.31 7.03 7.36 +v -10.64 7.24 6.68 +v -17.31 7.03 6.68 +v -23.99 6.61 7.36 +v -23.99 6.61 6.68 +v -23.99 7.24 7.36 +v -23.99 7.24 6.68 +v 8.74 6.44 10.70 +v 8.74 6.44 11.59 +v 0.00 6.16 11.59 +v 0.00 6.16 10.70 +v 8.74 7.27 11.59 +v 0.00 6.98 11.59 +v 8.74 7.27 10.70 +v 0.00 6.98 10.70 +v -8.74 6.44 11.59 +v -8.74 6.44 10.70 +v -8.74 7.27 11.59 +v -8.74 7.27 10.70 +v 8.74 17.79 -0.00 +v 8.74 27.72 -0.00 +v 8.74 23.62 3.62 +v 0.00 17.79 -3.62 +v 0.00 23.02 -3.62 +v 8.74 23.62 -3.62 +v -8.74 17.79 -0.00 +v -8.74 27.60 -0.00 +v -8.74 23.62 -3.62 +v 0.00 17.79 3.62 +v 0.00 23.02 3.62 +v -8.74 23.62 3.62 +v 8.34 17.58 -3.11 +v 8.50 20.48 -3.15 +v 8.50 20.48 -3.73 +v 8.34 17.58 -3.92 +v 8.34 24.35 -3.11 +v 8.34 23.76 -3.83 +v 9.14 17.58 -3.11 +v 9.09 20.48 -3.15 +v 9.14 24.35 -3.11 +v 9.14 17.58 -3.92 +v 9.09 20.48 -3.73 +v 9.14 23.76 -3.83 +v -0.81 20.18 -3.56 +v -0.81 17.74 -3.56 +v -0.81 17.74 -3.74 +v -0.81 20.18 -3.74 +v -0.95 20.13 -3.74 +v -0.95 17.74 -3.74 +v -0.95 17.74 -3.56 +v -0.95 20.13 -3.56 +v -1.04 20.10 -3.76 +v -1.04 20.10 -3.58 +v -1.04 20.32 -3.58 +v -1.04 20.32 -3.76 +v 1.04 20.32 -3.58 +v 1.04 20.10 -3.58 +v 1.04 20.10 -3.76 +v 1.04 20.32 -3.76 +v -0.39 20.29 -3.76 +v -0.39 20.29 -3.58 +v -0.39 20.51 -3.76 +v -0.39 20.51 -3.58 +v 0.94 20.15 -3.56 +v 0.94 17.74 -3.56 +v 0.94 17.74 -3.74 +v 0.94 20.15 -3.74 +v 0.80 17.74 -3.74 +v 0.80 20.19 -3.74 +v 0.80 17.74 -3.56 +v 0.80 20.19 -3.56 +v 0.39 20.29 -3.76 +v 0.39 20.29 -3.58 +v 0.39 20.51 -3.76 +v 0.39 20.51 -3.58 +v 0.00 20.34 -3.76 +v 0.00 20.34 -3.58 +v 0.00 20.56 -3.76 +v 0.00 20.56 -3.58 +v -0.01 17.69 -4.00 +v 0.78 17.69 -4.00 +v 0.78 17.66 -3.95 +v -0.01 17.66 -3.95 +v -0.01 17.76 -4.01 +v 0.78 17.76 -4.01 +v 0.78 17.75 -3.95 +v 0.78 17.85 -3.95 +v 0.78 17.85 -3.64 +v 0.78 17.75 -3.64 +v 0.78 17.82 -4.00 +v 0.78 17.66 -3.64 +v -0.01 17.85 -3.95 +v -0.01 17.85 -3.64 +v -0.01 17.82 -4.00 +v -0.80 17.66 -3.95 +v -0.80 17.69 -4.00 +v -0.80 17.76 -4.01 +v -0.80 17.85 -3.64 +v -0.80 17.85 -3.95 +v -0.80 17.75 -3.95 +v -0.80 17.75 -3.64 +v -0.80 17.82 -4.00 +v -0.80 17.66 -3.64 +v 0.86 20.19 -3.66 +v 0.86 17.72 -3.66 +v 0.02 17.72 -3.66 +v 0.02 20.45 -3.66 +v -0.82 20.19 -3.66 +v -0.82 17.72 -3.66 +v -9.14 17.58 -3.11 +v -8.97 20.48 -3.15 +v -8.97 20.48 -3.73 +v -9.14 17.58 -3.92 +v -9.14 24.35 -3.11 +v -9.14 23.76 -3.83 +v -8.34 17.58 -3.11 +v -8.39 20.48 -3.15 +v -8.34 24.35 -3.11 +v -8.34 17.58 -3.92 +v -8.39 20.48 -3.73 +v -8.34 23.76 -3.83 +v -9.14 17.58 3.11 +v -9.14 17.58 3.92 +v -8.97 20.48 3.73 +v -8.97 20.48 3.15 +v -9.14 23.76 3.83 +v -9.14 24.35 3.11 +v -8.34 17.58 3.11 +v -8.39 20.48 3.15 +v -8.34 24.35 3.11 +v -8.39 20.48 3.73 +v -8.34 17.58 3.92 +v -8.34 23.76 3.83 +v 8.34 17.58 3.11 +v 8.34 17.58 3.92 +v 8.50 20.48 3.73 +v 8.50 20.48 3.15 +v 8.34 23.76 3.83 +v 8.34 24.35 3.11 +v 9.14 17.58 3.11 +v 9.09 20.48 3.15 +v 9.14 24.35 3.11 +v 9.09 20.48 3.73 +v 9.14 17.58 3.92 +v 9.14 23.76 3.83 +v 12.59 6.44 -8.74 +v 13.48 6.44 -8.74 +v 13.48 6.16 -0.00 +v 12.59 6.16 -0.00 +v 13.48 7.27 -8.74 +v 13.48 6.98 -0.00 +v 12.59 7.27 -8.74 +v 12.59 6.98 -0.00 +v 13.48 6.44 8.74 +v 12.59 6.44 8.74 +v 13.48 7.27 8.74 +v 12.59 7.27 8.74 +v -9.92 18.64 4.67 +v -10.78 18.64 4.67 +v -10.78 18.64 6.66 +v -9.92 18.64 6.66 +v -9.92 17.79 4.67 +v -10.78 17.79 4.67 +v -10.78 17.79 6.66 +v -9.92 17.79 6.66 +v -12.40 7.80 6.90 +v -12.40 7.80 6.03 +v -14.38 7.80 6.03 +v -14.38 7.80 6.90 +v -12.40 6.95 6.90 +v -12.40 6.95 6.03 +v -14.38 6.95 6.03 +v -14.38 6.95 6.90 +v -12.40 7.80 -5.99 +v -12.40 7.80 -6.86 +v -14.38 7.80 -6.86 +v -14.38 7.80 -5.99 +v -12.40 6.95 -5.99 +v -12.40 6.95 -6.86 +v -14.38 6.95 -6.86 +v -14.38 6.95 -5.99 +v -16.55 0.00 12.98 +v -16.55 7.76 12.98 +v -17.17 7.76 10.68 +v -17.17 0.00 10.68 +v -14.87 0.00 14.66 +v -14.87 7.76 14.66 +v -12.57 0.00 15.28 +v -12.57 7.76 15.28 +v -10.27 0.00 14.66 +v -10.27 7.76 14.66 +v -8.58 0.00 12.98 +v -8.58 7.76 12.98 +v -7.97 0.00 10.68 +v -7.97 7.76 10.68 +v -8.58 0.00 8.38 +v -8.58 7.76 8.38 +v -10.27 0.00 6.69 +v -10.27 7.76 6.69 +v -12.57 0.00 6.08 +v -12.57 7.76 6.08 +v -14.87 0.00 6.69 +v -14.87 7.76 6.69 +v -16.55 0.00 8.38 +v -16.55 7.76 8.38 +v -16.78 7.76 13.11 +v -16.78 8.57 13.11 +v -17.43 8.57 10.68 +v -17.43 7.76 10.68 +v -15.00 7.76 14.89 +v -15.00 8.57 14.89 +v -12.57 7.76 15.54 +v -12.57 8.57 15.54 +v -10.13 7.76 14.89 +v -10.13 8.57 14.89 +v -8.35 7.76 13.11 +v -8.35 8.57 13.11 +v -7.70 7.76 10.68 +v -7.70 8.57 10.68 +v -8.35 7.76 8.24 +v -8.35 8.57 8.24 +v -10.13 7.76 6.46 +v -10.13 8.57 6.46 +v -12.57 7.76 5.81 +v -12.57 8.57 5.81 +v -15.00 7.76 6.46 +v -15.00 8.57 6.46 +v -16.78 7.76 8.24 +v -16.78 8.57 8.24 +v -17.17 8.57 10.68 +v -16.55 8.57 12.98 +v -14.87 8.57 14.66 +v -12.57 8.57 15.28 +v -10.27 8.57 14.66 +v -8.58 8.57 12.98 +v -7.97 8.57 10.68 +v -8.58 8.57 8.38 +v -10.27 8.57 6.69 +v -12.57 8.57 6.08 +v -14.87 8.57 6.69 +v -16.55 8.57 8.38 +v -16.55 16.89 12.98 +v -17.17 16.89 10.68 +v -14.87 16.89 14.66 +v -12.57 16.89 15.28 +v -10.27 16.89 14.66 +v -8.58 16.89 12.98 +v -7.97 16.89 10.68 +v -8.58 16.89 8.38 +v -10.27 16.89 6.69 +v -12.57 16.89 6.08 +v -14.87 16.89 6.69 +v -16.55 16.89 8.38 +v -17.13 21.30 13.31 +v -17.47 21.30 13.51 +v -18.23 21.30 10.68 +v -17.83 21.30 10.68 +v -15.20 21.30 15.24 +v -15.40 21.30 15.58 +v -12.57 21.30 15.94 +v -12.57 21.30 16.34 +v -9.93 21.30 15.24 +v -9.73 21.30 15.58 +v -8.01 21.30 13.31 +v -7.66 21.30 13.51 +v -7.30 21.30 10.68 +v -6.90 21.30 10.68 +v -8.01 21.30 8.04 +v -7.66 21.30 7.84 +v -9.93 21.30 6.12 +v -9.73 21.30 5.77 +v -12.57 21.30 5.41 +v -12.57 21.30 5.01 +v -15.20 21.30 6.12 +v -15.40 21.30 5.77 +v -17.13 21.30 8.04 +v -17.47 21.30 7.84 +v -16.17 24.76 12.76 +v -16.72 24.76 10.68 +v -14.64 24.76 14.28 +v -12.57 24.76 14.83 +v -10.49 24.76 14.28 +v -8.97 24.76 12.76 +v -8.41 24.76 10.68 +v -8.97 24.76 8.60 +v -10.49 24.76 7.08 +v -12.57 24.76 6.52 +v -14.64 24.76 7.08 +v -16.17 24.76 8.60 +v -16.13 28.50 12.74 +v -16.69 28.50 10.68 +v -14.63 28.50 14.24 +v -12.57 28.50 14.80 +v -10.51 28.50 14.24 +v -9.00 28.50 12.74 +v -8.45 28.50 10.68 +v -9.00 28.50 8.62 +v -10.51 28.50 7.11 +v -12.57 28.50 6.56 +v -14.63 28.50 7.11 +v -16.13 28.50 8.62 +v -17.13 17.36 13.31 +v -17.83 17.36 10.68 +v -15.20 17.36 15.24 +v -12.57 17.36 15.94 +v -9.93 17.36 15.24 +v -8.01 17.36 13.31 +v -7.30 17.36 10.68 +v -8.01 17.36 8.04 +v -9.93 17.36 6.12 +v -12.57 17.36 5.41 +v -15.20 17.36 6.12 +v -17.13 17.36 8.04 +v -17.91 20.21 10.37 +v -17.91 19.23 10.37 +v -17.91 19.21 10.80 +v -17.91 20.52 10.80 +v -17.81 19.26 10.03 +v -17.81 19.12 10.03 +v -17.91 19.12 10.04 +v -17.91 19.26 10.04 +v -17.89 20.75 10.80 +v -17.84 20.29 10.15 +v -17.94 20.29 10.15 +v -17.98 20.75 10.81 +v -17.68 19.12 11.55 +v -17.68 19.26 11.55 +v -17.78 19.26 11.56 +v -17.78 19.12 11.56 +v -17.89 19.07 10.80 +v -17.73 19.12 11.45 +v -17.82 19.12 11.45 +v -17.98 19.07 10.81 +v -18.05 19.12 10.16 +v -18.08 19.23 10.39 +v -18.05 19.26 10.16 +v -17.98 20.21 10.38 +v -17.98 20.52 10.81 +v -17.93 19.26 11.46 +v -18.01 19.24 11.24 +v -17.93 19.12 11.46 +v -18.09 19.07 10.82 +v -18.09 19.21 10.82 +v -17.83 20.21 11.23 +v -17.83 19.24 11.23 +v -17.73 20.29 11.45 +v -17.82 20.29 11.45 +v -17.84 19.12 10.15 +v -17.94 19.12 10.15 +v -17.90 20.21 11.23 +v -17.98 19.23 10.38 +v -17.90 19.24 11.23 +v -17.98 19.21 10.81 +v -17.82 19.26 11.45 +v -17.73 19.26 11.45 +v -17.84 19.26 10.15 +v -17.94 19.26 10.15 +v -18.02 19.12 10.05 +v -18.02 19.26 10.05 +v -17.88 19.26 11.57 +v -17.88 19.12 11.57 +v -12.87 20.21 16.02 +v -12.87 19.23 16.02 +v -12.44 19.21 16.02 +v -12.44 20.52 16.02 +v -13.21 19.26 15.92 +v -13.21 19.12 15.92 +v -13.20 19.12 16.02 +v -13.20 19.26 16.02 +v -12.44 20.75 16.00 +v -13.10 20.29 15.95 +v -13.09 20.29 16.05 +v -12.43 20.75 16.10 +v -11.69 19.12 15.79 +v -11.69 19.26 15.79 +v -11.68 19.26 15.89 +v -11.68 19.12 15.89 +v -12.44 19.07 16.00 +v -11.80 19.12 15.84 +v -11.79 19.12 15.94 +v -12.43 19.07 16.10 +v -13.08 19.12 16.16 +v -12.85 19.23 16.20 +v -13.08 19.26 16.16 +v -12.86 20.21 16.09 +v -12.43 20.52 16.10 +v -11.78 19.26 16.04 +v -12.00 19.24 16.12 +v -11.78 19.12 16.04 +v -12.42 19.07 16.20 +v -12.42 19.21 16.20 +v -12.01 20.21 15.94 +v -12.01 19.24 15.94 +v -11.80 20.29 15.84 +v -11.79 20.29 15.94 +v -13.10 19.12 15.95 +v -13.09 19.12 16.05 +v -12.01 20.21 16.01 +v -12.86 19.23 16.09 +v -12.01 19.24 16.01 +v -12.43 19.21 16.10 +v -11.79 19.26 15.94 +v -11.80 19.26 15.84 +v -13.10 19.26 15.95 +v -13.09 19.26 16.05 +v -13.19 19.12 16.13 +v -13.19 19.26 16.13 +v -11.67 19.26 16.00 +v -11.67 19.12 16.00 +v -9.24 23.34 12.52 +v -8.56 24.92 12.99 +v -9.10 24.92 13.76 +v -9.78 23.34 13.29 +v -9.53 28.41 12.29 +v -8.63 28.41 12.92 +v -9.18 28.41 13.70 +v -10.08 28.41 13.07 +v -12.87 27.21 14.81 +v -12.87 26.24 14.81 +v -12.44 26.21 14.82 +v -12.44 27.52 14.82 +v -13.21 26.26 14.72 +v -13.21 26.12 14.72 +v -13.20 26.12 14.82 +v -13.20 26.26 14.82 +v -12.44 27.75 14.80 +v -13.10 27.30 14.75 +v -13.09 27.30 14.85 +v -12.43 27.75 14.89 +v -11.69 26.12 14.59 +v -11.69 26.26 14.59 +v -11.68 26.26 14.69 +v -11.68 26.12 14.69 +v -12.44 26.07 14.80 +v -11.80 26.12 14.64 +v -11.79 26.12 14.73 +v -12.43 26.07 14.89 +v -13.08 26.12 14.96 +v -12.85 26.24 14.99 +v -13.08 26.26 14.96 +v -12.86 27.21 14.89 +v -12.43 27.52 14.89 +v -11.78 26.26 14.84 +v -12.00 26.25 14.92 +v -11.78 26.12 14.84 +v -12.42 26.07 15.00 +v -12.42 26.21 15.00 +v -12.01 27.21 14.74 +v -12.01 26.25 14.74 +v -11.80 27.30 14.64 +v -11.79 27.30 14.73 +v -13.10 26.12 14.75 +v -13.09 26.12 14.85 +v -12.01 27.21 14.81 +v -12.86 26.24 14.89 +v -12.01 26.25 14.81 +v -12.43 26.21 14.89 +v -11.79 26.26 14.73 +v -11.80 26.26 14.64 +v -13.10 26.26 14.75 +v -13.09 26.26 14.85 +v -13.19 26.12 14.93 +v -13.19 26.26 14.93 +v -11.67 26.26 14.79 +v -11.67 26.12 14.79 +v -14.41 23.34 14.01 +v -14.88 24.92 14.68 +v -15.65 24.92 14.14 +v -15.18 23.34 13.46 +v -14.18 28.41 13.71 +v -14.81 28.41 14.61 +v -15.59 28.41 14.07 +v -14.96 28.41 13.17 +v -8.43 27.21 10.98 +v -8.43 26.24 10.98 +v -8.42 26.21 10.55 +v -8.42 27.52 10.55 +v -8.52 26.26 11.32 +v -8.52 26.12 11.32 +v -8.42 26.12 11.31 +v -8.42 26.26 11.31 +v -8.45 27.75 10.55 +v -8.49 27.30 11.21 +v -8.39 27.30 11.20 +v -8.35 27.75 10.54 +v -8.65 26.12 9.80 +v -8.65 26.26 9.80 +v -8.56 26.26 9.79 +v -8.56 26.12 9.79 +v -8.45 26.07 10.55 +v -8.61 26.12 9.91 +v -8.51 26.12 9.90 +v -8.35 26.07 10.54 +v -8.29 26.12 11.19 +v -8.25 26.24 10.96 +v -8.29 26.26 11.19 +v -8.35 27.21 10.97 +v -8.35 27.52 10.54 +v -8.40 26.26 9.89 +v -8.32 26.25 10.11 +v -8.40 26.12 9.89 +v -8.24 26.07 10.53 +v -8.24 26.21 10.53 +v -8.50 27.21 10.13 +v -8.50 26.25 10.13 +v -8.61 27.30 9.91 +v -8.51 27.30 9.90 +v -8.49 26.12 11.21 +v -8.39 26.12 11.20 +v -8.43 27.21 10.12 +v -8.35 26.24 10.97 +v -8.43 26.25 10.12 +v -8.35 26.21 10.54 +v -8.51 26.26 9.90 +v -8.61 26.26 9.91 +v -8.49 26.26 11.21 +v -8.39 26.26 11.20 +v -8.32 26.12 11.30 +v -8.32 26.26 11.30 +v -8.45 26.26 9.78 +v -8.45 26.12 9.78 +v -13.04 12.70 6.81 +v -13.04 14.28 5.99 +v -12.09 14.28 5.99 +v -12.09 12.70 6.81 +v -13.04 17.34 6.74 +v -13.04 17.34 5.64 +v -12.09 17.34 5.64 +v -12.09 17.34 6.74 +v -8.98 12.70 12.20 +v -8.27 14.28 12.61 +v -8.74 14.28 13.43 +v -9.46 12.70 13.02 +v -8.92 17.34 12.24 +v -7.97 17.34 12.79 +v -8.44 17.34 13.61 +v -9.39 17.34 13.06 +v -12.09 12.70 14.54 +v -12.09 14.28 15.36 +v -13.04 14.28 15.36 +v -13.04 12.70 14.54 +v -12.09 17.34 14.62 +v -12.09 17.34 15.71 +v -13.04 17.34 15.71 +v -13.04 17.34 14.62 +v -10.73 23.34 7.35 +v -10.25 24.92 6.67 +v -9.48 24.92 7.22 +v -9.95 23.34 7.89 +v -10.95 28.41 7.65 +v -10.32 28.41 6.74 +v -9.55 28.41 7.29 +v -10.18 28.41 8.19 +v -9.46 12.70 8.34 +v -8.74 14.28 7.92 +v -8.27 14.28 8.74 +v -8.98 12.70 9.15 +v -9.39 17.34 8.30 +v -8.44 17.34 7.75 +v -7.97 17.34 8.57 +v -8.92 17.34 9.12 +v -7.23 20.21 10.98 +v -7.23 19.23 10.98 +v -7.22 19.21 10.55 +v -7.22 20.52 10.55 +v -7.32 19.26 11.32 +v -7.32 19.12 11.32 +v -7.22 19.12 11.31 +v -7.22 19.26 11.31 +v -7.24 20.75 10.55 +v -7.29 20.29 11.21 +v -7.19 20.29 11.20 +v -7.15 20.75 10.54 +v -7.45 19.12 9.80 +v -7.45 19.26 9.80 +v -7.35 19.26 9.79 +v -7.35 19.12 9.79 +v -7.24 19.07 10.55 +v -7.41 19.12 9.91 +v -7.31 19.12 9.90 +v -7.15 19.07 10.54 +v -7.09 19.12 11.19 +v -7.05 19.23 10.96 +v -7.09 19.26 11.19 +v -7.15 20.21 10.97 +v -7.15 20.52 10.54 +v -7.20 19.26 9.89 +v -7.12 19.24 10.11 +v -7.20 19.12 9.89 +v -7.04 19.07 10.53 +v -7.04 19.21 10.53 +v -7.30 20.21 10.13 +v -7.30 19.24 10.13 +v -7.41 20.29 9.91 +v -7.31 20.29 9.90 +v -7.29 19.12 11.21 +v -7.19 19.12 11.20 +v -7.23 20.21 10.12 +v -7.15 19.23 10.97 +v -7.23 19.24 10.12 +v -7.15 19.21 10.54 +v -7.31 19.26 9.90 +v -7.41 19.26 9.91 +v -7.29 19.26 11.21 +v -7.19 19.26 11.20 +v -7.11 19.12 11.30 +v -7.11 19.26 11.30 +v -7.25 19.26 9.78 +v -7.25 19.12 9.78 +v -12.26 27.21 6.54 +v -12.26 26.24 6.54 +v -12.69 26.21 6.53 +v -12.69 27.52 6.53 +v -11.92 26.26 6.63 +v -11.92 26.12 6.63 +v -11.93 26.12 6.53 +v -11.93 26.26 6.53 +v -12.69 27.75 6.56 +v -12.03 27.30 6.60 +v -12.04 27.30 6.51 +v -12.70 27.75 6.46 +v -13.44 26.12 6.76 +v -13.44 26.26 6.76 +v -13.45 26.26 6.67 +v -13.45 26.12 6.67 +v -12.69 26.07 6.56 +v -13.34 26.12 6.72 +v -13.34 26.12 6.62 +v -12.70 26.07 6.46 +v -12.05 26.12 6.40 +v -12.28 26.24 6.36 +v -12.05 26.26 6.40 +v -12.27 27.21 6.47 +v -12.70 27.52 6.46 +v -13.35 26.26 6.51 +v -13.13 26.25 6.43 +v -13.35 26.12 6.51 +v -12.71 26.07 6.35 +v -12.71 26.21 6.35 +v -13.12 27.21 6.61 +v -13.12 26.25 6.61 +v -13.34 27.30 6.72 +v -13.34 27.30 6.62 +v -12.03 26.12 6.60 +v -12.04 26.12 6.51 +v -13.12 27.21 6.54 +v -12.27 26.24 6.47 +v -13.12 26.25 6.54 +v -12.70 26.21 6.46 +v -13.34 26.26 6.62 +v -13.34 26.26 6.72 +v -12.03 26.26 6.60 +v -12.04 26.26 6.51 +v -11.94 26.12 6.43 +v -11.94 26.26 6.43 +v -13.46 26.26 6.56 +v -13.46 26.12 6.56 +v -16.15 12.70 9.15 +v -16.86 14.28 8.74 +v -16.39 14.28 7.92 +v -15.67 12.70 8.34 +v -16.21 17.34 9.12 +v -17.17 17.34 8.57 +v -16.69 17.34 7.75 +v -15.74 17.34 8.30 +v -12.26 20.21 5.34 +v -12.26 19.23 5.34 +v -12.69 19.21 5.33 +v -12.69 20.52 5.33 +v -11.92 19.26 5.43 +v -11.92 19.12 5.43 +v -11.93 19.12 5.33 +v -11.93 19.26 5.33 +v -12.69 20.75 5.36 +v -12.03 20.29 5.40 +v -12.04 20.29 5.30 +v -12.70 20.75 5.26 +v -13.44 19.12 5.56 +v -13.44 19.26 5.56 +v -13.45 19.26 5.47 +v -13.45 19.12 5.47 +v -12.69 19.07 5.36 +v -13.34 19.12 5.52 +v -13.34 19.12 5.42 +v -12.70 19.07 5.26 +v -12.05 19.12 5.20 +v -12.28 19.23 5.16 +v -12.05 19.26 5.20 +v -12.27 20.21 5.26 +v -12.70 20.52 5.26 +v -13.35 19.26 5.31 +v -13.13 19.24 5.23 +v -13.35 19.12 5.31 +v -12.71 19.07 5.15 +v -12.71 19.21 5.15 +v -13.12 20.21 5.41 +v -13.12 19.24 5.41 +v -13.34 20.29 5.52 +v -13.34 20.29 5.42 +v -12.03 19.12 5.40 +v -12.04 19.12 5.30 +v -13.12 20.21 5.34 +v -12.27 19.23 5.26 +v -13.12 19.24 5.34 +v -12.70 19.21 5.26 +v -13.34 19.26 5.42 +v -13.34 19.26 5.52 +v -12.03 19.26 5.40 +v -12.04 19.26 5.30 +v -11.94 19.12 5.23 +v -11.94 19.26 5.23 +v -13.46 19.26 5.36 +v -13.46 19.12 5.36 +v -15.89 23.34 8.84 +v -16.57 24.92 8.36 +v -16.03 24.92 7.59 +v -15.35 23.34 8.06 +v -15.60 28.41 9.06 +v -16.50 28.41 8.43 +v -15.96 28.41 7.66 +v -15.06 28.41 8.29 +v -16.70 27.21 10.37 +v -16.70 26.24 10.37 +v -16.71 26.21 10.80 +v -16.71 27.52 10.80 +v -16.61 26.26 10.03 +v -16.61 26.12 10.03 +v -16.71 26.12 10.04 +v -16.71 26.26 10.04 +v -16.69 27.75 10.80 +v -16.64 27.30 10.15 +v -16.74 27.30 10.15 +v -16.78 27.75 10.81 +v -16.48 26.12 11.55 +v -16.48 26.26 11.55 +v -16.58 26.26 11.56 +v -16.58 26.12 11.56 +v -16.69 26.07 10.80 +v -16.53 26.12 11.45 +v -16.62 26.12 11.45 +v -16.78 26.07 10.81 +v -16.84 26.12 10.16 +v -16.88 26.24 10.39 +v -16.84 26.26 10.16 +v -16.78 27.21 10.38 +v -16.78 27.52 10.81 +v -16.73 26.26 11.46 +v -16.81 26.25 11.24 +v -16.73 26.12 11.46 +v -16.89 26.07 10.82 +v -16.89 26.21 10.82 +v -16.63 27.21 11.23 +v -16.63 26.25 11.23 +v -16.53 27.30 11.45 +v -16.62 27.30 11.45 +v -16.64 26.12 10.15 +v -16.74 26.12 10.15 +v -16.70 27.21 11.23 +v -16.78 26.24 10.38 +v -16.70 26.25 11.23 +v -16.78 26.21 10.81 +v -16.62 26.26 11.45 +v -16.53 26.26 11.45 +v -16.64 26.26 10.15 +v -16.74 26.26 10.15 +v -16.82 26.12 10.05 +v -16.82 26.26 10.05 +v -16.68 26.26 11.57 +v -16.68 26.12 11.57 +v -15.67 12.70 13.02 +v -16.39 14.28 13.43 +v -16.86 14.28 12.61 +v -16.15 12.70 12.20 +v -15.74 17.34 13.06 +v -16.69 17.34 13.61 +v -17.17 17.34 12.79 +v -16.21 17.34 12.24 +v -16.83 28.50 13.14 +v -16.83 30.29 13.14 +v -17.49 30.29 10.68 +v -17.49 28.50 10.68 +v -15.03 28.50 14.94 +v -15.03 30.29 14.94 +v -12.57 28.50 15.60 +v -12.57 30.29 15.60 +v -10.10 28.50 14.94 +v -10.10 30.29 14.94 +v -8.30 28.50 13.14 +v -8.30 30.29 13.14 +v -7.64 28.50 10.68 +v -7.64 30.29 10.68 +v -8.30 28.50 8.21 +v -8.30 30.29 8.21 +v -10.10 28.50 6.41 +v -10.10 30.29 6.41 +v -12.57 28.50 5.75 +v -12.57 30.29 5.75 +v -15.03 28.50 6.41 +v -15.03 30.29 6.41 +v -16.83 28.50 8.21 +v -16.83 30.29 8.21 +v -16.21 30.29 12.78 +v -16.78 30.29 10.68 +v -15.03 30.90 14.94 +v -14.67 30.90 14.32 +v -16.21 30.90 12.78 +v -16.83 30.90 13.14 +v -12.57 30.29 14.89 +v -14.67 30.29 14.32 +v -10.10 30.90 14.94 +v -10.46 30.90 14.32 +v -12.57 30.90 14.89 +v -12.57 30.90 15.60 +v -8.92 30.29 12.78 +v -10.46 30.29 14.32 +v -7.64 30.90 10.68 +v -8.36 30.90 10.68 +v -8.92 30.90 12.78 +v -8.30 30.90 13.14 +v -8.92 30.29 8.57 +v -8.36 30.29 10.68 +v -10.10 30.90 6.41 +v -10.46 30.90 7.03 +v -8.92 30.90 8.57 +v -8.30 30.90 8.21 +v -12.57 30.29 6.47 +v -10.46 30.29 7.03 +v -15.03 30.90 6.41 +v -14.67 30.90 7.03 +v -12.57 30.90 6.47 +v -12.57 30.90 5.75 +v -16.21 30.29 8.57 +v -14.67 30.29 7.03 +v -17.49 30.90 10.68 +v -16.78 30.90 10.68 +v -16.21 30.90 8.57 +v -16.83 30.90 8.21 +v -16.21 29.42 12.78 +v -16.78 29.42 10.68 +v -14.67 29.42 14.32 +v -12.57 29.42 14.89 +v -10.46 29.42 14.32 +v -8.92 29.42 12.78 +v -8.36 29.42 10.68 +v -8.92 29.42 8.57 +v -10.46 29.42 7.03 +v -12.57 29.42 6.47 +v -14.67 29.42 7.03 +v -16.21 29.42 8.57 +v -12.57 29.42 10.68 +v 17.17 7.76 10.68 +v 16.55 7.76 12.98 +v 16.55 0.00 12.98 +v 17.17 0.00 10.68 +v 14.87 7.76 14.66 +v 14.87 0.00 14.66 +v 12.57 7.76 15.28 +v 12.57 0.00 15.28 +v 10.27 7.76 14.66 +v 10.27 0.00 14.66 +v 8.58 7.76 12.98 +v 8.58 0.00 12.98 +v 7.97 7.76 10.68 +v 7.97 0.00 10.68 +v 8.58 7.76 8.38 +v 8.58 0.00 8.38 +v 10.27 7.76 6.69 +v 10.27 0.00 6.69 +v 12.57 7.76 6.08 +v 12.57 0.00 6.08 +v 14.87 7.76 6.69 +v 14.87 0.00 6.69 +v 16.55 7.76 8.38 +v 16.55 0.00 8.38 +v 16.78 7.76 13.11 +v 17.43 7.76 10.68 +v 17.43 8.57 10.68 +v 16.78 8.57 13.11 +v 15.00 7.76 14.89 +v 15.00 8.57 14.89 +v 12.57 7.76 15.54 +v 12.57 8.57 15.54 +v 10.13 7.76 14.89 +v 10.13 8.57 14.89 +v 8.35 7.76 13.11 +v 8.35 8.57 13.11 +v 7.70 7.76 10.68 +v 7.70 8.57 10.68 +v 8.35 7.76 8.24 +v 8.35 8.57 8.24 +v 10.13 7.76 6.46 +v 10.13 8.57 6.46 +v 12.57 7.76 5.81 +v 12.57 8.57 5.81 +v 15.00 7.76 6.46 +v 15.00 8.57 6.46 +v 16.78 7.76 8.24 +v 16.78 8.57 8.24 +v 17.17 8.57 10.68 +v 16.55 8.57 12.98 +v 14.87 8.57 14.66 +v 12.57 8.57 15.28 +v 10.27 8.57 14.66 +v 8.58 8.57 12.98 +v 7.97 8.57 10.68 +v 8.58 8.57 8.38 +v 10.27 8.57 6.69 +v 12.57 8.57 6.08 +v 14.87 8.57 6.69 +v 16.55 8.57 8.38 +v 17.17 16.89 10.68 +v 16.55 16.89 12.98 +v 14.87 16.89 14.66 +v 12.57 16.89 15.28 +v 10.27 16.89 14.66 +v 8.58 16.89 12.98 +v 7.97 16.89 10.68 +v 8.58 16.89 8.38 +v 10.27 16.89 6.69 +v 12.57 16.89 6.08 +v 14.87 16.89 6.69 +v 16.55 16.89 8.38 +v 17.13 21.30 13.31 +v 17.83 21.30 10.68 +v 18.23 21.30 10.68 +v 17.47 21.30 13.51 +v 15.20 21.30 15.24 +v 15.40 21.30 15.58 +v 12.57 21.30 15.94 +v 12.57 21.30 16.34 +v 9.93 21.30 15.24 +v 9.73 21.30 15.58 +v 8.01 21.30 13.31 +v 7.66 21.30 13.51 +v 7.30 21.30 10.68 +v 6.90 21.30 10.68 +v 8.01 21.30 8.04 +v 7.66 21.30 7.84 +v 9.93 21.30 6.12 +v 9.73 21.30 5.77 +v 12.57 21.30 5.41 +v 12.57 21.30 5.01 +v 15.20 21.30 6.12 +v 15.40 21.30 5.77 +v 17.13 21.30 8.04 +v 17.47 21.30 7.84 +v 16.72 24.76 10.68 +v 16.17 24.76 12.76 +v 14.64 24.76 14.28 +v 12.57 24.76 14.83 +v 10.49 24.76 14.28 +v 8.97 24.76 12.76 +v 8.41 24.76 10.68 +v 8.97 24.76 8.60 +v 10.49 24.76 7.08 +v 12.57 24.76 6.52 +v 14.64 24.76 7.08 +v 16.17 24.76 8.60 +v 16.69 28.50 10.68 +v 16.13 28.50 12.74 +v 14.63 28.50 14.24 +v 12.57 28.50 14.80 +v 10.51 28.50 14.24 +v 9.00 28.50 12.74 +v 8.45 28.50 10.68 +v 9.00 28.50 8.62 +v 10.51 28.50 7.11 +v 12.57 28.50 6.56 +v 14.63 28.50 7.11 +v 16.13 28.50 8.62 +v 17.83 17.36 10.68 +v 17.13 17.36 13.31 +v 15.20 17.36 15.24 +v 12.57 17.36 15.94 +v 9.93 17.36 15.24 +v 8.01 17.36 13.31 +v 7.30 17.36 10.68 +v 8.01 17.36 8.04 +v 9.93 17.36 6.12 +v 12.57 17.36 5.41 +v 15.20 17.36 6.12 +v 17.13 17.36 8.04 +v 17.91 20.21 10.37 +v 17.91 20.52 10.80 +v 17.91 19.21 10.80 +v 17.91 19.23 10.37 +v 17.81 19.26 10.03 +v 17.91 19.26 10.04 +v 17.91 19.12 10.04 +v 17.81 19.12 10.03 +v 17.89 20.75 10.80 +v 17.98 20.75 10.81 +v 17.94 20.29 10.15 +v 17.84 20.29 10.15 +v 17.68 19.12 11.55 +v 17.78 19.12 11.56 +v 17.78 19.26 11.56 +v 17.68 19.26 11.55 +v 17.89 19.07 10.80 +v 17.98 19.07 10.81 +v 17.82 19.12 11.45 +v 17.73 19.12 11.45 +v 18.05 19.12 10.16 +v 18.05 19.26 10.16 +v 18.08 19.23 10.39 +v 17.98 20.52 10.81 +v 17.98 20.21 10.38 +v 17.93 19.26 11.46 +v 17.93 19.12 11.46 +v 18.01 19.24 11.24 +v 18.09 19.07 10.82 +v 18.09 19.21 10.82 +v 17.83 20.21 11.23 +v 17.83 19.24 11.23 +v 17.73 20.29 11.45 +v 17.82 20.29 11.45 +v 17.84 19.12 10.15 +v 17.94 19.12 10.15 +v 17.90 20.21 11.23 +v 17.98 19.23 10.38 +v 17.90 19.24 11.23 +v 17.98 19.21 10.81 +v 17.82 19.26 11.45 +v 17.73 19.26 11.45 +v 17.94 19.26 10.15 +v 17.84 19.26 10.15 +v 18.02 19.26 10.05 +v 18.02 19.12 10.05 +v 17.88 19.12 11.57 +v 17.88 19.26 11.57 +v 12.87 20.21 16.02 +v 12.44 20.52 16.02 +v 12.44 19.21 16.02 +v 12.87 19.23 16.02 +v 13.21 19.26 15.92 +v 13.20 19.26 16.02 +v 13.20 19.12 16.02 +v 13.21 19.12 15.92 +v 12.44 20.75 16.00 +v 12.43 20.75 16.10 +v 13.09 20.29 16.05 +v 13.10 20.29 15.95 +v 11.69 19.12 15.79 +v 11.68 19.12 15.89 +v 11.68 19.26 15.89 +v 11.69 19.26 15.79 +v 12.44 19.07 16.00 +v 12.43 19.07 16.10 +v 11.79 19.12 15.94 +v 11.80 19.12 15.84 +v 13.08 19.12 16.16 +v 13.08 19.26 16.16 +v 12.85 19.23 16.20 +v 12.43 20.52 16.10 +v 12.86 20.21 16.09 +v 11.78 19.26 16.04 +v 11.78 19.12 16.04 +v 12.00 19.24 16.12 +v 12.42 19.07 16.20 +v 12.42 19.21 16.20 +v 12.01 20.21 15.94 +v 12.01 19.24 15.94 +v 11.80 20.29 15.84 +v 11.79 20.29 15.94 +v 13.10 19.12 15.95 +v 13.09 19.12 16.05 +v 12.01 20.21 16.01 +v 12.86 19.23 16.09 +v 12.01 19.24 16.01 +v 12.43 19.21 16.10 +v 11.79 19.26 15.94 +v 11.80 19.26 15.84 +v 13.09 19.26 16.05 +v 13.10 19.26 15.95 +v 13.19 19.26 16.13 +v 13.19 19.12 16.13 +v 11.67 19.12 16.00 +v 11.67 19.26 16.00 +v 9.24 23.34 12.52 +v 9.78 23.34 13.29 +v 9.10 24.92 13.76 +v 8.56 24.92 12.99 +v 8.63 28.41 12.92 +v 9.53 28.41 12.29 +v 9.18 28.41 13.70 +v 10.08 28.41 13.07 +v 12.87 27.21 14.81 +v 12.44 27.52 14.82 +v 12.44 26.21 14.82 +v 12.87 26.24 14.81 +v 13.21 26.26 14.72 +v 13.20 26.26 14.82 +v 13.20 26.12 14.82 +v 13.21 26.12 14.72 +v 12.44 27.75 14.80 +v 12.43 27.75 14.89 +v 13.09 27.30 14.85 +v 13.10 27.30 14.75 +v 11.69 26.12 14.59 +v 11.68 26.12 14.69 +v 11.68 26.26 14.69 +v 11.69 26.26 14.59 +v 12.44 26.07 14.80 +v 12.43 26.07 14.89 +v 11.79 26.12 14.73 +v 11.80 26.12 14.64 +v 13.08 26.12 14.96 +v 13.08 26.26 14.96 +v 12.85 26.24 14.99 +v 12.43 27.52 14.89 +v 12.86 27.21 14.89 +v 11.78 26.26 14.84 +v 11.78 26.12 14.84 +v 12.00 26.25 14.92 +v 12.42 26.07 15.00 +v 12.42 26.21 15.00 +v 12.01 27.21 14.74 +v 12.01 26.25 14.74 +v 11.80 27.30 14.64 +v 11.79 27.30 14.73 +v 13.10 26.12 14.75 +v 13.09 26.12 14.85 +v 12.01 27.21 14.81 +v 12.86 26.24 14.89 +v 12.01 26.25 14.81 +v 12.43 26.21 14.89 +v 11.79 26.26 14.73 +v 11.80 26.26 14.64 +v 13.09 26.26 14.85 +v 13.10 26.26 14.75 +v 13.19 26.26 14.93 +v 13.19 26.12 14.93 +v 11.67 26.12 14.79 +v 11.67 26.26 14.79 +v 14.41 23.34 14.01 +v 15.18 23.34 13.46 +v 15.65 24.92 14.14 +v 14.88 24.92 14.68 +v 14.81 28.41 14.61 +v 14.18 28.41 13.71 +v 15.59 28.41 14.07 +v 14.96 28.41 13.17 +v 8.43 27.21 10.98 +v 8.42 27.52 10.55 +v 8.42 26.21 10.55 +v 8.43 26.24 10.98 +v 8.52 26.26 11.32 +v 8.42 26.26 11.31 +v 8.42 26.12 11.31 +v 8.52 26.12 11.32 +v 8.45 27.75 10.55 +v 8.35 27.75 10.54 +v 8.39 27.30 11.20 +v 8.49 27.30 11.21 +v 8.65 26.12 9.80 +v 8.56 26.12 9.79 +v 8.56 26.26 9.79 +v 8.65 26.26 9.80 +v 8.45 26.07 10.55 +v 8.35 26.07 10.54 +v 8.51 26.12 9.90 +v 8.61 26.12 9.91 +v 8.29 26.12 11.19 +v 8.29 26.26 11.19 +v 8.25 26.24 10.96 +v 8.35 27.52 10.54 +v 8.35 27.21 10.97 +v 8.40 26.26 9.89 +v 8.40 26.12 9.89 +v 8.32 26.25 10.11 +v 8.24 26.07 10.53 +v 8.24 26.21 10.53 +v 8.50 27.21 10.13 +v 8.50 26.25 10.13 +v 8.61 27.30 9.91 +v 8.51 27.30 9.90 +v 8.49 26.12 11.21 +v 8.39 26.12 11.20 +v 8.43 27.21 10.12 +v 8.35 26.24 10.97 +v 8.43 26.25 10.12 +v 8.35 26.21 10.54 +v 8.51 26.26 9.90 +v 8.61 26.26 9.91 +v 8.39 26.26 11.20 +v 8.49 26.26 11.21 +v 8.32 26.26 11.30 +v 8.32 26.12 11.30 +v 8.45 26.12 9.78 +v 8.45 26.26 9.78 +v 13.04 12.70 6.81 +v 12.09 12.70 6.81 +v 12.09 14.28 5.99 +v 13.04 14.28 5.99 +v 13.04 17.34 5.64 +v 13.04 17.34 6.74 +v 12.09 17.34 5.64 +v 12.09 17.34 6.74 +v 8.98 12.70 12.20 +v 9.46 12.70 13.02 +v 8.74 14.28 13.43 +v 8.27 14.28 12.61 +v 7.97 17.34 12.79 +v 8.92 17.34 12.24 +v 8.44 17.34 13.61 +v 9.39 17.34 13.06 +v 12.09 12.70 14.54 +v 13.04 12.70 14.54 +v 13.04 14.28 15.36 +v 12.09 14.28 15.36 +v 12.09 17.34 15.71 +v 12.09 17.34 14.62 +v 13.04 17.34 15.71 +v 13.04 17.34 14.62 +v 10.73 23.34 7.35 +v 9.95 23.34 7.89 +v 9.48 24.92 7.22 +v 10.25 24.92 6.67 +v 10.32 28.41 6.74 +v 10.95 28.41 7.65 +v 9.55 28.41 7.29 +v 10.18 28.41 8.19 +v 9.46 12.70 8.34 +v 8.98 12.70 9.15 +v 8.27 14.28 8.74 +v 8.74 14.28 7.92 +v 8.44 17.34 7.75 +v 9.39 17.34 8.30 +v 7.97 17.34 8.57 +v 8.92 17.34 9.12 +v 7.23 20.21 10.98 +v 7.22 20.52 10.55 +v 7.22 19.21 10.55 +v 7.23 19.23 10.98 +v 7.32 19.26 11.32 +v 7.22 19.26 11.31 +v 7.22 19.12 11.31 +v 7.32 19.12 11.32 +v 7.24 20.75 10.55 +v 7.15 20.75 10.54 +v 7.19 20.29 11.20 +v 7.29 20.29 11.21 +v 7.45 19.12 9.80 +v 7.35 19.12 9.79 +v 7.35 19.26 9.79 +v 7.45 19.26 9.80 +v 7.24 19.07 10.55 +v 7.15 19.07 10.54 +v 7.31 19.12 9.90 +v 7.41 19.12 9.91 +v 7.09 19.12 11.19 +v 7.09 19.26 11.19 +v 7.05 19.23 10.96 +v 7.15 20.52 10.54 +v 7.15 20.21 10.97 +v 7.20 19.26 9.89 +v 7.20 19.12 9.89 +v 7.12 19.24 10.11 +v 7.04 19.07 10.53 +v 7.04 19.21 10.53 +v 7.30 20.21 10.13 +v 7.30 19.24 10.13 +v 7.41 20.29 9.91 +v 7.31 20.29 9.90 +v 7.29 19.12 11.21 +v 7.19 19.12 11.20 +v 7.23 20.21 10.12 +v 7.15 19.23 10.97 +v 7.23 19.24 10.12 +v 7.15 19.21 10.54 +v 7.31 19.26 9.90 +v 7.41 19.26 9.91 +v 7.19 19.26 11.20 +v 7.29 19.26 11.21 +v 7.11 19.26 11.30 +v 7.11 19.12 11.30 +v 7.25 19.12 9.78 +v 7.25 19.26 9.78 +v 12.26 27.21 6.54 +v 12.69 27.52 6.53 +v 12.69 26.21 6.53 +v 12.26 26.24 6.54 +v 11.92 26.26 6.63 +v 11.93 26.26 6.53 +v 11.93 26.12 6.53 +v 11.92 26.12 6.63 +v 12.69 27.75 6.56 +v 12.70 27.75 6.46 +v 12.04 27.30 6.51 +v 12.03 27.30 6.60 +v 13.44 26.12 6.76 +v 13.45 26.12 6.67 +v 13.45 26.26 6.67 +v 13.44 26.26 6.76 +v 12.69 26.07 6.56 +v 12.70 26.07 6.46 +v 13.34 26.12 6.62 +v 13.34 26.12 6.72 +v 12.05 26.12 6.40 +v 12.05 26.26 6.40 +v 12.28 26.24 6.36 +v 12.70 27.52 6.46 +v 12.27 27.21 6.47 +v 13.35 26.26 6.51 +v 13.35 26.12 6.51 +v 13.13 26.25 6.43 +v 12.71 26.07 6.35 +v 12.71 26.21 6.35 +v 13.12 27.21 6.61 +v 13.12 26.25 6.61 +v 13.34 27.30 6.72 +v 13.34 27.30 6.62 +v 12.03 26.12 6.60 +v 12.04 26.12 6.51 +v 13.12 27.21 6.54 +v 12.27 26.24 6.47 +v 13.12 26.25 6.54 +v 12.70 26.21 6.46 +v 13.34 26.26 6.62 +v 13.34 26.26 6.72 +v 12.04 26.26 6.51 +v 12.03 26.26 6.60 +v 11.94 26.26 6.43 +v 11.94 26.12 6.43 +v 13.46 26.12 6.56 +v 13.46 26.26 6.56 +v 16.15 12.70 9.15 +v 15.67 12.70 8.34 +v 16.39 14.28 7.92 +v 16.86 14.28 8.74 +v 17.17 17.34 8.57 +v 16.21 17.34 9.12 +v 16.69 17.34 7.75 +v 15.74 17.34 8.30 +v 12.26 20.21 5.34 +v 12.69 20.52 5.33 +v 12.69 19.21 5.33 +v 12.26 19.23 5.34 +v 11.92 19.26 5.43 +v 11.93 19.26 5.33 +v 11.93 19.12 5.33 +v 11.92 19.12 5.43 +v 12.69 20.75 5.36 +v 12.70 20.75 5.26 +v 12.04 20.29 5.30 +v 12.03 20.29 5.40 +v 13.44 19.12 5.56 +v 13.45 19.12 5.47 +v 13.45 19.26 5.47 +v 13.44 19.26 5.56 +v 12.69 19.07 5.36 +v 12.70 19.07 5.26 +v 13.34 19.12 5.42 +v 13.34 19.12 5.52 +v 12.05 19.12 5.20 +v 12.05 19.26 5.20 +v 12.28 19.23 5.16 +v 12.70 20.52 5.26 +v 12.27 20.21 5.26 +v 13.35 19.26 5.31 +v 13.35 19.12 5.31 +v 13.13 19.24 5.23 +v 12.71 19.07 5.15 +v 12.71 19.21 5.15 +v 13.12 20.21 5.41 +v 13.12 19.24 5.41 +v 13.34 20.29 5.52 +v 13.34 20.29 5.42 +v 12.03 19.12 5.40 +v 12.04 19.12 5.30 +v 13.12 20.21 5.34 +v 12.27 19.23 5.26 +v 13.12 19.24 5.34 +v 12.70 19.21 5.26 +v 13.34 19.26 5.42 +v 13.34 19.26 5.52 +v 12.04 19.26 5.30 +v 12.03 19.26 5.40 +v 11.94 19.26 5.23 +v 11.94 19.12 5.23 +v 13.46 19.12 5.36 +v 13.46 19.26 5.36 +v 15.89 23.34 8.84 +v 15.35 23.34 8.06 +v 16.03 24.92 7.59 +v 16.57 24.92 8.36 +v 16.50 28.41 8.43 +v 15.60 28.41 9.06 +v 15.96 28.41 7.66 +v 15.06 28.41 8.29 +v 16.70 27.21 10.37 +v 16.71 27.52 10.80 +v 16.71 26.21 10.80 +v 16.70 26.24 10.37 +v 16.61 26.26 10.03 +v 16.71 26.26 10.04 +v 16.71 26.12 10.04 +v 16.61 26.12 10.03 +v 16.69 27.75 10.80 +v 16.78 27.75 10.81 +v 16.74 27.30 10.15 +v 16.64 27.30 10.15 +v 16.48 26.12 11.55 +v 16.58 26.12 11.56 +v 16.58 26.26 11.56 +v 16.48 26.26 11.55 +v 16.69 26.07 10.80 +v 16.78 26.07 10.81 +v 16.62 26.12 11.45 +v 16.53 26.12 11.45 +v 16.84 26.12 10.16 +v 16.84 26.26 10.16 +v 16.88 26.24 10.39 +v 16.78 27.52 10.81 +v 16.78 27.21 10.38 +v 16.73 26.26 11.46 +v 16.73 26.12 11.46 +v 16.81 26.25 11.24 +v 16.89 26.07 10.82 +v 16.89 26.21 10.82 +v 16.63 27.21 11.23 +v 16.63 26.25 11.23 +v 16.53 27.30 11.45 +v 16.62 27.30 11.45 +v 16.64 26.12 10.15 +v 16.74 26.12 10.15 +v 16.70 27.21 11.23 +v 16.78 26.24 10.38 +v 16.70 26.25 11.23 +v 16.78 26.21 10.81 +v 16.62 26.26 11.45 +v 16.53 26.26 11.45 +v 16.74 26.26 10.15 +v 16.64 26.26 10.15 +v 16.82 26.26 10.05 +v 16.82 26.12 10.05 +v 16.68 26.12 11.57 +v 16.68 26.26 11.57 +v 15.67 12.70 13.02 +v 16.15 12.70 12.20 +v 16.86 14.28 12.61 +v 16.39 14.28 13.43 +v 16.69 17.34 13.61 +v 15.74 17.34 13.06 +v 17.17 17.34 12.79 +v 16.21 17.34 12.24 +v 16.83 28.50 13.14 +v 17.49 28.50 10.68 +v 17.49 30.29 10.68 +v 16.83 30.29 13.14 +v 15.03 28.50 14.94 +v 15.03 30.29 14.94 +v 12.57 28.50 15.60 +v 12.57 30.29 15.60 +v 10.10 28.50 14.94 +v 10.10 30.29 14.94 +v 8.30 28.50 13.14 +v 8.30 30.29 13.14 +v 7.64 28.50 10.68 +v 7.64 30.29 10.68 +v 8.30 28.50 8.21 +v 8.30 30.29 8.21 +v 10.10 28.50 6.41 +v 10.10 30.29 6.41 +v 12.57 28.50 5.75 +v 12.57 30.29 5.75 +v 15.03 28.50 6.41 +v 15.03 30.29 6.41 +v 16.83 28.50 8.21 +v 16.83 30.29 8.21 +v 16.78 30.29 10.68 +v 16.21 30.29 12.78 +v 15.03 30.90 14.94 +v 16.83 30.90 13.14 +v 16.21 30.90 12.78 +v 14.67 30.90 14.32 +v 14.67 30.29 14.32 +v 12.57 30.29 14.89 +v 10.10 30.90 14.94 +v 12.57 30.90 15.60 +v 12.57 30.90 14.89 +v 10.46 30.90 14.32 +v 10.46 30.29 14.32 +v 8.92 30.29 12.78 +v 7.64 30.90 10.68 +v 8.30 30.90 13.14 +v 8.92 30.90 12.78 +v 8.36 30.90 10.68 +v 8.36 30.29 10.68 +v 8.92 30.29 8.57 +v 10.10 30.90 6.41 +v 8.30 30.90 8.21 +v 8.92 30.90 8.57 +v 10.46 30.90 7.03 +v 10.46 30.29 7.03 +v 12.57 30.29 6.47 +v 15.03 30.90 6.41 +v 12.57 30.90 5.75 +v 12.57 30.90 6.47 +v 14.67 30.90 7.03 +v 14.67 30.29 7.03 +v 16.21 30.29 8.57 +v 17.49 30.90 10.68 +v 16.83 30.90 8.21 +v 16.21 30.90 8.57 +v 16.78 30.90 10.68 +v 16.78 29.42 10.68 +v 16.21 29.42 12.78 +v 14.67 29.42 14.32 +v 12.57 29.42 14.89 +v 10.46 29.42 14.32 +v 8.92 29.42 12.78 +v 8.36 29.42 10.68 +v 8.92 29.42 8.57 +v 10.46 29.42 7.03 +v 12.57 29.42 6.47 +v 14.67 29.42 7.03 +v 16.21 29.42 8.57 +v 12.57 29.42 10.68 +v 16.55 0.00 -12.98 +v 16.55 7.76 -12.98 +v 17.17 7.76 -10.68 +v 17.17 0.00 -10.68 +v 14.87 0.00 -14.66 +v 14.87 7.76 -14.66 +v 12.57 0.00 -15.28 +v 12.57 7.76 -15.28 +v 10.27 0.00 -14.66 +v 10.27 7.76 -14.66 +v 8.58 0.00 -12.98 +v 8.58 7.76 -12.98 +v 7.97 0.00 -10.68 +v 7.97 7.76 -10.68 +v 8.58 0.00 -8.38 +v 8.58 7.76 -8.38 +v 10.27 0.00 -6.69 +v 10.27 7.76 -6.69 +v 12.57 0.00 -6.08 +v 12.57 7.76 -6.08 +v 14.87 0.00 -6.69 +v 14.87 7.76 -6.69 +v 16.55 0.00 -8.38 +v 16.55 7.76 -8.38 +v 16.78 7.76 -13.11 +v 16.78 8.57 -13.11 +v 17.43 8.57 -10.68 +v 17.43 7.76 -10.68 +v 15.00 7.76 -14.89 +v 15.00 8.57 -14.89 +v 12.57 7.76 -15.54 +v 12.57 8.57 -15.54 +v 10.13 7.76 -14.89 +v 10.13 8.57 -14.89 +v 8.35 7.76 -13.11 +v 8.35 8.57 -13.11 +v 7.70 7.76 -10.68 +v 7.70 8.57 -10.68 +v 8.35 7.76 -8.24 +v 8.35 8.57 -8.24 +v 10.13 7.76 -6.46 +v 10.13 8.57 -6.46 +v 12.57 7.76 -5.81 +v 12.57 8.57 -5.81 +v 15.00 7.76 -6.46 +v 15.00 8.57 -6.46 +v 16.78 7.76 -8.24 +v 16.78 8.57 -8.24 +v 17.17 8.57 -10.68 +v 16.55 8.57 -12.98 +v 14.87 8.57 -14.66 +v 12.57 8.57 -15.28 +v 10.27 8.57 -14.66 +v 8.58 8.57 -12.98 +v 7.97 8.57 -10.68 +v 8.58 8.57 -8.38 +v 10.27 8.57 -6.69 +v 12.57 8.57 -6.08 +v 14.87 8.57 -6.69 +v 16.55 8.57 -8.38 +v 16.55 16.89 -12.98 +v 17.17 16.89 -10.68 +v 14.87 16.89 -14.66 +v 12.57 16.89 -15.28 +v 10.27 16.89 -14.66 +v 8.58 16.89 -12.98 +v 7.97 16.89 -10.68 +v 8.58 16.89 -8.38 +v 10.27 16.89 -6.69 +v 12.57 16.89 -6.08 +v 14.87 16.89 -6.69 +v 16.55 16.89 -8.38 +v 17.13 21.30 -13.31 +v 17.47 21.30 -13.51 +v 18.23 21.30 -10.68 +v 17.83 21.30 -10.68 +v 15.20 21.30 -15.24 +v 15.40 21.30 -15.58 +v 12.57 21.30 -15.94 +v 12.57 21.30 -16.34 +v 9.93 21.30 -15.24 +v 9.73 21.30 -15.58 +v 8.01 21.30 -13.31 +v 7.66 21.30 -13.51 +v 7.30 21.30 -10.68 +v 6.90 21.30 -10.68 +v 8.01 21.30 -8.04 +v 7.66 21.30 -7.84 +v 9.93 21.30 -6.12 +v 9.73 21.30 -5.77 +v 12.57 21.30 -5.41 +v 12.57 21.30 -5.01 +v 15.20 21.30 -6.12 +v 15.40 21.30 -5.77 +v 17.13 21.30 -8.04 +v 17.47 21.30 -7.84 +v 16.17 24.76 -12.76 +v 16.72 24.76 -10.68 +v 14.64 24.76 -14.28 +v 12.57 24.76 -14.83 +v 10.49 24.76 -14.28 +v 8.97 24.76 -12.76 +v 8.41 24.76 -10.68 +v 8.97 24.76 -8.60 +v 10.49 24.76 -7.08 +v 12.57 24.76 -6.52 +v 14.64 24.76 -7.08 +v 16.17 24.76 -8.60 +v 16.13 28.50 -12.74 +v 16.69 28.50 -10.68 +v 14.63 28.50 -14.24 +v 12.57 28.50 -14.80 +v 10.51 28.50 -14.24 +v 9.00 28.50 -12.74 +v 8.45 28.50 -10.68 +v 9.00 28.50 -8.62 +v 10.51 28.50 -7.11 +v 12.57 28.50 -6.56 +v 14.63 28.50 -7.11 +v 16.13 28.50 -8.62 +v 17.13 17.36 -13.31 +v 17.83 17.36 -10.68 +v 15.20 17.36 -15.24 +v 12.57 17.36 -15.94 +v 9.93 17.36 -15.24 +v 8.01 17.36 -13.31 +v 7.30 17.36 -10.68 +v 8.01 17.36 -8.04 +v 9.93 17.36 -6.12 +v 12.57 17.36 -5.41 +v 15.20 17.36 -6.12 +v 17.13 17.36 -8.04 +v 17.91 20.21 -10.37 +v 17.91 19.23 -10.37 +v 17.91 19.21 -10.80 +v 17.91 20.52 -10.80 +v 17.81 19.26 -10.03 +v 17.81 19.12 -10.03 +v 17.91 19.12 -10.04 +v 17.91 19.26 -10.04 +v 17.89 20.75 -10.80 +v 17.84 20.29 -10.15 +v 17.94 20.29 -10.15 +v 17.98 20.75 -10.81 +v 17.68 19.12 -11.55 +v 17.68 19.26 -11.55 +v 17.78 19.26 -11.56 +v 17.78 19.12 -11.56 +v 17.89 19.07 -10.80 +v 17.73 19.12 -11.45 +v 17.82 19.12 -11.45 +v 17.98 19.07 -10.81 +v 18.05 19.12 -10.16 +v 18.08 19.23 -10.39 +v 18.05 19.26 -10.16 +v 17.98 20.21 -10.38 +v 17.98 20.52 -10.81 +v 17.93 19.26 -11.46 +v 18.01 19.24 -11.24 +v 17.93 19.12 -11.46 +v 18.09 19.07 -10.82 +v 18.09 19.21 -10.82 +v 17.83 20.21 -11.23 +v 17.83 19.24 -11.23 +v 17.73 20.29 -11.45 +v 17.82 20.29 -11.45 +v 17.84 19.12 -10.15 +v 17.94 19.12 -10.15 +v 17.90 20.21 -11.23 +v 17.98 19.23 -10.38 +v 17.90 19.24 -11.23 +v 17.98 19.21 -10.81 +v 17.82 19.26 -11.45 +v 17.73 19.26 -11.45 +v 17.84 19.26 -10.15 +v 17.94 19.26 -10.15 +v 18.02 19.12 -10.05 +v 18.02 19.26 -10.05 +v 17.88 19.26 -11.57 +v 17.88 19.12 -11.57 +v 12.87 20.21 -16.02 +v 12.87 19.23 -16.02 +v 12.44 19.21 -16.02 +v 12.44 20.52 -16.02 +v 13.21 19.26 -15.92 +v 13.21 19.12 -15.92 +v 13.20 19.12 -16.02 +v 13.20 19.26 -16.02 +v 12.44 20.75 -16.00 +v 13.10 20.29 -15.95 +v 13.09 20.29 -16.05 +v 12.43 20.75 -16.10 +v 11.69 19.12 -15.79 +v 11.69 19.26 -15.79 +v 11.68 19.26 -15.89 +v 11.68 19.12 -15.89 +v 12.44 19.07 -16.00 +v 11.80 19.12 -15.84 +v 11.79 19.12 -15.94 +v 12.43 19.07 -16.10 +v 13.08 19.12 -16.16 +v 12.85 19.23 -16.20 +v 13.08 19.26 -16.16 +v 12.86 20.21 -16.09 +v 12.43 20.52 -16.10 +v 11.78 19.26 -16.04 +v 12.00 19.24 -16.12 +v 11.78 19.12 -16.04 +v 12.42 19.07 -16.20 +v 12.42 19.21 -16.20 +v 12.01 20.21 -15.94 +v 12.01 19.24 -15.94 +v 11.80 20.29 -15.84 +v 11.79 20.29 -15.94 +v 13.10 19.12 -15.95 +v 13.09 19.12 -16.05 +v 12.01 20.21 -16.01 +v 12.86 19.23 -16.09 +v 12.01 19.24 -16.01 +v 12.43 19.21 -16.10 +v 11.79 19.26 -15.94 +v 11.80 19.26 -15.84 +v 13.10 19.26 -15.95 +v 13.09 19.26 -16.05 +v 13.19 19.12 -16.13 +v 13.19 19.26 -16.13 +v 11.67 19.26 -16.00 +v 11.67 19.12 -16.00 +v 9.24 23.34 -12.52 +v 8.56 24.92 -12.99 +v 9.10 24.92 -13.76 +v 9.78 23.34 -13.29 +v 9.53 28.41 -12.29 +v 8.63 28.41 -12.92 +v 9.18 28.41 -13.70 +v 10.08 28.41 -13.07 +v 12.87 27.21 -14.81 +v 12.87 26.24 -14.81 +v 12.44 26.21 -14.82 +v 12.44 27.52 -14.82 +v 13.21 26.26 -14.72 +v 13.21 26.12 -14.72 +v 13.20 26.12 -14.82 +v 13.20 26.26 -14.82 +v 12.44 27.75 -14.80 +v 13.10 27.30 -14.75 +v 13.09 27.30 -14.85 +v 12.43 27.75 -14.89 +v 11.69 26.12 -14.59 +v 11.69 26.26 -14.59 +v 11.68 26.26 -14.69 +v 11.68 26.12 -14.69 +v 12.44 26.07 -14.80 +v 11.80 26.12 -14.64 +v 11.79 26.12 -14.73 +v 12.43 26.07 -14.89 +v 13.08 26.12 -14.96 +v 12.85 26.24 -14.99 +v 13.08 26.26 -14.96 +v 12.86 27.21 -14.89 +v 12.43 27.52 -14.89 +v 11.78 26.26 -14.84 +v 12.00 26.25 -14.92 +v 11.78 26.12 -14.84 +v 12.42 26.07 -15.00 +v 12.42 26.21 -15.00 +v 12.01 27.21 -14.74 +v 12.01 26.25 -14.74 +v 11.80 27.30 -14.64 +v 11.79 27.30 -14.73 +v 13.10 26.12 -14.75 +v 13.09 26.12 -14.85 +v 12.01 27.21 -14.81 +v 12.86 26.24 -14.89 +v 12.01 26.25 -14.81 +v 12.43 26.21 -14.89 +v 11.79 26.26 -14.73 +v 11.80 26.26 -14.64 +v 13.10 26.26 -14.75 +v 13.09 26.26 -14.85 +v 13.19 26.12 -14.93 +v 13.19 26.26 -14.93 +v 11.67 26.26 -14.79 +v 11.67 26.12 -14.79 +v 14.41 23.34 -14.01 +v 14.88 24.92 -14.68 +v 15.65 24.92 -14.14 +v 15.18 23.34 -13.46 +v 14.18 28.41 -13.71 +v 14.81 28.41 -14.61 +v 15.59 28.41 -14.07 +v 14.96 28.41 -13.17 +v 8.43 27.21 -10.98 +v 8.43 26.24 -10.98 +v 8.42 26.21 -10.55 +v 8.42 27.52 -10.55 +v 8.52 26.26 -11.32 +v 8.52 26.12 -11.32 +v 8.42 26.12 -11.31 +v 8.42 26.26 -11.31 +v 8.45 27.75 -10.55 +v 8.49 27.30 -11.21 +v 8.39 27.30 -11.20 +v 8.35 27.75 -10.54 +v 8.65 26.12 -9.80 +v 8.65 26.26 -9.80 +v 8.56 26.26 -9.79 +v 8.56 26.12 -9.79 +v 8.45 26.07 -10.55 +v 8.61 26.12 -9.91 +v 8.51 26.12 -9.90 +v 8.35 26.07 -10.54 +v 8.29 26.12 -11.19 +v 8.25 26.24 -10.96 +v 8.29 26.26 -11.19 +v 8.35 27.21 -10.97 +v 8.35 27.52 -10.54 +v 8.40 26.26 -9.89 +v 8.32 26.25 -10.11 +v 8.40 26.12 -9.89 +v 8.24 26.07 -10.53 +v 8.24 26.21 -10.53 +v 8.50 27.21 -10.13 +v 8.50 26.25 -10.13 +v 8.61 27.30 -9.91 +v 8.51 27.30 -9.90 +v 8.49 26.12 -11.21 +v 8.39 26.12 -11.20 +v 8.43 27.21 -10.12 +v 8.35 26.24 -10.97 +v 8.43 26.25 -10.12 +v 8.35 26.21 -10.54 +v 8.51 26.26 -9.90 +v 8.61 26.26 -9.91 +v 8.49 26.26 -11.21 +v 8.39 26.26 -11.20 +v 8.32 26.12 -11.30 +v 8.32 26.26 -11.30 +v 8.45 26.26 -9.78 +v 8.45 26.12 -9.78 +v 13.04 12.70 -6.81 +v 13.04 14.28 -5.99 +v 12.09 14.28 -5.99 +v 12.09 12.70 -6.81 +v 13.04 17.34 -6.74 +v 13.04 17.34 -5.64 +v 12.09 17.34 -5.64 +v 12.09 17.34 -6.74 +v 8.98 12.70 -12.20 +v 8.27 14.28 -12.61 +v 8.74 14.28 -13.43 +v 9.46 12.70 -13.02 +v 8.92 17.34 -12.24 +v 7.97 17.34 -12.79 +v 8.44 17.34 -13.61 +v 9.39 17.34 -13.06 +v 12.09 12.70 -14.54 +v 12.09 14.28 -15.36 +v 13.04 14.28 -15.36 +v 13.04 12.70 -14.54 +v 12.09 17.34 -14.62 +v 12.09 17.34 -15.71 +v 13.04 17.34 -15.71 +v 13.04 17.34 -14.62 +v 10.73 23.34 -7.35 +v 10.25 24.92 -6.67 +v 9.48 24.92 -7.22 +v 9.95 23.34 -7.89 +v 10.95 28.41 -7.65 +v 10.32 28.41 -6.74 +v 9.55 28.41 -7.29 +v 10.18 28.41 -8.19 +v 9.46 12.70 -8.34 +v 8.74 14.28 -7.92 +v 8.27 14.28 -8.74 +v 8.98 12.70 -9.15 +v 9.39 17.34 -8.30 +v 8.44 17.34 -7.75 +v 7.97 17.34 -8.57 +v 8.92 17.34 -9.12 +v 7.23 20.21 -10.98 +v 7.23 19.23 -10.98 +v 7.22 19.21 -10.55 +v 7.22 20.52 -10.55 +v 7.32 19.26 -11.32 +v 7.32 19.12 -11.32 +v 7.22 19.12 -11.31 +v 7.22 19.26 -11.31 +v 7.24 20.75 -10.55 +v 7.29 20.29 -11.21 +v 7.19 20.29 -11.20 +v 7.15 20.75 -10.54 +v 7.45 19.12 -9.80 +v 7.45 19.26 -9.80 +v 7.35 19.26 -9.79 +v 7.35 19.12 -9.79 +v 7.24 19.07 -10.55 +v 7.41 19.12 -9.91 +v 7.31 19.12 -9.90 +v 7.15 19.07 -10.54 +v 7.09 19.12 -11.19 +v 7.05 19.23 -10.96 +v 7.09 19.26 -11.19 +v 7.15 20.21 -10.97 +v 7.15 20.52 -10.54 +v 7.20 19.26 -9.89 +v 7.12 19.24 -10.11 +v 7.20 19.12 -9.89 +v 7.04 19.07 -10.53 +v 7.04 19.21 -10.53 +v 7.30 20.21 -10.13 +v 7.30 19.24 -10.13 +v 7.41 20.29 -9.91 +v 7.31 20.29 -9.90 +v 7.29 19.12 -11.21 +v 7.19 19.12 -11.20 +v 7.23 20.21 -10.12 +v 7.15 19.23 -10.97 +v 7.23 19.24 -10.12 +v 7.15 19.21 -10.54 +v 7.31 19.26 -9.90 +v 7.41 19.26 -9.91 +v 7.29 19.26 -11.21 +v 7.19 19.26 -11.20 +v 7.11 19.12 -11.30 +v 7.11 19.26 -11.30 +v 7.25 19.26 -9.78 +v 7.25 19.12 -9.78 +v 12.26 27.21 -6.54 +v 12.26 26.24 -6.54 +v 12.69 26.21 -6.53 +v 12.69 27.52 -6.53 +v 11.92 26.26 -6.63 +v 11.92 26.12 -6.63 +v 11.93 26.12 -6.53 +v 11.93 26.26 -6.53 +v 12.69 27.75 -6.56 +v 12.03 27.30 -6.60 +v 12.04 27.30 -6.51 +v 12.70 27.75 -6.46 +v 13.44 26.12 -6.76 +v 13.44 26.26 -6.76 +v 13.45 26.26 -6.67 +v 13.45 26.12 -6.67 +v 12.69 26.07 -6.56 +v 13.34 26.12 -6.72 +v 13.34 26.12 -6.62 +v 12.70 26.07 -6.46 +v 12.05 26.12 -6.40 +v 12.28 26.24 -6.36 +v 12.05 26.26 -6.40 +v 12.27 27.21 -6.47 +v 12.70 27.52 -6.46 +v 13.35 26.26 -6.51 +v 13.13 26.25 -6.43 +v 13.35 26.12 -6.51 +v 12.71 26.07 -6.35 +v 12.71 26.21 -6.35 +v 13.12 27.21 -6.61 +v 13.12 26.25 -6.61 +v 13.34 27.30 -6.72 +v 13.34 27.30 -6.62 +v 12.03 26.12 -6.60 +v 12.04 26.12 -6.51 +v 13.12 27.21 -6.54 +v 12.27 26.24 -6.47 +v 13.12 26.25 -6.54 +v 12.70 26.21 -6.46 +v 13.34 26.26 -6.62 +v 13.34 26.26 -6.72 +v 12.03 26.26 -6.60 +v 12.04 26.26 -6.51 +v 11.94 26.12 -6.43 +v 11.94 26.26 -6.43 +v 13.46 26.26 -6.56 +v 13.46 26.12 -6.56 +v 16.15 12.70 -9.15 +v 16.86 14.28 -8.74 +v 16.39 14.28 -7.92 +v 15.67 12.70 -8.34 +v 16.21 17.34 -9.12 +v 17.17 17.34 -8.57 +v 16.69 17.34 -7.75 +v 15.74 17.34 -8.30 +v 12.26 20.21 -5.34 +v 12.26 19.23 -5.34 +v 12.69 19.21 -5.33 +v 12.69 20.52 -5.33 +v 11.92 19.26 -5.43 +v 11.92 19.12 -5.43 +v 11.93 19.12 -5.33 +v 11.93 19.26 -5.33 +v 12.69 20.75 -5.36 +v 12.03 20.29 -5.40 +v 12.04 20.29 -5.30 +v 12.70 20.75 -5.26 +v 13.44 19.12 -5.56 +v 13.44 19.26 -5.56 +v 13.45 19.26 -5.47 +v 13.45 19.12 -5.47 +v 12.69 19.07 -5.36 +v 13.34 19.12 -5.52 +v 13.34 19.12 -5.42 +v 12.70 19.07 -5.26 +v 12.05 19.12 -5.20 +v 12.28 19.23 -5.16 +v 12.05 19.26 -5.20 +v 12.27 20.21 -5.26 +v 12.70 20.52 -5.26 +v 13.35 19.26 -5.31 +v 13.13 19.24 -5.23 +v 13.35 19.12 -5.31 +v 12.71 19.07 -5.15 +v 12.71 19.21 -5.15 +v 13.12 20.21 -5.41 +v 13.12 19.24 -5.41 +v 13.34 20.29 -5.52 +v 13.34 20.29 -5.42 +v 12.03 19.12 -5.40 +v 12.04 19.12 -5.30 +v 13.12 20.21 -5.34 +v 12.27 19.23 -5.26 +v 13.12 19.24 -5.34 +v 12.70 19.21 -5.26 +v 13.34 19.26 -5.42 +v 13.34 19.26 -5.52 +v 12.03 19.26 -5.40 +v 12.04 19.26 -5.30 +v 11.94 19.12 -5.23 +v 11.94 19.26 -5.23 +v 13.46 19.26 -5.36 +v 13.46 19.12 -5.36 +v 15.89 23.34 -8.84 +v 16.57 24.92 -8.36 +v 16.03 24.92 -7.59 +v 15.35 23.34 -8.06 +v 15.60 28.41 -9.06 +v 16.50 28.41 -8.43 +v 15.96 28.41 -7.66 +v 15.06 28.41 -8.29 +v 16.70 27.21 -10.37 +v 16.70 26.24 -10.37 +v 16.71 26.21 -10.80 +v 16.71 27.52 -10.80 +v 16.61 26.26 -10.03 +v 16.61 26.12 -10.03 +v 16.71 26.12 -10.04 +v 16.71 26.26 -10.04 +v 16.69 27.75 -10.80 +v 16.64 27.30 -10.15 +v 16.74 27.30 -10.15 +v 16.78 27.75 -10.81 +v 16.48 26.12 -11.55 +v 16.48 26.26 -11.55 +v 16.58 26.26 -11.56 +v 16.58 26.12 -11.56 +v 16.69 26.07 -10.80 +v 16.53 26.12 -11.45 +v 16.62 26.12 -11.45 +v 16.78 26.07 -10.81 +v 16.84 26.12 -10.16 +v 16.88 26.24 -10.39 +v 16.84 26.26 -10.16 +v 16.78 27.21 -10.38 +v 16.78 27.52 -10.81 +v 16.73 26.26 -11.46 +v 16.81 26.25 -11.24 +v 16.73 26.12 -11.46 +v 16.89 26.07 -10.82 +v 16.89 26.21 -10.82 +v 16.63 27.21 -11.23 +v 16.63 26.25 -11.23 +v 16.53 27.30 -11.45 +v 16.62 27.30 -11.45 +v 16.64 26.12 -10.15 +v 16.74 26.12 -10.15 +v 16.70 27.21 -11.23 +v 16.78 26.24 -10.38 +v 16.70 26.25 -11.23 +v 16.78 26.21 -10.81 +v 16.62 26.26 -11.45 +v 16.53 26.26 -11.45 +v 16.64 26.26 -10.15 +v 16.74 26.26 -10.15 +v 16.82 26.12 -10.05 +v 16.82 26.26 -10.05 +v 16.68 26.26 -11.57 +v 16.68 26.12 -11.57 +v 15.67 12.70 -13.02 +v 16.39 14.28 -13.43 +v 16.86 14.28 -12.61 +v 16.15 12.70 -12.20 +v 15.74 17.34 -13.06 +v 16.69 17.34 -13.61 +v 17.17 17.34 -12.79 +v 16.21 17.34 -12.24 +v 16.83 28.50 -13.14 +v 16.83 30.29 -13.14 +v 17.49 30.29 -10.68 +v 17.49 28.50 -10.68 +v 15.03 28.50 -14.94 +v 15.03 30.29 -14.94 +v 12.57 28.50 -15.60 +v 12.57 30.29 -15.60 +v 10.10 28.50 -14.94 +v 10.10 30.29 -14.94 +v 8.30 28.50 -13.14 +v 8.30 30.29 -13.14 +v 7.64 28.50 -10.68 +v 7.64 30.29 -10.68 +v 8.30 28.50 -8.21 +v 8.30 30.29 -8.21 +v 10.10 28.50 -6.41 +v 10.10 30.29 -6.41 +v 12.57 28.50 -5.75 +v 12.57 30.29 -5.75 +v 15.03 28.50 -6.41 +v 15.03 30.29 -6.41 +v 16.83 28.50 -8.21 +v 16.83 30.29 -8.21 +v 16.21 30.29 -12.78 +v 16.78 30.29 -10.68 +v 15.03 30.90 -14.94 +v 14.67 30.90 -14.32 +v 16.21 30.90 -12.78 +v 16.83 30.90 -13.14 +v 12.57 30.29 -14.89 +v 14.67 30.29 -14.32 +v 10.10 30.90 -14.94 +v 10.46 30.90 -14.32 +v 12.57 30.90 -14.89 +v 12.57 30.90 -15.60 +v 8.92 30.29 -12.78 +v 10.46 30.29 -14.32 +v 7.64 30.90 -10.68 +v 8.36 30.90 -10.68 +v 8.92 30.90 -12.78 +v 8.30 30.90 -13.14 +v 8.92 30.29 -8.57 +v 8.36 30.29 -10.68 +v 10.10 30.90 -6.41 +v 10.46 30.90 -7.03 +v 8.92 30.90 -8.57 +v 8.30 30.90 -8.21 +v 12.57 30.29 -6.47 +v 10.46 30.29 -7.03 +v 15.03 30.90 -6.41 +v 14.67 30.90 -7.03 +v 12.57 30.90 -6.47 +v 12.57 30.90 -5.75 +v 16.21 30.29 -8.57 +v 14.67 30.29 -7.03 +v 17.49 30.90 -10.68 +v 16.78 30.90 -10.68 +v 16.21 30.90 -8.57 +v 16.83 30.90 -8.21 +v 16.21 29.42 -12.78 +v 16.78 29.42 -10.68 +v 14.67 29.42 -14.32 +v 12.57 29.42 -14.89 +v 10.46 29.42 -14.32 +v 8.92 29.42 -12.78 +v 8.36 29.42 -10.68 +v 8.92 29.42 -8.57 +v 10.46 29.42 -7.03 +v 12.57 29.42 -6.47 +v 14.67 29.42 -7.03 +v 16.21 29.42 -8.57 +v 12.57 29.42 -10.68 +# 4553 vertices + +vn -1.00 0.00 -0.00 +vn -0.48 0.00 -0.88 +vn -0.17 0.00 -0.99 +vn 0.00 0.00 -1.00 +vn 0.17 0.00 -0.99 +vn 0.48 0.00 -0.88 +vn 1.00 0.00 -0.00 +vn 0.48 0.00 0.88 +vn 0.17 0.00 0.99 +vn 0.00 0.00 1.00 +vn -0.17 0.00 0.99 +vn -0.48 0.00 0.88 +vn -0.73 0.00 -0.69 +vn -0.27 0.00 -0.96 +vn -0.08 0.00 -1.00 +vn 0.08 0.00 -1.00 +vn 0.27 0.00 -0.96 +vn 0.73 0.00 -0.69 +vn 0.73 0.00 0.69 +vn 0.27 0.00 0.96 +vn 0.08 0.00 1.00 +vn -0.08 0.00 1.00 +vn -0.27 0.00 0.96 +vn -0.73 0.00 0.69 +vn -0.72 0.00 0.69 +vn 0.00 -1.00 -0.00 +vn 0.00 1.00 -0.00 +vn -0.60 0.56 -0.57 +vn -0.26 0.33 -0.91 +vn -0.07 0.25 -0.96 +vn 0.07 0.25 -0.96 +vn 0.26 0.33 -0.91 +vn 0.60 0.56 -0.57 +vn 0.60 0.56 0.57 +vn 0.26 0.33 0.91 +vn 0.07 0.25 0.96 +vn -0.07 0.25 0.96 +vn -0.26 0.33 0.91 +vn -0.60 0.56 0.57 +vn -0.73 0.01 -0.69 +vn -0.27 0.01 -0.96 +vn -0.08 0.01 -1.00 +vn -0.07 0.01 -1.00 +vn 0.08 0.01 -1.00 +vn 0.27 0.01 -0.96 +vn 0.73 0.01 -0.69 +vn 0.72 0.01 0.69 +vn 0.73 0.01 0.69 +vn 0.27 0.01 0.96 +vn 0.08 0.01 1.00 +vn -0.08 0.01 1.00 +vn -0.07 0.01 1.00 +vn -0.27 0.01 0.96 +vn -0.73 0.01 0.69 +vn -0.72 0.01 0.69 +vn -0.30 -0.91 -0.29 +vn -0.18 -0.75 -0.64 +vn -0.18 -0.74 -0.64 +vn -0.06 -0.65 -0.76 +vn 0.06 -0.65 -0.76 +vn 0.18 -0.75 -0.64 +vn 0.18 -0.74 -0.64 +vn 0.30 -0.91 -0.29 +vn 0.30 -0.91 0.29 +vn 0.18 -0.74 0.64 +vn 0.18 -0.75 0.64 +vn 0.06 -0.65 0.76 +vn -0.06 -0.65 0.76 +vn -0.18 -0.74 0.64 +vn -0.18 -0.75 0.64 +vn -0.30 -0.91 0.29 +vn -1.00 0.00 0.06 +vn -0.02 0.00 1.00 +vn -0.02 0.65 0.76 +vn 0.02 0.00 -1.00 +vn 0.00 -0.99 -0.12 +vn -0.85 0.00 0.52 +vn -0.95 0.12 0.30 +vn -0.62 0.00 -0.78 +vn -0.76 -0.16 -0.63 +vn -0.83 0.00 -0.56 +vn 0.02 0.66 -0.75 +vn -0.00 -0.99 0.12 +vn -0.72 0.09 -0.69 +vn -0.96 -0.21 0.19 +vn 0.02 -0.64 -0.77 +vn -0.02 -0.64 0.77 +vn -0.00 0.99 0.13 +vn 0.00 1.00 -0.10 +vn 0.00 0.99 -0.17 +vn 0.01 0.99 -0.17 +vn -0.00 0.99 0.10 +vn -0.74 0.00 0.67 +vn -0.75 0.00 0.67 +vn -0.54 0.00 -0.84 +vn -0.00 0.00 -1.00 +vn -0.96 0.00 -0.29 +vn -0.95 0.00 -0.30 +vn -0.31 0.95 -0.10 +vn 0.95 0.00 0.30 +vn 0.96 0.00 0.29 +vn 0.03 -1.00 0.01 +vn -0.05 0.00 -1.00 +vn -0.03 0.04 -1.00 +vn 0.10 0.00 -1.00 +vn 0.07 -0.06 -1.00 +vn 0.05 0.00 -1.00 +vn 0.31 0.95 0.10 +vn -0.04 -1.00 -0.01 +vn 0.08 0.04 -1.00 +vn -0.02 -0.06 -1.00 +vn 0.32 -0.94 0.10 +vn -0.32 -0.94 -0.10 +vn -0.04 1.00 -0.01 +vn 0.03 1.00 0.01 +vn 0.05 1.00 0.01 +vn -0.03 1.00 -0.01 +vn -0.07 0.00 -1.00 +vn 0.12 0.00 -0.99 +vn 0.33 -0.45 -0.83 +vn 0.19 -0.00 0.98 +vn 0.37 0.03 -0.93 +vn -0.19 0.00 -0.98 +vn -0.01 0.00 -1.00 +vn -0.96 0.00 -0.30 +vn 0.31 0.95 0.09 +vn -0.18 -0.35 -0.92 +vn 0.37 -0.00 -0.93 +vn -0.19 0.02 -0.98 +vn -0.37 0.00 0.93 +vn 1.00 0.00 -0.06 +vn 0.02 0.65 -0.76 +vn 0.85 0.00 -0.52 +vn 0.95 0.12 -0.30 +vn 0.62 0.00 0.78 +vn 0.76 -0.16 0.63 +vn 0.83 0.00 0.56 +vn 0.82 0.00 0.57 +vn -0.02 0.66 0.75 +vn 0.72 0.09 0.69 +vn 0.96 -0.21 -0.19 +vn 0.00 0.99 -0.13 +vn -0.00 1.00 0.10 +vn -0.00 0.99 0.17 +vn 0.00 0.99 -0.10 +vn 0.75 0.00 -0.67 +vn 0.54 0.00 0.84 +vn 0.00 -0.30 0.95 +vn 0.00 -0.07 1.00 +vn 0.38 -0.49 -0.78 +vn 0.16 0.00 0.99 +vn 0.44 -0.12 -0.89 +vn -0.16 0.00 -0.99 +vn 0.00 -0.30 -0.95 +vn 0.00 -0.07 -1.00 +vn 0.18 -0.35 0.92 +vn -0.37 -0.00 0.93 +vn 0.19 0.02 0.98 +vn 0.37 0.00 -0.93 +vn 0.38 -0.49 0.78 +vn -0.16 0.00 0.99 +vn 0.44 -0.12 0.89 +vn 0.16 0.00 -0.99 +vn 0.01 0.00 1.00 +vn 0.96 0.00 0.30 +vn -0.03 -1.00 -0.01 +vn 0.05 0.00 1.00 +vn 0.03 0.04 1.00 +vn -0.10 0.00 1.00 +vn -0.07 -0.06 1.00 +vn -0.05 0.00 1.00 +vn -0.31 0.95 -0.09 +vn 0.04 -1.00 0.01 +vn -0.08 0.04 1.00 +vn 0.02 -0.06 1.00 +vn 0.04 1.00 0.01 +vn -0.05 1.00 -0.02 +vn 0.07 0.00 1.00 +vn -0.12 0.00 0.99 +vn -0.38 -0.49 0.78 +vn -0.44 -0.12 0.89 +vn -0.43 -0.12 0.89 +vn -0.33 -0.45 0.83 +vn -0.19 -0.00 -0.98 +vn -0.37 0.03 0.93 +vn 0.19 0.00 0.98 +vn -0.38 -0.49 -0.78 +vn -0.44 -0.12 -0.89 +vn -0.43 -0.12 -0.89 +vn 0.72 0.00 0.69 +vn -0.07 0.00 1.00 +vn -0.72 0.00 -0.69 +vn 0.07 0.00 -1.00 +vn 0.72 0.00 -0.69 +vn 0.44 0.00 -0.90 +vn 0.44 0.00 0.90 +vn -0.44 0.00 0.90 +vn -0.44 0.00 -0.90 +vn 0.50 0.87 -0.00 +vn 0.00 0.45 -0.89 +vn -0.50 0.87 -0.00 +vn 0.00 0.42 0.91 +vn 0.08 1.00 -0.00 +vn 0.04 0.55 0.83 +vn -0.00 0.55 0.83 +vn 0.01 0.01 1.00 +vn -0.00 0.55 -0.83 +vn 0.04 0.55 -0.83 +vn 0.01 0.01 -1.00 +vn -0.08 1.00 -0.00 +vn -0.04 0.55 0.83 +vn -0.01 0.01 1.00 +vn -0.04 0.55 -0.83 +vn -0.01 0.01 -1.00 +vn -0.06 0.60 -0.79 +vn -0.91 -0.41 0.00 +vn -0.10 0.98 -0.19 +vn -0.06 0.60 0.79 +vn -0.91 -0.41 -0.00 +vn -0.10 0.98 0.19 +vn -0.05 0.61 -0.79 +vn -0.94 -0.35 -0.00 +vn -0.08 0.98 -0.19 +vn -0.05 0.61 0.79 +vn -0.08 0.98 0.19 +vn -0.04 0.61 -0.79 +vn -0.03 0.61 -0.79 +vn -0.97 -0.25 0.00 +vn -0.97 -0.25 -0.00 +vn -0.06 0.98 -0.19 +vn -0.04 0.61 0.79 +vn -0.03 0.61 0.79 +vn -0.06 0.98 0.19 +vn -0.01 0.61 -0.79 +vn -1.00 -0.07 -0.00 +vn -0.02 0.98 -0.19 +vn -0.01 0.61 0.79 +vn -0.02 0.98 0.19 +vn -1.00 -0.07 0.00 +vn -0.02 0.61 -0.79 +vn -0.99 -0.11 -0.00 +vn -0.02 0.61 0.79 +vn -0.99 -0.11 0.00 +vn 0.06 0.60 -0.79 +vn 0.91 -0.41 0.00 +vn 0.10 0.98 -0.19 +vn 0.06 0.60 0.79 +vn 0.91 -0.41 -0.00 +vn 0.10 0.98 0.19 +vn 0.05 0.61 -0.79 +vn 0.94 -0.35 -0.00 +vn 0.08 0.98 -0.19 +vn 0.05 0.61 0.79 +vn 0.94 -0.35 0.00 +vn 0.08 0.98 0.19 +vn 0.03 0.61 -0.79 +vn 0.04 0.61 -0.79 +vn 0.97 -0.25 0.00 +vn 0.06 0.98 -0.19 +vn 0.03 0.61 0.79 +vn 0.97 -0.25 -0.00 +vn 0.06 0.98 0.19 +vn 0.04 0.61 0.79 +vn 0.01 0.61 -0.79 +vn 1.00 -0.07 -0.00 +vn 0.02 0.98 -0.19 +vn 0.01 0.61 0.79 +vn 0.02 0.98 0.19 +vn 1.00 -0.07 0.00 +vn 0.02 0.61 -0.79 +vn 0.99 -0.11 -0.00 +vn 0.02 0.61 0.79 +vn 0.99 -0.11 0.00 +vn 0.10 0.98 -0.20 +vn 0.10 0.98 0.20 +vn 0.09 0.59 -0.80 +vn -0.82 0.57 0.00 +vn -0.82 0.57 -0.00 +vn 0.15 0.97 -0.20 +vn 0.09 0.59 0.80 +vn 0.15 0.97 0.20 +vn -0.09 0.59 -0.80 +vn 0.82 0.57 0.00 +vn -0.15 0.97 -0.20 +vn -0.09 0.59 0.80 +vn 0.82 0.57 -0.00 +vn -0.15 0.97 0.20 +vn -0.57 0.82 -0.00 +vn 0.08 -1.00 -0.00 +vn 0.57 0.82 -0.00 +vn -0.08 -1.00 -0.00 +vn 0.59 -0.81 -0.00 +vn -0.59 -0.81 -0.00 +vn 0.06 1.00 -0.00 +vn 0.10 0.99 -0.00 +vn -0.06 1.00 -0.00 +vn -0.07 -1.00 -0.00 +vn 0.07 -1.00 -0.00 +vn 0.00 0.37 0.93 +vn 0.00 -0.97 -0.26 +vn 0.00 0.37 -0.93 +vn 0.00 -0.97 0.26 +vn 0.00 -0.36 -0.93 +vn 0.00 -0.36 0.93 +vn 0.00 0.96 0.28 +vn 0.00 0.98 -0.21 +vn 0.00 0.94 -0.35 +vn 0.00 0.98 0.22 +vn 0.00 0.96 -0.28 +vn 0.00 0.98 0.21 +vn 0.00 0.94 0.35 +vn 0.00 0.98 -0.22 +vn 0.11 0.99 -0.00 +vn -0.10 0.99 -0.00 +vn 1.00 0.04 -0.00 +vn 0.87 0.50 -0.00 +vn -1.00 -0.04 -0.00 +vn -0.87 -0.50 -0.00 +vn 0.40 0.92 -0.00 +vn -0.42 -0.91 -0.00 +vn -0.40 0.92 -0.00 +vn 0.42 -0.91 -0.00 +vn -0.87 0.50 -0.00 +vn 0.87 -0.50 -0.00 +vn -1.00 0.04 -0.00 +vn 1.00 -0.04 -0.00 +vn 0.02 0.05 -1.00 +vn 0.95 -0.05 0.30 +vn -0.02 -0.01 1.00 +vn -0.94 0.18 -0.29 +vn 0.03 -0.06 -1.00 +vn 0.02 -0.06 -1.00 +vn 0.96 0.05 0.27 +vn -0.02 0.01 1.00 +vn -0.96 -0.22 -0.19 +vn 0.00 -1.00 -0.05 +vn 0.00 1.00 0.05 +vn 0.00 -1.00 0.05 +vn 0.00 1.00 -0.05 +vn 0.02 -1.00 -0.00 +vn -0.02 1.00 -0.00 +vn -0.01 1.00 -0.00 +vn -0.01 -1.00 -0.00 +vn 0.01 1.00 -0.00 +vn 0.02 0.05 1.00 +vn 0.95 -0.05 -0.30 +vn -0.02 -0.01 -1.00 +vn -0.94 0.18 0.29 +vn 0.03 -0.06 1.00 +vn 0.96 0.05 -0.27 +vn -0.02 0.01 -1.00 +vn -0.96 -0.22 0.19 +vn -0.96 -0.22 0.18 +vn 0.01 -1.00 -0.00 +vn -0.02 -1.00 -0.00 +vn 0.02 1.00 -0.00 +vn -0.99 0.12 -0.00 +vn -1.00 0.01 0.04 +vn -0.99 -0.10 0.07 +vn 0.00 0.01 1.00 +vn 0.00 -0.00 1.00 +vn 1.00 0.01 0.01 +vn 1.00 -0.03 0.02 +vn 0.00 0.04 -1.00 +vn 0.00 0.01 -1.00 +vn 0.00 -0.02 -1.00 +vn 0.13 -0.99 -0.00 +vn -0.13 0.99 -0.00 +vn -0.13 -0.99 -0.00 +vn 0.13 0.99 -0.00 +vn -0.07 1.00 -0.00 +vn 0.07 1.00 -0.00 +vn 0.00 -0.67 -0.74 +vn 0.00 -0.13 -0.99 +vn 0.00 0.67 -0.74 +vn 0.00 0.13 -0.99 +vn 0.00 0.12 -0.99 +vn -1.00 0.01 -0.04 +vn -0.99 -0.10 -0.07 +vn 0.00 -0.00 -1.00 +vn 1.00 0.01 -0.01 +vn 1.00 -0.03 -0.02 +vn 0.00 0.04 1.00 +vn 0.00 -0.02 1.00 +vn 0.72 0.01 -0.69 +vn -0.72 0.01 -0.69 +vn -1.00 0.00 -0.06 +vn -0.02 0.00 -1.00 +vn -0.02 0.65 -0.76 +vn 0.02 0.00 1.00 +vn 0.00 -0.99 0.12 +vn -0.85 0.00 -0.52 +vn -0.95 0.12 -0.30 +vn -0.62 0.00 0.78 +vn -0.76 -0.16 0.63 +vn -0.83 0.00 0.56 +vn 0.02 0.66 0.75 +vn -0.00 -0.99 -0.12 +vn -0.72 0.09 0.69 +vn -0.96 -0.21 -0.19 +vn 0.02 -0.64 0.77 +vn -0.02 -0.64 -0.77 +vn -0.00 0.99 -0.13 +vn 0.00 1.00 0.10 +vn 0.00 0.99 0.17 +vn 0.01 0.99 0.17 +vn -0.00 0.99 -0.10 +vn -0.74 0.00 -0.67 +vn -0.75 0.00 -0.67 +vn -0.54 0.00 0.84 +vn -0.00 0.00 1.00 +vn -0.96 0.00 0.29 +vn -0.95 0.00 0.30 +vn -0.31 0.95 0.10 +vn 0.95 0.00 -0.30 +vn 0.96 0.00 -0.29 +vn 0.03 -1.00 -0.01 +vn -0.03 0.04 1.00 +vn 0.10 0.00 1.00 +vn 0.07 -0.06 1.00 +vn 0.31 0.95 -0.10 +vn -0.04 -1.00 0.01 +vn 0.08 0.04 1.00 +vn -0.02 -0.06 1.00 +vn 0.32 -0.94 -0.10 +vn -0.32 -0.94 0.10 +vn -0.04 1.00 0.01 +vn 0.03 1.00 -0.01 +vn 0.05 1.00 -0.01 +vn -0.03 1.00 0.01 +vn 0.12 0.00 0.99 +vn 0.33 -0.45 0.83 +vn 0.19 -0.00 -0.98 +vn 0.37 0.03 0.93 +vn -0.19 0.00 0.98 +vn -0.01 0.00 1.00 +vn -0.96 0.00 0.30 +vn 0.31 0.95 -0.09 +vn -0.18 -0.35 0.92 +vn 0.37 -0.00 0.93 +vn -0.19 0.02 0.98 +vn -0.37 0.00 -0.93 +vn 1.00 0.00 0.06 +vn 0.02 0.65 0.76 +vn 0.85 0.00 0.52 +vn 0.95 0.12 0.30 +vn 0.62 0.00 -0.78 +vn 0.76 -0.16 -0.63 +vn 0.83 0.00 -0.56 +vn 0.82 0.00 -0.57 +vn -0.02 0.66 -0.75 +vn 0.72 0.09 -0.69 +vn 0.96 -0.21 0.19 +vn 0.00 0.99 0.13 +vn -0.00 1.00 -0.10 +vn -0.00 0.99 -0.17 +vn 0.00 0.99 0.10 +vn 0.75 0.00 0.67 +vn 0.54 0.00 -0.84 +vn 0.18 -0.35 -0.92 +vn -0.37 -0.00 -0.93 +vn 0.19 0.02 -0.98 +vn 0.37 0.00 0.93 +vn 0.01 0.00 -1.00 +vn 0.96 0.00 -0.30 +vn -0.03 -1.00 0.01 +vn 0.03 0.04 -1.00 +vn -0.10 0.00 -1.00 +vn -0.07 -0.06 -1.00 +vn -0.31 0.95 0.09 +vn 0.04 -1.00 -0.01 +vn -0.08 0.04 -1.00 +vn 0.04 1.00 -0.01 +vn -0.05 1.00 0.02 +vn -0.12 0.00 -0.99 +vn -0.33 -0.45 -0.83 +vn -0.19 -0.00 0.98 +vn -0.37 0.03 -0.93 +vn 0.19 0.00 -0.98 +vn 0.74 0.00 -0.67 +vn -0.05 1.00 -0.01 +vn -0.82 0.00 -0.57 +vn 0.05 1.00 0.02 +vn 0.74 0.00 0.67 +vn -0.05 1.00 0.01 +vn -0.82 0.00 0.57 +vn 0.05 1.00 -0.02 +# 487 vertex normals + +vt 0.10 0.10 0.00 +vt 0.07 0.10 0.00 +vt 0.07 0.01 0.00 +vt 0.10 0.01 0.00 +vt 0.05 0.10 0.00 +vt 0.05 0.01 0.00 +vt 0.02 0.10 0.00 +vt 0.02 0.01 0.00 +vt 0.38 0.10 0.00 +vt 0.35 0.10 0.00 +vt 0.35 0.01 0.00 +vt 0.38 0.01 0.00 +vt 0.32 0.10 0.00 +vt 0.32 0.01 0.00 +vt 0.29 0.10 0.00 +vt 0.29 0.01 0.00 +vt 0.27 0.10 0.00 +vt 0.27 0.01 0.00 +vt 0.24 0.10 0.00 +vt 0.24 0.01 0.00 +vt 0.21 0.10 0.00 +vt 0.21 0.01 0.00 +vt 0.17 0.10 0.00 +vt 0.17 0.01 0.00 +vt 0.13 0.10 0.00 +vt 0.13 0.01 0.00 +vt 0.34 0.56 0.00 +vt 0.37 0.56 0.00 +vt 0.37 0.57 0.00 +vt 0.34 0.57 0.00 +vt 0.30 0.56 0.00 +vt 0.30 0.57 0.00 +vt 0.27 0.56 0.00 +vt 0.27 0.57 0.00 +vt 0.61 0.56 0.00 +vt 0.64 0.56 0.00 +vt 0.64 0.57 0.00 +vt 0.61 0.57 0.00 +vt 0.58 0.56 0.00 +vt 0.58 0.57 0.00 +vt 0.55 0.56 0.00 +vt 0.55 0.57 0.00 +vt 0.52 0.56 0.00 +vt 0.52 0.57 0.00 +vt 0.49 0.56 0.00 +vt 0.49 0.57 0.00 +vt 0.46 0.56 0.00 +vt 0.46 0.57 0.00 +vt 0.43 0.56 0.00 +vt 0.43 0.57 0.00 +vt 0.40 0.56 0.00 +vt 0.40 0.57 0.00 +vt 0.97 0.27 0.00 +vt 0.96 0.28 0.00 +vt 0.94 0.27 0.00 +vt 0.93 0.26 0.00 +vt 0.93 0.25 0.00 +vt 0.93 0.24 0.00 +vt 0.93 0.23 0.00 +vt 0.94 0.23 0.00 +vt 0.94 0.22 0.00 +vt 0.96 0.22 0.00 +vt 0.97 0.23 0.00 +vt 0.97 0.22 0.00 +vt 0.98 0.24 0.00 +vt 0.98 0.23 0.00 +vt 0.99 0.25 0.00 +vt 0.98 0.26 0.00 +vt 0.81 0.06 0.00 +vt 0.81 0.16 0.00 +vt 0.78 0.16 0.00 +vt 0.78 0.06 0.00 +vt 0.76 0.16 0.00 +vt 0.76 0.06 0.00 +vt 0.73 0.16 0.00 +vt 0.73 0.06 0.00 +vt 0.71 0.16 0.00 +vt 0.71 0.06 0.00 +vt 0.69 0.16 0.00 +vt 0.69 0.06 0.00 +vt 0.98 0.06 0.00 +vt 0.98 0.16 0.00 +vt 0.95 0.16 0.00 +vt 0.95 0.06 0.00 +vt 0.93 0.16 0.00 +vt 0.93 0.06 0.00 +vt 0.91 0.16 0.00 +vt 0.91 0.06 0.00 +vt 0.88 0.16 0.00 +vt 0.88 0.06 0.00 +vt 0.86 0.16 0.00 +vt 0.86 0.07 0.00 +vt 0.83 0.16 0.00 +vt 0.83 0.07 0.00 +vt 0.98 0.28 0.00 +vt 0.96 0.29 0.00 +vt 0.99 0.27 0.00 +vt 1.00 0.25 0.00 +vt 0.99 0.23 0.00 +vt 0.98 0.22 0.00 +vt 0.96 0.21 0.00 +vt 0.92 0.23 0.00 +vt 0.92 0.25 0.00 +vt 0.93 0.27 0.00 +vt 0.92 0.27 0.00 +vt 0.94 0.28 0.00 +vt 0.11 0.23 0.00 +vt 0.09 0.22 0.00 +vt 0.10 0.18 0.00 +vt 0.13 0.19 0.00 +vt 0.14 0.24 0.00 +vt 0.15 0.19 0.00 +vt 0.17 0.24 0.00 +vt 0.18 0.20 0.00 +vt 0.21 0.24 0.00 +vt 0.20 0.20 0.00 +vt 0.24 0.24 0.00 +vt 0.23 0.19 0.00 +vt 0.27 0.23 0.00 +vt 0.25 0.19 0.00 +vt 0.30 0.22 0.00 +vt 0.28 0.18 0.00 +vt 0.32 0.21 0.00 +vt 0.30 0.17 0.00 +vt 0.35 0.19 0.00 +vt 0.32 0.16 0.00 +vt 0.03 0.19 0.00 +vt 0.01 0.17 0.00 +vt 0.04 0.14 0.00 +vt 0.06 0.16 0.00 +vt 0.06 0.21 0.00 +vt 0.08 0.17 0.00 +vt 0.12 0.14 0.00 +vt 0.14 0.15 0.00 +vt 0.16 0.15 0.00 +vt 0.18 0.16 0.00 +vt 0.20 0.16 0.00 +vt 0.22 0.15 0.00 +vt 0.24 0.15 0.00 +vt 0.26 0.14 0.00 +vt 0.28 0.13 0.00 +vt 0.31 0.12 0.00 +vt 0.06 0.11 0.00 +vt 0.08 0.12 0.00 +vt 0.10 0.13 0.00 +vt 0.14 0.12 0.00 +vt 0.12 0.12 0.00 +vt 0.12 0.11 0.00 +vt 0.14 0.11 0.00 +vt 0.10 0.12 0.00 +vt 0.10 0.11 0.00 +vt 0.35 0.12 0.00 +vt 0.33 0.12 0.00 +vt 0.33 0.11 0.00 +vt 0.35 0.11 0.00 +vt 0.31 0.11 0.00 +vt 0.29 0.12 0.00 +vt 0.29 0.11 0.00 +vt 0.27 0.12 0.00 +vt 0.27 0.11 0.00 +vt 0.24 0.12 0.00 +vt 0.24 0.11 0.00 +vt 0.22 0.12 0.00 +vt 0.22 0.11 0.00 +vt 0.20 0.12 0.00 +vt 0.20 0.11 0.00 +vt 0.18 0.12 0.00 +vt 0.18 0.11 0.00 +vt 0.16 0.12 0.00 +vt 0.16 0.11 0.00 +vt 0.67 0.06 0.00 +vt 0.64 0.06 0.00 +vt 0.64 0.01 0.00 +vt 0.67 0.01 0.00 +vt 0.60 0.06 0.00 +vt 0.60 0.01 0.00 +vt 0.99 0.06 0.00 +vt 0.96 0.06 0.00 +vt 0.96 0.01 0.00 +vt 0.99 0.01 0.00 +vt 0.93 0.01 0.00 +vt 0.89 0.06 0.00 +vt 0.89 0.01 0.00 +vt 0.86 0.06 0.00 +vt 0.86 0.01 0.00 +vt 0.83 0.06 0.00 +vt 0.83 0.01 0.00 +vt 0.80 0.06 0.00 +vt 0.80 0.01 0.00 +vt 0.77 0.06 0.00 +vt 0.77 0.01 0.00 +vt 0.73 0.01 0.00 +vt 0.70 0.06 0.00 +vt 0.70 0.01 0.00 +vt 0.95 0.87 0.00 +vt 0.93 0.89 0.00 +vt 0.92 0.82 0.00 +vt 0.95 0.82 0.00 +vt 0.92 0.79 0.00 +vt 0.90 0.79 0.00 +vt 0.90 0.77 0.00 +vt 0.92 0.77 0.00 +vt 0.99 0.56 0.00 +vt 0.98 0.56 0.00 +vt 0.98 0.52 0.00 +vt 0.99 0.52 0.00 +vt 0.93 0.78 0.00 +vt 0.96 0.78 0.00 +vt 0.96 0.79 0.00 +vt 0.96 0.81 0.00 +vt 0.94 0.81 0.00 +vt 0.93 0.90 0.00 +vt 0.95 0.88 0.00 +vt 0.96 0.88 0.00 +vt 0.89 0.79 0.00 +vt 0.89 0.81 0.00 +vt 0.90 0.87 0.00 +vt 0.90 0.82 0.00 +vt 0.99 0.60 0.00 +vt 0.98 0.60 0.00 +vt 0.99 0.66 0.00 +vt 0.99 0.59 0.00 +vt 0.99 0.46 0.00 +vt 0.92 0.76 0.00 +vt 0.86 0.76 0.00 +vt 0.86 0.77 0.00 +vt 0.96 0.83 0.00 +vt 0.95 0.83 0.00 +vt 0.98 0.66 0.00 +vt 0.98 0.46 0.00 +vt 0.96 0.76 0.00 +vt 0.92 0.75 0.00 +vt 0.96 0.75 0.00 +vt 0.86 0.75 0.00 +vt 0.93 0.77 0.00 +vt 0.96 0.77 0.00 +vt 0.97 0.76 0.00 +vt 0.97 0.77 0.00 +vt 0.97 0.75 0.00 +vt 0.97 0.79 0.00 +vt 0.98 0.80 0.00 +vt 0.97 0.78 0.00 +vt 0.62 0.90 0.00 +vt 0.63 0.90 0.00 +vt 0.63 0.93 0.00 +vt 0.62 0.93 0.00 +vt 0.66 0.90 0.00 +vt 0.64 0.93 0.00 +vt 0.64 0.98 0.00 +vt 0.66 0.98 0.00 +vt 0.63 0.99 0.00 +vt 0.62 0.99 0.00 +vt 0.60 0.18 0.00 +vt 0.63 0.18 0.00 +vt 0.63 0.20 0.00 +vt 0.60 0.20 0.00 +vt 0.56 0.18 0.00 +vt 0.56 0.20 0.00 +vt 0.53 0.18 0.00 +vt 0.53 0.20 0.00 +vt 0.89 0.18 0.00 +vt 0.92 0.18 0.00 +vt 0.92 0.20 0.00 +vt 0.89 0.20 0.00 +vt 0.86 0.18 0.00 +vt 0.86 0.20 0.00 +vt 0.82 0.18 0.00 +vt 0.82 0.20 0.00 +vt 0.79 0.18 0.00 +vt 0.79 0.20 0.00 +vt 0.76 0.18 0.00 +vt 0.76 0.20 0.00 +vt 0.73 0.18 0.00 +vt 0.73 0.20 0.00 +vt 0.69 0.18 0.00 +vt 0.69 0.20 0.00 +vt 0.66 0.18 0.00 +vt 0.66 0.20 0.00 +vt 0.86 0.88 0.00 +vt 0.83 0.89 0.00 +vt 0.83 0.88 0.00 +vt 0.85 0.88 0.00 +vt 0.88 0.87 0.00 +vt 0.87 0.86 0.00 +vt 0.88 0.84 0.00 +vt 0.88 0.81 0.00 +vt 0.87 0.82 0.00 +vt 0.86 0.79 0.00 +vt 0.85 0.80 0.00 +vt 0.83 0.79 0.00 +vt 0.83 0.80 0.00 +vt 0.81 0.79 0.00 +vt 0.81 0.80 0.00 +vt 0.79 0.81 0.00 +vt 0.79 0.82 0.00 +vt 0.78 0.84 0.00 +vt 0.79 0.84 0.00 +vt 0.79 0.87 0.00 +vt 0.79 0.86 0.00 +vt 0.81 0.88 0.00 +vt 0.60 0.67 0.00 +vt 0.58 0.67 0.00 +vt 0.58 0.66 0.00 +vt 0.61 0.66 0.00 +vt 0.64 0.67 0.00 +vt 0.64 0.66 0.00 +vt 0.68 0.67 0.00 +vt 0.68 0.66 0.00 +vt 0.72 0.67 0.00 +vt 0.72 0.66 0.00 +vt 0.76 0.67 0.00 +vt 0.76 0.66 0.00 +vt 0.79 0.67 0.00 +vt 0.79 0.66 0.00 +vt 0.81 0.67 0.00 +vt 0.81 0.66 0.00 +vt 0.84 0.67 0.00 +vt 0.84 0.66 0.00 +vt 0.88 0.67 0.00 +vt 0.88 0.66 0.00 +vt 0.53 0.67 0.00 +vt 0.49 0.67 0.00 +vt 0.50 0.66 0.00 +vt 0.53 0.66 0.00 +vt 0.56 0.67 0.00 +vt 0.56 0.66 0.00 +vt 0.66 0.16 0.00 +vt 0.63 0.17 0.00 +vt 0.63 0.12 0.00 +vt 0.68 0.14 0.00 +vt 0.68 0.12 0.00 +vt 0.68 0.09 0.00 +vt 0.66 0.07 0.00 +vt 0.63 0.07 0.00 +vt 0.61 0.07 0.00 +vt 0.59 0.09 0.00 +vt 0.59 0.12 0.00 +vt 0.59 0.14 0.00 +vt 0.61 0.16 0.00 +vt 0.60 0.21 0.00 +vt 0.56 0.21 0.00 +vt 0.64 0.68 0.00 +vt 0.60 0.68 0.00 +vt 0.92 0.21 0.00 +vt 0.89 0.21 0.00 +vt 0.72 0.68 0.00 +vt 0.68 0.68 0.00 +vt 0.86 0.21 0.00 +vt 0.82 0.21 0.00 +vt 0.79 0.68 0.00 +vt 0.76 0.68 0.00 +vt 0.79 0.21 0.00 +vt 0.76 0.21 0.00 +vt 0.84 0.68 0.00 +vt 0.81 0.68 0.00 +vt 0.73 0.21 0.00 +vt 0.69 0.21 0.00 +vt 0.53 0.68 0.00 +vt 0.49 0.68 0.00 +vt 0.66 0.21 0.00 +vt 0.63 0.21 0.00 +vt 0.58 0.68 0.00 +vt 0.56 0.68 0.00 +vt 0.24 0.62 0.00 +vt 0.00 0.62 0.00 +vt 0.05 0.71 0.00 +vt 0.19 0.71 0.00 +vt 0.00 0.41 0.00 +vt 0.28 0.41 0.00 +vt 0.24 0.49 0.00 +vt 0.05 0.49 0.00 +vt 0.01 0.52 0.00 +vt 0.29 0.52 0.00 +vt 0.24 0.59 0.00 +vt 0.05 0.59 0.00 +vt 0.38 0.32 0.00 +vt 0.53 0.32 0.00 +vt 0.53 0.42 0.00 +vt 0.38 0.42 0.00 +vt 0.67 0.21 0.00 +vt 0.49 0.21 0.00 +vt 0.49 0.30 0.00 +vt 0.67 0.30 0.00 +vt 0.46 0.89 0.00 +vt 0.27 0.89 0.00 +vt 0.27 0.99 0.00 +vt 0.46 0.99 0.00 +vt 0.62 0.80 0.00 +vt 0.77 0.80 0.00 +vt 0.77 0.88 0.00 +vt 0.62 0.88 0.00 +vt 0.24 0.73 0.00 +vt 0.32 0.73 0.00 +vt 0.31 0.72 0.00 +vt 0.24 0.72 0.00 +vt 0.32 0.63 0.00 +vt 0.31 0.64 0.00 +vt 0.24 0.63 0.00 +vt 0.24 0.64 0.00 +vt 0.19 0.33 0.00 +vt 0.19 0.25 0.00 +vt 0.20 0.27 0.00 +vt 0.20 0.31 0.00 +vt 0.31 0.25 0.00 +vt 0.30 0.27 0.00 +vt 0.31 0.33 0.00 +vt 0.30 0.31 0.00 +vt 0.14 0.26 0.00 +vt 0.14 0.40 0.00 +vt 0.18 0.34 0.00 +vt 0.18 0.26 0.00 +vt 0.36 0.40 0.00 +vt 0.32 0.34 0.00 +vt 0.36 0.26 0.00 +vt 0.32 0.26 0.00 +vt 0.49 0.15 0.00 +vt 0.49 0.25 0.00 +vt 0.36 0.25 0.00 +vt 0.36 0.15 0.00 +vt 0.41 0.01 0.00 +vt 0.58 0.01 0.00 +vt 0.58 0.14 0.00 +vt 0.41 0.14 0.00 +vt 0.58 0.42 0.00 +vt 0.58 0.54 0.00 +vt 0.45 0.53 0.00 +vt 0.45 0.45 0.00 +vt 0.71 0.95 0.00 +vt 0.66 0.89 0.00 +vt 0.14 0.94 0.00 +vt 0.01 0.95 0.00 +vt 0.76 0.89 0.00 +vt 0.32 0.41 0.00 +vt 0.32 0.53 0.00 +vt 0.27 0.95 0.00 +vt 0.80 0.98 0.00 +vt 0.80 0.93 0.00 +vt 0.81 0.93 0.00 +vt 0.81 0.98 0.00 +vt 0.78 0.98 0.00 +vt 0.78 0.93 0.00 +vt 0.77 0.93 0.00 +vt 0.77 0.98 0.00 +vt 0.77 0.99 0.00 +vt 0.78 0.99 0.00 +vt 0.73 0.93 0.00 +vt 0.74 0.93 0.00 +vt 0.74 0.98 0.00 +vt 0.73 0.98 0.00 +vt 0.76 0.98 0.00 +vt 0.86 0.48 0.00 +vt 0.86 0.45 0.00 +vt 0.94 0.45 0.00 +vt 0.94 0.48 0.00 +vt 0.95 0.40 0.00 +vt 0.99 0.40 0.00 +vt 0.99 0.45 0.00 +vt 0.95 0.45 0.00 +vt 0.99 0.35 0.00 +vt 0.90 0.35 0.00 +vt 0.90 0.39 0.00 +vt 0.99 0.39 0.00 +vt 0.68 0.24 0.00 +vt 0.71 0.24 0.00 +vt 0.71 0.62 0.00 +vt 0.68 0.62 0.00 +vt 0.61 0.69 0.00 +vt 0.80 0.69 0.00 +vt 0.80 0.76 0.00 +vt 0.61 0.76 0.00 +vt 0.87 0.95 0.00 +vt 0.86 0.97 0.00 +vt 0.86 0.91 0.00 +vt 0.87 0.91 0.00 +vt 0.90 0.94 0.00 +vt 0.90 0.91 0.00 +vt 0.91 0.91 0.00 +vt 0.91 0.94 0.00 +vt 0.98 0.83 0.00 +vt 0.98 0.76 0.00 +vt 0.89 0.94 0.00 +vt 0.89 0.91 0.00 +vt 0.95 0.93 0.00 +vt 0.97 0.93 0.00 +vt 0.97 0.94 0.00 +vt 0.97 0.97 0.00 +vt 0.97 0.99 0.00 +vt 0.96 0.99 0.00 +vt 0.86 0.98 0.00 +vt 0.87 0.97 0.00 +vt 0.88 0.97 0.00 +vt 0.86 0.99 0.00 +vt 0.90 0.99 0.00 +vt 0.90 0.97 0.00 +vt 0.91 0.99 0.00 +vt 0.93 0.97 0.00 +vt 0.93 0.98 0.00 +vt 0.85 0.95 0.00 +vt 0.85 0.91 0.00 +vt 0.98 0.90 0.00 +vt 0.93 0.93 0.00 +vt 0.84 0.97 0.00 +vt 0.85 0.97 0.00 +vt 0.99 0.78 0.00 +vt 0.99 0.67 0.00 +vt 0.99 0.83 0.00 +vt 0.99 0.89 0.00 +vt 0.99 0.99 0.00 +vt 0.93 0.95 0.00 +vt 0.93 0.96 0.00 +vt 0.90 0.96 0.00 +vt 0.90 0.95 0.00 +vt 0.96 0.95 0.00 +vt 0.96 0.96 0.00 +vt 0.84 0.92 0.00 +vt 0.85 0.92 0.00 +vt 0.98 0.99 0.00 +vt 0.98 0.67 0.00 +vt 0.88 0.92 0.00 +vt 0.97 0.95 0.00 +vt 0.89 0.95 0.00 +vt 0.95 0.92 0.00 +vt 0.97 0.92 0.00 +vt 0.93 0.92 0.00 +vt 0.98 0.95 0.00 +vt 0.98 0.96 0.00 +vt 0.97 0.96 0.00 +vt 0.98 0.94 0.00 +vt 0.89 0.99 0.00 +vt 0.89 0.97 0.00 +vt 0.88 0.96 0.00 +vt 0.88 0.95 0.00 +vt 0.89 0.96 0.00 +vt 0.04 0.35 0.00 +vt 0.04 0.25 0.00 +vt 0.07 0.25 0.00 +vt 0.07 0.36 0.00 +vt 0.13 0.33 0.00 +vt 0.10 0.35 0.00 +vt 0.10 0.25 0.00 +vt 0.13 0.25 0.00 +vt 0.01 0.33 0.00 +vt 0.01 0.25 0.00 +vt 0.93 0.52 0.00 +vt 0.94 0.52 0.00 +vt 0.94 0.58 0.00 +vt 0.93 0.58 0.00 +vt 0.92 0.49 0.00 +vt 0.91 0.49 0.00 +vt 0.91 0.54 0.00 +vt 0.92 0.55 0.00 +vt 0.97 0.52 0.00 +vt 0.95 0.52 0.00 +vt 0.95 0.58 0.00 +vt 0.97 0.58 0.00 +vt 0.94 0.64 0.00 +vt 0.93 0.64 0.00 +vt 0.89 0.58 0.00 +vt 0.89 0.59 0.00 +vt 0.95 0.64 0.00 +vt 0.97 0.64 0.00 +vt 0.94 0.69 0.00 +vt 0.93 0.69 0.00 +vt 0.86 0.59 0.00 +vt 0.86 0.61 0.00 +vt 0.95 0.69 0.00 +vt 0.97 0.69 0.00 +vt 0.83 0.58 0.00 +vt 0.83 0.59 0.00 +vt 0.81 0.54 0.00 +vt 0.80 0.55 0.00 +vt 0.81 0.49 0.00 +vt 0.80 0.49 0.00 +vt 0.82 0.22 0.00 +vt 0.85 0.22 0.00 +vt 0.84 0.39 0.00 +vt 0.81 0.39 0.00 +vt 0.76 0.22 0.00 +vt 0.80 0.22 0.00 +vt 0.79 0.38 0.00 +vt 0.76 0.38 0.00 +vt 0.82 0.52 0.00 +vt 0.85 0.52 0.00 +vt 0.80 0.51 0.00 +vt 0.76 0.53 0.00 +vt 0.18 0.92 0.00 +vt 0.09 0.92 0.00 +vt 0.09 0.93 0.00 +vt 0.18 0.93 0.00 +vt 0.00 0.90 0.00 +vt 0.10 0.89 0.00 +vt 0.10 0.90 0.00 +vt 0.00 0.91 0.00 +vt 0.00 0.92 0.00 +vt 0.00 0.93 0.00 +vt 0.20 0.90 0.00 +vt 0.20 0.91 0.00 +vt 0.20 0.93 0.00 +vt 0.23 0.90 0.00 +vt 0.23 0.93 0.00 +vt 0.26 0.76 0.00 +vt 0.26 0.90 0.00 +vt 0.22 0.84 0.00 +vt 0.22 0.76 0.00 +vt 0.11 0.81 0.00 +vt 0.11 0.87 0.00 +vt 0.02 0.88 0.00 +vt 0.02 0.81 0.00 +vt 0.31 0.84 0.00 +vt 0.31 0.76 0.00 +vt 0.11 0.74 0.00 +vt 0.11 0.80 0.00 +vt 0.01 0.80 0.00 +vt 0.01 0.74 0.00 +vt 0.20 0.81 0.00 +vt 0.20 0.88 0.00 +vt 0.20 0.74 0.00 +vt 0.20 0.80 0.00 +vt 0.36 0.65 0.00 +vt 0.36 0.75 0.00 +vt 0.34 0.75 0.00 +vt 0.33 0.65 0.00 +vt 0.36 0.89 0.00 +vt 0.33 0.87 0.00 +vt 0.45 0.67 0.00 +vt 0.45 0.76 0.00 +vt 0.43 0.76 0.00 +vt 0.42 0.67 0.00 +vt 0.45 0.89 0.00 +vt 0.42 0.89 0.00 +vt 0.41 0.66 0.00 +vt 0.38 0.66 0.00 +vt 0.39 0.77 0.00 +vt 0.41 0.77 0.00 +vt 0.38 0.88 0.00 +vt 0.41 0.88 0.00 +vt 0.72 0.62 0.00 +vt 0.72 0.52 0.00 +vt 0.73 0.52 0.00 +vt 0.73 0.62 0.00 +vt 0.74 0.62 0.00 +vt 0.74 0.43 0.00 +vt 0.73 0.43 0.00 +vt 0.59 0.58 0.00 +vt 0.64 0.58 0.00 +vt 0.64 0.63 0.00 +vt 0.59 0.63 0.00 +vt 0.75 0.42 0.00 +vt 0.73 0.42 0.00 +vt 0.73 0.36 0.00 +vt 0.75 0.36 0.00 +vt 0.92 0.71 0.00 +vt 0.97 0.71 0.00 +vt 0.92 0.73 0.00 +vt 0.73 0.29 0.00 +vt 0.73 0.24 0.00 +vt 0.75 0.24 0.00 +vt 0.75 0.29 0.00 +vt 0.86 0.72 0.00 +vt 0.86 0.73 0.00 +vt 0.81 0.72 0.00 +vt 0.81 0.70 0.00 +vt 0.73 0.33 0.00 +vt 0.75 0.33 0.00 +vt 0.89 0.74 0.00 +vt 0.89 0.72 0.00 +vt 0.83 0.62 0.00 +vt 0.92 0.62 0.00 +vt 0.92 0.61 0.00 +vt 0.83 0.61 0.00 +vt 0.83 0.63 0.00 +vt 0.92 0.63 0.00 +vt 0.71 0.65 0.00 +vt 0.71 0.66 0.00 +vt 0.75 0.66 0.00 +vt 0.75 0.65 0.00 +vt 0.71 0.64 0.00 +vt 0.75 0.64 0.00 +vt 0.58 0.64 0.00 +vt 0.62 0.66 0.00 +vt 0.62 0.64 0.00 +vt 0.92 0.64 0.00 +vt 0.83 0.64 0.00 +vt 0.75 0.61 0.00 +vt 0.75 0.62 0.00 +vt 0.75 0.63 0.00 +vt 0.67 0.66 0.00 +vt 0.67 0.64 0.00 +vt 0.41 0.65 0.00 +vt 0.41 0.57 0.00 +vt 0.44 0.57 0.00 +vt 0.44 0.66 0.00 +vt 0.48 0.65 0.00 +vt 0.48 0.57 0.00 +# 694 texture coords + +o castle +g castle +f 1/1/1 2/2/2 3/3/2 +f 3/3/2 4/4/1 1/1/1 +f 2/2/2 5/5/3 6/6/3 +f 6/6/3 3/3/2 2/2/2 +f 5/5/3 7/7/4 8/8/4 +f 8/8/4 6/6/3 5/5/3 +f 7/9/4 9/10/5 10/11/5 +f 10/11/5 8/12/4 7/9/4 +f 9/10/5 11/13/6 12/14/6 +f 12/14/6 10/11/5 9/10/5 +f 11/13/6 13/15/7 14/16/7 +f 14/16/7 12/14/6 11/13/6 +f 13/15/7 15/17/8 16/18/8 +f 16/18/8 14/16/7 13/15/7 +f 15/17/8 17/19/9 18/20/9 +f 18/20/9 16/18/8 15/17/8 +f 17/19/9 19/21/10 20/22/10 +f 20/22/10 18/20/9 17/19/9 +f 19/21/10 21/23/11 22/24/11 +f 22/24/11 20/22/10 19/21/10 +f 21/23/11 23/25/12 24/26/12 +f 24/26/12 22/24/11 21/23/11 +f 23/25/12 1/1/1 4/4/1 +f 4/4/1 24/26/12 23/25/12 +f 25/27/13 26/28/13 27/29/13 +f 27/29/13 28/30/13 25/27/13 +f 29/31/14 25/27/14 28/30/14 +f 28/30/14 30/32/14 29/31/14 +f 31/33/15 29/31/15 30/32/15 +f 30/32/15 32/34/15 31/33/15 +f 33/35/16 31/36/16 32/37/16 +f 32/37/16 34/38/16 33/35/16 +f 35/39/17 33/35/17 34/38/17 +f 34/38/17 36/40/17 35/39/17 +f 37/41/18 35/39/18 36/40/18 +f 36/40/18 38/42/18 37/41/18 +f 39/43/19 37/41/19 38/42/19 +f 38/42/19 40/44/19 39/43/19 +f 41/45/20 39/43/20 40/44/20 +f 40/44/20 42/46/20 41/45/20 +f 43/47/21 41/45/21 42/46/21 +f 42/46/21 44/48/21 43/47/21 +f 45/49/22 43/47/22 44/48/22 +f 44/48/22 46/50/22 45/49/22 +f 47/51/23 45/49/23 46/50/23 +f 46/50/23 48/52/23 47/51/23 +f 26/28/24 47/51/25 48/52/25 +f 48/52/25 27/29/24 26/28/24 +f 2/53/26 1/54/26 26/54/26 +f 26/54/26 25/53/26 2/53/26 +f 1/54/26 23/55/26 47/55/26 +f 47/55/26 26/54/26 1/54/26 +f 23/55/26 21/56/26 45/56/26 +f 45/56/26 47/55/26 23/55/26 +f 21/56/26 19/57/26 43/57/26 +f 43/57/26 45/56/26 21/56/26 +f 19/57/26 17/58/26 41/59/26 +f 41/59/26 43/57/26 19/57/26 +f 17/58/26 15/60/26 39/61/26 +f 39/61/26 41/59/26 17/58/26 +f 15/60/26 13/62/26 37/62/26 +f 37/62/26 39/61/26 15/60/26 +f 13/62/26 11/63/26 35/64/26 +f 35/64/26 37/62/26 13/62/26 +f 11/63/26 9/65/26 33/66/26 +f 33/66/26 35/64/26 11/63/26 +f 9/65/26 7/67/26 31/67/26 +f 31/67/26 33/66/26 9/65/26 +f 7/67/26 5/68/26 29/68/26 +f 29/68/26 31/67/26 7/67/26 +f 5/68/26 2/53/26 25/53/26 +f 25/53/26 29/68/26 5/68/26 +f 49/54/27 50/53/27 28/53/27 +f 28/53/27 27/54/27 49/54/27 +f 50/53/27 51/68/27 30/68/27 +f 30/68/27 28/53/27 50/53/27 +f 51/68/27 52/67/27 32/67/27 +f 32/67/27 30/68/27 51/68/27 +f 52/67/27 53/65/27 34/66/27 +f 34/66/27 32/67/27 52/67/27 +f 53/65/27 54/63/27 36/64/27 +f 36/64/27 34/66/27 53/65/27 +f 54/63/27 55/62/27 38/62/27 +f 38/62/27 36/64/27 54/63/27 +f 55/62/27 56/60/27 40/61/27 +f 40/61/27 38/62/27 55/62/27 +f 56/60/27 57/58/27 42/59/27 +f 42/59/27 40/61/27 56/60/27 +f 57/58/27 58/57/27 44/57/27 +f 44/57/27 42/59/27 57/58/27 +f 58/57/27 59/56/27 46/56/27 +f 46/56/27 44/57/27 58/57/27 +f 59/56/27 60/55/27 48/55/27 +f 48/55/27 46/56/27 59/56/27 +f 60/55/27 49/54/27 27/54/27 +f 27/54/27 48/55/27 60/55/27 +f 49/69/1 61/70/1 62/71/2 +f 62/71/2 50/72/2 49/69/1 +f 50/72/2 62/71/2 63/73/14 +f 63/73/14 51/74/14 50/72/2 +f 51/74/15 63/73/15 64/75/15 +f 64/75/15 52/76/15 51/74/15 +f 52/76/16 64/75/16 65/77/5 +f 65/77/5 53/78/5 52/76/16 +f 53/78/5 65/77/5 66/79/6 +f 66/79/6 54/80/6 53/78/5 +f 54/81/6 66/82/6 67/83/7 +f 67/83/7 55/84/7 54/81/6 +f 55/84/7 67/83/7 68/85/8 +f 68/85/8 56/86/8 55/84/7 +f 56/86/8 68/85/8 69/87/9 +f 69/87/9 57/88/9 56/86/8 +f 57/88/9 69/87/9 70/89/10 +f 70/89/10 58/90/10 57/88/9 +f 58/90/10 70/89/10 71/91/11 +f 71/91/11 59/92/11 58/90/10 +f 59/92/11 71/91/11 72/93/12 +f 72/93/12 60/94/12 59/92/11 +f 60/94/12 72/93/12 61/70/1 +f 61/70/1 49/69/1 60/94/12 +f 73/95/26 74/96/26 75/96/26 +f 75/96/26 76/95/26 73/95/26 +f 77/97/26 73/95/26 76/95/26 +f 76/95/26 78/97/26 77/97/26 +f 79/67/26 77/97/26 78/97/26 +f 78/97/26 80/98/26 79/67/26 +f 81/99/26 79/67/26 80/98/26 +f 80/98/26 82/99/26 81/99/26 +f 83/100/26 81/99/26 82/99/26 +f 82/99/26 84/100/26 83/100/26 +f 85/101/26 83/100/26 84/100/26 +f 84/100/26 86/101/26 85/101/26 +f 87/61/26 85/101/26 86/101/26 +f 86/101/26 88/61/26 87/61/26 +f 89/59/26 87/61/26 88/61/26 +f 88/61/26 90/102/26 89/59/26 +f 91/103/26 89/59/26 90/102/26 +f 90/102/26 92/103/26 91/103/26 +f 93/104/26 91/103/26 92/103/26 +f 92/103/26 94/105/26 93/104/26 +f 95/106/26 93/104/26 94/105/26 +f 94/105/26 96/106/26 95/106/26 +f 74/96/26 95/106/26 96/106/26 +f 96/106/26 75/96/26 74/96/26 +f 76/107/28 75/108/28 97/109/28 +f 97/109/28 98/110/28 76/107/28 +f 78/111/29 76/107/29 98/110/29 +f 98/110/29 99/112/29 78/111/29 +f 80/113/30 78/111/30 99/112/30 +f 99/112/30 100/114/30 80/113/30 +f 82/115/31 80/113/31 100/114/31 +f 100/114/31 101/116/31 82/115/31 +f 84/117/32 82/115/32 101/116/32 +f 101/116/32 102/118/32 84/117/32 +f 86/119/33 84/117/33 102/118/33 +f 102/118/33 103/120/33 86/119/33 +f 88/121/34 86/119/34 103/120/34 +f 103/120/34 104/122/34 88/121/34 +f 90/123/35 88/121/35 104/122/35 +f 104/122/35 105/124/35 90/123/35 +f 92/125/36 90/123/36 105/124/36 +f 105/124/36 106/126/36 92/125/36 +f 94/127/37 92/128/37 106/129/37 +f 106/129/37 107/130/37 94/127/37 +f 96/131/38 94/127/38 107/130/38 +f 107/130/38 108/132/38 96/131/38 +f 75/108/39 96/131/39 108/132/39 +f 108/132/39 97/109/39 75/108/39 +f 98/110/40 97/109/40 109/133/40 +f 109/133/40 110/134/40 98/110/40 +f 99/112/41 98/110/41 110/134/41 +f 110/134/41 111/135/41 99/112/41 +f 100/114/42 99/112/42 111/135/42 +f 111/135/42 112/136/43 100/114/42 +f 101/116/44 100/114/44 112/136/44 +f 112/136/44 113/137/44 101/116/44 +f 102/118/45 101/116/45 113/137/45 +f 113/137/45 114/138/45 102/118/45 +f 103/120/46 102/118/46 114/138/46 +f 114/138/46 115/139/46 103/120/46 +f 104/122/47 103/120/48 115/139/48 +f 115/139/48 116/140/48 104/122/47 +f 105/124/49 104/122/49 116/140/49 +f 116/140/49 117/141/49 105/124/49 +f 106/126/50 105/124/50 117/141/50 +f 117/141/50 118/142/50 106/126/50 +f 107/130/51 106/129/51 118/143/52 +f 118/143/52 119/144/51 107/130/51 +f 108/132/53 107/130/53 119/144/53 +f 119/144/53 120/145/53 108/132/53 +f 97/109/54 108/132/55 120/145/54 +f 120/145/54 109/133/54 97/109/54 +f 121/146/56 122/147/56 62/148/56 +f 62/148/56 61/149/56 121/146/56 +f 122/147/57 123/150/58 63/151/58 +f 63/151/58 62/148/57 122/147/57 +f 123/152/59 124/153/59 64/154/59 +f 64/154/59 63/155/59 123/152/59 +f 124/153/60 125/142/60 65/156/60 +f 65/156/60 64/154/60 124/153/60 +f 125/142/61 126/157/62 66/158/61 +f 66/158/61 65/156/62 125/142/61 +f 126/157/63 127/159/63 67/160/63 +f 67/160/63 66/158/63 126/157/63 +f 127/159/64 128/161/64 68/162/64 +f 68/162/64 67/160/64 127/159/64 +f 128/161/65 129/163/66 69/164/66 +f 69/164/66 68/162/66 128/161/65 +f 129/163/67 130/165/67 70/166/67 +f 70/166/67 69/164/67 129/163/67 +f 130/165/68 131/167/68 71/168/68 +f 71/168/68 70/166/68 130/165/68 +f 131/167/69 132/169/70 72/170/70 +f 72/170/70 71/168/70 131/167/69 +f 132/169/71 121/146/71 61/149/71 +f 61/149/71 72/170/71 132/169/71 +f 74/171/1 73/172/2 122/173/2 +f 122/173/2 121/174/1 74/171/1 +f 73/172/2 77/175/3 123/176/3 +f 123/176/3 122/173/2 73/172/2 +f 77/177/3 79/178/4 124/179/4 +f 124/179/4 123/180/3 77/177/3 +f 79/178/4 81/86/5 125/181/5 +f 125/181/5 124/179/4 79/178/4 +f 81/86/5 83/182/6 126/183/6 +f 126/183/6 125/181/5 81/86/5 +f 83/182/6 85/184/7 127/185/7 +f 127/185/7 126/183/6 83/182/6 +f 85/184/7 87/186/8 128/187/8 +f 128/187/8 127/185/7 85/184/7 +f 87/186/8 89/188/9 129/189/9 +f 129/189/9 128/187/8 87/186/8 +f 89/188/9 91/190/10 130/191/10 +f 130/191/10 129/189/9 89/188/9 +f 91/190/10 93/76/11 131/192/11 +f 131/192/11 130/191/10 91/190/10 +f 93/76/11 95/193/12 132/194/12 +f 132/194/12 131/192/11 93/76/11 +f 95/193/12 74/171/1 121/174/1 +f 121/174/1 132/194/12 95/193/12 +f 133/195/72 134/196/72 135/197/72 +f 135/197/72 136/198/72 133/195/72 +f 137/199/73 138/200/73 139/201/73 +f 139/201/73 140/202/73 137/199/73 +f 141/203/74 142/204/74 143/205/74 +f 143/205/74 144/206/74 141/203/74 +f 145/202/75 146/201/75 147/200/75 +f 147/200/75 148/199/75 145/202/75 +f 149/207/76 150/207/76 151/208/76 +f 151/208/76 152/209/76 149/207/76 +f 153/209/77 154/210/77 155/211/77 +f 142/212/78 156/196/78 157/213/78 +f 157/213/78 143/214/78 142/212/78 +f 158/210/79 159/209/79 160/211/79 +f 161/215/80 162/216/80 160/211/80 +f 160/211/80 159/209/80 161/215/80 +f 163/217/81 164/218/81 135/197/81 +f 135/197/81 134/196/81 163/217/81 +f 165/219/82 166/220/82 142/204/82 +f 142/204/82 141/203/82 165/219/82 +f 167/209/83 168/208/83 150/207/83 +f 150/207/83 149/207/83 167/209/83 +f 142/212/84 166/214/84 169/213/84 +f 169/213/84 156/196/84 142/212/84 +f 161/215/85 153/209/85 155/211/85 +f 155/211/85 162/216/85 161/215/85 +f 170/221/75 157/222/75 133/222/75 +f 133/222/75 136/221/75 170/221/75 +f 157/222/86 156/203/86 134/203/86 +f 134/203/86 133/222/86 157/222/86 +f 156/203/87 169/206/87 163/206/87 +f 163/206/87 134/203/87 156/203/87 +f 169/206/73 171/223/73 164/223/73 +f 164/223/73 163/206/73 169/206/73 +f 171/224/88 172/225/88 135/226/88 +f 135/226/88 164/224/88 171/224/88 +f 172/225/89 170/224/89 136/224/89 +f 136/224/89 135/226/89 172/225/89 +f 166/214/79 173/227/79 171/228/79 +f 171/228/79 169/213/79 166/214/79 +f 173/229/75 166/220/75 165/219/75 +f 165/219/75 174/221/75 173/229/75 +f 144/206/73 143/205/73 175/230/73 +f 175/230/73 176/223/73 144/206/73 +f 175/227/77 143/214/77 157/213/77 +f 157/213/77 170/228/77 175/227/77 +f 139/201/73 138/200/73 177/199/73 +f 177/199/73 178/202/73 139/201/73 +f 175/231/90 170/224/90 155/232/90 +f 155/232/90 154/233/91 175/231/90 +f 170/224/89 172/225/89 162/234/89 +f 162/234/89 155/232/89 170/224/89 +f 172/225/88 171/224/88 160/232/88 +f 160/232/88 162/234/88 172/225/88 +f 171/224/92 173/231/92 158/233/92 +f 158/233/92 160/232/92 171/224/92 +f 147/200/75 146/201/75 179/202/75 +f 179/202/75 180/199/75 147/200/75 +f 151/208/76 150/207/76 161/235/76 +f 161/235/76 159/236/76 151/208/76 +f 150/207/83 168/208/83 153/236/83 +f 153/236/83 161/235/83 150/207/83 +f 176/236/27 175/231/27 138/237/27 +f 138/237/27 137/238/27 176/236/27 +f 175/231/27 154/233/27 177/239/27 +f 177/239/27 138/237/27 175/231/27 +f 154/210/93 153/209/93 178/240/94 +f 178/240/94 177/241/94 154/210/93 +f 153/236/26 168/208/26 139/242/26 +f 139/242/26 178/238/26 153/236/26 +f 168/208/26 167/209/26 140/240/26 +f 140/240/26 139/242/26 168/208/26 +f 152/209/26 151/208/26 146/242/26 +f 146/242/26 145/240/26 152/209/26 +f 151/208/26 159/236/26 179/238/26 +f 179/238/26 146/242/26 151/208/26 +f 159/209/95 158/210/95 180/241/95 +f 180/241/95 179/240/95 159/209/95 +f 158/233/27 173/231/27 147/237/27 +f 147/237/27 180/239/27 158/233/27 +f 173/231/27 174/236/27 148/238/27 +f 148/238/27 147/237/27 173/231/27 +f 181/195/96 182/196/96 183/197/96 +f 183/197/96 184/198/96 181/195/96 +f 185/199/97 186/200/98 187/201/98 +f 187/201/98 188/202/97 185/199/97 +f 189/203/99 190/204/99 191/205/99 +f 191/205/99 192/206/99 189/203/99 +f 193/202/100 194/201/101 195/200/101 +f 195/200/101 196/199/100 193/202/100 +f 197/207/102 198/207/102 199/208/102 +f 199/208/102 200/209/102 197/207/102 +f 201/209/103 202/210/103 203/211/103 +f 190/212/104 204/196/104 205/213/104 +f 205/213/104 191/214/104 190/212/104 +f 206/210/105 207/209/105 208/211/105 +f 209/215/106 210/216/106 208/211/106 +f 208/211/106 207/209/106 209/215/106 +f 211/217/107 212/218/107 183/197/107 +f 183/197/107 182/196/107 211/217/107 +f 213/219/108 214/220/108 190/204/108 +f 190/204/108 189/203/108 213/219/108 +f 215/209/109 216/208/109 198/207/109 +f 198/207/109 197/207/109 215/209/109 +f 190/212/110 214/214/110 217/213/110 +f 217/213/110 204/196/110 190/212/110 +f 209/215/111 201/209/111 203/211/111 +f 203/211/111 210/216/111 209/215/111 +f 218/221/100 205/222/100 181/222/101 +f 181/222/101 184/221/101 218/221/100 +f 205/222/112 204/203/112 182/203/112 +f 182/203/112 181/222/112 205/222/112 +f 204/203/113 217/206/113 211/206/113 +f 211/206/113 182/203/113 204/203/113 +f 217/206/98 219/223/98 212/223/98 +f 212/223/98 211/206/98 217/206/98 +f 219/224/114 220/225/114 183/226/114 +f 183/226/114 212/224/114 219/224/114 +f 220/225/115 218/224/115 184/224/115 +f 184/224/115 183/226/115 220/225/115 +f 214/214/105 221/227/105 219/228/105 +f 219/228/105 217/213/105 214/214/105 +f 221/229/100 214/220/100 213/219/100 +f 213/219/100 222/221/100 221/229/100 +f 192/206/98 191/205/98 223/230/98 +f 223/230/98 224/223/98 192/206/98 +f 223/227/103 191/214/103 205/213/103 +f 205/213/103 218/228/103 223/227/103 +f 187/201/98 186/200/98 225/199/97 +f 225/199/97 226/202/97 187/201/98 +f 223/231/116 218/224/116 203/232/116 +f 203/232/116 202/233/116 223/231/116 +f 218/224/115 220/225/115 210/234/115 +f 210/234/115 203/232/115 218/224/115 +f 220/225/114 219/224/114 208/232/114 +f 208/232/114 210/234/114 220/225/114 +f 219/224/117 221/231/117 206/233/117 +f 206/233/117 208/232/117 219/224/117 +f 195/200/101 194/201/101 227/202/100 +f 227/202/100 228/199/100 195/200/101 +f 199/208/102 198/207/102 209/235/102 +f 209/235/102 207/236/102 199/208/102 +f 198/207/109 216/208/109 201/236/109 +f 201/236/109 209/235/109 198/207/109 +f 224/236/27 223/231/27 186/237/27 +f 186/237/27 185/238/27 224/236/27 +f 223/231/27 202/233/27 225/239/27 +f 225/239/27 186/237/27 223/231/27 +f 202/210/118 201/209/118 226/240/118 +f 226/240/118 225/241/118 202/210/118 +f 201/236/26 216/208/26 187/242/26 +f 187/242/26 226/238/26 201/236/26 +f 216/208/26 215/209/26 188/240/26 +f 188/240/26 187/242/26 216/208/26 +f 200/209/26 199/208/26 194/242/26 +f 194/242/26 193/240/26 200/209/26 +f 199/208/26 207/236/26 227/238/26 +f 227/238/26 194/242/26 199/208/26 +f 207/209/119 206/210/119 228/241/119 +f 228/241/119 227/240/119 207/209/119 +f 206/233/27 221/231/27 195/237/27 +f 195/237/27 228/239/27 206/233/27 +f 221/231/27 222/236/27 196/238/27 +f 196/238/27 195/237/27 221/231/27 +f 229/243/120 230/244/120 231/245/120 +f 231/245/120 232/246/120 229/243/120 +f 229/247/121 232/248/121 233/249/121 +f 233/249/121 234/250/121 229/247/121 +f 232/246/122 231/245/122 235/251/122 +f 235/251/122 233/252/122 232/246/122 +f 231/248/123 230/247/123 236/250/123 +f 236/250/123 235/249/123 231/248/123 +f 237/195/124 238/196/124 239/197/124 +f 239/197/124 240/198/124 237/195/124 +f 241/199/125 242/200/98 243/201/98 +f 243/201/98 244/202/125 241/199/125 +f 245/203/99 246/204/99 247/205/99 +f 247/205/99 248/206/99 245/203/99 +f 249/202/100 250/201/101 251/200/101 +f 251/200/101 252/199/100 249/202/100 +f 253/207/102 254/207/102 255/208/102 +f 255/208/102 256/209/102 253/207/102 +f 257/209/103 258/210/103 259/211/103 +f 246/212/104 260/196/104 261/213/104 +f 261/213/104 247/214/104 246/212/104 +f 262/210/105 263/209/105 264/211/105 +f 265/215/106 266/216/106 264/211/106 +f 264/211/106 263/209/106 265/215/106 +f 267/217/107 268/218/107 239/197/107 +f 239/197/107 238/196/107 267/217/107 +f 269/219/126 270/220/126 246/204/108 +f 246/204/108 245/203/108 269/219/126 +f 271/209/109 272/208/109 254/207/109 +f 254/207/109 253/207/109 271/209/109 +f 246/212/110 270/214/110 273/213/110 +f 273/213/110 260/196/110 246/212/110 +f 265/215/111 257/209/111 259/211/111 +f 259/211/111 266/216/111 265/215/111 +f 274/221/100 261/222/100 237/222/100 +f 237/222/100 240/221/100 274/221/100 +f 261/222/112 260/203/112 238/203/112 +f 238/203/112 237/222/112 261/222/112 +f 260/203/113 273/206/113 267/206/113 +f 267/206/113 238/203/113 260/203/113 +f 273/206/98 275/223/98 268/223/98 +f 268/223/98 267/206/98 273/206/98 +f 275/224/114 276/225/114 239/226/114 +f 239/226/114 268/224/114 275/224/114 +f 276/225/115 274/224/115 240/224/115 +f 240/224/115 239/226/115 276/225/115 +f 270/214/105 277/227/105 275/228/105 +f 275/228/105 273/213/105 270/214/105 +f 277/229/101 270/220/101 269/219/101 +f 269/219/101 278/221/101 277/229/101 +f 248/206/98 247/205/97 279/230/97 +f 279/230/97 280/223/98 248/206/98 +f 279/227/103 247/214/103 261/213/103 +f 261/213/103 274/228/103 279/227/103 +f 243/201/98 242/200/98 281/199/97 +f 281/199/97 282/202/97 243/201/98 +f 279/231/116 274/224/116 259/232/116 +f 259/232/116 258/233/116 279/231/116 +f 274/224/115 276/225/115 266/234/115 +f 266/234/115 259/232/115 274/224/115 +f 276/225/114 275/224/114 264/232/114 +f 264/232/114 266/234/114 276/225/114 +f 275/224/117 277/231/117 262/233/117 +f 262/233/117 264/232/117 275/224/117 +f 251/200/101 250/201/101 283/202/100 +f 283/202/100 284/199/100 251/200/101 +f 255/208/102 254/207/102 265/235/102 +f 265/235/102 263/236/102 255/208/102 +f 254/207/109 272/208/109 257/236/109 +f 257/236/109 265/235/109 254/207/109 +f 280/236/27 279/231/27 242/237/27 +f 242/237/27 241/238/27 280/236/27 +f 279/231/27 258/233/27 281/239/27 +f 281/239/27 242/237/27 279/231/27 +f 258/210/118 257/209/118 282/240/118 +f 282/240/118 281/241/118 258/210/118 +f 257/236/26 272/208/26 243/242/26 +f 243/242/26 282/238/26 257/236/26 +f 272/208/26 271/209/26 244/240/26 +f 244/240/26 243/242/26 272/208/26 +f 256/209/26 255/208/26 250/242/26 +f 250/242/26 249/240/26 256/209/26 +f 255/208/26 263/236/26 283/238/26 +f 283/238/26 250/242/26 255/208/26 +f 263/209/119 262/210/119 284/241/119 +f 284/241/119 283/240/119 263/209/119 +f 262/233/27 277/231/27 251/237/27 +f 251/237/27 284/239/27 262/233/27 +f 277/231/27 278/236/27 252/238/27 +f 252/238/27 251/237/27 277/231/27 +f 285/243/127 286/244/127 287/245/127 +f 287/245/127 288/246/127 285/243/127 +f 285/247/128 288/248/128 289/249/128 +f 289/249/128 290/250/128 285/247/128 +f 288/246/129 287/245/129 291/251/129 +f 291/251/129 289/252/129 288/246/129 +f 287/248/130 286/247/130 292/250/130 +f 292/250/130 291/249/130 287/248/130 +f 293/195/131 294/196/131 295/197/131 +f 295/197/131 296/198/131 293/195/131 +f 297/199/75 298/200/75 299/201/75 +f 299/201/75 300/202/75 297/199/75 +f 301/203/132 302/204/132 303/205/132 +f 303/205/132 304/206/132 301/203/132 +f 305/202/73 306/201/73 307/200/73 +f 307/200/73 308/199/73 305/202/73 +f 309/207/83 310/207/83 311/208/83 +f 311/208/83 312/209/83 309/207/83 +f 313/209/133 314/210/133 315/211/133 +f 302/212/134 316/196/134 317/213/134 +f 317/213/134 303/214/134 302/212/134 +f 318/210/135 319/209/135 320/211/135 +f 321/215/136 322/216/136 320/211/136 +f 320/211/136 319/209/136 321/215/136 +f 323/217/137 324/218/137 295/197/138 +f 295/197/138 294/196/138 323/217/137 +f 325/219/139 326/220/139 302/204/139 +f 302/204/139 301/203/139 325/219/139 +f 327/209/76 328/208/76 310/207/76 +f 310/207/76 309/207/76 327/209/76 +f 302/212/140 326/214/140 329/213/140 +f 329/213/140 316/196/140 302/212/140 +f 321/215/141 313/209/141 315/211/141 +f 315/211/141 322/216/141 321/215/141 +f 330/221/73 317/222/73 293/222/73 +f 293/222/73 296/221/73 330/221/73 +f 317/222/87 316/203/87 294/203/87 +f 294/203/87 293/222/87 317/222/87 +f 316/203/86 329/206/86 323/206/86 +f 323/206/86 294/203/86 316/203/86 +f 329/206/75 331/223/75 324/223/75 +f 324/223/75 323/206/75 329/206/75 +f 331/224/142 332/225/142 295/226/142 +f 295/226/142 324/224/142 331/224/142 +f 332/225/143 330/224/143 296/224/143 +f 296/224/143 295/226/143 332/225/143 +f 326/214/135 333/227/135 331/228/135 +f 331/228/135 329/213/135 326/214/135 +f 333/229/73 326/220/73 325/219/73 +f 325/219/73 334/221/73 333/229/73 +f 304/206/75 303/205/75 335/230/75 +f 335/230/75 336/223/75 304/206/75 +f 335/227/133 303/214/133 317/213/133 +f 317/213/133 330/228/133 335/227/133 +f 299/201/75 298/200/75 337/199/75 +f 337/199/75 338/202/75 299/201/75 +f 335/231/144 330/224/144 315/232/144 +f 315/232/144 314/233/144 335/231/144 +f 330/224/143 332/225/143 322/234/143 +f 322/234/143 315/232/143 330/224/143 +f 332/225/142 331/224/142 320/232/142 +f 320/232/142 322/234/142 332/225/142 +f 331/224/145 333/231/145 318/233/145 +f 318/233/145 320/232/145 331/224/145 +f 307/200/73 306/201/73 339/202/73 +f 339/202/73 340/199/73 307/200/73 +f 311/208/83 310/207/83 321/235/83 +f 321/235/83 319/236/83 311/208/83 +f 310/207/76 328/208/76 313/236/76 +f 313/236/76 321/235/76 310/207/76 +f 336/236/27 335/231/27 298/237/27 +f 298/237/27 297/238/27 336/236/27 +f 335/231/27 314/233/27 337/239/27 +f 337/239/27 298/237/27 335/231/27 +f 314/210/146 313/209/146 338/240/146 +f 338/240/146 337/241/146 314/210/146 +f 313/236/26 328/208/26 299/242/26 +f 299/242/26 338/238/26 313/236/26 +f 328/208/26 327/209/26 300/240/26 +f 300/240/26 299/242/26 328/208/26 +f 312/209/26 311/208/26 306/242/26 +f 306/242/26 305/240/26 312/209/26 +f 311/208/26 319/236/26 339/238/26 +f 339/238/26 306/242/26 311/208/26 +f 319/209/147 318/210/147 340/241/147 +f 340/241/147 339/240/147 319/209/147 +f 318/233/27 333/231/27 307/237/27 +f 307/237/27 340/239/27 318/233/27 +f 333/231/27 334/236/27 308/238/27 +f 308/238/27 307/237/27 333/231/27 +f 341/243/148 342/244/148 343/245/148 +f 343/245/148 344/246/148 341/243/148 +f 341/247/1 344/248/1 345/249/1 +f 345/249/1 346/250/1 341/247/1 +f 344/246/149 343/245/149 347/251/149 +f 347/251/149 345/252/149 344/246/149 +f 343/248/7 342/247/7 348/250/7 +f 348/250/7 347/249/7 343/248/7 +f 349/243/150 350/244/150 351/245/150 +f 351/245/150 352/246/150 349/243/150 +f 349/247/151 352/248/151 353/249/151 +f 353/249/151 354/250/151 349/247/151 +f 352/246/152 351/245/152 355/251/152 +f 355/251/152 353/252/152 352/246/152 +f 351/248/153 350/247/153 356/250/153 +f 356/250/153 355/249/153 351/248/153 +f 357/243/154 358/244/154 359/245/154 +f 359/245/154 360/246/154 357/243/154 +f 357/247/7 360/248/7 361/249/7 +f 361/249/7 362/250/7 357/247/7 +f 360/246/155 359/245/155 363/251/155 +f 363/251/155 361/252/155 360/246/155 +f 359/248/1 358/247/1 364/250/1 +f 364/250/1 363/249/1 359/248/1 +f 365/243/156 366/244/156 367/245/156 +f 367/245/156 368/246/156 365/243/156 +f 365/247/157 368/248/157 369/249/157 +f 369/249/157 370/250/157 365/247/157 +f 368/246/158 367/245/158 371/251/158 +f 371/251/158 369/252/158 368/246/158 +f 367/248/159 366/247/159 372/250/159 +f 372/250/159 371/249/159 367/248/159 +f 373/243/160 374/244/160 375/245/160 +f 375/245/160 376/246/160 373/243/160 +f 373/247/161 376/248/161 377/249/161 +f 377/249/161 378/250/161 373/247/161 +f 376/246/162 375/245/162 379/251/162 +f 379/251/162 377/252/162 376/246/162 +f 375/248/163 374/247/163 380/250/163 +f 380/250/163 379/249/163 375/248/163 +f 381/195/131 382/196/131 383/197/131 +f 383/197/131 384/198/131 381/195/131 +f 385/199/75 386/200/75 387/201/75 +f 387/201/75 388/202/75 385/199/75 +f 389/203/132 390/204/132 391/205/132 +f 391/205/132 392/206/132 389/203/132 +f 393/202/73 394/201/73 395/200/73 +f 395/200/73 396/199/73 393/202/73 +f 397/207/83 398/207/83 399/208/83 +f 399/208/83 400/209/83 397/207/83 +f 401/209/133 402/210/133 403/211/133 +f 390/212/134 404/196/134 405/213/134 +f 405/213/134 391/214/134 390/212/134 +f 406/210/135 407/209/135 408/211/135 +f 409/215/136 410/216/136 408/211/136 +f 408/211/136 407/209/136 409/215/136 +f 411/217/137 412/218/137 383/197/138 +f 383/197/138 382/196/138 411/217/137 +f 413/219/139 414/220/139 390/204/139 +f 390/204/139 389/203/139 413/219/139 +f 415/209/76 416/208/76 398/207/76 +f 398/207/76 397/207/76 415/209/76 +f 390/212/140 414/214/140 417/213/140 +f 417/213/140 404/196/140 390/212/140 +f 409/215/141 401/209/141 403/211/141 +f 403/211/141 410/216/141 409/215/141 +f 418/221/73 405/222/73 381/222/73 +f 381/222/73 384/221/73 418/221/73 +f 405/222/87 404/203/87 382/203/87 +f 382/203/87 381/222/87 405/222/87 +f 404/203/86 417/206/86 411/206/86 +f 411/206/86 382/203/86 404/203/86 +f 417/206/75 419/223/75 412/223/75 +f 412/223/75 411/206/75 417/206/75 +f 419/224/142 420/225/142 383/226/142 +f 383/226/142 412/224/142 419/224/142 +f 420/225/143 418/224/143 384/224/143 +f 384/224/143 383/226/143 420/225/143 +f 414/214/135 421/227/135 419/228/135 +f 419/228/135 417/213/135 414/214/135 +f 421/229/73 414/220/73 413/219/73 +f 413/219/73 422/221/73 421/229/73 +f 392/206/75 391/205/75 423/230/75 +f 423/230/75 424/223/75 392/206/75 +f 423/227/133 391/214/133 405/213/133 +f 405/213/133 418/228/133 423/227/133 +f 387/201/75 386/200/75 425/199/75 +f 425/199/75 426/202/75 387/201/75 +f 423/231/144 418/224/144 403/232/144 +f 403/232/144 402/233/144 423/231/144 +f 418/224/143 420/225/143 410/234/143 +f 410/234/143 403/232/143 418/224/143 +f 420/225/142 419/224/142 408/232/142 +f 408/232/142 410/234/142 420/225/142 +f 419/224/145 421/231/145 406/233/145 +f 406/233/145 408/232/145 419/224/145 +f 395/200/73 394/201/73 427/202/73 +f 427/202/73 428/199/73 395/200/73 +f 399/208/83 398/207/83 409/235/83 +f 409/235/83 407/236/83 399/208/83 +f 398/207/76 416/208/76 401/236/76 +f 401/236/76 409/235/76 398/207/76 +f 424/236/27 423/231/27 386/237/27 +f 386/237/27 385/238/27 424/236/27 +f 423/231/27 402/233/27 425/239/27 +f 425/239/27 386/237/27 423/231/27 +f 402/210/146 401/209/146 426/240/146 +f 426/240/146 425/241/146 402/210/146 +f 401/236/26 416/208/26 387/242/26 +f 387/242/26 426/238/26 401/236/26 +f 416/208/26 415/209/26 388/240/26 +f 388/240/26 387/242/26 416/208/26 +f 400/209/26 399/208/26 394/242/26 +f 394/242/26 393/240/26 400/209/26 +f 399/208/26 407/236/26 427/238/26 +f 427/238/26 394/242/26 399/208/26 +f 407/209/147 406/210/147 428/241/147 +f 428/241/147 427/240/147 407/209/147 +f 406/233/27 421/231/27 395/237/27 +f 395/237/27 428/239/27 406/233/27 +f 421/231/27 422/236/27 396/238/27 +f 396/238/27 395/237/27 421/231/27 +f 429/195/164 430/196/10 431/197/10 +f 431/197/10 432/198/164 429/195/164 +f 433/199/165 434/200/165 435/201/165 +f 435/201/165 436/202/165 433/199/165 +f 437/203/108 438/204/108 439/205/108 +f 439/205/108 440/206/108 437/203/108 +f 441/202/125 442/201/125 443/200/125 +f 443/200/125 444/199/125 441/202/125 +f 445/207/166 446/207/166 447/208/166 +f 447/208/166 448/209/166 445/207/166 +f 449/209/167 450/210/167 451/211/167 +f 438/212/168 452/196/168 453/213/168 +f 453/213/168 439/214/168 438/212/168 +f 454/210/169 455/209/169 456/211/169 +f 457/215/170 458/216/170 456/211/170 +f 456/211/170 455/209/170 457/215/170 +f 459/217/171 460/218/171 431/197/171 +f 431/197/171 430/196/171 459/217/171 +f 461/219/172 462/220/99 438/204/99 +f 438/204/99 437/203/99 461/219/172 +f 463/209/173 464/208/173 446/207/173 +f 446/207/173 445/207/173 463/209/173 +f 438/212/174 462/214/174 465/213/174 +f 465/213/174 452/196/174 438/212/174 +f 457/215/175 449/209/175 451/211/175 +f 451/211/175 458/216/175 457/215/175 +f 466/221/125 453/222/125 429/222/125 +f 429/222/125 432/221/125 466/221/125 +f 453/222/113 452/203/113 430/203/113 +f 430/203/113 429/222/113 453/222/113 +f 452/203/112 465/206/112 459/206/112 +f 459/206/112 430/203/112 452/203/112 +f 465/206/165 467/223/165 460/223/165 +f 460/223/165 459/206/165 465/206/165 +f 467/224/176 468/225/176 431/226/176 +f 431/226/176 460/224/176 467/224/176 +f 468/225/117 466/224/117 432/224/117 +f 432/224/117 431/226/117 468/225/117 +f 462/214/169 469/227/169 467/228/169 +f 467/228/169 465/213/169 462/214/169 +f 469/229/125 462/220/125 461/219/125 +f 461/219/125 470/221/125 469/229/125 +f 440/206/165 439/205/165 471/230/165 +f 471/230/165 472/223/165 440/206/165 +f 471/227/167 439/214/167 453/213/167 +f 453/213/167 466/228/167 471/227/167 +f 435/201/165 434/200/165 473/199/165 +f 473/199/165 474/202/165 435/201/165 +f 471/231/177 466/224/177 451/232/177 +f 451/232/177 450/233/177 471/231/177 +f 466/224/117 468/225/117 458/234/117 +f 458/234/117 451/232/117 466/224/117 +f 468/225/176 467/224/176 456/232/176 +f 456/232/176 458/234/176 468/225/176 +f 467/224/115 469/231/115 454/233/115 +f 454/233/115 456/232/115 467/224/115 +f 443/200/125 442/201/125 475/202/125 +f 475/202/125 476/199/125 443/200/125 +f 447/208/166 446/207/166 457/235/166 +f 457/235/166 455/236/166 447/208/166 +f 446/207/173 464/208/173 449/236/173 +f 449/236/173 457/235/173 446/207/173 +f 472/236/27 471/231/27 434/237/27 +f 434/237/27 433/238/27 472/236/27 +f 471/231/27 450/233/27 473/239/27 +f 473/239/27 434/237/27 471/231/27 +f 450/210/178 449/209/178 474/240/178 +f 474/240/178 473/241/178 450/210/178 +f 449/236/26 464/208/26 435/242/26 +f 435/242/26 474/238/26 449/236/26 +f 464/208/26 463/209/26 436/240/26 +f 436/240/26 435/242/26 464/208/26 +f 448/209/26 447/208/26 442/242/26 +f 442/242/26 441/240/26 448/209/26 +f 447/208/26 455/236/26 475/238/26 +f 475/238/26 442/242/26 447/208/26 +f 455/209/179 454/210/179 476/241/179 +f 476/241/179 475/240/179 455/209/179 +f 454/233/27 469/231/27 443/237/27 +f 443/237/27 476/239/27 454/233/27 +f 469/231/27 470/236/27 444/238/27 +f 444/238/27 443/237/27 469/231/27 +f 477/243/180 478/244/180 479/245/180 +f 479/245/180 480/246/180 477/243/180 +f 477/247/153 480/248/153 481/249/153 +f 481/249/153 482/250/153 477/247/153 +f 480/246/181 479/245/181 483/251/181 +f 483/251/181 481/252/182 480/246/181 +f 479/248/151 478/247/151 484/250/151 +f 484/250/151 483/249/151 479/248/151 +f 485/195/10 486/196/10 487/197/10 +f 487/197/10 488/198/10 485/195/10 +f 489/199/165 490/200/165 491/201/165 +f 491/201/165 492/202/165 489/199/165 +f 493/203/108 494/204/108 495/205/108 +f 495/205/108 496/206/108 493/203/108 +f 497/202/125 498/201/125 499/200/125 +f 499/200/125 500/199/125 497/202/125 +f 501/207/166 502/207/166 503/208/166 +f 503/208/166 504/209/166 501/207/166 +f 505/209/167 506/210/167 507/211/167 +f 494/212/168 508/196/168 509/213/168 +f 509/213/168 495/214/168 494/212/168 +f 510/210/169 511/209/169 512/211/169 +f 513/215/170 514/216/170 512/211/170 +f 512/211/170 511/209/170 513/215/170 +f 515/217/171 516/218/171 487/197/171 +f 487/197/171 486/196/171 515/217/171 +f 517/219/99 518/220/99 494/204/172 +f 494/204/172 493/203/99 517/219/99 +f 519/209/173 520/208/173 502/207/173 +f 502/207/173 501/207/173 519/209/173 +f 494/212/174 518/214/174 521/213/174 +f 521/213/174 508/196/174 494/212/174 +f 513/215/175 505/209/175 507/211/175 +f 507/211/175 514/216/175 513/215/175 +f 522/221/125 509/222/125 485/222/125 +f 485/222/125 488/221/125 522/221/125 +f 509/222/113 508/203/113 486/203/113 +f 486/203/113 485/222/113 509/222/113 +f 508/203/112 521/206/112 515/206/112 +f 515/206/112 486/203/112 508/203/112 +f 521/206/165 523/223/165 516/223/165 +f 516/223/165 515/206/165 521/206/165 +f 523/224/176 524/225/176 487/226/176 +f 487/226/176 516/224/176 523/224/176 +f 524/225/117 522/224/117 488/224/117 +f 488/224/117 487/226/117 524/225/117 +f 518/214/169 525/227/169 523/228/169 +f 523/228/169 521/213/169 518/214/169 +f 525/229/125 518/220/125 517/219/125 +f 517/219/125 526/221/125 525/229/125 +f 496/206/165 495/205/165 527/230/165 +f 527/230/165 528/223/165 496/206/165 +f 527/227/167 495/214/167 509/213/167 +f 509/213/167 522/228/167 527/227/167 +f 491/201/165 490/200/165 529/199/165 +f 529/199/165 530/202/165 491/201/165 +f 527/231/177 522/224/177 507/232/177 +f 507/232/177 506/233/177 527/231/177 +f 522/224/117 524/225/117 514/234/117 +f 514/234/117 507/232/117 522/224/117 +f 524/225/176 523/224/176 512/232/176 +f 512/232/176 514/234/176 524/225/176 +f 523/224/115 525/231/115 510/233/115 +f 510/233/115 512/232/115 523/224/115 +f 499/200/125 498/201/125 531/202/125 +f 531/202/125 532/199/125 499/200/125 +f 503/208/166 502/207/166 513/235/166 +f 513/235/166 511/236/166 503/208/166 +f 502/207/173 520/208/173 505/236/173 +f 505/236/173 513/235/173 502/207/173 +f 528/236/27 527/231/27 490/237/27 +f 490/237/27 489/238/27 528/236/27 +f 527/231/27 506/233/27 529/239/27 +f 529/239/27 490/237/27 527/231/27 +f 506/210/178 505/209/178 530/240/178 +f 530/240/178 529/241/178 506/210/178 +f 505/236/26 520/208/26 491/242/26 +f 491/242/26 530/238/26 505/236/26 +f 520/208/26 519/209/26 492/240/26 +f 492/240/26 491/242/26 520/208/26 +f 504/209/26 503/208/26 498/242/26 +f 498/242/26 497/240/26 504/209/26 +f 503/208/26 511/236/26 531/238/26 +f 531/238/26 498/242/26 503/208/26 +f 511/209/179 510/210/179 532/241/179 +f 532/241/179 531/240/179 511/209/179 +f 510/233/27 525/231/27 499/237/27 +f 499/237/27 532/239/27 510/233/27 +f 525/231/27 526/236/27 500/238/27 +f 500/238/27 499/237/27 525/231/27 +f 533/243/183 534/244/183 535/245/183 +f 535/245/183 536/246/183 533/243/183 +f 533/247/184 536/248/184 537/249/184 +f 537/249/184 538/250/184 533/247/184 +f 536/246/185 535/245/185 539/251/185 +f 539/251/185 537/252/185 536/246/185 +f 535/248/186 534/247/186 540/250/186 +f 540/250/186 539/249/186 535/248/186 +f 541/195/72 542/196/72 543/197/72 +f 543/197/72 544/198/72 541/195/72 +f 545/199/73 546/200/73 547/201/73 +f 547/201/73 548/202/73 545/199/73 +f 549/203/74 550/204/74 551/205/74 +f 551/205/74 552/206/74 549/203/74 +f 553/202/75 554/201/75 555/200/75 +f 555/200/75 556/199/75 553/202/75 +f 557/207/76 558/207/76 559/208/76 +f 559/208/76 560/209/76 557/207/76 +f 561/209/77 562/210/77 563/211/77 +f 550/212/78 564/196/78 565/213/78 +f 565/213/78 551/214/78 550/212/78 +f 566/210/79 567/209/79 568/211/79 +f 569/215/80 570/216/80 568/211/80 +f 568/211/80 567/209/80 569/215/80 +f 571/217/81 572/218/81 543/197/81 +f 543/197/81 542/196/81 571/217/81 +f 573/219/82 574/220/82 550/204/82 +f 550/204/82 549/203/82 573/219/82 +f 575/209/83 576/208/83 558/207/83 +f 558/207/83 557/207/83 575/209/83 +f 550/212/84 574/214/84 577/213/84 +f 577/213/84 564/196/84 550/212/84 +f 569/215/85 561/209/85 563/211/85 +f 563/211/85 570/216/85 569/215/85 +f 578/221/75 565/222/75 541/222/75 +f 541/222/75 544/221/75 578/221/75 +f 565/222/86 564/203/86 542/203/86 +f 542/203/86 541/222/86 565/222/86 +f 564/203/87 577/206/87 571/206/87 +f 571/206/87 542/203/87 564/203/87 +f 577/206/73 579/223/73 572/223/73 +f 572/223/73 571/206/73 577/206/73 +f 579/224/88 580/225/88 543/226/88 +f 543/226/88 572/224/88 579/224/88 +f 580/225/89 578/224/89 544/224/89 +f 544/224/89 543/226/89 580/225/89 +f 574/214/79 581/227/79 579/228/79 +f 579/228/79 577/213/79 574/214/79 +f 581/229/75 574/220/75 573/219/75 +f 573/219/75 582/221/75 581/229/75 +f 552/206/73 551/205/73 583/230/73 +f 583/230/73 584/223/73 552/206/73 +f 583/227/77 551/214/77 565/213/77 +f 565/213/77 578/228/77 583/227/77 +f 547/201/73 546/200/73 585/199/73 +f 585/199/73 586/202/73 547/201/73 +f 583/231/90 578/224/90 563/232/90 +f 563/232/90 562/233/90 583/231/90 +f 578/224/89 580/225/89 570/234/89 +f 570/234/89 563/232/89 578/224/89 +f 580/225/88 579/224/88 568/232/88 +f 568/232/88 570/234/88 580/225/88 +f 579/224/92 581/231/92 566/233/92 +f 566/233/92 568/232/92 579/224/92 +f 555/200/75 554/201/75 587/202/75 +f 587/202/75 588/199/75 555/200/75 +f 559/208/76 558/207/76 569/235/76 +f 569/235/76 567/236/76 559/208/76 +f 558/207/83 576/208/83 561/236/83 +f 561/236/83 569/235/83 558/207/83 +f 584/236/27 583/231/27 546/237/27 +f 546/237/27 545/238/27 584/236/27 +f 583/231/27 562/233/27 585/239/27 +f 585/239/27 546/237/27 583/231/27 +f 562/210/94 561/209/94 586/240/94 +f 586/240/94 585/241/94 562/210/94 +f 561/236/26 576/208/26 547/242/26 +f 547/242/26 586/238/26 561/236/26 +f 576/208/26 575/209/26 548/240/26 +f 548/240/26 547/242/26 576/208/26 +f 560/209/26 559/208/26 554/242/26 +f 554/242/26 553/240/26 560/209/26 +f 559/208/26 567/236/26 587/238/26 +f 587/238/26 554/242/26 559/208/26 +f 567/209/95 566/210/95 588/241/95 +f 588/241/95 587/240/95 567/209/95 +f 566/233/27 581/231/27 555/237/27 +f 555/237/27 588/239/27 566/233/27 +f 581/231/27 582/236/27 556/238/27 +f 556/238/27 555/237/27 581/231/27 +f 589/243/187 590/244/187 591/245/187 +f 591/245/187 592/246/187 589/243/187 +f 589/247/163 592/248/163 593/249/163 +f 593/249/163 594/250/163 589/247/163 +f 592/246/188 591/245/188 595/251/189 +f 595/251/189 593/252/188 592/246/188 +f 591/248/161 590/247/161 596/250/161 +f 596/250/161 595/249/161 591/248/161 +f 597/253/13 598/254/13 599/255/13 +f 599/255/13 600/256/13 597/253/13 +f 601/257/14 597/253/14 600/256/14 +f 600/256/14 602/258/14 601/257/14 +f 603/259/118 601/257/118 602/258/118 +f 602/258/118 604/260/15 603/259/118 +f 605/261/16 603/262/16 604/263/16 +f 604/263/16 606/264/16 605/261/16 +f 607/265/17 605/261/17 606/264/17 +f 606/264/17 608/266/17 607/265/17 +f 609/267/18 607/265/18 608/266/18 +f 608/266/18 610/268/18 609/267/18 +f 611/269/190 609/267/19 610/268/19 +f 610/268/19 612/270/190 611/269/190 +f 613/271/20 611/269/20 612/270/20 +f 612/270/20 614/272/20 613/271/20 +f 615/273/21 613/271/21 614/272/21 +f 614/272/21 616/274/21 615/273/21 +f 617/275/191 615/273/191 616/274/22 +f 616/274/22 618/276/191 617/275/191 +f 619/277/23 617/275/23 618/276/23 +f 618/276/23 620/278/23 619/277/23 +f 598/254/24 619/277/25 620/278/25 +f 620/278/25 599/255/24 598/254/24 +f 600/279/27 599/280/27 621/281/27 +f 621/281/27 622/282/27 600/279/27 +f 623/283/27 624/279/27 625/282/27 +f 625/282/27 626/284/27 623/283/27 +f 604/285/27 602/283/27 627/284/27 +f 627/284/27 628/285/27 604/285/27 +f 629/286/27 630/285/27 631/285/27 +f 631/285/27 632/287/27 629/286/27 +f 608/288/27 606/286/27 633/287/27 +f 633/287/27 634/289/27 608/288/27 +f 635/290/27 636/288/27 637/289/27 +f 637/289/27 638/291/27 635/290/27 +f 612/292/27 610/290/27 639/291/27 +f 639/291/27 640/293/27 612/292/27 +f 641/294/27 642/292/27 643/293/27 +f 643/293/27 644/295/27 641/294/27 +f 616/296/27 614/294/27 645/295/27 +f 645/295/27 646/297/27 616/296/27 +f 647/298/27 648/296/27 649/297/27 +f 649/297/27 650/299/27 647/298/27 +f 620/300/27 618/298/27 651/299/27 +f 651/299/27 652/300/27 620/300/27 +f 653/280/27 654/300/27 655/300/27 +f 655/300/27 656/281/27 653/280/27 +f 622/301/19 621/302/19 657/303/19 +f 657/303/19 658/304/19 622/301/19 +f 627/305/20 622/301/20 658/304/20 +f 658/304/20 659/306/20 627/305/20 +f 628/307/21 627/305/21 659/306/21 +f 659/306/21 660/308/21 628/307/21 +f 633/309/22 628/307/22 660/308/22 +f 660/308/22 661/310/22 633/309/22 +f 634/311/23 633/309/23 661/310/23 +f 661/310/23 662/312/23 634/311/23 +f 639/313/24 634/311/24 662/312/24 +f 662/312/24 663/314/24 639/313/24 +f 640/315/192 639/313/13 663/314/13 +f 663/314/13 664/316/192 640/315/192 +f 645/317/14 640/315/14 664/316/14 +f 664/316/14 665/318/14 645/317/14 +f 646/319/15 645/317/15 665/318/15 +f 665/318/15 666/320/15 646/319/15 +f 651/321/16 646/322/16 666/323/193 +f 666/323/193 667/324/16 651/321/16 +f 652/325/17 651/321/17 667/324/17 +f 667/324/17 668/326/17 652/325/17 +f 621/302/18 652/325/194 668/326/194 +f 668/326/194 657/303/18 621/302/18 +f 658/327/27 657/328/27 669/329/27 +f 659/330/27 658/327/27 669/329/27 +f 660/331/27 659/330/27 669/329/27 +f 661/332/27 660/331/27 669/329/27 +f 662/333/27 661/332/27 669/329/27 +f 663/334/27 662/333/27 669/329/27 +f 664/335/27 663/334/27 669/329/27 +f 665/336/27 664/335/27 669/329/27 +f 666/337/27 665/336/27 669/329/27 +f 667/338/27 666/337/27 669/329/27 +f 668/339/27 667/338/27 669/329/27 +f 657/328/27 668/339/27 669/329/27 +f 602/258/14 600/256/14 624/340/14 +f 624/340/14 623/341/14 602/258/14 +f 600/279/161 622/282/161 625/282/161 +f 625/282/161 624/279/161 600/279/161 +f 622/301/20 627/305/20 626/342/20 +f 626/342/20 625/343/20 622/301/20 +f 627/284/195 602/283/195 623/283/195 +f 623/283/195 626/284/195 627/284/195 +f 606/264/16 604/263/16 630/344/193 +f 630/344/193 629/345/16 606/264/16 +f 604/285/1 628/285/1 631/285/1 +f 631/285/1 630/285/1 604/285/1 +f 628/307/22 633/309/22 632/346/22 +f 632/346/22 631/347/22 628/307/22 +f 633/287/196 606/286/196 629/286/196 +f 629/286/196 632/287/196 633/287/196 +f 610/268/18 608/266/18 636/348/18 +f 636/348/18 635/349/18 610/268/18 +f 608/288/153 634/289/153 637/289/153 +f 637/289/153 636/288/153 608/288/153 +f 634/311/24 639/313/24 638/350/24 +f 638/350/24 637/351/24 634/311/24 +f 639/291/10 610/290/10 635/290/10 +f 635/290/10 638/291/10 639/291/10 +f 614/272/20 612/270/20 642/352/20 +f 642/352/20 641/353/20 614/272/20 +f 612/292/163 640/293/163 643/293/163 +f 643/293/163 642/292/163 612/292/163 +f 640/315/14 645/317/14 644/354/14 +f 644/354/14 643/355/14 640/315/14 +f 645/295/197 614/294/197 641/294/197 +f 641/294/197 644/295/197 645/295/197 +f 618/276/191 616/274/22 648/356/22 +f 648/356/22 647/357/22 618/276/191 +f 616/296/7 646/297/7 649/297/7 +f 649/297/7 648/296/7 616/296/7 +f 646/322/16 651/321/16 650/358/16 +f 650/358/16 649/359/16 646/322/16 +f 651/299/198 618/298/198 647/298/198 +f 647/298/198 650/299/198 651/299/198 +f 599/255/24 620/278/25 654/360/24 +f 654/360/24 653/361/24 599/255/24 +f 620/300/151 652/300/151 655/300/151 +f 655/300/151 654/300/151 620/300/151 +f 652/325/194 621/302/18 656/362/18 +f 656/362/18 655/363/194 652/325/194 +f 621/281/4 599/280/4 653/280/4 +f 653/280/4 656/281/4 621/281/4 +f 670/364/199 671/365/199 672/366/199 +f 672/366/199 673/367/199 670/364/199 +f 671/368/200 674/369/200 675/370/200 +f 675/370/200 672/371/200 671/368/200 +f 674/365/201 676/364/201 677/367/201 +f 677/367/201 675/366/201 674/365/201 +f 676/372/202 670/373/202 673/374/202 +f 673/374/202 677/375/202 676/372/202 +f 678/376/7 679/377/7 680/378/7 +f 680/378/7 681/379/7 678/376/7 +f 679/380/4 682/381/4 683/382/4 +f 683/382/4 680/383/4 679/380/4 +f 684/384/1 685/385/1 686/386/1 +f 686/386/1 687/387/1 684/384/1 +f 688/388/10 678/389/10 681/390/10 +f 681/390/10 689/391/10 688/388/10 +f 676/392/26 674/393/26 683/394/26 +f 683/394/26 689/395/26 676/392/26 +f 683/394/26 674/393/26 671/396/26 +f 671/396/26 680/397/26 683/394/26 +f 680/397/26 671/396/26 670/398/26 +f 670/398/26 681/399/26 680/397/26 +f 681/399/26 670/398/26 676/392/26 +f 676/392/26 689/395/26 681/399/26 +f 673/400/27 672/401/27 690/402/27 +f 690/402/27 691/403/27 673/400/27 +f 672/401/27 675/404/27 692/405/27 +f 692/405/27 690/402/27 672/401/27 +f 675/404/27 677/406/27 693/407/27 +f 693/407/27 692/405/27 675/404/27 +f 677/406/27 673/400/27 691/403/27 +f 691/403/27 693/407/27 677/406/27 +f 688/408/1 689/409/1 694/410/1 +f 694/410/1 695/411/1 688/408/1 +f 689/409/1 683/412/1 696/413/1 +f 696/413/1 694/410/1 689/409/1 +f 683/412/1 682/414/1 697/415/1 +f 697/415/1 696/413/1 683/412/1 +f 695/416/10 694/417/10 686/418/10 +f 686/418/10 685/419/10 695/416/10 +f 694/420/27 696/421/27 687/422/27 +f 687/422/27 686/423/27 694/420/27 +f 696/417/4 697/416/4 684/419/4 +f 684/419/4 687/418/4 696/417/4 +f 698/243/150 699/246/150 700/245/150 +f 700/245/150 701/244/150 698/243/150 +f 698/247/153 702/250/153 703/249/153 +f 703/249/153 699/248/153 698/247/153 +f 699/246/152 703/252/152 704/251/152 +f 704/251/152 700/245/152 699/246/152 +f 700/248/151 704/249/151 705/250/151 +f 705/250/151 701/247/151 700/248/151 +f 706/424/203 707/425/204 708/426/205 +f 708/426/205 709/427/27 706/424/203 +f 710/428/1 711/429/1 707/429/1 +f 707/429/1 706/428/1 710/428/1 +f 712/430/206 708/430/206 707/431/206 +f 707/431/206 711/431/206 712/430/206 +f 706/424/203 709/427/27 713/426/207 +f 713/426/207 714/425/208 706/424/203 +f 710/428/1 706/428/1 714/432/1 +f 714/432/1 715/432/1 710/428/1 +f 714/431/209 713/430/209 716/430/209 +f 716/430/209 715/431/209 714/431/209 +f 717/433/210 709/427/27 708/426/205 +f 708/426/205 718/434/211 717/433/210 +f 719/428/7 717/428/7 718/429/7 +f 718/429/7 720/429/7 719/428/7 +f 718/435/212 708/430/212 712/430/212 +f 712/430/212 720/435/212 718/435/212 +f 717/433/210 721/434/213 713/426/207 +f 713/426/207 709/427/27 717/433/210 +f 719/428/7 722/432/7 721/432/7 +f 721/432/7 717/428/7 719/428/7 +f 716/430/214 713/430/214 721/435/214 +f 721/435/214 722/435/214 716/430/214 +f 723/436/4 724/437/4 725/438/4 +f 725/438/4 726/439/4 723/436/4 +f 724/437/215 723/436/215 727/440/215 +f 727/440/215 728/441/215 724/437/215 +f 723/436/216 726/439/216 729/440/216 +f 729/440/216 727/440/216 723/436/216 +f 730/442/217 728/441/217 727/440/217 +f 727/440/217 731/443/217 730/442/217 +f 732/444/216 731/443/216 727/440/216 +f 727/440/216 729/445/216 732/444/216 +f 733/446/10 734/447/10 735/448/10 +f 735/448/10 736/449/10 733/446/10 +f 734/447/218 737/442/218 738/443/218 +f 738/443/218 735/448/218 734/447/218 +f 735/448/219 738/443/219 739/450/219 +f 739/450/219 736/449/219 735/448/219 +f 738/443/220 737/442/220 730/442/220 +f 730/442/220 731/443/220 738/443/220 +f 732/444/219 739/444/219 738/443/219 +f 738/443/219 731/443/219 732/444/219 +f 740/436/4 741/437/4 742/438/4 +f 742/438/4 743/439/4 740/436/4 +f 741/437/221 740/436/221 744/440/221 +f 744/440/221 745/441/221 741/437/221 +f 740/436/222 743/439/222 746/440/222 +f 746/440/222 744/440/222 740/436/222 +f 747/442/223 745/441/223 744/440/223 +f 744/440/223 748/443/223 747/442/223 +f 749/444/222 748/443/222 744/440/222 +f 744/440/222 746/445/222 749/444/222 +f 750/446/10 751/447/10 752/448/10 +f 752/448/10 753/449/10 750/446/10 +f 751/447/224 754/442/224 755/443/224 +f 755/443/224 752/448/224 751/447/224 +f 752/448/222 755/443/222 756/450/222 +f 756/450/222 753/449/222 752/448/222 +f 755/443/225 754/442/225 747/442/225 +f 747/442/225 748/443/225 755/443/225 +f 749/444/222 756/444/222 755/443/222 +f 755/443/222 748/443/222 749/444/222 +f 757/436/4 758/437/4 759/438/4 +f 759/438/4 760/439/4 757/436/4 +f 758/437/226 757/436/226 761/440/226 +f 761/440/226 762/441/227 758/437/226 +f 757/436/228 760/439/228 763/440/229 +f 763/440/229 761/440/229 757/436/228 +f 764/442/230 762/441/230 761/440/230 +f 761/440/230 765/443/230 764/442/230 +f 766/444/228 765/443/228 761/440/228 +f 761/440/228 763/445/228 766/444/228 +f 767/446/10 768/447/10 769/448/10 +f 769/448/10 770/449/10 767/446/10 +f 768/447/231 771/442/232 772/443/231 +f 772/443/231 769/448/232 768/447/231 +f 769/448/229 772/443/229 773/450/229 +f 773/450/229 770/449/229 769/448/229 +f 772/443/233 771/442/233 764/442/233 +f 764/442/233 765/443/233 772/443/233 +f 766/444/229 773/444/229 772/443/229 +f 772/443/229 765/443/229 766/444/229 +f 774/436/4 775/437/4 776/438/4 +f 776/438/4 777/439/4 774/436/4 +f 775/437/226 774/436/227 778/440/227 +f 778/440/227 779/441/227 775/437/226 +f 774/436/229 777/439/229 780/440/229 +f 780/440/229 778/440/229 774/436/229 +f 781/442/230 779/441/230 778/440/230 +f 778/440/230 782/443/230 781/442/230 +f 783/444/229 782/443/229 778/440/229 +f 778/440/229 780/445/229 783/444/229 +f 784/446/10 785/447/10 786/448/10 +f 786/448/10 787/449/10 784/446/10 +f 785/447/231 788/442/232 789/443/232 +f 789/443/232 786/448/231 785/447/231 +f 786/448/228 789/443/229 790/450/229 +f 790/450/229 787/449/228 786/448/228 +f 789/443/233 788/442/233 781/442/233 +f 781/442/233 782/443/233 789/443/233 +f 783/444/229 790/444/229 789/443/229 +f 789/443/229 782/443/229 783/444/229 +f 791/436/4 792/437/4 793/438/4 +f 793/438/4 794/439/4 791/436/4 +f 792/437/234 791/436/234 795/440/234 +f 795/440/234 796/441/234 792/437/234 +f 791/436/235 794/439/235 797/440/235 +f 797/440/235 795/440/235 791/436/235 +f 798/442/236 796/441/236 795/440/236 +f 795/440/236 799/443/236 798/442/236 +f 800/444/235 799/443/235 795/440/235 +f 795/440/235 797/445/235 800/444/235 +f 801/446/10 802/447/10 803/448/10 +f 803/448/10 804/449/10 801/446/10 +f 802/447/237 805/442/237 806/443/237 +f 806/443/237 803/448/237 802/447/237 +f 803/448/235 806/443/235 807/450/235 +f 807/450/235 804/449/235 803/448/235 +f 806/443/238 805/442/238 798/442/238 +f 798/442/238 799/443/238 806/443/238 +f 800/444/239 807/444/239 806/443/239 +f 806/443/239 799/443/239 800/444/239 +f 808/436/4 809/437/4 810/438/4 +f 810/438/4 811/439/4 808/436/4 +f 809/437/240 808/436/240 812/440/240 +f 812/440/240 813/441/240 809/437/240 +f 808/436/241 811/439/241 814/440/241 +f 814/440/241 812/440/241 808/436/241 +f 815/442/236 813/441/236 812/440/236 +f 812/440/236 816/443/236 815/442/236 +f 817/444/241 816/443/241 812/440/241 +f 812/440/241 814/445/241 817/444/241 +f 818/446/10 819/447/10 820/448/10 +f 820/448/10 821/449/10 818/446/10 +f 819/447/242 822/442/242 823/443/242 +f 823/443/242 820/448/242 819/447/242 +f 820/448/243 823/443/241 824/450/241 +f 824/450/241 821/449/243 820/448/243 +f 823/443/238 822/442/238 815/442/238 +f 815/442/238 816/443/238 823/443/238 +f 817/444/241 824/444/241 823/443/241 +f 823/443/241 816/443/241 817/444/241 +f 825/436/4 826/437/4 827/438/4 +f 827/438/4 828/439/4 825/436/4 +f 826/437/215 825/436/215 829/440/215 +f 829/440/215 830/441/215 826/437/215 +f 825/436/216 828/439/216 831/440/216 +f 831/440/216 829/440/216 825/436/216 +f 832/442/217 830/441/217 829/440/217 +f 829/440/217 833/443/217 832/442/217 +f 834/444/216 833/443/216 829/440/216 +f 829/440/216 831/445/216 834/444/216 +f 835/446/10 836/447/10 837/448/10 +f 837/448/10 838/449/10 835/446/10 +f 836/447/218 839/442/218 840/443/218 +f 840/443/218 837/448/218 836/447/218 +f 837/448/219 840/443/219 841/450/219 +f 841/450/219 838/449/219 837/448/219 +f 840/443/220 839/442/220 832/442/220 +f 832/442/220 833/443/220 840/443/220 +f 834/444/219 841/444/219 840/443/219 +f 840/443/219 833/443/219 834/444/219 +f 842/436/4 843/437/4 844/438/4 +f 844/438/4 845/439/4 842/436/4 +f 843/437/215 842/436/215 846/440/215 +f 846/440/215 847/441/215 843/437/215 +f 842/436/216 845/439/216 848/440/216 +f 848/440/216 846/440/216 842/436/216 +f 849/442/217 847/441/217 846/440/217 +f 846/440/217 850/443/217 849/442/217 +f 851/444/216 850/443/216 846/440/216 +f 846/440/216 848/445/216 851/444/216 +f 852/446/10 853/447/10 854/448/10 +f 854/448/10 855/449/10 852/446/10 +f 853/447/218 856/442/218 857/443/218 +f 857/443/218 854/448/218 853/447/218 +f 854/448/219 857/443/219 858/450/219 +f 858/450/219 855/449/219 854/448/219 +f 857/443/220 856/442/220 849/442/220 +f 849/442/220 850/443/220 857/443/220 +f 851/444/219 858/444/219 857/443/219 +f 857/443/219 850/443/219 851/444/219 +f 859/438/4 860/437/4 861/436/4 +f 861/436/4 862/439/4 859/438/4 +f 863/440/244 861/436/244 860/437/244 +f 860/437/244 864/441/244 863/440/244 +f 865/440/245 862/439/245 861/436/245 +f 861/436/245 863/440/245 865/440/245 +f 863/440/246 864/441/246 866/442/246 +f 866/442/246 867/443/246 863/440/246 +f 868/444/245 865/445/245 863/440/245 +f 863/440/245 867/443/245 868/444/245 +f 869/448/10 870/447/10 871/446/10 +f 871/446/10 872/449/10 869/448/10 +f 873/443/247 874/442/247 870/447/247 +f 870/447/247 869/448/247 873/443/247 +f 875/450/248 873/443/248 869/448/248 +f 869/448/248 872/449/248 875/450/248 +f 866/442/249 874/442/249 873/443/249 +f 873/443/249 867/443/249 866/442/249 +f 868/444/248 867/443/248 873/443/248 +f 873/443/248 875/444/248 868/444/248 +f 876/438/4 877/437/4 878/436/4 +f 878/436/4 879/439/4 876/438/4 +f 880/440/250 878/436/250 877/437/250 +f 877/437/250 881/441/250 880/440/250 +f 882/440/251 879/439/251 878/436/251 +f 878/436/251 880/440/251 882/440/251 +f 880/440/252 881/441/252 883/442/252 +f 883/442/252 884/443/252 880/440/252 +f 885/444/251 882/445/251 880/440/251 +f 880/440/251 884/443/251 885/444/251 +f 886/448/10 887/447/10 888/446/10 +f 888/446/10 889/449/10 886/448/10 +f 890/443/253 891/442/253 887/447/253 +f 887/447/253 886/448/253 890/443/253 +f 892/450/251 890/443/251 886/448/254 +f 886/448/254 889/449/254 892/450/251 +f 883/442/255 891/442/255 890/443/255 +f 890/443/255 884/443/255 883/442/255 +f 885/444/251 884/443/251 890/443/251 +f 890/443/251 892/444/251 885/444/251 +f 893/438/4 894/437/4 895/436/4 +f 895/436/4 896/439/4 893/438/4 +f 897/440/256 895/436/257 894/437/256 +f 894/437/256 898/441/256 897/440/256 +f 899/440/258 896/439/258 895/436/258 +f 895/436/258 897/440/258 899/440/258 +f 897/440/259 898/441/259 900/442/259 +f 900/442/259 901/443/259 897/440/259 +f 902/444/258 899/445/258 897/440/258 +f 897/440/258 901/443/258 902/444/258 +f 903/448/10 904/447/10 905/446/10 +f 905/446/10 906/449/10 903/448/10 +f 907/443/260 908/442/260 904/447/260 +f 904/447/260 903/448/260 907/443/260 +f 909/450/261 907/443/261 903/448/261 +f 903/448/261 906/449/261 909/450/261 +f 900/442/262 908/442/262 907/443/262 +f 907/443/262 901/443/262 900/442/262 +f 902/444/261 901/443/261 907/443/261 +f 907/443/261 909/444/261 902/444/261 +f 910/438/4 911/437/4 912/436/4 +f 912/436/4 913/439/4 910/438/4 +f 914/440/257 912/436/257 911/437/257 +f 911/437/257 915/441/256 914/440/257 +f 916/440/261 913/439/261 912/436/261 +f 912/436/261 914/440/261 916/440/261 +f 914/440/259 915/441/259 917/442/259 +f 917/442/259 918/443/259 914/440/259 +f 919/444/261 916/445/261 914/440/261 +f 914/440/261 918/443/261 919/444/261 +f 920/448/10 921/447/10 922/446/10 +f 922/446/10 923/449/10 920/448/10 +f 924/443/263 925/442/260 921/447/263 +f 921/447/263 920/448/263 924/443/263 +f 926/450/258 924/443/258 920/448/261 +f 920/448/261 923/449/261 926/450/258 +f 917/442/262 925/442/262 924/443/262 +f 924/443/262 918/443/262 917/442/262 +f 919/444/261 918/443/261 924/443/261 +f 924/443/261 926/444/261 919/444/261 +f 927/438/4 928/437/4 929/436/4 +f 929/436/4 930/439/4 927/438/4 +f 931/440/264 929/436/264 928/437/264 +f 928/437/264 932/441/264 931/440/264 +f 933/440/265 930/439/265 929/436/265 +f 929/436/265 931/440/265 933/440/265 +f 931/440/266 932/441/266 934/442/266 +f 934/442/266 935/443/266 931/440/266 +f 936/444/265 933/445/265 931/440/265 +f 931/440/265 935/443/265 936/444/265 +f 937/448/10 938/447/10 939/446/10 +f 939/446/10 940/449/10 937/448/10 +f 941/443/267 942/442/267 938/447/267 +f 938/447/267 937/448/267 941/443/267 +f 943/450/265 941/443/265 937/448/265 +f 937/448/265 940/449/265 943/450/265 +f 934/442/268 942/442/268 941/443/268 +f 941/443/268 935/443/268 934/442/268 +f 936/444/269 935/443/269 941/443/269 +f 941/443/269 943/444/269 936/444/269 +f 944/438/4 945/437/4 946/436/4 +f 946/436/4 947/439/4 944/438/4 +f 948/440/270 946/436/270 945/437/270 +f 945/437/270 949/441/270 948/440/270 +f 950/440/271 947/439/271 946/436/271 +f 946/436/271 948/440/271 950/440/271 +f 948/440/266 949/441/266 951/442/266 +f 951/442/266 952/443/266 948/440/266 +f 953/444/271 950/445/271 948/440/271 +f 948/440/271 952/443/271 953/444/271 +f 954/448/10 955/447/10 956/446/10 +f 956/446/10 957/449/10 954/448/10 +f 958/443/272 959/442/272 955/447/272 +f 955/447/272 954/448/272 958/443/272 +f 960/450/271 958/443/271 954/448/273 +f 954/448/273 957/449/273 960/450/271 +f 951/442/268 959/442/268 958/443/268 +f 958/443/268 952/443/268 951/442/268 +f 953/444/271 952/443/271 958/443/271 +f 958/443/271 960/444/271 953/444/271 +f 961/438/4 962/437/4 963/436/4 +f 963/436/4 964/439/4 961/438/4 +f 965/440/244 963/436/244 962/437/244 +f 962/437/244 966/441/244 965/440/244 +f 967/440/245 964/439/245 963/436/245 +f 963/436/245 965/440/245 967/440/245 +f 965/440/246 966/441/246 968/442/274 +f 968/442/274 969/443/246 965/440/246 +f 970/444/245 967/445/245 965/440/245 +f 965/440/245 969/443/245 970/444/245 +f 971/448/10 972/447/10 973/446/10 +f 973/446/10 974/449/10 971/448/10 +f 975/443/247 976/442/247 972/447/247 +f 972/447/247 971/448/247 975/443/247 +f 977/450/248 975/443/248 971/448/248 +f 971/448/248 974/449/248 977/450/248 +f 968/442/275 976/442/249 975/443/249 +f 975/443/249 969/443/249 968/442/275 +f 970/444/248 969/443/248 975/443/248 +f 975/443/248 977/444/248 970/444/248 +f 978/438/4 979/437/4 980/436/4 +f 980/436/4 981/439/4 978/438/4 +f 982/440/244 980/436/244 979/437/244 +f 979/437/244 983/441/244 982/440/244 +f 984/440/245 981/439/245 980/436/245 +f 980/436/245 982/440/245 984/440/245 +f 982/440/246 983/441/246 985/442/246 +f 985/442/246 986/443/246 982/440/246 +f 987/444/245 984/445/245 982/440/245 +f 982/440/245 986/443/245 987/444/245 +f 988/448/10 989/447/10 990/446/10 +f 990/446/10 991/449/10 988/448/10 +f 992/443/247 993/442/247 989/447/247 +f 989/447/247 988/448/247 992/443/247 +f 994/450/248 992/443/248 988/448/248 +f 988/448/248 991/449/248 994/450/248 +f 985/442/249 993/442/249 992/443/249 +f 992/443/249 986/443/249 985/442/249 +f 987/444/248 986/443/248 992/443/248 +f 992/443/248 994/444/248 987/444/248 +f 995/436/4 996/437/4 997/438/4 +f 997/438/4 998/439/4 995/436/4 +f 996/437/276 995/436/276 999/440/276 +f 999/440/276 1000/441/276 996/437/276 +f 995/436/277 998/439/277 1001/440/278 +f 1001/440/278 999/440/278 995/436/277 +f 1002/442/279 1000/441/279 999/440/279 +f 999/440/279 1003/443/279 1002/442/279 +f 1004/444/277 1003/443/277 999/440/277 +f 999/440/277 1001/445/277 1004/444/277 +f 1005/446/10 1006/447/10 1007/448/10 +f 1007/448/10 1008/449/10 1005/446/10 +f 1006/447/280 1009/442/280 1010/443/280 +f 1010/443/280 1007/448/280 1006/447/280 +f 1007/448/278 1010/443/278 1011/450/278 +f 1011/450/278 1008/449/278 1007/448/278 +f 1010/443/281 1009/442/281 1002/442/281 +f 1002/442/281 1003/443/281 1010/443/281 +f 1004/444/278 1011/444/278 1010/443/278 +f 1010/443/278 1003/443/278 1004/444/278 +f 1012/438/4 1013/437/4 1014/436/4 +f 1014/436/4 1015/439/4 1012/438/4 +f 1016/440/282 1014/436/282 1013/437/282 +f 1013/437/282 1017/441/282 1016/440/282 +f 1018/440/283 1015/439/283 1014/436/283 +f 1014/436/283 1016/440/283 1018/440/283 +f 1016/440/284 1017/441/284 1019/442/284 +f 1019/442/284 1020/443/284 1016/440/284 +f 1021/444/283 1018/445/283 1016/440/283 +f 1016/440/283 1020/443/283 1021/444/283 +f 1022/448/10 1023/447/10 1024/446/10 +f 1024/446/10 1025/449/10 1022/448/10 +f 1026/443/285 1027/442/285 1023/447/285 +f 1023/447/285 1022/448/285 1026/443/285 +f 1028/450/286 1026/443/286 1022/448/286 +f 1022/448/286 1025/449/286 1028/450/286 +f 1019/442/287 1027/442/287 1026/443/287 +f 1026/443/287 1020/443/287 1019/442/287 +f 1021/444/286 1020/443/286 1026/443/286 +f 1026/443/286 1028/444/286 1021/444/286 +f 1029/243/187 1030/244/187 1031/245/187 +f 1031/245/187 1032/246/187 1029/243/187 +f 1029/247/163 1032/248/163 1033/249/163 +f 1033/249/163 1034/250/163 1029/247/163 +f 1032/246/188 1031/245/188 1035/251/188 +f 1035/251/188 1033/252/188 1032/246/188 +f 1031/248/161 1030/247/161 1036/250/161 +f 1036/250/161 1035/249/161 1031/248/161 +f 1037/451/27 1038/452/27 1039/453/27 +f 1039/453/27 1040/454/27 1037/451/27 +f 1041/455/7 1042/456/7 1038/457/7 +f 1038/457/7 1037/458/7 1041/455/7 +f 1042/459/4 1043/460/4 1039/461/4 +f 1039/461/4 1038/462/4 1042/459/4 +f 1043/456/1 1044/455/1 1040/458/1 +f 1040/458/1 1039/457/1 1043/456/1 +f 1044/460/10 1041/459/10 1037/462/10 +f 1037/462/10 1040/461/10 1044/460/10 +f 1045/451/27 1046/452/27 1047/453/27 +f 1047/453/27 1048/454/27 1045/451/27 +f 1049/455/7 1050/456/7 1046/457/7 +f 1046/457/7 1045/458/7 1049/455/7 +f 1050/459/4 1051/460/4 1047/461/4 +f 1047/461/4 1046/462/4 1050/459/4 +f 1051/456/1 1052/455/1 1048/458/1 +f 1048/458/1 1047/457/1 1051/456/1 +f 1052/460/10 1049/459/10 1045/462/10 +f 1045/462/10 1048/461/10 1052/460/10 +f 1053/451/27 1054/452/27 1055/453/27 +f 1055/453/27 1056/454/27 1053/451/27 +f 1057/455/7 1058/456/7 1054/457/7 +f 1054/457/7 1053/458/7 1057/455/7 +f 1058/459/4 1059/460/4 1055/461/4 +f 1055/461/4 1054/462/4 1058/459/4 +f 1059/456/1 1060/455/1 1056/458/1 +f 1056/458/1 1055/457/1 1059/456/1 +f 1060/460/10 1057/459/10 1053/462/10 +f 1053/462/10 1056/461/10 1060/460/10 +f 1061/451/27 1062/452/27 1063/453/27 +f 1063/453/27 1064/454/27 1061/451/27 +f 1065/455/10 1066/456/10 1062/457/10 +f 1062/457/10 1061/458/10 1065/455/10 +f 1066/459/7 1067/460/7 1063/461/7 +f 1063/461/7 1062/462/7 1066/459/7 +f 1067/456/4 1068/455/4 1064/458/4 +f 1064/458/4 1063/457/4 1067/456/4 +f 1068/460/1 1065/459/1 1061/462/1 +f 1061/462/1 1064/461/1 1068/460/1 +f 1069/451/27 1070/452/27 1071/453/27 +f 1071/453/27 1072/454/27 1069/451/27 +f 1073/455/10 1074/456/10 1070/457/10 +f 1070/457/10 1069/458/10 1073/455/10 +f 1074/459/7 1075/460/7 1071/461/7 +f 1071/461/7 1070/462/7 1074/459/7 +f 1075/456/4 1076/455/4 1072/458/4 +f 1072/458/4 1071/457/4 1075/456/4 +f 1076/460/1 1073/459/1 1069/462/1 +f 1069/462/1 1072/461/1 1076/460/1 +f 1077/451/27 1078/452/27 1079/453/27 +f 1079/453/27 1080/454/27 1077/451/27 +f 1081/455/10 1082/456/10 1078/457/10 +f 1078/457/10 1077/458/10 1081/455/10 +f 1082/459/7 1083/460/7 1079/461/7 +f 1079/461/7 1078/462/7 1082/459/7 +f 1083/456/4 1084/455/4 1080/458/4 +f 1080/458/4 1079/457/4 1083/456/4 +f 1084/460/1 1081/459/1 1077/462/1 +f 1077/462/1 1080/461/1 1084/460/1 +f 1085/451/27 1086/452/27 1087/453/27 +f 1087/453/27 1088/454/27 1085/451/27 +f 1089/455/10 1090/456/10 1086/457/10 +f 1086/457/10 1085/458/10 1089/455/10 +f 1090/459/7 1091/460/7 1087/461/7 +f 1087/461/7 1086/462/7 1090/459/7 +f 1091/456/4 1092/455/4 1088/458/4 +f 1088/458/4 1087/457/4 1091/456/4 +f 1092/460/1 1089/459/1 1085/462/1 +f 1085/462/1 1088/461/1 1092/460/1 +f 1093/451/27 1094/452/27 1095/453/27 +f 1095/453/27 1096/454/27 1093/451/27 +f 1097/455/7 1098/456/7 1094/457/7 +f 1094/457/7 1093/458/7 1097/455/7 +f 1098/459/4 1099/460/4 1095/461/4 +f 1095/461/4 1094/462/4 1098/459/4 +f 1099/456/1 1100/455/1 1096/458/1 +f 1096/458/1 1095/457/1 1099/456/1 +f 1100/460/10 1097/459/10 1093/462/10 +f 1093/462/10 1096/461/10 1100/460/10 +f 1101/451/27 1102/452/27 1103/453/27 +f 1103/453/27 1104/454/27 1101/451/27 +f 1105/455/7 1106/456/7 1102/457/7 +f 1102/457/7 1101/458/7 1105/455/7 +f 1106/459/4 1107/460/4 1103/461/4 +f 1103/461/4 1102/462/4 1106/459/4 +f 1107/456/1 1108/455/1 1104/458/1 +f 1104/458/1 1103/457/1 1107/456/1 +f 1108/460/10 1105/459/10 1101/462/10 +f 1101/462/10 1104/461/10 1108/460/10 +f 1109/451/27 1110/452/27 1111/453/27 +f 1111/453/27 1112/454/27 1109/451/27 +f 1113/455/7 1114/456/7 1110/457/7 +f 1110/457/7 1109/458/7 1113/455/7 +f 1114/459/4 1115/460/4 1111/461/4 +f 1111/461/4 1110/462/4 1114/459/4 +f 1115/456/1 1116/455/1 1112/458/1 +f 1112/458/1 1111/457/1 1115/456/1 +f 1116/460/10 1113/459/10 1109/462/10 +f 1109/462/10 1112/461/10 1116/460/10 +f 1117/451/27 1118/452/27 1119/453/27 +f 1119/453/27 1120/454/27 1117/451/27 +f 1121/455/7 1122/456/7 1118/457/7 +f 1118/457/7 1117/458/7 1121/455/7 +f 1122/459/4 1123/460/4 1119/461/4 +f 1119/461/4 1118/462/4 1122/459/4 +f 1123/456/1 1124/455/1 1120/458/1 +f 1120/458/1 1119/457/1 1123/456/1 +f 1124/460/10 1121/459/10 1117/462/10 +f 1117/462/10 1120/461/10 1124/460/10 +f 1125/451/27 1126/452/27 1127/453/27 +f 1127/453/27 1128/454/27 1125/451/27 +f 1129/455/7 1130/456/7 1126/457/7 +f 1126/457/7 1125/458/7 1129/455/7 +f 1130/459/4 1131/460/4 1127/461/4 +f 1127/461/4 1126/462/4 1130/459/4 +f 1131/456/1 1132/455/1 1128/458/1 +f 1128/458/1 1127/457/1 1131/456/1 +f 1132/460/10 1129/459/10 1125/462/10 +f 1125/462/10 1128/461/10 1132/460/10 +f 1133/451/27 1134/452/27 1135/453/27 +f 1135/453/27 1136/454/27 1133/451/27 +f 1137/455/7 1138/456/7 1134/457/7 +f 1134/457/7 1133/458/7 1137/455/7 +f 1138/459/4 1139/460/4 1135/461/4 +f 1135/461/4 1134/462/4 1138/459/4 +f 1139/456/1 1140/455/1 1136/458/1 +f 1136/458/1 1135/457/1 1139/456/1 +f 1140/460/10 1137/459/10 1133/462/10 +f 1133/462/10 1136/461/10 1140/460/10 +f 1141/451/27 1142/452/27 1143/453/27 +f 1143/453/27 1144/454/27 1141/451/27 +f 1145/455/7 1146/456/7 1142/457/7 +f 1142/457/7 1141/458/7 1145/455/7 +f 1146/459/4 1147/460/4 1143/461/4 +f 1143/461/4 1142/462/4 1146/459/4 +f 1147/456/1 1148/455/1 1144/458/1 +f 1144/458/1 1143/457/1 1147/456/1 +f 1148/460/10 1145/459/10 1141/462/10 +f 1141/462/10 1144/461/10 1148/460/10 +f 1149/451/27 1150/452/27 1151/453/27 +f 1151/453/27 1152/454/27 1149/451/27 +f 1153/455/7 1154/456/7 1150/457/7 +f 1150/457/7 1149/458/7 1153/455/7 +f 1154/459/4 1155/460/4 1151/461/4 +f 1151/461/4 1150/462/4 1154/459/4 +f 1155/456/1 1156/455/1 1152/458/1 +f 1152/458/1 1151/457/1 1155/456/1 +f 1156/460/10 1153/459/10 1149/462/10 +f 1149/462/10 1152/461/10 1156/460/10 +f 1157/451/27 1158/452/27 1159/453/27 +f 1159/453/27 1160/454/27 1157/451/27 +f 1161/455/7 1162/456/7 1158/457/7 +f 1158/457/7 1157/458/7 1161/455/7 +f 1162/459/4 1163/460/4 1159/461/4 +f 1159/461/4 1158/462/4 1162/459/4 +f 1163/456/1 1164/455/1 1160/458/1 +f 1160/458/1 1159/457/1 1163/456/1 +f 1164/460/10 1161/459/10 1157/462/10 +f 1157/462/10 1160/461/10 1164/460/10 +f 1165/451/27 1166/452/27 1167/453/27 +f 1167/453/27 1168/454/27 1165/451/27 +f 1169/455/7 1170/456/7 1166/457/7 +f 1166/457/7 1165/458/7 1169/455/7 +f 1170/459/4 1171/460/4 1167/461/4 +f 1167/461/4 1166/462/4 1170/459/4 +f 1171/456/1 1172/455/1 1168/458/1 +f 1168/458/1 1167/457/1 1171/456/1 +f 1172/460/10 1169/459/10 1165/462/10 +f 1165/462/10 1168/461/10 1172/460/10 +f 1173/451/27 1174/452/27 1175/453/27 +f 1175/453/27 1176/454/27 1173/451/27 +f 1177/455/7 1178/456/7 1174/457/7 +f 1174/457/7 1173/458/7 1177/455/7 +f 1178/459/4 1179/460/4 1175/461/4 +f 1175/461/4 1174/462/4 1178/459/4 +f 1179/456/1 1180/455/1 1176/458/1 +f 1176/458/1 1175/457/1 1179/456/1 +f 1180/460/10 1177/459/10 1173/462/10 +f 1173/462/10 1176/461/10 1180/460/10 +f 1181/451/27 1182/452/27 1183/453/27 +f 1183/453/27 1184/454/27 1181/451/27 +f 1185/455/7 1186/456/7 1182/457/7 +f 1182/457/7 1181/458/7 1185/455/7 +f 1186/459/4 1187/460/4 1183/461/4 +f 1183/461/4 1182/462/4 1186/459/4 +f 1187/456/1 1188/455/1 1184/458/1 +f 1184/458/1 1183/457/1 1187/456/1 +f 1188/460/10 1185/459/10 1181/462/10 +f 1181/462/10 1184/461/10 1188/460/10 +f 1189/451/27 1190/452/27 1191/453/27 +f 1191/453/27 1192/454/27 1189/451/27 +f 1193/455/7 1194/456/7 1190/457/7 +f 1190/457/7 1189/458/7 1193/455/7 +f 1194/459/4 1195/460/4 1191/461/4 +f 1191/461/4 1190/462/4 1194/459/4 +f 1195/456/1 1196/455/1 1192/458/1 +f 1192/458/1 1191/457/1 1195/456/1 +f 1196/460/10 1193/459/10 1189/462/10 +f 1189/462/10 1192/461/10 1196/460/10 +f 1197/451/27 1198/452/27 1199/453/27 +f 1199/453/27 1200/454/27 1197/451/27 +f 1201/455/7 1202/456/7 1198/457/7 +f 1198/457/7 1197/458/7 1201/455/7 +f 1202/459/4 1203/460/4 1199/461/4 +f 1199/461/4 1198/462/4 1202/459/4 +f 1203/456/1 1204/455/1 1200/458/1 +f 1200/458/1 1199/457/1 1203/456/1 +f 1204/460/10 1201/459/10 1197/462/10 +f 1197/462/10 1200/461/10 1204/460/10 +f 1205/451/27 1206/452/27 1207/453/27 +f 1207/453/27 1208/454/27 1205/451/27 +f 1209/455/7 1210/456/7 1206/457/7 +f 1206/457/7 1205/458/7 1209/455/7 +f 1210/459/4 1211/460/4 1207/461/4 +f 1207/461/4 1206/462/4 1210/459/4 +f 1211/456/1 1212/455/1 1208/458/1 +f 1208/458/1 1207/457/1 1211/456/1 +f 1212/460/10 1209/459/10 1205/462/10 +f 1205/462/10 1208/461/10 1212/460/10 +f 1213/451/27 1214/452/27 1215/453/27 +f 1215/453/27 1216/454/27 1213/451/27 +f 1217/455/7 1218/456/7 1214/457/7 +f 1214/457/7 1213/458/7 1217/455/7 +f 1218/459/4 1219/460/4 1215/461/4 +f 1215/461/4 1214/462/4 1218/459/4 +f 1219/456/1 1220/455/1 1216/458/1 +f 1216/458/1 1215/457/1 1219/456/1 +f 1220/460/10 1217/459/10 1213/462/10 +f 1213/462/10 1216/461/10 1220/460/10 +f 1221/451/27 1222/452/27 1223/453/27 +f 1223/453/27 1224/454/27 1221/451/27 +f 1225/455/7 1226/456/7 1222/457/7 +f 1222/457/7 1221/458/7 1225/455/7 +f 1226/459/4 1227/460/4 1223/461/4 +f 1223/461/4 1222/462/4 1226/459/4 +f 1227/456/1 1228/455/1 1224/458/1 +f 1224/458/1 1223/457/1 1227/456/1 +f 1228/460/10 1225/459/10 1221/462/10 +f 1221/462/10 1224/461/10 1228/460/10 +f 1229/451/27 1230/452/27 1231/453/27 +f 1231/453/27 1232/454/27 1229/451/27 +f 1233/455/4 1234/456/4 1230/457/4 +f 1230/457/4 1229/458/4 1233/455/4 +f 1234/459/1 1235/460/1 1231/461/1 +f 1231/461/1 1230/462/1 1234/459/1 +f 1235/456/10 1236/455/10 1232/458/10 +f 1232/458/10 1231/457/10 1235/456/10 +f 1236/460/7 1233/459/7 1229/462/7 +f 1229/462/7 1232/461/7 1236/460/7 +f 1237/451/27 1238/452/27 1239/453/27 +f 1239/453/27 1240/454/27 1237/451/27 +f 1241/455/4 1242/456/4 1238/457/4 +f 1238/457/4 1237/458/4 1241/455/4 +f 1242/459/1 1243/460/1 1239/461/1 +f 1239/461/1 1238/462/1 1242/459/1 +f 1243/456/10 1244/455/10 1240/458/10 +f 1240/458/10 1239/457/10 1243/456/10 +f 1244/460/7 1241/459/7 1237/462/7 +f 1237/462/7 1240/461/7 1244/460/7 +f 1245/451/27 1246/452/27 1247/453/27 +f 1247/453/27 1248/454/27 1245/451/27 +f 1249/455/4 1250/456/4 1246/457/4 +f 1246/457/4 1245/458/4 1249/455/4 +f 1250/459/1 1251/460/1 1247/461/1 +f 1247/461/1 1246/462/1 1250/459/1 +f 1251/456/10 1252/455/10 1248/458/10 +f 1248/458/10 1247/457/10 1251/456/10 +f 1252/460/7 1249/459/7 1245/462/7 +f 1245/462/7 1248/461/7 1252/460/7 +f 1253/451/27 1254/452/27 1255/453/27 +f 1255/453/27 1256/454/27 1253/451/27 +f 1257/455/4 1258/456/4 1254/457/4 +f 1254/457/4 1253/458/4 1257/455/4 +f 1258/459/1 1259/460/1 1255/461/1 +f 1255/461/1 1254/462/1 1258/459/1 +f 1259/456/10 1260/455/10 1256/458/10 +f 1256/458/10 1255/457/10 1259/456/10 +f 1260/460/7 1257/459/7 1253/462/7 +f 1253/462/7 1256/461/7 1260/460/7 +f 1261/451/27 1262/452/27 1263/453/27 +f 1263/453/27 1264/454/27 1261/451/27 +f 1265/455/7 1266/456/7 1262/457/7 +f 1262/457/7 1261/458/7 1265/455/7 +f 1266/459/4 1267/460/4 1263/461/4 +f 1263/461/4 1262/462/4 1266/459/4 +f 1267/456/1 1268/455/1 1264/458/1 +f 1264/458/1 1263/457/1 1267/456/1 +f 1268/460/10 1265/459/10 1261/462/10 +f 1261/462/10 1264/461/10 1268/460/10 +f 1269/451/27 1270/452/27 1271/453/27 +f 1271/453/27 1272/454/27 1269/451/27 +f 1273/455/7 1274/456/7 1270/457/7 +f 1270/457/7 1269/458/7 1273/455/7 +f 1274/459/4 1275/460/4 1271/461/4 +f 1271/461/4 1270/462/4 1274/459/4 +f 1275/456/1 1276/455/1 1272/458/1 +f 1272/458/1 1271/457/1 1275/456/1 +f 1276/460/10 1273/459/10 1269/462/10 +f 1269/462/10 1272/461/10 1276/460/10 +f 1277/451/27 1278/452/27 1279/453/27 +f 1279/453/27 1280/454/27 1277/451/27 +f 1281/455/7 1282/456/7 1278/457/7 +f 1278/457/7 1277/458/7 1281/455/7 +f 1282/459/4 1283/460/4 1279/461/4 +f 1279/461/4 1278/462/4 1282/459/4 +f 1283/456/1 1284/455/1 1280/458/1 +f 1280/458/1 1279/457/1 1283/456/1 +f 1284/460/10 1281/459/10 1277/462/10 +f 1277/462/10 1280/461/10 1284/460/10 +f 1285/451/27 1286/452/27 1287/453/27 +f 1287/453/27 1288/454/27 1285/451/27 +f 1289/455/7 1290/456/7 1286/457/7 +f 1286/457/7 1285/458/7 1289/455/7 +f 1290/459/4 1291/460/4 1287/461/4 +f 1287/461/4 1286/462/4 1290/459/4 +f 1291/456/1 1292/455/1 1288/458/1 +f 1288/458/1 1287/457/1 1291/456/1 +f 1292/460/10 1289/459/10 1285/462/10 +f 1285/462/10 1288/461/10 1292/460/10 +f 1293/451/27 1294/452/27 1295/453/27 +f 1295/453/27 1296/454/27 1293/451/27 +f 1297/455/7 1298/456/7 1294/457/7 +f 1294/457/7 1293/458/7 1297/455/7 +f 1298/459/4 1299/460/4 1295/461/4 +f 1295/461/4 1294/462/4 1298/459/4 +f 1299/456/1 1300/455/1 1296/458/1 +f 1296/458/1 1295/457/1 1299/456/1 +f 1300/460/10 1297/459/10 1293/462/10 +f 1293/462/10 1296/461/10 1300/460/10 +f 1301/451/27 1302/452/27 1303/453/27 +f 1303/453/27 1304/454/27 1301/451/27 +f 1305/455/7 1306/456/7 1302/457/7 +f 1302/457/7 1301/458/7 1305/455/7 +f 1306/459/4 1307/460/4 1303/461/4 +f 1303/461/4 1302/462/4 1306/459/4 +f 1307/456/1 1308/455/1 1304/458/1 +f 1304/458/1 1303/457/1 1307/456/1 +f 1308/460/10 1305/459/10 1301/462/10 +f 1301/462/10 1304/461/10 1308/460/10 +f 1309/451/27 1310/452/27 1311/453/27 +f 1311/453/27 1312/454/27 1309/451/27 +f 1313/455/7 1314/456/7 1310/457/7 +f 1310/457/7 1309/458/7 1313/455/7 +f 1314/459/4 1315/460/4 1311/461/4 +f 1311/461/4 1310/462/4 1314/459/4 +f 1315/456/1 1316/455/1 1312/458/1 +f 1312/458/1 1311/457/1 1315/456/1 +f 1316/460/10 1313/459/10 1309/462/10 +f 1309/462/10 1312/461/10 1316/460/10 +f 1317/451/27 1318/452/27 1319/453/27 +f 1319/453/27 1320/454/27 1317/451/27 +f 1321/455/4 1322/456/4 1318/457/4 +f 1318/457/4 1317/458/4 1321/455/4 +f 1322/459/1 1323/460/1 1319/461/1 +f 1319/461/1 1318/462/1 1322/459/1 +f 1323/456/10 1324/455/10 1320/458/10 +f 1320/458/10 1319/457/10 1323/456/10 +f 1324/460/7 1321/459/7 1317/462/7 +f 1317/462/7 1320/461/7 1324/460/7 +f 1325/451/27 1326/452/27 1327/453/27 +f 1327/453/27 1328/454/27 1325/451/27 +f 1329/455/4 1330/456/4 1326/457/4 +f 1326/457/4 1325/458/4 1329/455/4 +f 1330/459/1 1331/460/1 1327/461/1 +f 1327/461/1 1326/462/1 1330/459/1 +f 1331/456/10 1332/455/10 1328/458/10 +f 1328/458/10 1327/457/10 1331/456/10 +f 1332/460/7 1329/459/7 1325/462/7 +f 1325/462/7 1328/461/7 1332/460/7 +f 1333/451/27 1334/452/27 1335/453/27 +f 1335/453/27 1336/454/27 1333/451/27 +f 1337/455/4 1338/456/4 1334/457/4 +f 1334/457/4 1333/458/4 1337/455/4 +f 1338/459/1 1339/460/1 1335/461/1 +f 1335/461/1 1334/462/1 1338/459/1 +f 1339/456/10 1340/455/10 1336/458/10 +f 1336/458/10 1335/457/10 1339/456/10 +f 1340/460/7 1337/459/7 1333/462/7 +f 1333/462/7 1336/461/7 1340/460/7 +f 1341/451/27 1342/452/27 1343/453/27 +f 1343/453/27 1344/454/27 1341/451/27 +f 1345/455/4 1346/456/4 1342/457/4 +f 1342/457/4 1341/458/4 1345/455/4 +f 1346/459/1 1347/460/1 1343/461/1 +f 1343/461/1 1342/462/1 1346/459/1 +f 1347/456/10 1348/455/10 1344/458/10 +f 1344/458/10 1343/457/10 1347/456/10 +f 1348/460/7 1345/459/7 1341/462/7 +f 1341/462/7 1344/461/7 1348/460/7 +f 1349/451/27 1350/452/27 1351/453/27 +f 1351/453/27 1352/454/27 1349/451/27 +f 1353/455/4 1354/456/4 1350/457/4 +f 1350/457/4 1349/458/4 1353/455/4 +f 1354/459/1 1355/460/1 1351/461/1 +f 1351/461/1 1350/462/1 1354/459/1 +f 1355/456/10 1356/455/10 1352/458/10 +f 1352/458/10 1351/457/10 1355/456/10 +f 1356/460/7 1353/459/7 1349/462/7 +f 1349/462/7 1352/461/7 1356/460/7 +f 1357/463/27 1358/464/27 1359/465/27 +f 1359/465/27 1360/466/27 1357/463/27 +f 1361/467/4 1362/468/4 1359/469/4 +f 1359/469/4 1358/470/4 1361/467/4 +f 1363/471/4 1364/472/4 1365/473/4 +f 1365/473/4 1366/474/4 1363/471/4 +f 1367/475/1 1368/476/1 1369/477/1 +f 1369/477/1 1370/478/1 1367/475/1 +f 1371/479/27 1372/480/288 1373/480/288 +f 1373/480/288 1374/479/27 1371/479/27 +f 1375/476/7 1376/475/7 1377/481/7 +f 1377/481/7 1378/482/7 1375/476/7 +f 1379/483/26 1380/484/289 1381/485/289 +f 1381/485/289 1382/483/26 1379/483/26 +f 1383/486/4 1384/487/4 1385/488/4 +f 1386/489/4 1387/490/4 1372/491/4 +f 1372/491/4 1371/492/4 1386/489/4 +f 1388/493/4 1389/494/4 1390/495/4 +f 1391/496/4 1392/497/4 1390/495/4 +f 1390/495/4 1389/494/4 1391/496/4 +f 1393/498/4 1394/499/4 1365/473/4 +f 1365/473/4 1364/472/4 1393/498/4 +f 1395/500/290 1371/479/27 1374/479/27 +f 1374/479/27 1396/500/290 1395/500/290 +f 1397/501/291 1379/483/26 1382/483/26 +f 1382/483/26 1398/501/291 1397/501/291 +f 1395/502/4 1399/503/4 1386/489/4 +f 1386/489/4 1371/492/4 1395/502/4 +f 1391/496/4 1383/486/4 1385/488/4 +f 1385/488/4 1392/497/4 1391/496/4 +f 1387/504/7 1363/504/7 1366/505/7 +f 1366/505/7 1400/505/7 1387/504/7 +f 1386/506/292 1364/506/292 1363/504/292 +f 1363/504/292 1387/504/292 1386/506/292 +f 1399/507/293 1393/507/293 1364/506/293 +f 1364/506/293 1386/506/293 1399/507/293 +f 1401/508/1 1394/508/1 1393/507/1 +f 1393/507/1 1399/507/1 1401/508/1 +f 1402/509/210 1365/510/210 1394/511/210 +f 1394/511/210 1401/512/210 1402/509/210 +f 1400/513/294 1366/514/294 1365/510/294 +f 1365/510/294 1402/509/294 1400/513/294 +f 1403/515/4 1401/516/4 1399/503/4 +f 1399/503/4 1395/502/4 1403/515/4 +f 1395/500/7 1396/500/7 1404/517/7 +f 1404/517/7 1403/517/7 1395/500/7 +f 1372/480/1 1405/518/1 1406/518/1 +f 1406/518/1 1373/480/1 1372/480/1 +f 1405/519/4 1372/491/4 1387/490/4 +f 1387/490/4 1400/474/4 1405/519/4 +f 1367/475/1 1407/481/1 1408/482/1 +f 1408/482/1 1368/476/1 1367/475/1 +f 1400/513/295 1385/513/295 1384/485/295 +f 1384/485/295 1405/520/295 1400/513/295 +f 1402/509/294 1392/509/294 1385/513/294 +f 1385/513/294 1400/513/294 1402/509/294 +f 1401/512/210 1390/512/210 1392/509/210 +f 1392/509/210 1402/509/210 1401/512/210 +f 1403/521/296 1388/521/296 1390/512/296 +f 1390/512/296 1401/512/296 1403/521/296 +f 1375/476/7 1409/477/7 1410/478/7 +f 1410/478/7 1376/475/7 1375/476/7 +f 1379/483/289 1391/522/289 1389/523/289 +f 1389/523/289 1380/484/289 1379/483/289 +f 1397/501/291 1383/524/291 1391/522/291 +f 1391/522/291 1379/483/291 1397/501/291 +f 1405/520/27 1367/525/27 1370/526/27 +f 1370/526/27 1406/527/27 1405/520/27 +f 1384/485/27 1407/528/27 1367/525/27 +f 1367/525/27 1405/520/27 1384/485/27 +f 1383/486/4 1408/486/4 1407/487/4 +f 1407/487/4 1384/487/4 1383/486/4 +f 1397/501/26 1368/501/26 1408/524/26 +f 1408/524/26 1383/524/26 1397/501/26 +f 1398/501/26 1369/501/26 1368/501/26 +f 1368/501/26 1397/501/26 1398/501/26 +f 1380/484/26 1375/484/26 1378/485/26 +f 1378/485/26 1381/485/26 1380/484/26 +f 1389/523/26 1409/523/26 1375/484/26 +f 1375/484/26 1380/484/26 1389/523/26 +f 1388/493/4 1410/529/4 1409/530/4 +f 1409/530/4 1389/494/4 1388/493/4 +f 1403/521/27 1376/531/27 1410/532/27 +f 1410/532/27 1388/521/27 1403/521/27 +f 1404/533/27 1377/531/27 1376/531/27 +f 1376/531/27 1403/521/27 1404/533/27 +f 1411/471/4 1412/472/4 1413/473/4 +f 1413/473/4 1414/474/4 1411/471/4 +f 1415/475/1 1416/476/1 1417/477/1 +f 1417/477/1 1418/478/1 1415/475/1 +f 1419/479/27 1420/480/288 1421/480/288 +f 1421/480/288 1422/479/27 1419/479/27 +f 1423/476/7 1424/475/7 1425/481/7 +f 1425/481/7 1426/482/7 1423/476/7 +f 1427/483/26 1428/484/289 1429/485/289 +f 1429/485/289 1430/483/26 1427/483/26 +f 1431/486/4 1432/487/4 1433/488/4 +f 1434/489/4 1435/490/4 1420/491/4 +f 1420/491/4 1419/492/4 1434/489/4 +f 1436/493/4 1437/494/4 1438/495/4 +f 1439/496/4 1440/497/4 1438/495/4 +f 1438/495/4 1437/494/4 1439/496/4 +f 1441/498/4 1442/499/4 1413/473/4 +f 1413/473/4 1412/472/4 1441/498/4 +f 1443/500/290 1419/479/27 1422/479/27 +f 1422/479/27 1444/500/290 1443/500/290 +f 1445/501/291 1427/483/26 1430/483/26 +f 1430/483/26 1446/501/291 1445/501/291 +f 1443/502/4 1447/503/4 1434/489/4 +f 1434/489/4 1419/492/4 1443/502/4 +f 1439/496/4 1431/486/4 1433/488/4 +f 1433/488/4 1440/497/4 1439/496/4 +f 1435/504/7 1411/504/7 1414/505/7 +f 1414/505/7 1448/505/7 1435/504/7 +f 1434/506/292 1412/506/292 1411/504/292 +f 1411/504/292 1435/504/292 1434/506/292 +f 1447/507/293 1441/507/293 1412/506/293 +f 1412/506/293 1434/506/293 1447/507/293 +f 1449/508/1 1442/508/1 1441/507/1 +f 1441/507/1 1447/507/1 1449/508/1 +f 1450/509/210 1413/510/210 1442/511/210 +f 1442/511/210 1449/512/210 1450/509/210 +f 1448/513/294 1414/514/294 1413/510/294 +f 1413/510/294 1450/509/294 1448/513/294 +f 1451/515/4 1449/516/4 1447/503/4 +f 1447/503/4 1443/502/4 1451/515/4 +f 1443/500/7 1444/500/7 1452/517/7 +f 1452/517/7 1451/517/7 1443/500/7 +f 1420/480/1 1453/518/1 1454/518/1 +f 1454/518/1 1421/480/1 1420/480/1 +f 1453/519/4 1420/491/4 1435/490/4 +f 1435/490/4 1448/474/4 1453/519/4 +f 1415/475/1 1455/481/1 1456/482/1 +f 1456/482/1 1416/476/1 1415/475/1 +f 1448/513/295 1433/513/295 1432/485/295 +f 1432/485/295 1453/520/295 1448/513/295 +f 1450/509/294 1440/509/294 1433/513/294 +f 1433/513/294 1448/513/294 1450/509/294 +f 1449/512/210 1438/512/210 1440/509/210 +f 1440/509/210 1450/509/210 1449/512/210 +f 1451/521/296 1436/521/296 1438/512/296 +f 1438/512/296 1449/512/296 1451/521/296 +f 1423/476/7 1457/477/7 1458/478/7 +f 1458/478/7 1424/475/7 1423/476/7 +f 1427/483/289 1439/522/289 1437/523/289 +f 1437/523/289 1428/484/289 1427/483/289 +f 1445/501/291 1431/524/291 1439/522/291 +f 1439/522/291 1427/483/291 1445/501/291 +f 1453/520/27 1415/525/27 1418/526/27 +f 1418/526/27 1454/527/27 1453/520/27 +f 1432/485/27 1455/528/27 1415/525/27 +f 1415/525/27 1453/520/27 1432/485/27 +f 1431/486/4 1456/486/4 1455/487/4 +f 1455/487/4 1432/487/4 1431/486/4 +f 1445/501/26 1416/501/26 1456/524/26 +f 1456/524/26 1431/524/26 1445/501/26 +f 1446/501/26 1417/501/26 1416/501/26 +f 1416/501/26 1445/501/26 1446/501/26 +f 1428/484/26 1423/484/26 1426/485/26 +f 1426/485/26 1429/485/26 1428/484/26 +f 1437/523/26 1457/523/26 1423/484/26 +f 1423/484/26 1428/484/26 1437/523/26 +f 1436/493/4 1458/529/4 1457/530/4 +f 1457/530/4 1437/494/4 1436/493/4 +f 1451/521/27 1424/531/27 1458/532/27 +f 1458/532/27 1436/521/27 1451/521/27 +f 1452/533/27 1425/531/27 1424/531/27 +f 1424/531/27 1451/521/27 1452/533/27 +f 1459/471/4 1460/472/4 1461/473/4 +f 1461/473/4 1462/474/4 1459/471/4 +f 1463/475/1 1464/476/1 1465/477/1 +f 1465/477/1 1466/478/1 1463/475/1 +f 1467/479/27 1468/480/288 1469/480/288 +f 1469/480/288 1470/479/27 1467/479/27 +f 1471/476/7 1472/475/7 1473/481/7 +f 1473/481/7 1474/482/7 1471/476/7 +f 1475/483/26 1476/484/289 1477/485/289 +f 1477/485/289 1478/483/26 1475/483/26 +f 1479/486/4 1480/487/4 1481/488/4 +f 1482/489/4 1483/490/4 1468/491/4 +f 1468/491/4 1467/492/4 1482/489/4 +f 1484/493/4 1485/494/4 1486/495/4 +f 1487/496/4 1488/497/4 1486/495/4 +f 1486/495/4 1485/494/4 1487/496/4 +f 1489/498/4 1490/499/4 1461/473/4 +f 1461/473/4 1460/472/4 1489/498/4 +f 1491/500/290 1467/479/27 1470/479/27 +f 1470/479/27 1492/500/290 1491/500/290 +f 1493/501/291 1475/483/26 1478/483/26 +f 1478/483/26 1494/501/291 1493/501/291 +f 1491/502/4 1495/503/4 1482/489/4 +f 1482/489/4 1467/492/4 1491/502/4 +f 1487/496/4 1479/486/4 1481/488/4 +f 1481/488/4 1488/497/4 1487/496/4 +f 1483/504/7 1459/504/7 1462/505/7 +f 1462/505/7 1496/505/7 1483/504/7 +f 1482/506/292 1460/506/292 1459/504/292 +f 1459/504/292 1483/504/292 1482/506/292 +f 1495/507/293 1489/507/293 1460/506/293 +f 1460/506/293 1482/506/293 1495/507/293 +f 1497/508/1 1490/508/1 1489/507/1 +f 1489/507/1 1495/507/1 1497/508/1 +f 1498/509/210 1461/510/210 1490/511/210 +f 1490/511/210 1497/512/210 1498/509/210 +f 1496/513/294 1462/514/294 1461/510/294 +f 1461/510/294 1498/509/294 1496/513/294 +f 1499/515/4 1497/516/4 1495/503/4 +f 1495/503/4 1491/502/4 1499/515/4 +f 1491/500/7 1492/500/7 1500/517/7 +f 1500/517/7 1499/517/7 1491/500/7 +f 1468/480/1 1501/518/1 1502/518/1 +f 1502/518/1 1469/480/1 1468/480/1 +f 1501/519/4 1468/491/4 1483/490/4 +f 1483/490/4 1496/474/4 1501/519/4 +f 1463/475/1 1503/481/1 1504/482/1 +f 1504/482/1 1464/476/1 1463/475/1 +f 1496/513/295 1481/513/295 1480/485/295 +f 1480/485/295 1501/520/295 1496/513/295 +f 1498/509/294 1488/509/294 1481/513/294 +f 1481/513/294 1496/513/294 1498/509/294 +f 1497/512/210 1486/512/210 1488/509/210 +f 1488/509/210 1498/509/210 1497/512/210 +f 1499/521/296 1484/521/296 1486/512/296 +f 1486/512/296 1497/512/296 1499/521/296 +f 1471/476/7 1505/477/7 1506/478/7 +f 1506/478/7 1472/475/7 1471/476/7 +f 1475/483/289 1487/522/289 1485/523/289 +f 1485/523/289 1476/484/289 1475/483/289 +f 1493/501/291 1479/524/291 1487/522/291 +f 1487/522/291 1475/483/291 1493/501/291 +f 1501/520/27 1463/525/27 1466/526/27 +f 1466/526/27 1502/527/27 1501/520/27 +f 1480/485/27 1503/528/27 1463/525/27 +f 1463/525/27 1501/520/27 1480/485/27 +f 1479/486/4 1504/486/4 1503/487/4 +f 1503/487/4 1480/487/4 1479/486/4 +f 1493/501/26 1464/501/26 1504/524/26 +f 1504/524/26 1479/524/26 1493/501/26 +f 1494/501/26 1465/501/26 1464/501/26 +f 1464/501/26 1493/501/26 1494/501/26 +f 1476/484/26 1471/484/26 1474/485/26 +f 1474/485/26 1477/485/26 1476/484/26 +f 1485/523/26 1505/523/26 1471/484/26 +f 1471/484/26 1476/484/26 1485/523/26 +f 1484/493/4 1506/529/4 1505/530/4 +f 1505/530/4 1485/494/4 1484/493/4 +f 1499/521/27 1472/531/27 1506/532/27 +f 1506/532/27 1484/521/27 1499/521/27 +f 1500/533/27 1473/531/27 1472/531/27 +f 1472/531/27 1499/521/27 1500/533/27 +f 1507/471/4 1508/472/4 1509/473/4 +f 1509/473/4 1510/474/4 1507/471/4 +f 1511/475/1 1512/476/1 1513/477/1 +f 1513/477/1 1514/478/1 1511/475/1 +f 1515/479/27 1516/480/288 1517/480/288 +f 1517/480/288 1518/479/27 1515/479/27 +f 1519/476/7 1520/475/7 1521/481/7 +f 1521/481/7 1522/482/7 1519/476/7 +f 1523/483/26 1524/484/289 1525/485/289 +f 1525/485/289 1526/483/26 1523/483/26 +f 1527/486/4 1528/487/4 1529/488/4 +f 1530/489/4 1531/490/4 1516/491/4 +f 1516/491/4 1515/492/4 1530/489/4 +f 1532/493/4 1533/494/4 1534/495/4 +f 1535/496/4 1536/497/4 1534/495/4 +f 1534/495/4 1533/494/4 1535/496/4 +f 1537/498/4 1538/499/4 1509/473/4 +f 1509/473/4 1508/472/4 1537/498/4 +f 1539/500/290 1515/479/27 1518/479/27 +f 1518/479/27 1540/500/290 1539/500/290 +f 1541/501/291 1523/483/26 1526/483/26 +f 1526/483/26 1542/501/291 1541/501/291 +f 1539/502/4 1543/503/4 1530/489/4 +f 1530/489/4 1515/492/4 1539/502/4 +f 1535/496/4 1527/486/4 1529/488/4 +f 1529/488/4 1536/497/4 1535/496/4 +f 1531/504/7 1507/504/7 1510/505/7 +f 1510/505/7 1544/505/7 1531/504/7 +f 1530/506/292 1508/506/292 1507/504/292 +f 1507/504/292 1531/504/292 1530/506/292 +f 1543/507/293 1537/507/293 1508/506/293 +f 1508/506/293 1530/506/293 1543/507/293 +f 1545/508/1 1538/508/1 1537/507/1 +f 1537/507/1 1543/507/1 1545/508/1 +f 1546/509/210 1509/510/210 1538/511/210 +f 1538/511/210 1545/512/210 1546/509/210 +f 1544/513/294 1510/514/294 1509/510/294 +f 1509/510/294 1546/509/294 1544/513/294 +f 1547/515/4 1545/516/4 1543/503/4 +f 1543/503/4 1539/502/4 1547/515/4 +f 1539/500/7 1540/500/7 1548/517/7 +f 1548/517/7 1547/517/7 1539/500/7 +f 1516/480/1 1549/518/1 1550/518/1 +f 1550/518/1 1517/480/1 1516/480/1 +f 1549/519/4 1516/491/4 1531/490/4 +f 1531/490/4 1544/474/4 1549/519/4 +f 1511/475/1 1551/481/1 1552/482/1 +f 1552/482/1 1512/476/1 1511/475/1 +f 1544/513/295 1529/513/295 1528/485/295 +f 1528/485/295 1549/520/295 1544/513/295 +f 1546/509/294 1536/509/294 1529/513/294 +f 1529/513/294 1544/513/294 1546/509/294 +f 1545/512/210 1534/512/210 1536/509/210 +f 1536/509/210 1546/509/210 1545/512/210 +f 1547/521/296 1532/521/296 1534/512/296 +f 1534/512/296 1545/512/296 1547/521/296 +f 1519/476/7 1553/477/7 1554/478/7 +f 1554/478/7 1520/475/7 1519/476/7 +f 1523/483/289 1535/522/289 1533/523/289 +f 1533/523/289 1524/484/289 1523/483/289 +f 1541/501/291 1527/524/291 1535/522/291 +f 1535/522/291 1523/483/291 1541/501/291 +f 1549/520/27 1511/525/27 1514/526/27 +f 1514/526/27 1550/527/27 1549/520/27 +f 1528/485/27 1551/528/27 1511/525/27 +f 1511/525/27 1549/520/27 1528/485/27 +f 1527/486/4 1552/486/4 1551/487/4 +f 1551/487/4 1528/487/4 1527/486/4 +f 1541/501/26 1512/501/26 1552/524/26 +f 1552/524/26 1527/524/26 1541/501/26 +f 1542/501/26 1513/501/26 1512/501/26 +f 1512/501/26 1541/501/26 1542/501/26 +f 1524/484/26 1519/484/26 1522/485/26 +f 1522/485/26 1525/485/26 1524/484/26 +f 1533/523/26 1553/523/26 1519/484/26 +f 1519/484/26 1524/484/26 1533/523/26 +f 1532/493/4 1554/529/4 1553/530/4 +f 1553/530/4 1533/494/4 1532/493/4 +f 1547/521/27 1520/531/27 1554/532/27 +f 1554/532/27 1532/521/27 1547/521/27 +f 1548/533/27 1521/531/27 1520/531/27 +f 1520/531/27 1547/521/27 1548/533/27 +f 1555/471/4 1556/472/4 1557/473/4 +f 1557/473/4 1558/474/4 1555/471/4 +f 1559/475/1 1560/476/1 1561/477/1 +f 1561/477/1 1562/478/1 1559/475/1 +f 1563/479/27 1564/480/288 1565/480/288 +f 1565/480/288 1566/479/27 1563/479/27 +f 1567/476/7 1568/475/7 1569/481/7 +f 1569/481/7 1570/482/7 1567/476/7 +f 1571/483/26 1572/484/289 1573/485/289 +f 1573/485/289 1574/483/26 1571/483/26 +f 1575/486/4 1576/487/4 1577/488/4 +f 1578/489/4 1579/490/4 1564/491/4 +f 1564/491/4 1563/492/4 1578/489/4 +f 1580/493/4 1581/494/4 1582/495/4 +f 1583/496/4 1584/497/4 1582/495/4 +f 1582/495/4 1581/494/4 1583/496/4 +f 1585/498/4 1586/499/4 1557/473/4 +f 1557/473/4 1556/472/4 1585/498/4 +f 1587/500/290 1563/479/27 1566/479/27 +f 1566/479/27 1588/500/290 1587/500/290 +f 1589/501/291 1571/483/26 1574/483/26 +f 1574/483/26 1590/501/291 1589/501/291 +f 1587/502/4 1591/503/4 1578/489/4 +f 1578/489/4 1563/492/4 1587/502/4 +f 1583/496/4 1575/486/4 1577/488/4 +f 1577/488/4 1584/497/4 1583/496/4 +f 1579/504/7 1555/504/7 1558/505/7 +f 1558/505/7 1592/505/7 1579/504/7 +f 1578/506/292 1556/506/292 1555/504/292 +f 1555/504/292 1579/504/292 1578/506/292 +f 1591/507/293 1585/507/293 1556/506/293 +f 1556/506/293 1578/506/293 1591/507/293 +f 1593/508/1 1586/508/1 1585/507/1 +f 1585/507/1 1591/507/1 1593/508/1 +f 1594/509/210 1557/510/210 1586/511/210 +f 1586/511/210 1593/512/210 1594/509/210 +f 1592/513/294 1558/514/294 1557/510/294 +f 1557/510/294 1594/509/294 1592/513/294 +f 1595/515/4 1593/516/4 1591/503/4 +f 1591/503/4 1587/502/4 1595/515/4 +f 1587/500/7 1588/500/7 1596/517/7 +f 1596/517/7 1595/517/7 1587/500/7 +f 1564/480/1 1597/518/1 1598/518/1 +f 1598/518/1 1565/480/1 1564/480/1 +f 1597/519/4 1564/491/4 1579/490/4 +f 1579/490/4 1592/474/4 1597/519/4 +f 1559/475/1 1599/481/1 1600/482/1 +f 1600/482/1 1560/476/1 1559/475/1 +f 1592/513/295 1577/513/295 1576/485/295 +f 1576/485/295 1597/520/295 1592/513/295 +f 1594/509/294 1584/509/294 1577/513/294 +f 1577/513/294 1592/513/294 1594/509/294 +f 1593/512/210 1582/512/210 1584/509/210 +f 1584/509/210 1594/509/210 1593/512/210 +f 1595/521/296 1580/521/296 1582/512/296 +f 1582/512/296 1593/512/296 1595/521/296 +f 1567/476/7 1601/477/7 1602/478/7 +f 1602/478/7 1568/475/7 1567/476/7 +f 1571/483/289 1583/522/289 1581/523/289 +f 1581/523/289 1572/484/289 1571/483/289 +f 1589/501/291 1575/524/291 1583/522/291 +f 1583/522/291 1571/483/291 1589/501/291 +f 1597/520/27 1559/525/27 1562/526/27 +f 1562/526/27 1598/527/27 1597/520/27 +f 1576/485/27 1599/528/27 1559/525/27 +f 1559/525/27 1597/520/27 1576/485/27 +f 1575/486/4 1600/486/4 1599/487/4 +f 1599/487/4 1576/487/4 1575/486/4 +f 1589/501/26 1560/501/26 1600/524/26 +f 1600/524/26 1575/524/26 1589/501/26 +f 1590/501/26 1561/501/26 1560/501/26 +f 1560/501/26 1589/501/26 1590/501/26 +f 1572/484/26 1567/484/26 1570/485/26 +f 1570/485/26 1573/485/26 1572/484/26 +f 1581/523/26 1601/523/26 1567/484/26 +f 1567/484/26 1572/484/26 1581/523/26 +f 1580/493/4 1602/529/4 1601/530/4 +f 1601/530/4 1581/494/4 1580/493/4 +f 1595/521/27 1568/531/27 1602/532/27 +f 1602/532/27 1580/521/27 1595/521/27 +f 1596/533/27 1569/531/27 1568/531/27 +f 1568/531/27 1595/521/27 1596/533/27 +f 1603/471/4 1604/472/4 1605/473/4 +f 1605/473/4 1606/474/4 1603/471/4 +f 1607/475/1 1608/476/1 1609/477/1 +f 1609/477/1 1610/478/1 1607/475/1 +f 1611/479/27 1612/480/288 1613/480/288 +f 1613/480/288 1614/479/27 1611/479/27 +f 1615/476/7 1616/475/7 1617/481/7 +f 1617/481/7 1618/482/7 1615/476/7 +f 1619/483/26 1620/484/289 1621/485/289 +f 1621/485/289 1622/483/26 1619/483/26 +f 1623/486/4 1624/487/4 1625/488/4 +f 1626/489/4 1627/490/4 1612/491/4 +f 1612/491/4 1611/492/4 1626/489/4 +f 1628/493/4 1629/494/4 1630/495/4 +f 1631/496/4 1632/497/4 1630/495/4 +f 1630/495/4 1629/494/4 1631/496/4 +f 1633/498/4 1634/499/4 1605/473/4 +f 1605/473/4 1604/472/4 1633/498/4 +f 1635/500/290 1611/479/27 1614/479/27 +f 1614/479/27 1636/500/290 1635/500/290 +f 1637/501/291 1619/483/26 1622/483/26 +f 1622/483/26 1638/501/291 1637/501/291 +f 1635/502/4 1639/503/4 1626/489/4 +f 1626/489/4 1611/492/4 1635/502/4 +f 1631/496/4 1623/486/4 1625/488/4 +f 1625/488/4 1632/497/4 1631/496/4 +f 1627/504/7 1603/504/7 1606/505/7 +f 1606/505/7 1640/505/7 1627/504/7 +f 1626/506/292 1604/506/292 1603/504/292 +f 1603/504/292 1627/504/292 1626/506/292 +f 1639/507/293 1633/507/293 1604/506/293 +f 1604/506/293 1626/506/293 1639/507/293 +f 1641/508/1 1634/508/1 1633/507/1 +f 1633/507/1 1639/507/1 1641/508/1 +f 1642/509/210 1605/510/210 1634/511/210 +f 1634/511/210 1641/512/210 1642/509/210 +f 1640/513/294 1606/514/294 1605/510/294 +f 1605/510/294 1642/509/294 1640/513/294 +f 1643/515/4 1641/516/4 1639/503/4 +f 1639/503/4 1635/502/4 1643/515/4 +f 1635/500/7 1636/500/7 1644/517/7 +f 1644/517/7 1643/517/7 1635/500/7 +f 1612/480/1 1645/518/1 1646/518/1 +f 1646/518/1 1613/480/1 1612/480/1 +f 1645/519/4 1612/491/4 1627/490/4 +f 1627/490/4 1640/474/4 1645/519/4 +f 1607/475/1 1647/481/1 1648/482/1 +f 1648/482/1 1608/476/1 1607/475/1 +f 1640/513/295 1625/513/295 1624/485/295 +f 1624/485/295 1645/520/295 1640/513/295 +f 1642/509/294 1632/509/294 1625/513/294 +f 1625/513/294 1640/513/294 1642/509/294 +f 1641/512/210 1630/512/210 1632/509/210 +f 1632/509/210 1642/509/210 1641/512/210 +f 1643/521/296 1628/521/296 1630/512/296 +f 1630/512/296 1641/512/296 1643/521/296 +f 1615/476/7 1649/477/7 1650/478/7 +f 1650/478/7 1616/475/7 1615/476/7 +f 1619/483/289 1631/522/289 1629/523/289 +f 1629/523/289 1620/484/289 1619/483/289 +f 1637/501/291 1623/524/291 1631/522/297 +f 1631/522/297 1619/483/297 1637/501/291 +f 1645/520/27 1607/525/27 1610/526/27 +f 1610/526/27 1646/527/27 1645/520/27 +f 1624/485/27 1647/528/27 1607/525/27 +f 1607/525/27 1645/520/27 1624/485/27 +f 1623/486/4 1648/486/4 1647/487/4 +f 1647/487/4 1624/487/4 1623/486/4 +f 1637/501/26 1608/501/26 1648/524/26 +f 1648/524/26 1623/524/26 1637/501/26 +f 1638/501/26 1609/501/26 1608/501/26 +f 1608/501/26 1637/501/26 1638/501/26 +f 1620/484/26 1615/484/26 1618/485/26 +f 1618/485/26 1621/485/26 1620/484/26 +f 1629/523/26 1649/523/26 1615/484/26 +f 1615/484/26 1620/484/26 1629/523/26 +f 1628/493/4 1650/529/4 1649/530/4 +f 1649/530/4 1629/494/4 1628/493/4 +f 1643/521/27 1616/531/27 1650/532/27 +f 1650/532/27 1628/521/27 1643/521/27 +f 1644/533/27 1617/531/27 1616/531/27 +f 1616/531/27 1643/521/27 1644/533/27 +f 1651/471/4 1652/472/4 1653/473/4 +f 1653/473/4 1654/474/4 1651/471/4 +f 1655/475/1 1656/476/1 1657/477/1 +f 1657/477/1 1658/478/1 1655/475/1 +f 1659/479/27 1660/480/288 1661/480/288 +f 1661/480/288 1662/479/27 1659/479/27 +f 1663/476/7 1664/475/7 1665/481/7 +f 1665/481/7 1666/482/7 1663/476/7 +f 1667/483/26 1668/484/289 1669/485/289 +f 1669/485/289 1670/483/26 1667/483/26 +f 1671/486/4 1672/487/4 1673/488/4 +f 1674/489/4 1675/490/4 1660/491/4 +f 1660/491/4 1659/492/4 1674/489/4 +f 1676/493/4 1677/494/4 1678/495/4 +f 1679/496/4 1680/497/4 1678/495/4 +f 1678/495/4 1677/494/4 1679/496/4 +f 1681/498/4 1682/499/4 1653/473/4 +f 1653/473/4 1652/472/4 1681/498/4 +f 1683/500/290 1659/479/27 1662/479/27 +f 1662/479/27 1684/500/290 1683/500/290 +f 1685/501/291 1667/483/26 1670/483/26 +f 1670/483/26 1686/501/291 1685/501/291 +f 1683/502/4 1687/503/4 1674/489/4 +f 1674/489/4 1659/492/4 1683/502/4 +f 1679/496/4 1671/486/4 1673/488/4 +f 1673/488/4 1680/497/4 1679/496/4 +f 1675/504/7 1651/504/7 1654/505/7 +f 1654/505/7 1688/505/7 1675/504/7 +f 1674/506/292 1652/506/292 1651/504/292 +f 1651/504/292 1675/504/292 1674/506/292 +f 1687/507/293 1681/507/293 1652/506/293 +f 1652/506/293 1674/506/293 1687/507/293 +f 1689/508/1 1682/508/1 1681/507/1 +f 1681/507/1 1687/507/1 1689/508/1 +f 1690/509/210 1653/510/210 1682/511/210 +f 1682/511/210 1689/512/210 1690/509/210 +f 1688/513/294 1654/514/294 1653/510/294 +f 1653/510/294 1690/509/294 1688/513/294 +f 1691/515/4 1689/516/4 1687/503/4 +f 1687/503/4 1683/502/4 1691/515/4 +f 1683/500/7 1684/500/7 1692/517/7 +f 1692/517/7 1691/517/7 1683/500/7 +f 1660/480/1 1693/518/1 1694/518/1 +f 1694/518/1 1661/480/1 1660/480/1 +f 1693/519/4 1660/491/4 1675/490/4 +f 1675/490/4 1688/474/4 1693/519/4 +f 1655/475/1 1695/481/1 1696/482/1 +f 1696/482/1 1656/476/1 1655/475/1 +f 1688/513/295 1673/513/295 1672/485/295 +f 1672/485/295 1693/520/295 1688/513/295 +f 1690/509/294 1680/509/294 1673/513/294 +f 1673/513/294 1688/513/294 1690/509/294 +f 1689/512/210 1678/512/210 1680/509/210 +f 1680/509/210 1690/509/210 1689/512/210 +f 1691/521/296 1676/521/296 1678/512/296 +f 1678/512/296 1689/512/296 1691/521/296 +f 1663/476/7 1697/477/7 1698/478/7 +f 1698/478/7 1664/475/7 1663/476/7 +f 1667/483/298 1679/522/298 1677/523/289 +f 1677/523/289 1668/484/289 1667/483/298 +f 1685/501/291 1671/524/291 1679/522/297 +f 1679/522/297 1667/483/297 1685/501/291 +f 1693/520/27 1655/525/27 1658/526/27 +f 1658/526/27 1694/527/27 1693/520/27 +f 1672/485/27 1695/528/27 1655/525/27 +f 1655/525/27 1693/520/27 1672/485/27 +f 1671/486/4 1696/486/4 1695/487/4 +f 1695/487/4 1672/487/4 1671/486/4 +f 1685/501/26 1656/501/26 1696/524/26 +f 1696/524/26 1671/524/26 1685/501/26 +f 1686/501/26 1657/501/26 1656/501/26 +f 1656/501/26 1685/501/26 1686/501/26 +f 1668/484/26 1663/484/26 1666/485/26 +f 1666/485/26 1669/485/26 1668/484/26 +f 1677/523/26 1697/523/26 1663/484/26 +f 1663/484/26 1668/484/26 1677/523/26 +f 1676/493/4 1698/529/4 1697/530/4 +f 1697/530/4 1677/494/4 1676/493/4 +f 1691/521/27 1664/531/27 1698/532/27 +f 1698/532/27 1676/521/27 1691/521/27 +f 1692/533/27 1665/531/27 1664/531/27 +f 1664/531/27 1691/521/27 1692/533/27 +f 1699/471/1 1700/472/1 1701/473/1 +f 1701/473/1 1702/474/1 1699/471/1 +f 1703/475/10 1704/476/10 1705/477/10 +f 1705/477/10 1706/478/10 1703/475/10 +f 1707/479/27 1708/480/299 1709/480/299 +f 1709/480/299 1710/479/27 1707/479/27 +f 1711/476/4 1712/475/4 1713/481/4 +f 1713/481/4 1714/482/4 1711/476/4 +f 1715/483/26 1716/484/300 1717/485/300 +f 1717/485/300 1718/483/26 1715/483/26 +f 1719/486/1 1720/487/1 1721/488/1 +f 1722/489/1 1723/490/1 1708/491/1 +f 1708/491/1 1707/492/1 1722/489/1 +f 1724/493/1 1725/494/1 1726/495/1 +f 1727/496/1 1728/497/1 1726/495/1 +f 1726/495/1 1725/494/1 1727/496/1 +f 1729/498/1 1730/499/1 1701/473/1 +f 1701/473/1 1700/472/1 1729/498/1 +f 1731/500/301 1707/479/27 1710/479/27 +f 1710/479/27 1732/500/301 1731/500/301 +f 1733/501/302 1715/483/26 1718/483/26 +f 1718/483/26 1734/501/302 1733/501/302 +f 1731/502/1 1735/503/1 1722/489/1 +f 1722/489/1 1707/492/1 1731/502/1 +f 1727/496/1 1719/486/1 1721/488/1 +f 1721/488/1 1728/497/1 1727/496/1 +f 1723/504/4 1699/504/4 1702/505/4 +f 1702/505/4 1736/505/4 1723/504/4 +f 1722/506/303 1700/506/303 1699/504/303 +f 1699/504/303 1723/504/303 1722/506/303 +f 1735/507/304 1729/507/304 1700/506/304 +f 1700/506/304 1722/506/304 1735/507/304 +f 1737/508/10 1730/508/10 1729/507/10 +f 1729/507/10 1735/507/10 1737/508/10 +f 1738/509/305 1701/510/305 1730/511/305 +f 1730/511/305 1737/512/305 1738/509/305 +f 1736/513/306 1702/514/306 1701/510/306 +f 1701/510/306 1738/509/306 1736/513/306 +f 1739/515/1 1737/516/1 1735/503/1 +f 1735/503/1 1731/502/1 1739/515/1 +f 1731/500/4 1732/500/4 1740/517/4 +f 1740/517/4 1739/517/4 1731/500/4 +f 1708/480/10 1741/518/10 1742/518/10 +f 1742/518/10 1709/480/10 1708/480/10 +f 1741/519/1 1708/491/1 1723/490/1 +f 1723/490/1 1736/474/1 1741/519/1 +f 1703/475/10 1743/481/10 1744/482/10 +f 1744/482/10 1704/476/10 1703/475/10 +f 1736/513/307 1721/513/307 1720/485/307 +f 1720/485/307 1741/520/307 1736/513/307 +f 1738/509/306 1728/509/306 1721/513/306 +f 1721/513/306 1736/513/306 1738/509/306 +f 1737/512/305 1726/512/305 1728/509/305 +f 1728/509/305 1738/509/305 1737/512/305 +f 1739/521/308 1724/521/308 1726/512/308 +f 1726/512/308 1737/512/308 1739/521/308 +f 1711/476/4 1745/477/4 1746/478/4 +f 1746/478/4 1712/475/4 1711/476/4 +f 1715/483/300 1727/522/300 1725/523/300 +f 1725/523/300 1716/484/300 1715/483/300 +f 1733/501/302 1719/524/302 1727/522/302 +f 1727/522/302 1715/483/302 1733/501/302 +f 1741/520/27 1703/525/27 1706/526/27 +f 1706/526/27 1742/527/27 1741/520/27 +f 1720/485/27 1743/528/27 1703/525/27 +f 1703/525/27 1741/520/27 1720/485/27 +f 1719/486/1 1744/486/1 1743/487/1 +f 1743/487/1 1720/487/1 1719/486/1 +f 1733/501/26 1704/501/26 1744/524/26 +f 1744/524/26 1719/524/26 1733/501/26 +f 1734/501/26 1705/501/26 1704/501/26 +f 1704/501/26 1733/501/26 1734/501/26 +f 1716/484/26 1711/484/26 1714/485/26 +f 1714/485/26 1717/485/26 1716/484/26 +f 1725/523/26 1745/523/26 1711/484/26 +f 1711/484/26 1716/484/26 1725/523/26 +f 1724/493/1 1746/529/1 1745/530/1 +f 1745/530/1 1725/494/1 1724/493/1 +f 1739/521/27 1712/531/27 1746/532/27 +f 1746/532/27 1724/521/27 1739/521/27 +f 1740/533/27 1713/531/27 1712/531/27 +f 1712/531/27 1739/521/27 1740/533/27 +f 1747/471/1 1748/474/1 1749/473/1 +f 1749/473/1 1750/472/1 1747/471/1 +f 1751/475/4 1752/478/4 1753/477/4 +f 1753/477/4 1754/476/4 1751/475/4 +f 1755/479/27 1756/479/27 1757/480/301 +f 1757/480/301 1758/480/301 1755/479/27 +f 1759/476/10 1760/482/10 1761/481/10 +f 1761/481/10 1762/475/10 1759/476/10 +f 1763/483/26 1764/483/26 1765/485/302 +f 1765/485/302 1766/484/302 1763/483/26 +f 1767/486/1 1768/488/1 1769/487/1 +f 1770/489/1 1755/492/1 1758/491/1 +f 1758/491/1 1771/490/1 1770/489/1 +f 1772/493/1 1773/495/1 1774/494/1 +f 1775/496/1 1774/494/1 1773/495/1 +f 1773/495/1 1776/497/1 1775/496/1 +f 1777/498/1 1750/472/1 1749/473/1 +f 1749/473/1 1778/499/1 1777/498/1 +f 1779/500/299 1780/500/299 1756/479/27 +f 1756/479/27 1755/479/27 1779/500/299 +f 1781/501/300 1782/501/300 1764/483/26 +f 1764/483/26 1763/483/26 1781/501/300 +f 1779/502/1 1755/492/1 1770/489/1 +f 1770/489/1 1783/503/1 1779/502/1 +f 1775/496/1 1776/497/1 1768/488/1 +f 1768/488/1 1767/486/1 1775/496/1 +f 1771/504/10 1784/505/10 1748/505/10 +f 1748/505/10 1747/504/10 1771/504/10 +f 1770/506/304 1771/504/304 1747/504/304 +f 1747/504/304 1750/506/304 1770/506/304 +f 1783/507/303 1770/506/303 1750/506/303 +f 1750/506/303 1777/507/303 1783/507/303 +f 1785/508/4 1783/507/4 1777/507/4 +f 1777/507/4 1778/508/4 1785/508/4 +f 1786/509/309 1785/512/309 1778/511/309 +f 1778/511/309 1749/510/309 1786/509/309 +f 1784/513/310 1786/509/310 1749/510/310 +f 1749/510/310 1748/514/310 1784/513/310 +f 1787/515/1 1779/502/1 1783/503/1 +f 1783/503/1 1785/516/1 1787/515/1 +f 1779/500/10 1787/517/10 1788/517/10 +f 1788/517/10 1780/500/10 1779/500/10 +f 1758/480/4 1757/480/4 1789/518/4 +f 1789/518/4 1790/518/4 1758/480/4 +f 1790/519/1 1784/474/1 1771/490/1 +f 1771/490/1 1758/491/1 1790/519/1 +f 1751/475/4 1754/476/4 1791/482/4 +f 1791/482/4 1792/481/4 1751/475/4 +f 1784/513/311 1790/520/311 1769/485/311 +f 1769/485/311 1768/513/311 1784/513/311 +f 1786/509/310 1784/513/310 1768/513/310 +f 1768/513/310 1776/509/310 1786/509/310 +f 1785/512/309 1786/509/309 1776/509/309 +f 1776/509/309 1773/512/309 1785/512/309 +f 1787/521/312 1785/512/312 1773/512/312 +f 1773/512/312 1772/521/312 1787/521/312 +f 1759/476/10 1762/475/10 1793/478/10 +f 1793/478/10 1794/477/10 1759/476/10 +f 1763/483/302 1766/484/302 1774/523/302 +f 1774/523/302 1775/522/302 1763/483/302 +f 1781/501/300 1763/483/300 1775/522/300 +f 1775/522/300 1767/524/300 1781/501/300 +f 1790/520/27 1789/527/27 1752/526/27 +f 1752/526/27 1751/525/27 1790/520/27 +f 1769/485/27 1790/520/27 1751/525/27 +f 1751/525/27 1792/528/27 1769/485/27 +f 1767/486/1 1769/487/1 1792/487/1 +f 1792/487/1 1791/486/1 1767/486/1 +f 1781/501/26 1767/524/26 1791/524/26 +f 1791/524/26 1754/501/26 1781/501/26 +f 1782/501/26 1781/501/26 1754/501/26 +f 1754/501/26 1753/501/26 1782/501/26 +f 1766/484/26 1765/485/26 1760/485/26 +f 1760/485/26 1759/484/26 1766/484/26 +f 1774/523/26 1766/484/26 1759/484/26 +f 1759/484/26 1794/523/26 1774/523/26 +f 1772/493/1 1774/494/1 1794/530/1 +f 1794/530/1 1793/529/1 1772/493/1 +f 1787/521/27 1772/521/27 1793/532/27 +f 1793/532/27 1762/531/27 1787/521/27 +f 1788/533/27 1787/521/27 1762/531/27 +f 1762/531/27 1761/531/27 1788/533/27 +f 1795/471/10 1796/474/10 1797/473/10 +f 1797/473/10 1798/472/10 1795/471/10 +f 1799/475/1 1800/478/1 1801/477/1 +f 1801/477/1 1802/476/1 1799/475/1 +f 1803/479/27 1804/479/27 1805/480/288 +f 1805/480/288 1806/480/288 1803/479/27 +f 1807/476/7 1808/482/7 1809/481/7 +f 1809/481/7 1810/475/7 1807/476/7 +f 1811/483/26 1812/483/26 1813/485/289 +f 1813/485/289 1814/484/289 1811/483/26 +f 1815/486/10 1816/488/10 1817/487/10 +f 1818/489/10 1803/492/10 1806/491/10 +f 1806/491/10 1819/490/10 1818/489/10 +f 1820/493/10 1821/495/10 1822/494/10 +f 1823/496/10 1822/494/10 1821/495/10 +f 1821/495/10 1824/497/10 1823/496/10 +f 1825/498/10 1798/472/10 1797/473/10 +f 1797/473/10 1826/499/10 1825/498/10 +f 1827/500/290 1828/500/290 1804/479/27 +f 1804/479/27 1803/479/27 1827/500/290 +f 1829/501/291 1830/501/291 1812/483/26 +f 1812/483/26 1811/483/26 1829/501/291 +f 1827/502/10 1803/492/10 1818/489/10 +f 1818/489/10 1831/503/10 1827/502/10 +f 1823/496/10 1824/497/10 1816/488/10 +f 1816/488/10 1815/486/10 1823/496/10 +f 1819/504/7 1832/505/7 1796/505/7 +f 1796/505/7 1795/504/7 1819/504/7 +f 1818/506/292 1819/504/292 1795/504/292 +f 1795/504/292 1798/506/292 1818/506/292 +f 1831/507/293 1818/506/293 1798/506/293 +f 1798/506/293 1825/507/293 1831/507/293 +f 1833/508/1 1831/507/1 1825/507/1 +f 1825/507/1 1826/508/1 1833/508/1 +f 1834/509/210 1833/512/210 1826/511/210 +f 1826/511/210 1797/510/210 1834/509/210 +f 1832/513/294 1834/509/294 1797/510/294 +f 1797/510/294 1796/514/294 1832/513/294 +f 1835/515/10 1827/502/10 1831/503/10 +f 1831/503/10 1833/516/10 1835/515/10 +f 1827/500/7 1835/517/7 1836/517/7 +f 1836/517/7 1828/500/7 1827/500/7 +f 1806/480/1 1805/480/1 1837/518/1 +f 1837/518/1 1838/518/1 1806/480/1 +f 1838/519/10 1832/474/10 1819/490/10 +f 1819/490/10 1806/491/10 1838/519/10 +f 1799/475/1 1802/476/1 1839/482/1 +f 1839/482/1 1840/481/1 1799/475/1 +f 1832/513/313 1838/520/295 1817/485/295 +f 1817/485/295 1816/513/313 1832/513/313 +f 1834/509/294 1832/513/294 1816/513/294 +f 1816/513/294 1824/509/294 1834/509/294 +f 1833/512/210 1834/509/210 1824/509/210 +f 1824/509/210 1821/512/210 1833/512/210 +f 1835/521/296 1833/512/296 1821/512/296 +f 1821/512/296 1820/521/296 1835/521/296 +f 1807/476/7 1810/475/7 1841/478/7 +f 1841/478/7 1842/477/7 1807/476/7 +f 1811/483/289 1814/484/289 1822/523/289 +f 1822/523/289 1823/522/289 1811/483/289 +f 1829/501/291 1811/483/291 1823/522/291 +f 1823/522/291 1815/524/291 1829/501/291 +f 1838/520/27 1837/527/27 1800/526/27 +f 1800/526/27 1799/525/27 1838/520/27 +f 1817/485/27 1838/520/27 1799/525/27 +f 1799/525/27 1840/528/27 1817/485/27 +f 1815/486/10 1817/487/10 1840/487/10 +f 1840/487/10 1839/486/10 1815/486/10 +f 1829/501/26 1815/524/26 1839/524/26 +f 1839/524/26 1802/501/26 1829/501/26 +f 1830/501/26 1829/501/26 1802/501/26 +f 1802/501/26 1801/501/26 1830/501/26 +f 1814/484/26 1813/485/26 1808/485/26 +f 1808/485/26 1807/484/26 1814/484/26 +f 1822/523/26 1814/484/26 1807/484/26 +f 1807/484/26 1842/523/26 1822/523/26 +f 1820/493/10 1822/494/10 1842/530/10 +f 1842/530/10 1841/529/10 1820/493/10 +f 1835/521/27 1820/521/27 1841/532/27 +f 1841/532/27 1810/531/27 1835/521/27 +f 1836/533/27 1835/521/27 1810/531/27 +f 1810/531/27 1809/531/27 1836/533/27 +f 1843/471/10 1844/474/10 1845/473/10 +f 1845/473/10 1846/472/10 1843/471/10 +f 1847/475/1 1848/478/1 1849/477/1 +f 1849/477/1 1850/476/1 1847/475/1 +f 1851/479/27 1852/479/27 1853/480/288 +f 1853/480/288 1854/480/288 1851/479/27 +f 1855/476/7 1856/482/7 1857/481/7 +f 1857/481/7 1858/475/7 1855/476/7 +f 1859/483/26 1860/483/26 1861/485/289 +f 1861/485/289 1862/484/289 1859/483/26 +f 1863/486/10 1864/488/10 1865/487/10 +f 1866/489/10 1851/492/10 1854/491/10 +f 1854/491/10 1867/490/10 1866/489/10 +f 1868/493/10 1869/495/10 1870/494/10 +f 1871/496/10 1870/494/10 1869/495/10 +f 1869/495/10 1872/497/10 1871/496/10 +f 1873/498/10 1846/472/10 1845/473/10 +f 1845/473/10 1874/499/10 1873/498/10 +f 1875/500/290 1876/500/290 1852/479/27 +f 1852/479/27 1851/479/27 1875/500/290 +f 1877/501/291 1878/501/291 1860/483/26 +f 1860/483/26 1859/483/26 1877/501/291 +f 1875/502/10 1851/492/10 1866/489/10 +f 1866/489/10 1879/503/10 1875/502/10 +f 1871/496/10 1872/497/10 1864/488/10 +f 1864/488/10 1863/486/10 1871/496/10 +f 1867/504/7 1880/505/7 1844/505/7 +f 1844/505/7 1843/504/7 1867/504/7 +f 1866/506/292 1867/504/292 1843/504/292 +f 1843/504/292 1846/506/292 1866/506/292 +f 1879/507/293 1866/506/293 1846/506/293 +f 1846/506/293 1873/507/293 1879/507/293 +f 1881/508/1 1879/507/1 1873/507/1 +f 1873/507/1 1874/508/1 1881/508/1 +f 1882/509/210 1881/512/210 1874/511/210 +f 1874/511/210 1845/510/210 1882/509/210 +f 1880/513/294 1882/509/294 1845/510/294 +f 1845/510/294 1844/514/294 1880/513/294 +f 1883/515/10 1875/502/10 1879/503/10 +f 1879/503/10 1881/516/10 1883/515/10 +f 1875/500/7 1883/517/7 1884/517/7 +f 1884/517/7 1876/500/7 1875/500/7 +f 1854/480/1 1853/480/1 1885/518/1 +f 1885/518/1 1886/518/1 1854/480/1 +f 1886/519/10 1880/474/10 1867/490/10 +f 1867/490/10 1854/491/10 1886/519/10 +f 1847/475/1 1850/476/1 1887/482/1 +f 1887/482/1 1888/481/1 1847/475/1 +f 1880/513/295 1886/520/295 1865/485/295 +f 1865/485/295 1864/513/295 1880/513/295 +f 1882/509/294 1880/513/294 1864/513/294 +f 1864/513/294 1872/509/294 1882/509/294 +f 1881/512/210 1882/509/210 1872/509/210 +f 1872/509/210 1869/512/210 1881/512/210 +f 1883/521/296 1881/512/296 1869/512/296 +f 1869/512/296 1868/521/296 1883/521/296 +f 1855/476/7 1858/475/7 1889/478/7 +f 1889/478/7 1890/477/7 1855/476/7 +f 1859/483/289 1862/484/289 1870/523/289 +f 1870/523/289 1871/522/289 1859/483/289 +f 1877/501/291 1859/483/291 1871/522/291 +f 1871/522/291 1863/524/291 1877/501/291 +f 1886/520/27 1885/527/27 1848/526/27 +f 1848/526/27 1847/525/27 1886/520/27 +f 1865/485/27 1886/520/27 1847/525/27 +f 1847/525/27 1888/528/27 1865/485/27 +f 1863/486/10 1865/487/10 1888/487/10 +f 1888/487/10 1887/486/10 1863/486/10 +f 1877/501/26 1863/524/26 1887/524/26 +f 1887/524/26 1850/501/26 1877/501/26 +f 1878/501/26 1877/501/26 1850/501/26 +f 1850/501/26 1849/501/26 1878/501/26 +f 1862/484/26 1861/485/26 1856/485/26 +f 1856/485/26 1855/484/26 1862/484/26 +f 1870/523/26 1862/484/26 1855/484/26 +f 1855/484/26 1890/523/26 1870/523/26 +f 1868/493/10 1870/494/10 1890/530/10 +f 1890/530/10 1889/529/10 1868/493/10 +f 1883/521/27 1868/521/27 1889/532/27 +f 1889/532/27 1858/531/27 1883/521/27 +f 1884/533/27 1883/521/27 1858/531/27 +f 1858/531/27 1857/531/27 1884/533/27 +f 1891/471/10 1892/474/10 1893/473/10 +f 1893/473/10 1894/472/10 1891/471/10 +f 1895/475/1 1896/478/1 1897/477/1 +f 1897/477/1 1898/476/1 1895/475/1 +f 1899/479/27 1900/479/27 1901/480/288 +f 1901/480/288 1902/480/288 1899/479/27 +f 1903/476/7 1904/482/7 1905/481/7 +f 1905/481/7 1906/475/7 1903/476/7 +f 1907/483/26 1908/483/26 1909/485/289 +f 1909/485/289 1910/484/289 1907/483/26 +f 1911/486/10 1912/488/10 1913/487/10 +f 1914/489/10 1899/492/10 1902/491/10 +f 1902/491/10 1915/490/10 1914/489/10 +f 1916/493/10 1917/495/10 1918/494/10 +f 1919/496/10 1918/494/10 1917/495/10 +f 1917/495/10 1920/497/10 1919/496/10 +f 1921/498/10 1894/472/10 1893/473/10 +f 1893/473/10 1922/499/10 1921/498/10 +f 1923/500/290 1924/500/290 1900/479/27 +f 1900/479/27 1899/479/27 1923/500/290 +f 1925/501/291 1926/501/291 1908/483/26 +f 1908/483/26 1907/483/26 1925/501/291 +f 1923/502/10 1899/492/10 1914/489/10 +f 1914/489/10 1927/503/10 1923/502/10 +f 1919/496/10 1920/497/10 1912/488/10 +f 1912/488/10 1911/486/10 1919/496/10 +f 1915/504/7 1928/505/7 1892/505/7 +f 1892/505/7 1891/504/7 1915/504/7 +f 1914/506/292 1915/504/292 1891/504/292 +f 1891/504/292 1894/506/292 1914/506/292 +f 1927/507/293 1914/506/293 1894/506/293 +f 1894/506/293 1921/507/293 1927/507/293 +f 1929/508/1 1927/507/1 1921/507/1 +f 1921/507/1 1922/508/1 1929/508/1 +f 1930/509/210 1929/512/210 1922/511/210 +f 1922/511/210 1893/510/210 1930/509/210 +f 1928/513/294 1930/509/294 1893/510/294 +f 1893/510/294 1892/514/294 1928/513/294 +f 1931/515/10 1923/502/10 1927/503/10 +f 1927/503/10 1929/516/10 1931/515/10 +f 1923/500/7 1931/517/7 1932/517/7 +f 1932/517/7 1924/500/7 1923/500/7 +f 1902/480/1 1901/480/1 1933/518/1 +f 1933/518/1 1934/518/1 1902/480/1 +f 1934/519/10 1928/474/10 1915/490/10 +f 1915/490/10 1902/491/10 1934/519/10 +f 1895/475/1 1898/476/1 1935/482/1 +f 1935/482/1 1936/481/1 1895/475/1 +f 1928/513/295 1934/520/295 1913/485/295 +f 1913/485/295 1912/513/295 1928/513/295 +f 1930/509/294 1928/513/294 1912/513/294 +f 1912/513/294 1920/509/294 1930/509/294 +f 1929/512/210 1930/509/210 1920/509/210 +f 1920/509/210 1917/512/210 1929/512/210 +f 1931/521/296 1929/512/296 1917/512/296 +f 1917/512/296 1916/521/296 1931/521/296 +f 1903/476/7 1906/475/7 1937/478/7 +f 1937/478/7 1938/477/7 1903/476/7 +f 1907/483/289 1910/484/289 1918/523/289 +f 1918/523/289 1919/522/289 1907/483/289 +f 1925/501/291 1907/483/291 1919/522/291 +f 1919/522/291 1911/524/291 1925/501/291 +f 1934/520/27 1933/527/27 1896/526/27 +f 1896/526/27 1895/525/27 1934/520/27 +f 1913/485/27 1934/520/27 1895/525/27 +f 1895/525/27 1936/528/27 1913/485/27 +f 1911/486/10 1913/487/10 1936/487/10 +f 1936/487/10 1935/486/10 1911/486/10 +f 1925/501/26 1911/524/26 1935/524/26 +f 1935/524/26 1898/501/26 1925/501/26 +f 1926/501/26 1925/501/26 1898/501/26 +f 1898/501/26 1897/501/26 1926/501/26 +f 1910/484/26 1909/485/26 1904/485/26 +f 1904/485/26 1903/484/26 1910/484/26 +f 1918/523/26 1910/484/26 1903/484/26 +f 1903/484/26 1938/523/26 1918/523/26 +f 1916/493/10 1918/494/10 1938/530/10 +f 1938/530/10 1937/529/10 1916/493/10 +f 1931/521/27 1916/521/27 1937/532/27 +f 1937/532/27 1906/531/27 1931/521/27 +f 1932/533/27 1931/521/27 1906/531/27 +f 1906/531/27 1905/531/27 1932/533/27 +f 1939/471/10 1940/474/10 1941/473/10 +f 1941/473/10 1942/472/10 1939/471/10 +f 1943/475/1 1944/478/1 1945/477/1 +f 1945/477/1 1946/476/1 1943/475/1 +f 1947/479/27 1948/479/27 1949/480/288 +f 1949/480/288 1950/480/288 1947/479/27 +f 1951/476/7 1952/482/7 1953/481/7 +f 1953/481/7 1954/475/7 1951/476/7 +f 1955/483/26 1956/483/26 1957/485/289 +f 1957/485/289 1958/484/289 1955/483/26 +f 1959/486/10 1960/488/10 1961/487/10 +f 1962/489/10 1947/492/10 1950/491/10 +f 1950/491/10 1963/490/10 1962/489/10 +f 1964/493/10 1965/495/10 1966/494/10 +f 1967/496/10 1966/494/10 1965/495/10 +f 1965/495/10 1968/497/10 1967/496/10 +f 1969/498/10 1942/472/10 1941/473/10 +f 1941/473/10 1970/499/10 1969/498/10 +f 1971/500/290 1972/500/290 1948/479/27 +f 1948/479/27 1947/479/27 1971/500/290 +f 1973/501/291 1974/501/291 1956/483/26 +f 1956/483/26 1955/483/26 1973/501/291 +f 1971/502/10 1947/492/10 1962/489/10 +f 1962/489/10 1975/503/10 1971/502/10 +f 1967/496/10 1968/497/10 1960/488/10 +f 1960/488/10 1959/486/10 1967/496/10 +f 1963/504/7 1976/505/7 1940/505/7 +f 1940/505/7 1939/504/7 1963/504/7 +f 1962/506/292 1963/504/292 1939/504/292 +f 1939/504/292 1942/506/292 1962/506/292 +f 1975/507/293 1962/506/293 1942/506/293 +f 1942/506/293 1969/507/293 1975/507/293 +f 1977/508/1 1975/507/1 1969/507/1 +f 1969/507/1 1970/508/1 1977/508/1 +f 1978/509/210 1977/512/210 1970/511/210 +f 1970/511/210 1941/510/210 1978/509/210 +f 1976/513/294 1978/509/294 1941/510/294 +f 1941/510/294 1940/514/294 1976/513/294 +f 1979/515/10 1971/502/10 1975/503/10 +f 1975/503/10 1977/516/10 1979/515/10 +f 1971/500/7 1979/517/7 1980/517/7 +f 1980/517/7 1972/500/7 1971/500/7 +f 1950/480/1 1949/480/1 1981/518/1 +f 1981/518/1 1982/518/1 1950/480/1 +f 1982/519/10 1976/474/10 1963/490/10 +f 1963/490/10 1950/491/10 1982/519/10 +f 1943/475/1 1946/476/1 1983/482/1 +f 1983/482/1 1984/481/1 1943/475/1 +f 1976/513/295 1982/520/295 1961/485/295 +f 1961/485/295 1960/513/295 1976/513/295 +f 1978/509/294 1976/513/294 1960/513/294 +f 1960/513/294 1968/509/294 1978/509/294 +f 1977/512/210 1978/509/210 1968/509/210 +f 1968/509/210 1965/512/210 1977/512/210 +f 1979/521/296 1977/512/296 1965/512/296 +f 1965/512/296 1964/521/296 1979/521/296 +f 1951/476/7 1954/475/7 1985/478/7 +f 1985/478/7 1986/477/7 1951/476/7 +f 1955/483/289 1958/484/289 1966/523/289 +f 1966/523/289 1967/522/289 1955/483/289 +f 1973/501/291 1955/483/291 1967/522/291 +f 1967/522/291 1959/524/291 1973/501/291 +f 1982/520/27 1981/527/27 1944/526/27 +f 1944/526/27 1943/525/27 1982/520/27 +f 1961/485/27 1982/520/27 1943/525/27 +f 1943/525/27 1984/528/27 1961/485/27 +f 1959/486/10 1961/487/10 1984/487/10 +f 1984/487/10 1983/486/10 1959/486/10 +f 1973/501/26 1959/524/26 1983/524/26 +f 1983/524/26 1946/501/26 1973/501/26 +f 1974/501/26 1973/501/26 1946/501/26 +f 1946/501/26 1945/501/26 1974/501/26 +f 1958/484/26 1957/485/26 1952/485/26 +f 1952/485/26 1951/484/26 1958/484/26 +f 1966/523/26 1958/484/26 1951/484/26 +f 1951/484/26 1986/523/26 1966/523/26 +f 1964/493/10 1966/494/10 1986/530/10 +f 1986/530/10 1985/529/10 1964/493/10 +f 1979/521/27 1964/521/27 1985/532/27 +f 1985/532/27 1954/531/27 1979/521/27 +f 1980/533/27 1979/521/27 1954/531/27 +f 1954/531/27 1953/531/27 1980/533/27 +f 1987/471/10 1988/472/10 1989/473/10 +f 1989/473/10 1990/474/10 1987/471/10 +f 1991/475/7 1992/476/7 1993/477/7 +f 1993/477/7 1994/478/7 1991/475/7 +f 1995/479/27 1996/480/290 1997/480/290 +f 1997/480/290 1998/479/27 1995/479/27 +f 1999/476/1 2000/475/1 2001/481/1 +f 2001/481/1 2002/482/1 1999/476/1 +f 2003/483/26 2004/484/291 2005/485/291 +f 2005/485/291 2006/483/26 2003/483/26 +f 2007/486/10 2008/487/10 2009/488/10 +f 2010/489/10 2011/490/10 1996/491/10 +f 1996/491/10 1995/492/10 2010/489/10 +f 2012/493/10 2013/494/10 2014/495/10 +f 2015/496/10 2016/497/10 2014/495/10 +f 2014/495/10 2013/494/10 2015/496/10 +f 2017/498/10 2018/499/10 1989/473/10 +f 1989/473/10 1988/472/10 2017/498/10 +f 2019/500/288 1995/479/27 1998/479/27 +f 1998/479/27 2020/500/288 2019/500/288 +f 2021/501/289 2003/483/26 2006/483/26 +f 2006/483/26 2022/501/289 2021/501/289 +f 2019/502/10 2023/503/10 2010/489/10 +f 2010/489/10 1995/492/10 2019/502/10 +f 2015/496/10 2007/486/10 2009/488/10 +f 2009/488/10 2016/497/10 2015/496/10 +f 2011/504/1 1987/504/1 1990/505/1 +f 1990/505/1 2024/505/1 2011/504/1 +f 2010/506/293 1988/506/293 1987/504/293 +f 1987/504/293 2011/504/293 2010/506/293 +f 2023/507/292 2017/507/292 1988/506/292 +f 1988/506/292 2010/506/292 2023/507/292 +f 2025/508/7 2018/508/7 2017/507/7 +f 2017/507/7 2023/507/7 2025/508/7 +f 2026/509/203 1989/510/203 2018/511/203 +f 2018/511/203 2025/512/203 2026/509/203 +f 2024/513/296 1990/514/296 1989/510/296 +f 1989/510/296 2026/509/296 2024/513/296 +f 2027/515/10 2025/516/10 2023/503/10 +f 2023/503/10 2019/502/10 2027/515/10 +f 2019/500/1 2020/500/1 2028/517/1 +f 2028/517/1 2027/517/1 2019/500/1 +f 1996/480/7 2029/518/7 2030/518/7 +f 2030/518/7 1997/480/7 1996/480/7 +f 2029/519/10 1996/491/10 2011/490/10 +f 2011/490/10 2024/474/10 2029/519/10 +f 1991/475/7 2031/481/7 2032/482/7 +f 2032/482/7 1992/476/7 1991/475/7 +f 2024/513/314 2009/513/314 2008/485/314 +f 2008/485/314 2029/520/314 2024/513/314 +f 2026/509/296 2016/509/296 2009/513/296 +f 2009/513/296 2024/513/296 2026/509/296 +f 2025/512/203 2014/512/203 2016/509/203 +f 2016/509/203 2026/509/203 2025/512/203 +f 2027/521/294 2012/521/294 2014/512/294 +f 2014/512/294 2025/512/294 2027/521/294 +f 1999/476/1 2033/477/1 2034/478/1 +f 2034/478/1 2000/475/1 1999/476/1 +f 2003/483/291 2015/522/291 2013/523/291 +f 2013/523/291 2004/484/291 2003/483/291 +f 2021/501/289 2007/524/289 2015/522/289 +f 2015/522/289 2003/483/289 2021/501/289 +f 2029/520/27 1991/525/27 1994/526/27 +f 1994/526/27 2030/527/27 2029/520/27 +f 2008/485/27 2031/528/27 1991/525/27 +f 1991/525/27 2029/520/27 2008/485/27 +f 2007/486/10 2032/486/10 2031/487/10 +f 2031/487/10 2008/487/10 2007/486/10 +f 2021/501/26 1992/501/26 2032/524/26 +f 2032/524/26 2007/524/26 2021/501/26 +f 2022/501/26 1993/501/26 1992/501/26 +f 1992/501/26 2021/501/26 2022/501/26 +f 2004/484/26 1999/484/26 2002/485/26 +f 2002/485/26 2005/485/26 2004/484/26 +f 2013/523/26 2033/523/26 1999/484/26 +f 1999/484/26 2004/484/26 2013/523/26 +f 2012/493/10 2034/529/10 2033/530/10 +f 2033/530/10 2013/494/10 2012/493/10 +f 2027/521/27 2000/531/27 2034/532/27 +f 2034/532/27 2012/521/27 2027/521/27 +f 2028/533/27 2001/531/27 2000/531/27 +f 2000/531/27 2027/521/27 2028/533/27 +f 2035/471/10 2036/472/10 2037/473/10 +f 2037/473/10 2038/474/10 2035/471/10 +f 2039/475/7 2040/476/7 2041/477/7 +f 2041/477/7 2042/478/7 2039/475/7 +f 2043/479/27 2044/480/290 2045/480/290 +f 2045/480/290 2046/479/27 2043/479/27 +f 2047/476/1 2048/475/1 2049/481/1 +f 2049/481/1 2050/482/1 2047/476/1 +f 2051/483/26 2052/484/291 2053/485/291 +f 2053/485/291 2054/483/26 2051/483/26 +f 2055/486/10 2056/487/10 2057/488/10 +f 2058/489/10 2059/490/10 2044/491/10 +f 2044/491/10 2043/492/10 2058/489/10 +f 2060/493/10 2061/494/10 2062/495/10 +f 2063/496/10 2064/497/10 2062/495/10 +f 2062/495/10 2061/494/10 2063/496/10 +f 2065/498/10 2066/499/10 2037/473/10 +f 2037/473/10 2036/472/10 2065/498/10 +f 2067/500/288 2043/479/27 2046/479/27 +f 2046/479/27 2068/500/288 2067/500/288 +f 2069/501/289 2051/483/26 2054/483/26 +f 2054/483/26 2070/501/289 2069/501/289 +f 2067/502/10 2071/503/10 2058/489/10 +f 2058/489/10 2043/492/10 2067/502/10 +f 2063/496/10 2055/486/10 2057/488/10 +f 2057/488/10 2064/497/10 2063/496/10 +f 2059/504/1 2035/504/1 2038/505/1 +f 2038/505/1 2072/505/1 2059/504/1 +f 2058/506/293 2036/506/293 2035/504/293 +f 2035/504/293 2059/504/293 2058/506/293 +f 2071/507/292 2065/507/292 2036/506/292 +f 2036/506/292 2058/506/292 2071/507/292 +f 2073/508/7 2066/508/7 2065/507/7 +f 2065/507/7 2071/507/7 2073/508/7 +f 2074/509/203 2037/510/203 2066/511/203 +f 2066/511/203 2073/512/203 2074/509/203 +f 2072/513/296 2038/514/296 2037/510/296 +f 2037/510/296 2074/509/296 2072/513/296 +f 2075/515/10 2073/516/10 2071/503/10 +f 2071/503/10 2067/502/10 2075/515/10 +f 2067/500/1 2068/500/1 2076/517/1 +f 2076/517/1 2075/517/1 2067/500/1 +f 2044/480/7 2077/518/7 2078/518/7 +f 2078/518/7 2045/480/7 2044/480/7 +f 2077/519/10 2044/491/10 2059/490/10 +f 2059/490/10 2072/474/10 2077/519/10 +f 2039/475/7 2079/481/7 2080/482/7 +f 2080/482/7 2040/476/7 2039/475/7 +f 2072/513/314 2057/513/314 2056/485/314 +f 2056/485/314 2077/520/314 2072/513/314 +f 2074/509/296 2064/509/296 2057/513/296 +f 2057/513/296 2072/513/296 2074/509/296 +f 2073/512/203 2062/512/203 2064/509/203 +f 2064/509/203 2074/509/203 2073/512/203 +f 2075/521/294 2060/521/294 2062/512/294 +f 2062/512/294 2073/512/294 2075/521/294 +f 2047/476/1 2081/477/1 2082/478/1 +f 2082/478/1 2048/475/1 2047/476/1 +f 2051/483/291 2063/522/291 2061/523/291 +f 2061/523/291 2052/484/291 2051/483/291 +f 2069/501/289 2055/524/289 2063/522/298 +f 2063/522/298 2051/483/298 2069/501/289 +f 2077/520/27 2039/525/27 2042/526/27 +f 2042/526/27 2078/527/27 2077/520/27 +f 2056/485/27 2079/528/27 2039/525/27 +f 2039/525/27 2077/520/27 2056/485/27 +f 2055/486/10 2080/486/10 2079/487/10 +f 2079/487/10 2056/487/10 2055/486/10 +f 2069/501/26 2040/501/26 2080/524/26 +f 2080/524/26 2055/524/26 2069/501/26 +f 2070/501/26 2041/501/26 2040/501/26 +f 2040/501/26 2069/501/26 2070/501/26 +f 2052/484/26 2047/484/26 2050/485/26 +f 2050/485/26 2053/485/26 2052/484/26 +f 2061/523/26 2081/523/26 2047/484/26 +f 2047/484/26 2052/484/26 2061/523/26 +f 2060/493/10 2082/529/10 2081/530/10 +f 2081/530/10 2061/494/10 2060/493/10 +f 2075/521/27 2048/531/27 2082/532/27 +f 2082/532/27 2060/521/27 2075/521/27 +f 2076/533/27 2049/531/27 2048/531/27 +f 2048/531/27 2075/521/27 2076/533/27 +f 2083/471/7 2084/472/7 2085/473/7 +f 2085/473/7 2086/474/7 2083/471/7 +f 2087/475/4 2088/476/4 2089/477/4 +f 2089/477/4 2090/478/4 2087/475/4 +f 2091/479/27 2092/480/301 2093/480/301 +f 2093/480/301 2094/479/27 2091/479/27 +f 2095/476/10 2096/475/10 2097/481/10 +f 2097/481/10 2098/482/10 2095/476/10 +f 2099/483/26 2100/484/302 2101/485/302 +f 2101/485/302 2102/483/26 2099/483/26 +f 2103/486/7 2104/487/7 2105/488/7 +f 2106/489/7 2107/490/7 2092/491/7 +f 2092/491/7 2091/492/7 2106/489/7 +f 2108/493/7 2109/494/7 2110/495/7 +f 2111/496/7 2112/497/7 2110/495/7 +f 2110/495/7 2109/494/7 2111/496/7 +f 2113/498/7 2114/499/7 2085/473/7 +f 2085/473/7 2084/472/7 2113/498/7 +f 2115/500/299 2091/479/27 2094/479/27 +f 2094/479/27 2116/500/299 2115/500/299 +f 2117/501/300 2099/483/26 2102/483/26 +f 2102/483/26 2118/501/300 2117/501/300 +f 2115/502/7 2119/503/7 2106/489/7 +f 2106/489/7 2091/492/7 2115/502/7 +f 2111/496/7 2103/486/7 2105/488/7 +f 2105/488/7 2112/497/7 2111/496/7 +f 2107/504/10 2083/504/10 2086/505/10 +f 2086/505/10 2120/505/10 2107/504/10 +f 2106/506/304 2084/506/304 2083/504/304 +f 2083/504/304 2107/504/304 2106/506/304 +f 2119/507/303 2113/507/303 2084/506/303 +f 2084/506/303 2106/506/303 2119/507/303 +f 2121/508/4 2114/508/4 2113/507/4 +f 2113/507/4 2119/507/4 2121/508/4 +f 2122/509/309 2085/510/309 2114/511/309 +f 2114/511/309 2121/512/309 2122/509/309 +f 2120/513/310 2086/514/310 2085/510/310 +f 2085/510/310 2122/509/310 2120/513/310 +f 2123/515/7 2121/516/7 2119/503/7 +f 2119/503/7 2115/502/7 2123/515/7 +f 2115/500/10 2116/500/10 2124/517/10 +f 2124/517/10 2123/517/10 2115/500/10 +f 2092/480/4 2125/518/4 2126/518/4 +f 2126/518/4 2093/480/4 2092/480/4 +f 2125/519/7 2092/491/7 2107/490/7 +f 2107/490/7 2120/474/7 2125/519/7 +f 2087/475/4 2127/481/4 2128/482/4 +f 2128/482/4 2088/476/4 2087/475/4 +f 2120/513/311 2105/513/311 2104/485/311 +f 2104/485/311 2125/520/311 2120/513/311 +f 2122/509/310 2112/509/310 2105/513/310 +f 2105/513/310 2120/513/310 2122/509/310 +f 2121/512/309 2110/512/309 2112/509/309 +f 2112/509/309 2122/509/309 2121/512/309 +f 2123/521/312 2108/521/312 2110/512/312 +f 2110/512/312 2121/512/312 2123/521/312 +f 2095/476/10 2129/477/10 2130/478/10 +f 2130/478/10 2096/475/10 2095/476/10 +f 2099/483/302 2111/522/302 2109/523/302 +f 2109/523/302 2100/484/302 2099/483/302 +f 2117/501/300 2103/524/300 2111/522/300 +f 2111/522/300 2099/483/300 2117/501/300 +f 2125/520/27 2087/525/27 2090/526/27 +f 2090/526/27 2126/527/27 2125/520/27 +f 2104/485/27 2127/528/27 2087/525/27 +f 2087/525/27 2125/520/27 2104/485/27 +f 2103/486/7 2128/486/7 2127/487/7 +f 2127/487/7 2104/487/7 2103/486/7 +f 2117/501/26 2088/501/26 2128/524/26 +f 2128/524/26 2103/524/26 2117/501/26 +f 2118/501/26 2089/501/26 2088/501/26 +f 2088/501/26 2117/501/26 2118/501/26 +f 2100/484/26 2095/484/26 2098/485/26 +f 2098/485/26 2101/485/26 2100/484/26 +f 2109/523/26 2129/523/26 2095/484/26 +f 2095/484/26 2100/484/26 2109/523/26 +f 2108/493/7 2130/529/7 2129/530/7 +f 2129/530/7 2109/494/7 2108/493/7 +f 2123/521/27 2096/531/27 2130/532/27 +f 2130/532/27 2108/521/27 2123/521/27 +f 2124/533/27 2097/531/27 2096/531/27 +f 2096/531/27 2123/521/27 2124/533/27 +f 2131/471/7 2132/472/7 2133/473/7 +f 2133/473/7 2134/474/7 2131/471/7 +f 2135/475/4 2136/476/4 2137/477/4 +f 2137/477/4 2138/478/4 2135/475/4 +f 2139/479/27 2140/480/301 2141/480/301 +f 2141/480/301 2142/479/27 2139/479/27 +f 2143/476/10 2144/475/10 2145/481/10 +f 2145/481/10 2146/482/10 2143/476/10 +f 2147/483/26 2148/484/302 2149/485/302 +f 2149/485/302 2150/483/26 2147/483/26 +f 2151/486/7 2152/487/7 2153/488/7 +f 2154/489/7 2155/490/7 2140/491/7 +f 2140/491/7 2139/492/7 2154/489/7 +f 2156/493/7 2157/494/7 2158/495/7 +f 2159/496/7 2160/497/7 2158/495/7 +f 2158/495/7 2157/494/7 2159/496/7 +f 2161/498/7 2162/499/7 2133/473/7 +f 2133/473/7 2132/472/7 2161/498/7 +f 2163/500/299 2139/479/27 2142/479/27 +f 2142/479/27 2164/500/299 2163/500/299 +f 2165/501/300 2147/483/26 2150/483/26 +f 2150/483/26 2166/501/300 2165/501/300 +f 2163/502/7 2167/503/7 2154/489/7 +f 2154/489/7 2139/492/7 2163/502/7 +f 2159/496/7 2151/486/7 2153/488/7 +f 2153/488/7 2160/497/7 2159/496/7 +f 2155/504/10 2131/504/10 2134/505/10 +f 2134/505/10 2168/505/10 2155/504/10 +f 2154/506/304 2132/506/304 2131/504/304 +f 2131/504/304 2155/504/304 2154/506/304 +f 2167/507/303 2161/507/303 2132/506/303 +f 2132/506/303 2154/506/303 2167/507/303 +f 2169/508/4 2162/508/4 2161/507/4 +f 2161/507/4 2167/507/4 2169/508/4 +f 2170/509/309 2133/510/309 2162/511/309 +f 2162/511/309 2169/512/309 2170/509/309 +f 2168/513/310 2134/514/310 2133/510/310 +f 2133/510/310 2170/509/310 2168/513/310 +f 2171/515/7 2169/516/7 2167/503/7 +f 2167/503/7 2163/502/7 2171/515/7 +f 2163/500/10 2164/500/10 2172/517/10 +f 2172/517/10 2171/517/10 2163/500/10 +f 2140/480/4 2173/518/4 2174/518/4 +f 2174/518/4 2141/480/4 2140/480/4 +f 2173/519/7 2140/491/7 2155/490/7 +f 2155/490/7 2168/474/7 2173/519/7 +f 2135/475/4 2175/481/4 2176/482/4 +f 2176/482/4 2136/476/4 2135/475/4 +f 2168/513/311 2153/513/311 2152/485/311 +f 2152/485/311 2173/520/311 2168/513/311 +f 2170/509/310 2160/509/310 2153/513/310 +f 2153/513/310 2168/513/310 2170/509/310 +f 2169/512/309 2158/512/309 2160/509/309 +f 2160/509/309 2170/509/309 2169/512/309 +f 2171/521/312 2156/521/312 2158/512/312 +f 2158/512/312 2169/512/312 2171/521/312 +f 2143/476/10 2177/477/10 2178/478/10 +f 2178/478/10 2144/475/10 2143/476/10 +f 2147/483/302 2159/522/302 2157/523/302 +f 2157/523/302 2148/484/302 2147/483/302 +f 2165/501/300 2151/524/300 2159/522/300 +f 2159/522/300 2147/483/300 2165/501/300 +f 2173/520/27 2135/525/27 2138/526/27 +f 2138/526/27 2174/527/27 2173/520/27 +f 2152/485/27 2175/528/27 2135/525/27 +f 2135/525/27 2173/520/27 2152/485/27 +f 2151/486/7 2176/486/7 2175/487/7 +f 2175/487/7 2152/487/7 2151/486/7 +f 2165/501/26 2136/501/26 2176/524/26 +f 2176/524/26 2151/524/26 2165/501/26 +f 2166/501/26 2137/501/26 2136/501/26 +f 2136/501/26 2165/501/26 2166/501/26 +f 2148/484/26 2143/484/26 2146/485/26 +f 2146/485/26 2149/485/26 2148/484/26 +f 2157/523/26 2177/523/26 2143/484/26 +f 2143/484/26 2148/484/26 2157/523/26 +f 2156/493/7 2178/529/7 2177/530/7 +f 2177/530/7 2157/494/7 2156/493/7 +f 2171/521/27 2144/531/27 2178/532/27 +f 2178/532/27 2156/521/27 2171/521/27 +f 2172/533/27 2145/531/27 2144/531/27 +f 2144/531/27 2171/521/27 2172/533/27 +f 2179/471/7 2180/474/7 2181/473/7 +f 2181/473/7 2182/472/7 2179/471/7 +f 2183/475/10 2184/478/10 2185/477/10 +f 2185/477/10 2186/476/10 2183/475/10 +f 2187/479/27 2188/479/27 2189/480/299 +f 2189/480/299 2190/480/299 2187/479/27 +f 2191/476/4 2192/482/4 2193/481/4 +f 2193/481/4 2194/475/4 2191/476/4 +f 2195/483/26 2196/483/26 2197/485/300 +f 2197/485/300 2198/484/300 2195/483/26 +f 2199/486/7 2200/488/7 2201/487/7 +f 2202/489/7 2187/492/7 2190/491/7 +f 2190/491/7 2203/490/7 2202/489/7 +f 2204/493/7 2205/495/7 2206/494/7 +f 2207/496/7 2206/494/7 2205/495/7 +f 2205/495/7 2208/497/7 2207/496/7 +f 2209/498/7 2182/472/7 2181/473/7 +f 2181/473/7 2210/499/7 2209/498/7 +f 2211/500/301 2212/500/301 2188/479/27 +f 2188/479/27 2187/479/27 2211/500/301 +f 2213/501/302 2214/501/302 2196/483/26 +f 2196/483/26 2195/483/26 2213/501/302 +f 2211/502/7 2187/492/7 2202/489/7 +f 2202/489/7 2215/503/7 2211/502/7 +f 2207/496/7 2208/497/7 2200/488/7 +f 2200/488/7 2199/486/7 2207/496/7 +f 2203/504/4 2216/505/4 2180/505/4 +f 2180/505/4 2179/504/4 2203/504/4 +f 2202/506/303 2203/504/303 2179/504/303 +f 2179/504/303 2182/506/303 2202/506/303 +f 2215/507/304 2202/506/304 2182/506/304 +f 2182/506/304 2209/507/304 2215/507/304 +f 2217/508/10 2215/507/10 2209/507/10 +f 2209/507/10 2210/508/10 2217/508/10 +f 2218/509/305 2217/512/305 2210/511/305 +f 2210/511/305 2181/510/305 2218/509/305 +f 2216/513/306 2218/509/306 2181/510/306 +f 2181/510/306 2180/514/306 2216/513/306 +f 2219/515/7 2211/502/7 2215/503/7 +f 2215/503/7 2217/516/7 2219/515/7 +f 2211/500/4 2219/517/4 2220/517/4 +f 2220/517/4 2212/500/4 2211/500/4 +f 2190/480/10 2189/480/10 2221/518/10 +f 2221/518/10 2222/518/10 2190/480/10 +f 2222/519/7 2216/474/7 2203/490/7 +f 2203/490/7 2190/491/7 2222/519/7 +f 2183/475/10 2186/476/10 2223/482/10 +f 2223/482/10 2224/481/10 2183/475/10 +f 2216/513/307 2222/520/307 2201/485/307 +f 2201/485/307 2200/513/307 2216/513/307 +f 2218/509/306 2216/513/306 2200/513/306 +f 2200/513/306 2208/509/306 2218/509/306 +f 2217/512/305 2218/509/305 2208/509/305 +f 2208/509/305 2205/512/305 2217/512/305 +f 2219/521/308 2217/512/308 2205/512/308 +f 2205/512/308 2204/521/308 2219/521/308 +f 2191/476/4 2194/475/4 2225/478/4 +f 2225/478/4 2226/477/4 2191/476/4 +f 2195/483/300 2198/484/300 2206/523/300 +f 2206/523/300 2207/522/300 2195/483/300 +f 2213/501/302 2195/483/302 2207/522/302 +f 2207/522/302 2199/524/302 2213/501/302 +f 2222/520/27 2221/527/27 2184/526/27 +f 2184/526/27 2183/525/27 2222/520/27 +f 2201/485/27 2222/520/27 2183/525/27 +f 2183/525/27 2224/528/27 2201/485/27 +f 2199/486/7 2201/487/7 2224/487/7 +f 2224/487/7 2223/486/7 2199/486/7 +f 2213/501/26 2199/524/26 2223/524/26 +f 2223/524/26 2186/501/26 2213/501/26 +f 2214/501/26 2213/501/26 2186/501/26 +f 2186/501/26 2185/501/26 2214/501/26 +f 2198/484/26 2197/485/26 2192/485/26 +f 2192/485/26 2191/484/26 2198/484/26 +f 2206/523/26 2198/484/26 2191/484/26 +f 2191/484/26 2226/523/26 2206/523/26 +f 2204/493/7 2206/494/7 2226/530/7 +f 2226/530/7 2225/529/7 2204/493/7 +f 2219/521/27 2204/521/27 2225/532/27 +f 2225/532/27 2194/531/27 2219/521/27 +f 2220/533/27 2219/521/27 2194/531/27 +f 2194/531/27 2193/531/27 2220/533/27 +f 2227/471/10 2228/472/10 2229/473/10 +f 2229/473/10 2230/474/10 2227/471/10 +f 2231/475/7 2232/476/7 2233/477/7 +f 2233/477/7 2234/478/7 2231/475/7 +f 2235/479/27 2236/480/290 2237/480/290 +f 2237/480/290 2238/479/27 2235/479/27 +f 2239/476/1 2240/475/1 2241/481/1 +f 2241/481/1 2242/482/1 2239/476/1 +f 2243/483/26 2244/484/291 2245/485/291 +f 2245/485/291 2246/483/26 2243/483/26 +f 2247/486/10 2248/487/10 2249/488/10 +f 2250/489/10 2251/490/10 2236/491/10 +f 2236/491/10 2235/492/10 2250/489/10 +f 2252/493/10 2253/494/10 2254/495/10 +f 2255/496/10 2256/497/10 2254/495/10 +f 2254/495/10 2253/494/10 2255/496/10 +f 2257/498/10 2258/499/10 2229/473/10 +f 2229/473/10 2228/472/10 2257/498/10 +f 2259/500/288 2235/479/27 2238/479/27 +f 2238/479/27 2260/500/288 2259/500/288 +f 2261/501/289 2243/483/26 2246/483/26 +f 2246/483/26 2262/501/289 2261/501/289 +f 2259/502/10 2263/503/10 2250/489/10 +f 2250/489/10 2235/492/10 2259/502/10 +f 2255/496/10 2247/486/10 2249/488/10 +f 2249/488/10 2256/497/10 2255/496/10 +f 2251/504/1 2227/504/1 2230/505/1 +f 2230/505/1 2264/505/1 2251/504/1 +f 2250/506/293 2228/506/293 2227/504/293 +f 2227/504/293 2251/504/293 2250/506/293 +f 2263/507/292 2257/507/292 2228/506/292 +f 2228/506/292 2250/506/292 2263/507/292 +f 2265/508/7 2258/508/7 2257/507/7 +f 2257/507/7 2263/507/7 2265/508/7 +f 2266/509/203 2229/510/203 2258/511/203 +f 2258/511/203 2265/512/203 2266/509/203 +f 2264/513/296 2230/514/296 2229/510/296 +f 2229/510/296 2266/509/296 2264/513/296 +f 2267/515/10 2265/516/10 2263/503/10 +f 2263/503/10 2259/502/10 2267/515/10 +f 2259/500/1 2260/500/1 2268/517/1 +f 2268/517/1 2267/517/1 2259/500/1 +f 2236/480/7 2269/518/7 2270/518/7 +f 2270/518/7 2237/480/7 2236/480/7 +f 2269/519/10 2236/491/10 2251/490/10 +f 2251/490/10 2264/474/10 2269/519/10 +f 2231/475/7 2271/481/7 2272/482/7 +f 2272/482/7 2232/476/7 2231/475/7 +f 2264/513/314 2249/513/314 2248/485/314 +f 2248/485/314 2269/520/314 2264/513/314 +f 2266/509/296 2256/509/296 2249/513/296 +f 2249/513/296 2264/513/296 2266/509/296 +f 2265/512/203 2254/512/203 2256/509/203 +f 2256/509/203 2266/509/203 2265/512/203 +f 2267/521/294 2252/521/294 2254/512/294 +f 2254/512/294 2265/512/294 2267/521/294 +f 2239/476/1 2273/477/1 2274/478/1 +f 2274/478/1 2240/475/1 2239/476/1 +f 2243/483/297 2255/522/297 2253/523/291 +f 2253/523/291 2244/484/291 2243/483/297 +f 2261/501/289 2247/524/289 2255/522/289 +f 2255/522/289 2243/483/289 2261/501/289 +f 2269/520/27 2231/525/27 2234/526/27 +f 2234/526/27 2270/527/27 2269/520/27 +f 2248/485/27 2271/528/27 2231/525/27 +f 2231/525/27 2269/520/27 2248/485/27 +f 2247/486/10 2272/486/10 2271/487/10 +f 2271/487/10 2248/487/10 2247/486/10 +f 2261/501/26 2232/501/26 2272/524/26 +f 2272/524/26 2247/524/26 2261/501/26 +f 2262/501/26 2233/501/26 2232/501/26 +f 2232/501/26 2261/501/26 2262/501/26 +f 2244/484/26 2239/484/26 2242/485/26 +f 2242/485/26 2245/485/26 2244/484/26 +f 2253/523/26 2273/523/26 2239/484/26 +f 2239/484/26 2244/484/26 2253/523/26 +f 2252/493/10 2274/529/10 2273/530/10 +f 2273/530/10 2253/494/10 2252/493/10 +f 2267/521/27 2240/531/27 2274/532/27 +f 2274/532/27 2252/521/27 2267/521/27 +f 2268/533/27 2241/531/27 2240/531/27 +f 2240/531/27 2267/521/27 2268/533/27 +f 2275/534/4 2276/535/4 2277/536/4 +f 2277/536/4 2278/537/4 2275/534/4 +f 2279/538/4 2280/539/4 2281/540/4 +f 2281/540/4 2282/541/4 2279/538/4 +f 2283/542/4 2284/543/4 2276/535/4 +f 2276/535/4 2275/534/4 2283/542/4 +f 2280/539/4 2278/537/4 2277/536/4 +f 2277/536/4 2281/540/4 2280/539/4 +f 2285/544/315 2286/545/315 2287/546/316 +f 2287/546/316 2288/547/316 2285/544/315 +f 2286/548/4 2289/549/4 2290/550/4 +f 2290/550/4 2287/551/4 2286/548/4 +f 2289/552/317 2291/553/317 2292/554/318 +f 2292/554/318 2290/555/318 2289/552/317 +f 2288/547/316 2287/546/316 2293/556/319 +f 2293/556/319 2294/557/319 2288/547/316 +f 2287/551/4 2290/550/4 2295/558/4 +f 2295/558/4 2293/559/4 2287/551/4 +f 2290/555/318 2292/554/318 2296/560/320 +f 2296/560/320 2295/561/320 2290/555/318 +f 2294/557/319 2293/556/319 2297/562/27 +f 2297/562/27 2298/563/27 2294/557/319 +f 2293/559/4 2295/558/4 2299/564/4 +f 2299/564/4 2297/565/4 2293/559/4 +f 2295/561/320 2296/560/320 2300/566/26 +f 2300/566/26 2299/567/26 2295/561/320 +f 2298/563/27 2297/562/27 2301/556/321 +f 2301/556/321 2302/557/321 2298/563/27 +f 2297/565/4 2299/564/4 2303/568/4 +f 2303/568/4 2301/569/4 2297/565/4 +f 2299/567/26 2300/566/26 2304/560/322 +f 2304/560/322 2303/561/322 2299/567/26 +f 2302/557/321 2301/556/321 2305/546/323 +f 2305/546/323 2306/547/323 2302/557/321 +f 2301/569/4 2303/568/4 2307/570/4 +f 2307/570/4 2305/571/4 2301/569/4 +f 2303/561/322 2304/560/322 2308/554/324 +f 2308/554/324 2307/555/324 2303/561/322 +f 2306/547/323 2305/546/323 2309/545/325 +f 2309/545/325 2310/544/325 2306/547/323 +f 2305/571/4 2307/570/4 2311/572/4 +f 2311/572/4 2309/573/4 2305/571/4 +f 2307/555/324 2308/554/324 2312/553/326 +f 2312/553/326 2311/552/326 2307/555/324 +f 2313/574/327 2314/575/327 2315/576/327 +f 2315/576/327 2316/577/327 2313/574/327 +f 2317/578/328 2313/579/328 2316/580/328 +f 2316/580/328 2318/581/328 2317/578/328 +f 2319/579/329 2317/578/329 2318/581/329 +f 2318/581/329 2320/580/329 2319/579/329 +f 2319/578/330 2320/581/330 2315/580/330 +f 2315/580/330 2314/579/330 2319/578/330 +f 2321/582/331 2316/577/331 2315/576/331 +f 2315/576/331 2322/583/332 2321/582/331 +f 2318/581/333 2316/580/333 2321/584/333 +f 2321/584/333 2323/585/333 2318/581/333 +f 2324/584/334 2320/580/334 2318/581/334 +f 2318/581/334 2323/585/334 2324/584/334 +f 2322/584/335 2315/580/335 2320/581/335 +f 2320/581/335 2324/585/335 2322/584/335 +f 2325/586/336 2326/587/26 2327/588/26 +f 2327/588/26 2328/589/336 2325/586/336 +f 2328/590/1 2327/591/1 2329/592/1 +f 2329/592/1 2330/593/1 2328/590/1 +f 2330/589/337 2329/588/27 2331/587/27 +f 2331/587/27 2332/586/337 2330/589/337 +f 2327/588/26 2326/587/26 2333/594/338 +f 2333/594/338 2334/595/338 2327/588/26 +f 2329/592/1 2327/591/1 2334/596/1 +f 2334/596/1 2335/597/1 2329/592/1 +f 2331/587/27 2329/588/27 2335/595/339 +f 2335/595/339 2336/594/339 2331/587/27 +f 2337/586/340 2338/587/26 2339/588/26 +f 2339/588/26 2340/589/340 2337/586/340 +f 2340/590/4 2339/591/4 2341/592/4 +f 2341/592/4 2342/593/4 2340/590/4 +f 2342/589/341 2341/588/27 2343/587/27 +f 2343/587/27 2344/586/342 2342/589/341 +f 2339/588/26 2338/587/26 2345/594/343 +f 2345/594/343 2346/595/343 2339/588/26 +f 2341/592/4 2339/591/4 2346/596/4 +f 2346/596/4 2347/597/4 2341/592/4 +f 2343/587/27 2341/588/27 2347/595/344 +f 2347/595/344 2348/594/344 2343/587/27 +f 2347/598/1 2346/596/1 2345/599/1 +f 2345/599/1 2348/600/1 2347/598/1 +f 2349/574/345 2350/577/345 2351/576/345 +f 2351/576/345 2352/575/345 2349/574/345 +f 2353/578/346 2354/581/346 2350/580/346 +f 2350/580/346 2349/579/346 2353/578/346 +f 2355/579/347 2356/580/347 2354/581/347 +f 2354/581/347 2353/578/347 2355/579/347 +f 2355/578/348 2352/579/348 2351/580/348 +f 2351/580/348 2356/581/348 2355/578/348 +f 2357/582/175 2358/583/349 2351/576/349 +f 2351/576/349 2350/577/349 2357/582/175 +f 2354/581/350 2359/585/350 2357/584/350 +f 2357/584/350 2350/580/350 2354/581/350 +f 2360/584/351 2359/585/351 2354/581/351 +f 2354/581/351 2356/580/351 2360/584/351 +f 2358/584/352 2360/585/352 2356/581/353 +f 2356/581/353 2351/580/352 2358/584/352 +f 2361/586/340 2362/589/340 2363/588/26 +f 2363/588/26 2364/587/26 2361/586/340 +f 2362/590/10 2365/593/10 2366/592/10 +f 2366/592/10 2363/591/10 2362/590/10 +f 2365/589/341 2367/586/342 2368/587/27 +f 2368/587/27 2366/588/27 2365/589/341 +f 2363/588/26 2369/595/343 2370/594/343 +f 2370/594/343 2364/587/26 2363/588/26 +f 2366/592/10 2371/597/10 2369/596/10 +f 2369/596/10 2363/591/10 2366/592/10 +f 2368/587/27 2372/594/344 2371/595/344 +f 2371/595/344 2366/588/27 2368/587/27 +f 2370/599/1 2369/596/1 2371/598/1 +f 2371/598/1 2372/600/1 2370/599/1 +f 2373/586/354 2374/589/340 2375/588/26 +f 2375/588/26 2376/587/26 2373/586/354 +f 2374/590/10 2377/593/10 2378/592/10 +f 2378/592/10 2375/591/10 2374/590/10 +f 2377/589/342 2379/586/341 2380/587/27 +f 2380/587/27 2378/588/27 2377/589/342 +f 2375/588/26 2381/595/355 2382/594/355 +f 2382/594/355 2376/587/26 2375/588/26 +f 2378/592/10 2383/597/10 2381/596/10 +f 2381/596/10 2375/591/10 2378/592/10 +f 2380/587/27 2384/594/356 2383/595/344 +f 2383/595/344 2378/588/27 2380/587/27 +f 2385/601/7 2386/602/7 2387/603/7 +f 2387/603/7 691/604/7 2385/601/7 +f 2388/605/4 2389/606/4 2390/607/4 +f 2390/607/4 690/608/4 2388/605/4 +f 2391/601/1 2392/602/1 2393/609/1 +f 2393/609/1 692/610/1 2391/601/1 +f 2394/611/10 2395/612/10 2396/613/10 +f 2396/613/10 693/614/10 2394/611/10 +f 690/610/7 2390/609/7 2386/602/7 +f 2386/602/7 2385/601/7 690/610/7 +f 693/604/1 2396/603/1 2392/602/1 +f 2392/602/1 2391/601/1 693/604/1 +f 692/615/4 2393/616/4 2389/606/4 +f 2389/606/4 2388/605/4 692/615/4 +f 691/617/10 2387/618/10 2395/612/10 +f 2395/612/10 2394/611/10 691/617/10 +f 2397/619/357 2398/620/358 2399/621/358 +f 2399/621/358 2400/622/357 2397/619/357 +f 2398/620/358 2401/623/359 2402/624/359 +f 2402/624/359 2399/621/358 2398/620/358 +f 2403/625/360 2404/626/10 2398/627/10 +f 2398/627/10 2397/628/360 2403/625/360 +f 2398/627/10 2404/626/10 2405/629/361 +f 2405/629/361 2401/630/361 2398/627/10 +f 2403/619/315 2406/622/315 2407/621/362 +f 2407/621/362 2404/620/362 2403/619/315 +f 2404/620/362 2407/621/362 2408/624/363 +f 2408/624/363 2405/623/363 2404/620/362 +f 2406/631/364 2400/632/364 2399/633/365 +f 2399/633/365 2407/634/365 2406/631/364 +f 2399/633/365 2402/635/366 2408/636/366 +f 2408/636/366 2407/634/365 2399/633/365 +f 2409/637/7 2410/638/7 2411/639/7 +f 2411/639/7 2412/640/7 2409/637/7 +f 2413/640/4 2412/641/4 2411/642/4 +f 2411/642/4 2414/643/4 2413/640/4 +f 2413/637/1 2414/638/1 2415/639/1 +f 2415/639/1 2416/640/1 2413/637/1 +f 2417/644/1 2418/645/1 2419/646/1 +f 2419/646/1 2420/647/1 2417/644/1 +f 2421/647/7 2422/644/7 2423/645/7 +f 2423/645/7 2424/646/7 2421/647/7 +f 2418/648/367 2417/649/367 2425/650/367 +f 2425/650/367 2426/651/367 2418/648/367 +f 2425/652/4 2417/567/4 2420/653/4 +f 2420/653/4 2427/654/4 2425/652/4 +f 2420/648/368 2419/649/368 2428/650/368 +f 2428/650/368 2427/651/368 2420/648/368 +f 2429/637/7 2430/638/7 2431/639/7 +f 2431/639/7 2432/640/7 2429/637/7 +f 2432/640/4 2431/643/4 2433/642/4 +f 2433/642/4 2434/641/4 2432/640/4 +f 2434/637/1 2433/638/1 2435/639/1 +f 2435/639/1 2436/640/1 2434/637/1 +f 2437/655/369 2423/656/369 2422/657/369 +f 2422/657/369 2438/658/369 2437/655/369 +f 2437/659/4 2439/660/4 2424/661/4 +f 2424/661/4 2423/662/4 2437/659/4 +f 2440/655/370 2421/656/370 2424/657/370 +f 2424/657/370 2439/658/370 2440/655/370 +f 2441/663/298 2442/664/298 2426/651/298 +f 2426/651/298 2425/650/298 2441/663/298 +f 2427/654/4 2443/665/4 2441/666/4 +f 2441/666/4 2425/652/4 2427/654/4 +f 2444/663/371 2443/664/371 2427/651/371 +f 2427/651/371 2428/650/371 2444/663/371 +f 2437/655/297 2438/658/297 2442/664/297 +f 2442/664/297 2441/663/297 2437/655/297 +f 2439/660/4 2437/659/4 2441/666/4 +f 2441/666/4 2443/665/4 2439/660/4 +f 2440/655/372 2439/658/372 2443/664/372 +f 2443/664/372 2444/663/372 2440/655/372 +f 2445/667/373 2446/668/373 2447/669/373 +f 2447/669/373 2448/670/373 2445/667/373 +f 2449/671/374 2450/672/374 2446/668/374 +f 2446/668/374 2445/667/374 2449/671/374 +f 2451/673/7 2452/674/7 2453/675/7 +f 2453/675/7 2454/676/7 2451/673/7 +f 2451/673/7 2450/673/7 2455/673/7 +f 2455/673/7 2452/674/7 2451/673/7 +f 2451/673/7 2447/677/7 2446/677/7 +f 2446/677/7 2450/673/7 2451/673/7 +f 2456/678/7 2447/677/7 2451/673/7 +f 2451/673/7 2454/676/7 2456/678/7 +f 2453/679/27 2452/303/27 2457/680/27 +f 2457/680/27 2458/681/27 2453/679/27 +f 2452/682/375 2455/672/375 2459/671/375 +f 2459/671/375 2457/683/375 2452/682/375 +f 2455/672/376 2450/672/377 2449/671/377 +f 2449/671/377 2459/671/376 2455/672/376 +f 2460/684/373 2461/685/373 2445/667/373 +f 2445/667/373 2448/670/373 2460/684/373 +f 2461/685/374 2462/686/374 2449/671/374 +f 2449/671/374 2445/667/374 2461/685/374 +f 2463/678/1 2464/677/1 2465/673/1 +f 2465/673/1 2466/676/1 2463/678/1 +f 2465/673/1 2464/677/1 2467/677/1 +f 2467/677/1 2462/673/1 2465/673/1 +f 2465/673/1 2462/673/1 2461/673/1 +f 2461/673/1 2460/674/1 2465/673/1 +f 2465/673/1 2460/674/1 2468/675/1 +f 2468/675/1 2466/676/1 2465/673/1 +f 2457/680/27 2464/687/27 2463/688/27 +f 2463/688/27 2458/681/27 2457/680/27 +f 2459/671/375 2467/686/375 2464/678/375 +f 2464/678/375 2457/683/375 2459/671/375 +f 2449/671/377 2462/686/377 2467/686/376 +f 2467/686/376 2459/671/376 2449/671/377 +f 2469/689/4 2470/690/4 2471/691/4 +f 2471/691/4 2472/692/4 2469/689/4 +f 2473/693/4 2472/692/4 2471/691/4 +f 2471/691/4 2474/694/4 2473/693/4 +f 2475/619/357 2476/620/358 2477/621/358 +f 2477/621/358 2478/622/357 2475/619/357 +f 2476/620/358 2479/623/359 2480/624/359 +f 2480/624/359 2477/621/358 2476/620/358 +f 2481/625/360 2482/626/10 2476/627/10 +f 2476/627/10 2475/628/360 2481/625/360 +f 2476/627/10 2482/626/10 2483/629/361 +f 2483/629/361 2479/630/361 2476/627/10 +f 2481/619/315 2484/622/315 2485/621/362 +f 2485/621/362 2482/620/362 2481/619/315 +f 2482/620/362 2485/621/362 2486/624/363 +f 2486/624/363 2483/623/363 2482/620/362 +f 2484/631/364 2478/632/364 2477/633/365 +f 2477/633/365 2485/634/365 2484/631/364 +f 2477/633/365 2480/635/366 2486/636/366 +f 2486/636/366 2485/634/365 2477/633/365 +f 2487/619/357 2488/622/357 2489/621/378 +f 2489/621/378 2490/620/378 2487/619/357 +f 2490/620/378 2489/621/378 2491/624/379 +f 2491/624/379 2492/623/379 2490/620/378 +f 2493/625/365 2487/628/365 2490/627/4 +f 2490/627/4 2494/626/4 2493/625/365 +f 2490/627/4 2492/630/380 2495/629/380 +f 2495/629/380 2494/626/4 2490/627/4 +f 2493/619/315 2494/620/381 2496/621/381 +f 2496/621/381 2497/622/315 2493/619/315 +f 2494/620/381 2495/623/382 2498/624/382 +f 2498/624/382 2496/621/381 2494/620/381 +f 2497/631/383 2496/634/360 2489/633/360 +f 2489/633/360 2488/632/383 2497/631/383 +f 2489/633/360 2496/634/360 2498/636/384 +f 2498/636/384 2491/635/384 2489/633/360 +f 2499/619/357 2500/622/357 2501/621/378 +f 2501/621/378 2502/620/378 2499/619/357 +f 2502/620/378 2501/621/378 2503/624/379 +f 2503/624/379 2504/623/379 2502/620/378 +f 2505/625/365 2499/628/365 2502/627/4 +f 2502/627/4 2506/626/4 2505/625/365 +f 2502/627/4 2504/630/380 2507/629/380 +f 2507/629/380 2506/626/4 2502/627/4 +f 2505/619/315 2506/620/381 2508/621/381 +f 2508/621/381 2509/622/315 2505/619/315 +f 2506/620/381 2507/623/382 2510/624/382 +f 2510/624/382 2508/621/381 2506/620/381 +f 2509/631/383 2508/634/360 2501/633/360 +f 2501/633/360 2500/632/383 2509/631/383 +f 2501/633/360 2508/634/360 2510/636/384 +f 2510/636/384 2503/635/384 2501/633/360 +f 2511/586/336 2512/589/336 2513/588/26 +f 2513/588/26 2514/587/26 2511/586/336 +f 2512/590/7 2515/593/7 2516/592/7 +f 2516/592/7 2513/591/7 2512/590/7 +f 2515/589/337 2517/586/337 2518/587/27 +f 2518/587/27 2516/588/27 2515/589/337 +f 2513/588/26 2519/595/338 2520/594/338 +f 2520/594/338 2514/587/26 2513/588/26 +f 2516/592/7 2521/597/7 2519/596/7 +f 2519/596/7 2513/591/7 2516/592/7 +f 2518/587/27 2522/594/339 2521/595/339 +f 2521/595/339 2516/588/27 2518/587/27 +f 2523/451/27 2524/452/27 2525/453/27 +f 2525/453/27 2526/454/27 2523/451/27 +f 2527/455/4 2528/456/4 2524/457/4 +f 2524/457/4 2523/458/4 2527/455/4 +f 2528/459/1 2529/460/1 2525/461/1 +f 2525/461/1 2524/462/1 2528/459/1 +f 2529/456/10 2530/455/10 2526/458/10 +f 2526/458/10 2525/457/10 2529/456/10 +f 2530/460/7 2527/459/7 2523/462/7 +f 2523/462/7 2526/461/7 2530/460/7 +f 2531/451/27 2532/452/27 2533/453/27 +f 2533/453/27 2534/454/27 2531/451/27 +f 2535/455/7 2536/456/7 2532/457/7 +f 2532/457/7 2531/458/7 2535/455/7 +f 2536/459/4 2537/460/4 2533/461/4 +f 2533/461/4 2532/462/4 2536/459/4 +f 2537/456/1 2538/455/1 2534/458/1 +f 2534/458/1 2533/457/1 2537/456/1 +f 2538/460/10 2535/459/10 2531/462/10 +f 2531/462/10 2534/461/10 2538/460/10 +f 2539/451/27 2540/452/27 2541/453/27 +f 2541/453/27 2542/454/27 2539/451/27 +f 2543/455/7 2544/456/7 2540/457/7 +f 2540/457/7 2539/458/7 2543/455/7 +f 2544/459/4 2545/460/4 2541/461/4 +f 2541/461/4 2540/462/4 2544/459/4 +f 2545/456/1 2546/455/1 2542/458/1 +f 2542/458/1 2541/457/1 2545/456/1 +f 2546/460/10 2543/459/10 2539/462/10 +f 2539/462/10 2542/461/10 2546/460/10 +f 2547/3/12 2548/2/12 2549/1/1 +f 2549/1/1 2550/4/1 2547/3/12 +f 2551/6/11 2552/5/11 2548/2/12 +f 2548/2/12 2547/3/12 2551/6/11 +f 2553/8/10 2554/7/10 2552/5/11 +f 2552/5/11 2551/6/11 2553/8/10 +f 2555/11/9 2556/10/9 2554/9/10 +f 2554/9/10 2553/12/10 2555/11/9 +f 2557/14/8 2558/13/8 2556/10/9 +f 2556/10/9 2555/11/9 2557/14/8 +f 2559/16/7 2560/15/7 2558/13/8 +f 2558/13/8 2557/14/8 2559/16/7 +f 2561/18/6 2562/17/6 2560/15/7 +f 2560/15/7 2559/16/7 2561/18/6 +f 2563/20/5 2564/19/5 2562/17/6 +f 2562/17/6 2561/18/6 2563/20/5 +f 2565/22/4 2566/21/4 2564/19/5 +f 2564/19/5 2563/20/5 2565/22/4 +f 2567/24/3 2568/23/3 2566/21/4 +f 2566/21/4 2565/22/4 2567/24/3 +f 2569/26/2 2570/25/2 2568/23/3 +f 2568/23/3 2567/24/3 2569/26/2 +f 2550/4/1 2549/1/1 2570/25/2 +f 2570/25/2 2569/26/2 2550/4/1 +f 2571/27/24 2572/30/24 2573/29/24 +f 2573/29/24 2574/28/24 2571/27/24 +f 2575/31/23 2576/32/23 2572/30/23 +f 2572/30/23 2571/27/23 2575/31/23 +f 2577/33/22 2578/34/22 2576/32/22 +f 2576/32/22 2575/31/22 2577/33/22 +f 2579/35/21 2580/38/21 2578/37/21 +f 2578/37/21 2577/36/21 2579/35/21 +f 2581/39/20 2582/40/20 2580/38/20 +f 2580/38/20 2579/35/20 2581/39/20 +f 2583/41/19 2584/42/19 2582/40/19 +f 2582/40/19 2581/39/19 2583/41/19 +f 2585/43/18 2586/44/18 2584/42/18 +f 2584/42/18 2583/41/18 2585/43/18 +f 2587/45/17 2588/46/17 2586/44/17 +f 2586/44/17 2585/43/17 2587/45/17 +f 2589/47/16 2590/48/16 2588/46/16 +f 2588/46/16 2587/45/16 2589/47/16 +f 2591/49/15 2592/50/15 2590/48/15 +f 2590/48/15 2589/47/15 2591/49/15 +f 2593/51/14 2594/52/14 2592/50/14 +f 2592/50/14 2591/49/14 2593/51/14 +f 2574/28/13 2573/29/13 2594/52/192 +f 2594/52/192 2593/51/192 2574/28/13 +f 2548/53/26 2571/53/26 2574/54/26 +f 2574/54/26 2549/54/26 2548/53/26 +f 2549/54/26 2574/54/26 2593/55/26 +f 2593/55/26 2570/55/26 2549/54/26 +f 2570/55/26 2593/55/26 2591/56/26 +f 2591/56/26 2568/56/26 2570/55/26 +f 2568/56/26 2591/56/26 2589/57/26 +f 2589/57/26 2566/57/26 2568/56/26 +f 2566/57/26 2589/57/26 2587/59/26 +f 2587/59/26 2564/58/26 2566/57/26 +f 2564/58/26 2587/59/26 2585/61/26 +f 2585/61/26 2562/60/26 2564/58/26 +f 2562/60/26 2585/61/26 2583/62/26 +f 2583/62/26 2560/62/26 2562/60/26 +f 2560/62/26 2583/62/26 2581/64/26 +f 2581/64/26 2558/63/26 2560/62/26 +f 2558/63/26 2581/64/26 2579/66/26 +f 2579/66/26 2556/65/26 2558/63/26 +f 2556/65/26 2579/66/26 2577/67/26 +f 2577/67/26 2554/67/26 2556/65/26 +f 2554/67/26 2577/67/26 2575/68/26 +f 2575/68/26 2552/68/26 2554/67/26 +f 2552/68/26 2575/68/26 2571/53/26 +f 2571/53/26 2548/53/26 2552/68/26 +f 2595/54/27 2573/54/27 2572/53/27 +f 2572/53/27 2596/53/27 2595/54/27 +f 2596/53/27 2572/53/27 2576/68/27 +f 2576/68/27 2597/68/27 2596/53/27 +f 2597/68/27 2576/68/27 2578/67/27 +f 2578/67/27 2598/67/27 2597/68/27 +f 2598/67/27 2578/67/27 2580/66/27 +f 2580/66/27 2599/65/27 2598/67/27 +f 2599/65/27 2580/66/27 2582/64/27 +f 2582/64/27 2600/63/27 2599/65/27 +f 2600/63/27 2582/64/27 2584/62/27 +f 2584/62/27 2601/62/27 2600/63/27 +f 2601/62/27 2584/62/27 2586/61/27 +f 2586/61/27 2602/60/27 2601/62/27 +f 2602/60/27 2586/61/27 2588/59/27 +f 2588/59/27 2603/58/27 2602/60/27 +f 2603/58/27 2588/59/27 2590/57/27 +f 2590/57/27 2604/57/27 2603/58/27 +f 2604/57/27 2590/57/27 2592/56/27 +f 2592/56/27 2605/56/27 2604/57/27 +f 2605/56/27 2592/56/27 2594/55/27 +f 2594/55/27 2606/55/27 2605/56/27 +f 2606/55/27 2594/55/27 2573/54/27 +f 2573/54/27 2595/54/27 2606/55/27 +f 2607/71/12 2608/70/1 2595/69/1 +f 2595/69/1 2596/72/12 2607/71/12 +f 2609/73/23 2607/71/12 2596/72/12 +f 2596/72/12 2597/74/23 2609/73/23 +f 2610/75/22 2609/73/22 2597/74/22 +f 2597/74/22 2598/76/22 2610/75/22 +f 2611/77/9 2610/75/21 2598/76/21 +f 2598/76/21 2599/78/9 2611/77/9 +f 2612/79/8 2611/77/9 2599/78/9 +f 2599/78/9 2600/80/8 2612/79/8 +f 2613/83/7 2612/82/8 2600/81/8 +f 2600/81/8 2601/84/7 2613/83/7 +f 2614/85/6 2613/83/7 2601/84/7 +f 2601/84/7 2602/86/6 2614/85/6 +f 2615/87/5 2614/85/6 2602/86/6 +f 2602/86/6 2603/88/5 2615/87/5 +f 2616/89/4 2615/87/5 2603/88/5 +f 2603/88/5 2604/90/4 2616/89/4 +f 2617/91/3 2616/89/4 2604/90/4 +f 2604/90/4 2605/92/3 2617/91/3 +f 2618/93/2 2617/91/3 2605/92/3 +f 2605/92/3 2606/94/2 2618/93/2 +f 2608/70/1 2618/93/2 2606/94/2 +f 2606/94/2 2595/69/1 2608/70/1 +f 2619/95/26 2620/95/26 2621/96/26 +f 2621/96/26 2622/96/26 2619/95/26 +f 2623/97/26 2624/97/26 2620/95/26 +f 2620/95/26 2619/95/26 2623/97/26 +f 2625/67/26 2626/98/26 2624/97/26 +f 2624/97/26 2623/97/26 2625/67/26 +f 2627/99/26 2628/99/26 2626/98/26 +f 2626/98/26 2625/67/26 2627/99/26 +f 2629/100/26 2630/100/26 2628/99/26 +f 2628/99/26 2627/99/26 2629/100/26 +f 2631/101/26 2632/101/26 2630/100/26 +f 2630/100/26 2629/100/26 2631/101/26 +f 2633/61/26 2634/61/26 2632/101/26 +f 2632/101/26 2631/101/26 2633/61/26 +f 2635/59/26 2636/102/26 2634/61/26 +f 2634/61/26 2633/61/26 2635/59/26 +f 2637/103/26 2638/103/26 2636/102/26 +f 2636/102/26 2635/59/26 2637/103/26 +f 2639/104/26 2640/105/26 2638/103/26 +f 2638/103/26 2637/103/26 2639/104/26 +f 2641/106/26 2642/106/26 2640/105/26 +f 2640/105/26 2639/104/26 2641/106/26 +f 2622/96/26 2621/96/26 2642/106/26 +f 2642/106/26 2641/106/26 2622/96/26 +f 2620/107/39 2643/110/39 2644/109/39 +f 2644/109/39 2621/108/39 2620/107/39 +f 2624/111/38 2645/112/38 2643/110/38 +f 2643/110/38 2620/107/38 2624/111/38 +f 2626/113/37 2646/114/37 2645/112/37 +f 2645/112/37 2624/111/37 2626/113/37 +f 2628/115/36 2647/116/36 2646/114/36 +f 2646/114/36 2626/113/36 2628/115/36 +f 2630/117/35 2648/118/35 2647/116/35 +f 2647/116/35 2628/115/35 2630/117/35 +f 2632/119/34 2649/120/34 2648/118/34 +f 2648/118/34 2630/117/34 2632/119/34 +f 2634/121/33 2650/122/33 2649/120/33 +f 2649/120/33 2632/119/33 2634/121/33 +f 2636/123/32 2651/124/32 2650/122/32 +f 2650/122/32 2634/121/32 2636/123/32 +f 2638/125/31 2652/126/31 2651/124/31 +f 2651/124/31 2636/123/31 2638/125/31 +f 2640/127/30 2653/130/30 2652/129/30 +f 2652/129/30 2638/128/30 2640/127/30 +f 2642/131/29 2654/132/29 2653/130/29 +f 2653/130/29 2640/127/29 2642/131/29 +f 2621/108/28 2644/109/28 2654/132/28 +f 2654/132/28 2642/131/28 2621/108/28 +f 2643/110/54 2655/134/54 2656/133/54 +f 2656/133/54 2644/109/54 2643/110/54 +f 2645/112/53 2657/135/53 2655/134/53 +f 2655/134/53 2643/110/53 2645/112/53 +f 2646/114/51 2658/136/52 2657/135/51 +f 2657/135/51 2645/112/51 2646/114/51 +f 2647/116/50 2659/137/50 2658/136/50 +f 2658/136/50 2646/114/50 2647/116/50 +f 2648/118/49 2660/138/49 2659/137/49 +f 2659/137/49 2647/116/49 2648/118/49 +f 2649/120/48 2661/139/48 2660/138/48 +f 2660/138/48 2648/118/48 2649/120/48 +f 2650/122/385 2662/140/46 2661/139/46 +f 2661/139/46 2649/120/46 2650/122/385 +f 2651/124/45 2663/141/45 2662/140/45 +f 2662/140/45 2650/122/45 2651/124/45 +f 2652/126/44 2664/142/44 2663/141/44 +f 2663/141/44 2651/124/44 2652/126/44 +f 2653/130/42 2665/144/42 2664/143/43 +f 2664/143/43 2652/129/42 2653/130/42 +f 2654/132/41 2666/145/41 2665/144/41 +f 2665/144/41 2653/130/41 2654/132/41 +f 2644/109/40 2656/133/40 2666/145/40 +f 2666/145/40 2654/132/386 2644/109/40 +f 2607/148/71 2667/147/71 2668/146/71 +f 2668/146/71 2608/149/71 2607/148/71 +f 2609/151/69 2669/150/70 2667/147/70 +f 2667/147/70 2607/148/69 2609/151/69 +f 2610/154/68 2670/153/68 2669/152/68 +f 2669/152/68 2609/155/68 2610/154/68 +f 2611/156/67 2671/142/67 2670/153/67 +f 2670/153/67 2610/154/67 2611/156/67 +f 2612/158/65 2672/157/66 2671/142/66 +f 2671/142/66 2611/156/65 2612/158/65 +f 2613/160/64 2673/159/64 2672/157/64 +f 2672/157/64 2612/158/64 2613/160/64 +f 2614/162/63 2674/161/63 2673/159/63 +f 2673/159/63 2613/160/63 2614/162/63 +f 2615/164/62 2675/163/61 2674/161/61 +f 2674/161/61 2614/162/62 2615/164/62 +f 2616/166/60 2676/165/60 2675/163/60 +f 2675/163/60 2615/164/60 2616/166/60 +f 2617/168/59 2677/167/59 2676/165/59 +f 2676/165/59 2616/166/59 2617/168/59 +f 2618/170/58 2678/169/57 2677/167/57 +f 2677/167/57 2617/168/57 2618/170/58 +f 2608/149/56 2668/146/56 2678/169/56 +f 2678/169/56 2618/170/56 2608/149/56 +f 2667/173/12 2619/172/12 2622/171/1 +f 2622/171/1 2668/174/1 2667/173/12 +f 2669/176/11 2623/175/11 2619/172/12 +f 2619/172/12 2667/173/12 2669/176/11 +f 2670/179/10 2625/178/10 2623/177/11 +f 2623/177/11 2669/180/11 2670/179/10 +f 2671/181/9 2627/86/9 2625/178/10 +f 2625/178/10 2670/179/10 2671/181/9 +f 2672/183/8 2629/182/8 2627/86/9 +f 2627/86/9 2671/181/9 2672/183/8 +f 2673/185/7 2631/184/7 2629/182/8 +f 2629/182/8 2672/183/8 2673/185/7 +f 2674/187/6 2633/186/6 2631/184/7 +f 2631/184/7 2673/185/7 2674/187/6 +f 2675/189/5 2635/188/5 2633/186/6 +f 2633/186/6 2674/187/6 2675/189/5 +f 2676/191/4 2637/190/4 2635/188/5 +f 2635/188/5 2675/189/5 2676/191/4 +f 2677/192/3 2639/76/3 2637/190/4 +f 2637/190/4 2676/191/4 2677/192/3 +f 2678/194/2 2641/193/2 2639/76/3 +f 2639/76/3 2677/192/3 2678/194/2 +f 2668/174/1 2622/171/1 2641/193/2 +f 2641/193/2 2678/194/2 2668/174/1 +f 2679/195/387 2680/198/387 2681/197/387 +f 2681/197/387 2682/196/387 2679/195/387 +f 2683/199/388 2684/202/388 2685/201/388 +f 2685/201/388 2686/200/388 2683/199/388 +f 2687/203/389 2688/206/389 2689/205/389 +f 2689/205/389 2690/204/389 2687/203/389 +f 2691/202/390 2692/199/390 2693/200/390 +f 2693/200/390 2694/201/390 2691/202/390 +f 2695/207/391 2696/209/391 2697/208/391 +f 2697/208/391 2698/207/391 2695/207/391 +f 2699/209/392 2700/211/392 2701/210/392 +f 2690/212/393 2689/214/393 2702/213/393 +f 2702/213/393 2703/196/393 2690/212/393 +f 2704/210/394 2705/211/394 2706/209/394 +f 2707/215/395 2706/209/395 2705/211/395 +f 2705/211/395 2708/216/395 2707/215/395 +f 2709/217/396 2682/196/396 2681/197/396 +f 2681/197/396 2710/218/396 2709/217/396 +f 2711/219/397 2687/203/397 2690/204/397 +f 2690/204/397 2712/220/397 2711/219/397 +f 2713/209/398 2695/207/398 2698/207/398 +f 2698/207/398 2714/208/398 2713/209/398 +f 2690/212/399 2703/196/399 2715/213/399 +f 2715/213/399 2712/214/399 2690/212/399 +f 2707/215/400 2708/216/400 2700/211/400 +f 2700/211/400 2699/209/400 2707/215/400 +f 2716/221/390 2680/221/390 2679/222/390 +f 2679/222/390 2702/222/390 2716/221/390 +f 2702/222/401 2679/222/401 2682/203/401 +f 2682/203/401 2703/203/401 2702/222/401 +f 2703/203/402 2682/203/402 2709/206/402 +f 2709/206/402 2715/206/402 2703/203/402 +f 2715/206/388 2709/206/388 2710/223/388 +f 2710/223/388 2717/223/388 2715/206/388 +f 2717/224/403 2710/224/403 2681/226/403 +f 2681/226/403 2718/225/403 2717/224/403 +f 2718/225/404 2681/226/404 2680/224/404 +f 2680/224/404 2716/224/404 2718/225/404 +f 2712/214/394 2715/213/394 2717/228/394 +f 2717/228/394 2719/227/394 2712/214/394 +f 2719/229/390 2720/221/390 2711/219/390 +f 2711/219/390 2712/220/390 2719/229/390 +f 2688/206/388 2721/223/388 2722/230/388 +f 2722/230/388 2689/205/388 2688/206/388 +f 2722/227/392 2716/228/392 2702/213/392 +f 2702/213/392 2689/214/392 2722/227/392 +f 2685/201/388 2723/202/388 2724/199/388 +f 2724/199/388 2686/200/388 2685/201/388 +f 2722/231/405 2701/233/406 2700/232/405 +f 2700/232/405 2716/224/405 2722/231/405 +f 2716/224/404 2700/232/404 2708/234/404 +f 2708/234/404 2718/225/404 2716/224/404 +f 2718/225/403 2708/234/403 2705/232/403 +f 2705/232/403 2717/224/403 2718/225/403 +f 2717/224/407 2705/232/407 2704/233/407 +f 2704/233/407 2719/231/407 2717/224/407 +f 2693/200/390 2725/199/390 2726/202/390 +f 2726/202/390 2694/201/390 2693/200/390 +f 2697/208/391 2706/236/391 2707/235/391 +f 2707/235/391 2698/207/391 2697/208/391 +f 2698/207/398 2707/235/398 2699/236/398 +f 2699/236/398 2714/208/398 2698/207/398 +f 2721/236/27 2683/238/27 2686/237/27 +f 2686/237/27 2722/231/27 2721/236/27 +f 2722/231/27 2686/237/27 2724/239/27 +f 2724/239/27 2701/233/27 2722/231/27 +f 2701/210/408 2724/241/409 2723/240/409 +f 2723/240/409 2699/209/408 2701/210/408 +f 2699/236/26 2723/238/26 2685/242/26 +f 2685/242/26 2714/208/26 2699/236/26 +f 2714/208/26 2685/242/26 2684/240/26 +f 2684/240/26 2713/209/26 2714/208/26 +f 2696/209/26 2691/240/26 2694/242/26 +f 2694/242/26 2697/208/26 2696/209/26 +f 2697/208/26 2694/242/26 2726/238/26 +f 2726/238/26 2706/236/26 2697/208/26 +f 2706/209/410 2726/240/410 2725/241/410 +f 2725/241/410 2704/210/410 2706/209/410 +f 2704/233/27 2725/239/27 2693/237/27 +f 2693/237/27 2719/231/27 2704/233/27 +f 2719/231/27 2693/237/27 2692/238/27 +f 2692/238/27 2720/236/27 2719/231/27 +f 2727/195/411 2728/198/411 2729/197/411 +f 2729/197/411 2730/196/411 2727/195/411 +f 2731/199/412 2732/202/412 2733/201/413 +f 2733/201/413 2734/200/413 2731/199/412 +f 2735/203/414 2736/206/414 2737/205/414 +f 2737/205/414 2738/204/414 2735/203/414 +f 2739/202/415 2740/199/415 2741/200/416 +f 2741/200/416 2742/201/416 2739/202/415 +f 2743/207/417 2744/209/417 2745/208/417 +f 2745/208/417 2746/207/417 2743/207/417 +f 2747/209/171 2748/211/171 2749/210/171 +f 2738/212/418 2737/214/418 2750/213/418 +f 2750/213/418 2751/196/418 2738/212/418 +f 2752/210/419 2753/211/419 2754/209/419 +f 2755/215/420 2754/209/420 2753/211/420 +f 2753/211/420 2756/216/420 2755/215/420 +f 2757/217/167 2730/196/167 2729/197/167 +f 2729/197/167 2758/218/167 2757/217/167 +f 2759/219/421 2735/203/421 2738/204/421 +f 2738/204/421 2760/220/421 2759/219/421 +f 2761/209/422 2743/207/422 2746/207/422 +f 2746/207/422 2762/208/422 2761/209/422 +f 2738/212/423 2751/196/423 2763/213/423 +f 2763/213/423 2760/214/423 2738/212/423 +f 2755/215/424 2756/216/424 2748/211/424 +f 2748/211/424 2747/209/424 2755/215/424 +f 2764/221/415 2728/221/416 2727/222/416 +f 2727/222/416 2750/222/415 2764/221/415 +f 2750/222/425 2727/222/425 2730/203/425 +f 2730/203/425 2751/203/425 2750/222/425 +f 2751/203/426 2730/203/426 2757/206/426 +f 2757/206/426 2763/206/426 2751/203/426 +f 2763/206/413 2757/206/413 2758/223/413 +f 2758/223/413 2765/223/413 2763/206/413 +f 2765/224/427 2758/224/427 2729/226/427 +f 2729/226/427 2766/225/427 2765/224/427 +f 2766/225/428 2729/226/428 2728/224/428 +f 2728/224/428 2764/224/428 2766/225/428 +f 2760/214/419 2763/213/419 2765/228/419 +f 2765/228/419 2767/227/419 2760/214/419 +f 2767/229/415 2768/221/415 2759/219/415 +f 2759/219/415 2760/220/415 2767/229/415 +f 2736/206/413 2769/223/413 2770/230/413 +f 2770/230/413 2737/205/413 2736/206/413 +f 2770/227/171 2764/228/171 2750/213/171 +f 2750/213/171 2737/214/171 2770/227/171 +f 2733/201/413 2771/202/412 2772/199/412 +f 2772/199/412 2734/200/413 2733/201/413 +f 2770/231/429 2749/233/429 2748/232/429 +f 2748/232/429 2764/224/429 2770/231/429 +f 2764/224/428 2748/232/428 2756/234/428 +f 2756/234/428 2766/225/428 2764/224/428 +f 2766/225/427 2756/234/427 2753/232/427 +f 2753/232/427 2765/224/427 2766/225/427 +f 2765/224/430 2753/232/430 2752/233/430 +f 2752/233/430 2767/231/430 2765/224/430 +f 2741/200/416 2773/199/415 2774/202/415 +f 2774/202/415 2742/201/416 2741/200/416 +f 2745/208/417 2754/236/417 2755/235/417 +f 2755/235/417 2746/207/417 2745/208/417 +f 2746/207/422 2755/235/422 2747/236/422 +f 2747/236/422 2762/208/422 2746/207/422 +f 2769/236/27 2731/238/27 2734/237/27 +f 2734/237/27 2770/231/27 2769/236/27 +f 2770/231/27 2734/237/27 2772/239/27 +f 2772/239/27 2749/233/27 2770/231/27 +f 2749/210/191 2772/241/191 2771/240/191 +f 2771/240/191 2747/209/191 2749/210/191 +f 2747/236/26 2771/238/26 2733/242/26 +f 2733/242/26 2762/208/26 2747/236/26 +f 2762/208/26 2733/242/26 2732/240/26 +f 2732/240/26 2761/209/26 2762/208/26 +f 2744/209/26 2739/240/26 2742/242/26 +f 2742/242/26 2745/208/26 2744/209/26 +f 2745/208/26 2742/242/26 2774/238/26 +f 2774/238/26 2754/236/26 2745/208/26 +f 2754/209/431 2774/240/431 2773/241/431 +f 2773/241/431 2752/210/431 2754/209/431 +f 2752/233/27 2773/239/27 2741/237/27 +f 2741/237/27 2767/231/27 2752/233/27 +f 2767/231/27 2741/237/27 2740/238/27 +f 2740/238/27 2768/236/27 2767/231/27 +f 2775/243/432 2776/246/432 2777/245/432 +f 2777/245/432 2778/244/432 2775/243/432 +f 2775/247/433 2779/250/433 2780/249/433 +f 2780/249/433 2776/248/433 2775/247/433 +f 2776/246/434 2780/252/434 2781/251/434 +f 2781/251/434 2777/245/434 2776/246/434 +f 2777/248/435 2781/249/435 2782/250/435 +f 2782/250/435 2778/247/435 2777/248/435 +f 2783/195/436 2784/198/436 2785/197/436 +f 2785/197/436 2786/196/436 2783/195/436 +f 2787/199/437 2788/202/437 2789/201/413 +f 2789/201/413 2790/200/413 2787/199/437 +f 2791/203/414 2792/206/414 2793/205/414 +f 2793/205/414 2794/204/414 2791/203/414 +f 2795/202/415 2796/199/415 2797/200/416 +f 2797/200/416 2798/201/416 2795/202/415 +f 2799/207/417 2800/209/417 2801/208/417 +f 2801/208/417 2802/207/417 2799/207/417 +f 2803/209/171 2804/211/171 2805/210/171 +f 2794/212/418 2793/214/418 2806/213/418 +f 2806/213/418 2807/196/418 2794/212/418 +f 2808/210/419 2809/211/419 2810/209/419 +f 2811/215/420 2810/209/420 2809/211/420 +f 2809/211/420 2812/216/420 2811/215/420 +f 2813/217/167 2786/196/167 2785/197/167 +f 2785/197/167 2814/218/167 2813/217/167 +f 2815/219/438 2791/203/421 2794/204/421 +f 2794/204/421 2816/220/438 2815/219/438 +f 2817/209/422 2799/207/422 2802/207/422 +f 2802/207/422 2818/208/422 2817/209/422 +f 2794/212/423 2807/196/423 2819/213/423 +f 2819/213/423 2816/214/423 2794/212/423 +f 2811/215/424 2812/216/424 2804/211/424 +f 2804/211/424 2803/209/424 2811/215/424 +f 2820/221/415 2784/221/415 2783/222/415 +f 2783/222/415 2806/222/415 2820/221/415 +f 2806/222/425 2783/222/425 2786/203/425 +f 2786/203/425 2807/203/425 2806/222/425 +f 2807/203/426 2786/203/426 2813/206/426 +f 2813/206/426 2819/206/426 2807/203/426 +f 2819/206/413 2813/206/413 2814/223/413 +f 2814/223/413 2821/223/413 2819/206/413 +f 2821/224/427 2814/224/427 2785/226/427 +f 2785/226/427 2822/225/427 2821/224/427 +f 2822/225/428 2785/226/428 2784/224/428 +f 2784/224/428 2820/224/428 2822/225/428 +f 2816/214/419 2819/213/419 2821/228/419 +f 2821/228/419 2823/227/419 2816/214/419 +f 2823/229/416 2824/221/416 2815/219/416 +f 2815/219/416 2816/220/416 2823/229/416 +f 2792/206/413 2825/223/413 2826/230/412 +f 2826/230/412 2793/205/412 2792/206/413 +f 2826/227/171 2820/228/171 2806/213/171 +f 2806/213/171 2793/214/171 2826/227/171 +f 2789/201/413 2827/202/412 2828/199/412 +f 2828/199/412 2790/200/413 2789/201/413 +f 2826/231/429 2805/233/429 2804/232/429 +f 2804/232/429 2820/224/429 2826/231/429 +f 2820/224/428 2804/232/428 2812/234/428 +f 2812/234/428 2822/225/428 2820/224/428 +f 2822/225/427 2812/234/427 2809/232/427 +f 2809/232/427 2821/224/427 2822/225/427 +f 2821/224/430 2809/232/430 2808/233/430 +f 2808/233/430 2823/231/430 2821/224/430 +f 2797/200/416 2829/199/415 2830/202/415 +f 2830/202/415 2798/201/416 2797/200/416 +f 2801/208/417 2810/236/417 2811/235/417 +f 2811/235/417 2802/207/417 2801/208/417 +f 2802/207/422 2811/235/422 2803/236/422 +f 2803/236/422 2818/208/422 2802/207/422 +f 2825/236/27 2787/238/27 2790/237/27 +f 2790/237/27 2826/231/27 2825/236/27 +f 2826/231/27 2790/237/27 2828/239/27 +f 2828/239/27 2805/233/27 2826/231/27 +f 2805/210/191 2828/241/191 2827/240/191 +f 2827/240/191 2803/209/191 2805/210/191 +f 2803/236/26 2827/238/26 2789/242/26 +f 2789/242/26 2818/208/26 2803/236/26 +f 2818/208/26 2789/242/26 2788/240/26 +f 2788/240/26 2817/209/26 2818/208/26 +f 2800/209/26 2795/240/26 2798/242/26 +f 2798/242/26 2801/208/26 2800/209/26 +f 2801/208/26 2798/242/26 2830/238/26 +f 2830/238/26 2810/236/26 2801/208/26 +f 2810/209/431 2830/240/431 2829/241/431 +f 2829/241/431 2808/210/431 2810/209/431 +f 2808/233/27 2829/239/27 2797/237/27 +f 2797/237/27 2823/231/27 2808/233/27 +f 2823/231/27 2797/237/27 2796/238/27 +f 2796/238/27 2824/236/27 2823/231/27 +f 2831/243/439 2832/246/439 2833/245/439 +f 2833/245/439 2834/244/439 2831/243/439 +f 2831/247/440 2835/250/440 2836/249/440 +f 2836/249/440 2832/248/440 2831/247/440 +f 2832/246/441 2836/252/441 2837/251/441 +f 2837/251/441 2833/245/441 2832/246/441 +f 2833/248/442 2837/249/442 2838/250/442 +f 2838/250/442 2834/247/442 2833/248/442 +f 2839/195/443 2840/198/443 2841/197/443 +f 2841/197/443 2842/196/443 2839/195/443 +f 2843/199/390 2844/202/390 2845/201/390 +f 2845/201/390 2846/200/390 2843/199/390 +f 2847/203/444 2848/206/444 2849/205/444 +f 2849/205/444 2850/204/444 2847/203/444 +f 2851/202/388 2852/199/388 2853/200/388 +f 2853/200/388 2854/201/388 2851/202/388 +f 2855/207/398 2856/209/398 2857/208/398 +f 2857/208/398 2858/207/398 2855/207/398 +f 2859/209/445 2860/211/445 2861/210/445 +f 2850/212/446 2849/214/446 2862/213/446 +f 2862/213/446 2863/196/446 2850/212/446 +f 2864/210/447 2865/211/447 2866/209/447 +f 2867/215/448 2866/209/448 2865/211/448 +f 2865/211/448 2868/216/448 2867/215/448 +f 2869/217/449 2842/196/450 2841/197/450 +f 2841/197/450 2870/218/449 2869/217/449 +f 2871/219/451 2847/203/451 2850/204/451 +f 2850/204/451 2872/220/451 2871/219/451 +f 2873/209/391 2855/207/391 2858/207/391 +f 2858/207/391 2874/208/391 2873/209/391 +f 2850/212/452 2863/196/452 2875/213/452 +f 2875/213/452 2872/214/452 2850/212/452 +f 2867/215/453 2868/216/453 2860/211/453 +f 2860/211/453 2859/209/453 2867/215/453 +f 2876/221/388 2840/221/388 2839/222/388 +f 2839/222/388 2862/222/388 2876/221/388 +f 2862/222/402 2839/222/402 2842/203/402 +f 2842/203/402 2863/203/402 2862/222/402 +f 2863/203/401 2842/203/401 2869/206/401 +f 2869/206/401 2875/206/401 2863/203/401 +f 2875/206/390 2869/206/390 2870/223/390 +f 2870/223/390 2877/223/390 2875/206/390 +f 2877/224/454 2870/224/454 2841/226/454 +f 2841/226/454 2878/225/454 2877/224/454 +f 2878/225/455 2841/226/455 2840/224/455 +f 2840/224/455 2876/224/455 2878/225/455 +f 2872/214/447 2875/213/447 2877/228/447 +f 2877/228/447 2879/227/447 2872/214/447 +f 2879/229/388 2880/221/388 2871/219/388 +f 2871/219/388 2872/220/388 2879/229/388 +f 2848/206/390 2881/223/390 2882/230/390 +f 2882/230/390 2849/205/390 2848/206/390 +f 2882/227/445 2876/228/445 2862/213/445 +f 2862/213/445 2849/214/445 2882/227/445 +f 2845/201/390 2883/202/390 2884/199/390 +f 2884/199/390 2846/200/390 2845/201/390 +f 2882/231/456 2861/233/456 2860/232/456 +f 2860/232/456 2876/224/456 2882/231/456 +f 2876/224/455 2860/232/455 2868/234/455 +f 2868/234/455 2878/225/455 2876/224/455 +f 2878/225/454 2868/234/454 2865/232/454 +f 2865/232/454 2877/224/454 2878/225/454 +f 2877/224/457 2865/232/457 2864/233/457 +f 2864/233/457 2879/231/457 2877/224/457 +f 2853/200/388 2885/199/388 2886/202/388 +f 2886/202/388 2854/201/388 2853/200/388 +f 2857/208/398 2866/236/398 2867/235/398 +f 2867/235/398 2858/207/398 2857/208/398 +f 2858/207/391 2867/235/391 2859/236/391 +f 2859/236/391 2874/208/391 2858/207/391 +f 2881/236/27 2843/238/27 2846/237/27 +f 2846/237/27 2882/231/27 2881/236/27 +f 2882/231/27 2846/237/27 2884/239/27 +f 2884/239/27 2861/233/27 2882/231/27 +f 2861/210/458 2884/241/458 2883/240/458 +f 2883/240/458 2859/209/458 2861/210/458 +f 2859/236/26 2883/238/26 2845/242/26 +f 2845/242/26 2874/208/26 2859/236/26 +f 2874/208/26 2845/242/26 2844/240/26 +f 2844/240/26 2873/209/26 2874/208/26 +f 2856/209/26 2851/240/26 2854/242/26 +f 2854/242/26 2857/208/26 2856/209/26 +f 2857/208/26 2854/242/26 2886/238/26 +f 2886/238/26 2866/236/26 2857/208/26 +f 2866/209/459 2886/240/459 2885/241/459 +f 2885/241/459 2864/210/459 2866/209/459 +f 2864/233/27 2885/239/27 2853/237/27 +f 2853/237/27 2879/231/27 2864/233/27 +f 2879/231/27 2853/237/27 2852/238/27 +f 2852/238/27 2880/236/27 2879/231/27 +f 2887/243/154 2888/246/154 2889/245/154 +f 2889/245/154 2890/244/154 2887/243/154 +f 2887/247/1 2891/250/1 2892/249/1 +f 2892/249/1 2888/248/1 2887/247/1 +f 2888/246/155 2892/252/155 2893/251/155 +f 2893/251/155 2889/245/155 2888/246/155 +f 2889/248/7 2893/249/7 2894/250/7 +f 2894/250/7 2890/247/7 2889/248/7 +f 2895/243/160 2896/246/160 2897/245/160 +f 2897/245/160 2898/244/160 2895/243/160 +f 2895/247/163 2899/250/163 2900/249/163 +f 2900/249/163 2896/248/163 2895/247/163 +f 2896/246/162 2900/252/162 2901/251/162 +f 2901/251/162 2897/245/162 2896/246/162 +f 2897/248/161 2901/249/161 2902/250/161 +f 2902/250/161 2898/247/161 2897/248/161 +f 2903/243/148 2904/246/148 2905/245/148 +f 2905/245/148 2906/244/148 2903/243/148 +f 2903/247/7 2907/250/7 2908/249/7 +f 2908/249/7 2904/248/7 2903/247/7 +f 2904/246/149 2908/252/149 2909/251/149 +f 2909/251/149 2905/245/149 2904/246/149 +f 2905/248/1 2909/249/1 2910/250/1 +f 2910/250/1 2906/247/1 2905/248/1 +f 2911/243/460 2912/246/460 2913/245/460 +f 2913/245/460 2914/244/460 2911/243/460 +f 2911/247/461 2915/250/461 2916/249/461 +f 2916/249/461 2912/248/461 2911/247/461 +f 2912/246/462 2916/252/462 2917/251/462 +f 2917/251/462 2913/245/462 2912/246/462 +f 2913/248/463 2917/249/463 2918/250/463 +f 2918/250/463 2914/247/463 2913/248/463 +f 2919/243/150 2920/246/150 2921/245/150 +f 2921/245/150 2922/244/150 2919/243/150 +f 2919/247/153 2923/250/153 2924/249/153 +f 2924/249/153 2920/248/153 2919/247/153 +f 2920/246/152 2924/252/152 2925/251/152 +f 2925/251/152 2921/245/152 2920/246/152 +f 2921/248/151 2925/249/151 2926/250/151 +f 2926/250/151 2922/247/151 2921/248/151 +f 2927/195/443 2928/198/443 2929/197/443 +f 2929/197/443 2930/196/443 2927/195/443 +f 2931/199/390 2932/202/390 2933/201/390 +f 2933/201/390 2934/200/390 2931/199/390 +f 2935/203/444 2936/206/444 2937/205/444 +f 2937/205/444 2938/204/444 2935/203/444 +f 2939/202/388 2940/199/388 2941/200/388 +f 2941/200/388 2942/201/388 2939/202/388 +f 2943/207/398 2944/209/398 2945/208/398 +f 2945/208/398 2946/207/398 2943/207/398 +f 2947/209/445 2948/211/445 2949/210/445 +f 2938/212/446 2937/214/446 2950/213/446 +f 2950/213/446 2951/196/446 2938/212/446 +f 2952/210/447 2953/211/447 2954/209/447 +f 2955/215/448 2954/209/448 2953/211/448 +f 2953/211/448 2956/216/448 2955/215/448 +f 2957/217/449 2930/196/450 2929/197/450 +f 2929/197/450 2958/218/449 2957/217/449 +f 2959/219/451 2935/203/451 2938/204/451 +f 2938/204/451 2960/220/451 2959/219/451 +f 2961/209/391 2943/207/391 2946/207/391 +f 2946/207/391 2962/208/391 2961/209/391 +f 2938/212/452 2951/196/452 2963/213/452 +f 2963/213/452 2960/214/452 2938/212/452 +f 2955/215/453 2956/216/453 2948/211/453 +f 2948/211/453 2947/209/453 2955/215/453 +f 2964/221/388 2928/221/388 2927/222/388 +f 2927/222/388 2950/222/388 2964/221/388 +f 2950/222/402 2927/222/402 2930/203/402 +f 2930/203/402 2951/203/402 2950/222/402 +f 2951/203/401 2930/203/401 2957/206/401 +f 2957/206/401 2963/206/401 2951/203/401 +f 2963/206/390 2957/206/390 2958/223/390 +f 2958/223/390 2965/223/390 2963/206/390 +f 2965/224/454 2958/224/454 2929/226/454 +f 2929/226/454 2966/225/454 2965/224/454 +f 2966/225/455 2929/226/455 2928/224/455 +f 2928/224/455 2964/224/455 2966/225/455 +f 2960/214/447 2963/213/447 2965/228/447 +f 2965/228/447 2967/227/447 2960/214/447 +f 2967/229/388 2968/221/388 2959/219/388 +f 2959/219/388 2960/220/388 2967/229/388 +f 2936/206/390 2969/223/390 2970/230/390 +f 2970/230/390 2937/205/390 2936/206/390 +f 2970/227/445 2964/228/445 2950/213/445 +f 2950/213/445 2937/214/445 2970/227/445 +f 2933/201/390 2971/202/390 2972/199/390 +f 2972/199/390 2934/200/390 2933/201/390 +f 2970/231/456 2949/233/456 2948/232/456 +f 2948/232/456 2964/224/456 2970/231/456 +f 2964/224/455 2948/232/455 2956/234/455 +f 2956/234/455 2966/225/455 2964/224/455 +f 2966/225/454 2956/234/454 2953/232/454 +f 2953/232/454 2965/224/454 2966/225/454 +f 2965/224/457 2953/232/457 2952/233/457 +f 2952/233/457 2967/231/457 2965/224/457 +f 2941/200/388 2973/199/388 2974/202/388 +f 2974/202/388 2942/201/388 2941/200/388 +f 2945/208/398 2954/236/398 2955/235/398 +f 2955/235/398 2946/207/398 2945/208/398 +f 2946/207/391 2955/235/391 2947/236/391 +f 2947/236/391 2962/208/391 2946/207/391 +f 2969/236/27 2931/238/27 2934/237/27 +f 2934/237/27 2970/231/27 2969/236/27 +f 2970/231/27 2934/237/27 2972/239/27 +f 2972/239/27 2949/233/27 2970/231/27 +f 2949/210/458 2972/241/458 2971/240/458 +f 2971/240/458 2947/209/458 2949/210/458 +f 2947/236/26 2971/238/26 2933/242/26 +f 2933/242/26 2962/208/26 2947/236/26 +f 2962/208/26 2933/242/26 2932/240/26 +f 2932/240/26 2961/209/26 2962/208/26 +f 2944/209/26 2939/240/26 2942/242/26 +f 2942/242/26 2945/208/26 2944/209/26 +f 2945/208/26 2942/242/26 2974/238/26 +f 2974/238/26 2954/236/26 2945/208/26 +f 2954/209/459 2974/240/459 2973/241/459 +f 2973/241/459 2952/210/459 2954/209/459 +f 2952/233/27 2973/239/27 2941/237/27 +f 2941/237/27 2967/231/27 2952/233/27 +f 2967/231/27 2941/237/27 2940/238/27 +f 2940/238/27 2968/236/27 2967/231/27 +f 2975/195/464 2976/198/464 2977/197/4 +f 2977/197/4 2978/196/4 2975/195/464 +f 2979/199/465 2980/202/465 2981/201/465 +f 2981/201/465 2982/200/465 2979/199/465 +f 2983/203/421 2984/206/421 2985/205/421 +f 2985/205/421 2986/204/421 2983/203/421 +f 2987/202/437 2988/199/437 2989/200/437 +f 2989/200/437 2990/201/437 2987/202/437 +f 2991/207/466 2992/209/466 2993/208/466 +f 2993/208/466 2994/207/466 2991/207/466 +f 2995/209/107 2996/211/107 2997/210/107 +f 2986/212/467 2985/214/467 2998/213/467 +f 2998/213/467 2999/196/467 2986/212/467 +f 3000/210/468 3001/211/468 3002/209/468 +f 3003/215/469 3002/209/469 3001/211/469 +f 3001/211/469 3004/216/469 3003/215/469 +f 3005/217/103 2978/196/103 2977/197/103 +f 2977/197/103 3006/218/103 3005/217/103 +f 3007/219/470 2983/203/414 2986/204/414 +f 2986/204/414 3008/220/414 3007/219/470 +f 3009/209/471 2991/207/471 2994/207/471 +f 2994/207/471 3010/208/471 3009/209/471 +f 2986/212/472 2999/196/472 3011/213/472 +f 3011/213/472 3008/214/472 2986/212/472 +f 3003/215/332 3004/216/332 2996/211/332 +f 2996/211/332 2995/209/332 3003/215/332 +f 3012/221/437 2976/221/437 2975/222/437 +f 2975/222/437 2998/222/437 3012/221/437 +f 2998/222/426 2975/222/426 2978/203/426 +f 2978/203/426 2999/203/426 2998/222/426 +f 2999/203/425 2978/203/425 3005/206/425 +f 3005/206/425 3011/206/425 2999/203/425 +f 3011/206/465 3005/206/465 3006/223/465 +f 3006/223/465 3013/223/465 3011/206/465 +f 3013/224/473 3006/224/473 2977/226/473 +f 2977/226/473 3014/225/473 3013/224/473 +f 3014/225/430 2977/226/430 2976/224/430 +f 2976/224/430 3012/224/430 3014/225/430 +f 3008/214/468 3011/213/468 3013/228/468 +f 3013/228/468 3015/227/468 3008/214/468 +f 3015/229/437 3016/221/437 3007/219/437 +f 3007/219/437 3008/220/437 3015/229/437 +f 2984/206/465 3017/223/465 3018/230/465 +f 3018/230/465 2985/205/465 2984/206/465 +f 3018/227/107 3012/228/107 2998/213/107 +f 2998/213/107 2985/214/107 3018/227/107 +f 2981/201/465 3019/202/465 3020/199/465 +f 3020/199/465 2982/200/465 2981/201/465 +f 3018/231/474 2997/233/474 2996/232/474 +f 2996/232/474 3012/224/474 3018/231/474 +f 3012/224/430 2996/232/430 3004/234/430 +f 3004/234/430 3014/225/430 3012/224/430 +f 3014/225/473 3004/234/473 3001/232/473 +f 3001/232/473 3013/224/473 3014/225/473 +f 3013/224/428 3001/232/428 3000/233/428 +f 3000/233/428 3015/231/428 3013/224/428 +f 2989/200/437 3021/199/437 3022/202/437 +f 3022/202/437 2990/201/437 2989/200/437 +f 2993/208/466 3002/236/466 3003/235/466 +f 3003/235/466 2994/207/466 2993/208/466 +f 2994/207/471 3003/235/471 2995/236/471 +f 2995/236/471 3010/208/471 2994/207/471 +f 3017/236/27 2979/238/27 2982/237/27 +f 2982/237/27 3018/231/27 3017/236/27 +f 3018/231/27 2982/237/27 3020/239/27 +f 3020/239/27 2997/233/27 3018/231/27 +f 2997/210/193 3020/241/193 3019/240/193 +f 3019/240/193 2995/209/193 2997/210/193 +f 2995/236/26 3019/238/26 2981/242/26 +f 2981/242/26 3010/208/26 2995/236/26 +f 3010/208/26 2981/242/26 2980/240/26 +f 2980/240/26 3009/209/26 3010/208/26 +f 2992/209/26 2987/240/26 2990/242/26 +f 2990/242/26 2993/208/26 2992/209/26 +f 2993/208/26 2990/242/26 3022/238/26 +f 3022/238/26 3002/236/26 2993/208/26 +f 3002/209/475 3022/240/475 3021/241/475 +f 3021/241/475 3000/210/475 3002/209/475 +f 3000/233/27 3021/239/27 2989/237/27 +f 2989/237/27 3015/231/27 3000/233/27 +f 3015/231/27 2989/237/27 2988/238/27 +f 2988/238/27 3016/236/27 3015/231/27 +f 3023/243/187 3024/246/187 3025/245/187 +f 3025/245/187 3026/244/187 3023/243/187 +f 3023/247/161 3027/250/161 3028/249/161 +f 3028/249/161 3024/248/161 3023/247/161 +f 3024/246/188 3028/252/189 3029/251/188 +f 3029/251/188 3025/245/188 3024/246/188 +f 3025/248/163 3029/249/163 3030/250/163 +f 3030/250/163 3026/247/163 3025/248/163 +f 3031/195/4 3032/198/4 3033/197/4 +f 3033/197/4 3034/196/4 3031/195/4 +f 3035/199/465 3036/202/465 3037/201/465 +f 3037/201/465 3038/200/465 3035/199/465 +f 3039/203/421 3040/206/421 3041/205/421 +f 3041/205/421 3042/204/421 3039/203/421 +f 3043/202/437 3044/199/437 3045/200/437 +f 3045/200/437 3046/201/437 3043/202/437 +f 3047/207/466 3048/209/466 3049/208/466 +f 3049/208/466 3050/207/466 3047/207/466 +f 3051/209/107 3052/211/107 3053/210/107 +f 3042/212/467 3041/214/467 3054/213/467 +f 3054/213/467 3055/196/467 3042/212/467 +f 3056/210/468 3057/211/468 3058/209/468 +f 3059/215/469 3058/209/469 3057/211/469 +f 3057/211/469 3060/216/469 3059/215/469 +f 3061/217/103 3034/196/103 3033/197/103 +f 3033/197/103 3062/218/103 3061/217/103 +f 3063/219/414 3039/203/414 3042/204/470 +f 3042/204/470 3064/220/414 3063/219/414 +f 3065/209/471 3047/207/471 3050/207/471 +f 3050/207/471 3066/208/471 3065/209/471 +f 3042/212/472 3055/196/472 3067/213/472 +f 3067/213/472 3064/214/472 3042/212/472 +f 3059/215/332 3060/216/332 3052/211/332 +f 3052/211/332 3051/209/332 3059/215/332 +f 3068/221/437 3032/221/437 3031/222/437 +f 3031/222/437 3054/222/437 3068/221/437 +f 3054/222/426 3031/222/426 3034/203/426 +f 3034/203/426 3055/203/426 3054/222/426 +f 3055/203/425 3034/203/425 3061/206/425 +f 3061/206/425 3067/206/425 3055/203/425 +f 3067/206/465 3061/206/465 3062/223/465 +f 3062/223/465 3069/223/465 3067/206/465 +f 3069/224/473 3062/224/473 3033/226/473 +f 3033/226/473 3070/225/473 3069/224/473 +f 3070/225/430 3033/226/430 3032/224/430 +f 3032/224/430 3068/224/430 3070/225/430 +f 3064/214/468 3067/213/468 3069/228/468 +f 3069/228/468 3071/227/468 3064/214/468 +f 3071/229/437 3072/221/437 3063/219/437 +f 3063/219/437 3064/220/437 3071/229/437 +f 3040/206/465 3073/223/465 3074/230/465 +f 3074/230/465 3041/205/465 3040/206/465 +f 3074/227/107 3068/228/107 3054/213/107 +f 3054/213/107 3041/214/107 3074/227/107 +f 3037/201/465 3075/202/465 3076/199/465 +f 3076/199/465 3038/200/465 3037/201/465 +f 3074/231/474 3053/233/474 3052/232/474 +f 3052/232/474 3068/224/474 3074/231/474 +f 3068/224/430 3052/232/430 3060/234/430 +f 3060/234/430 3070/225/430 3068/224/430 +f 3070/225/473 3060/234/473 3057/232/473 +f 3057/232/473 3069/224/473 3070/225/473 +f 3069/224/428 3057/232/428 3056/233/428 +f 3056/233/428 3071/231/428 3069/224/428 +f 3045/200/437 3077/199/437 3078/202/437 +f 3078/202/437 3046/201/437 3045/200/437 +f 3049/208/466 3058/236/466 3059/235/466 +f 3059/235/466 3050/207/466 3049/208/466 +f 3050/207/471 3059/235/471 3051/236/471 +f 3051/236/471 3066/208/471 3050/207/471 +f 3073/236/27 3035/238/27 3038/237/27 +f 3038/237/27 3074/231/27 3073/236/27 +f 3074/231/27 3038/237/27 3076/239/27 +f 3076/239/27 3053/233/27 3074/231/27 +f 3053/210/193 3076/241/193 3075/240/193 +f 3075/240/193 3051/209/193 3053/210/193 +f 3051/236/26 3075/238/26 3037/242/26 +f 3037/242/26 3066/208/26 3051/236/26 +f 3066/208/26 3037/242/26 3036/240/26 +f 3036/240/26 3065/209/26 3066/208/26 +f 3048/209/26 3043/240/26 3046/242/26 +f 3046/242/26 3049/208/26 3048/209/26 +f 3049/208/26 3046/242/26 3078/238/26 +f 3078/238/26 3058/236/26 3049/208/26 +f 3058/209/475 3078/240/475 3077/241/475 +f 3077/241/475 3056/210/475 3058/209/475 +f 3056/233/27 3077/239/27 3045/237/27 +f 3045/237/27 3071/231/27 3056/233/27 +f 3071/231/27 3045/237/27 3044/238/27 +f 3044/238/27 3072/236/27 3071/231/27 +f 3079/243/476 3080/246/476 3081/245/476 +f 3081/245/476 3082/244/476 3079/243/476 +f 3079/247/477 3083/250/477 3084/249/477 +f 3084/249/477 3080/248/477 3079/247/477 +f 3080/246/478 3084/252/478 3085/251/478 +f 3085/251/478 3081/245/478 3080/246/478 +f 3081/248/479 3085/249/479 3086/250/479 +f 3086/250/479 3082/247/479 3081/248/479 +f 3087/195/387 3088/198/387 3089/197/387 +f 3089/197/387 3090/196/387 3087/195/387 +f 3091/199/388 3092/202/388 3093/201/388 +f 3093/201/388 3094/200/388 3091/199/388 +f 3095/203/389 3096/206/389 3097/205/389 +f 3097/205/389 3098/204/389 3095/203/389 +f 3099/202/390 3100/199/390 3101/200/390 +f 3101/200/390 3102/201/390 3099/202/390 +f 3103/207/391 3104/209/391 3105/208/391 +f 3105/208/391 3106/207/391 3103/207/391 +f 3107/209/392 3108/211/392 3109/210/392 +f 3098/212/393 3097/214/393 3110/213/393 +f 3110/213/393 3111/196/393 3098/212/393 +f 3112/210/394 3113/211/394 3114/209/394 +f 3115/215/395 3114/209/395 3113/211/395 +f 3113/211/395 3116/216/395 3115/215/395 +f 3117/217/396 3090/196/396 3089/197/396 +f 3089/197/396 3118/218/396 3117/217/396 +f 3119/219/397 3095/203/397 3098/204/397 +f 3098/204/397 3120/220/397 3119/219/397 +f 3121/209/398 3103/207/398 3106/207/398 +f 3106/207/398 3122/208/398 3121/209/398 +f 3098/212/399 3111/196/399 3123/213/399 +f 3123/213/399 3120/214/399 3098/212/399 +f 3115/215/400 3116/216/400 3108/211/400 +f 3108/211/400 3107/209/400 3115/215/400 +f 3124/221/390 3088/221/390 3087/222/390 +f 3087/222/390 3110/222/390 3124/221/390 +f 3110/222/401 3087/222/401 3090/203/401 +f 3090/203/401 3111/203/401 3110/222/401 +f 3111/203/402 3090/203/402 3117/206/402 +f 3117/206/402 3123/206/402 3111/203/402 +f 3123/206/388 3117/206/388 3118/223/388 +f 3118/223/388 3125/223/388 3123/206/388 +f 3125/224/403 3118/224/403 3089/226/403 +f 3089/226/403 3126/225/403 3125/224/403 +f 3126/225/404 3089/226/404 3088/224/404 +f 3088/224/404 3124/224/404 3126/225/404 +f 3120/214/394 3123/213/394 3125/228/394 +f 3125/228/394 3127/227/394 3120/214/394 +f 3127/229/390 3128/221/390 3119/219/390 +f 3119/219/390 3120/220/390 3127/229/390 +f 3096/206/388 3129/223/388 3130/230/388 +f 3130/230/388 3097/205/388 3096/206/388 +f 3130/227/392 3124/228/392 3110/213/392 +f 3110/213/392 3097/214/392 3130/227/392 +f 3093/201/388 3131/202/388 3132/199/388 +f 3132/199/388 3094/200/388 3093/201/388 +f 3130/231/405 3109/233/405 3108/232/405 +f 3108/232/405 3124/224/405 3130/231/405 +f 3124/224/404 3108/232/404 3116/234/404 +f 3116/234/404 3126/225/404 3124/224/404 +f 3126/225/403 3116/234/403 3113/232/403 +f 3113/232/403 3125/224/403 3126/225/403 +f 3125/224/407 3113/232/407 3112/233/407 +f 3112/233/407 3127/231/407 3125/224/407 +f 3101/200/390 3133/199/390 3134/202/390 +f 3134/202/390 3102/201/390 3101/200/390 +f 3105/208/391 3114/236/391 3115/235/391 +f 3115/235/391 3106/207/391 3105/208/391 +f 3106/207/398 3115/235/398 3107/236/398 +f 3107/236/398 3122/208/398 3106/207/398 +f 3129/236/27 3091/238/27 3094/237/27 +f 3094/237/27 3130/231/27 3129/236/27 +f 3130/231/27 3094/237/27 3132/239/27 +f 3132/239/27 3109/233/27 3130/231/27 +f 3109/210/409 3132/241/409 3131/240/409 +f 3131/240/409 3107/209/409 3109/210/409 +f 3107/236/26 3131/238/26 3093/242/26 +f 3093/242/26 3122/208/26 3107/236/26 +f 3122/208/26 3093/242/26 3092/240/26 +f 3092/240/26 3121/209/26 3122/208/26 +f 3104/209/26 3099/240/26 3102/242/26 +f 3102/242/26 3105/208/26 3104/209/26 +f 3105/208/26 3102/242/26 3134/238/26 +f 3134/238/26 3114/236/26 3105/208/26 +f 3114/209/410 3134/240/410 3133/241/410 +f 3133/241/410 3112/210/410 3114/209/410 +f 3112/233/27 3133/239/27 3101/237/27 +f 3101/237/27 3127/231/27 3112/233/27 +f 3127/231/27 3101/237/27 3100/238/27 +f 3100/238/27 3128/236/27 3127/231/27 +f 3135/243/180 3136/246/180 3137/245/180 +f 3137/245/180 3138/244/180 3135/243/180 +f 3135/247/151 3139/250/151 3140/249/151 +f 3140/249/151 3136/248/151 3135/247/151 +f 3136/246/181 3140/252/181 3141/251/182 +f 3141/251/182 3137/245/181 3136/246/181 +f 3137/248/153 3141/249/153 3142/250/153 +f 3142/250/153 3138/247/153 3137/248/153 +f 3143/253/24 3144/256/24 3145/255/24 +f 3145/255/24 3146/254/24 3143/253/24 +f 3147/257/23 3148/258/23 3144/256/23 +f 3144/256/23 3143/253/23 3147/257/23 +f 3149/259/191 3150/260/22 3148/258/191 +f 3148/258/191 3147/257/191 3149/259/191 +f 3151/261/21 3152/264/21 3150/263/21 +f 3150/263/21 3149/262/21 3151/261/21 +f 3153/265/20 3154/266/20 3152/264/20 +f 3152/264/20 3151/261/20 3153/265/20 +f 3155/267/19 3156/268/19 3154/266/19 +f 3154/266/19 3153/265/19 3155/267/19 +f 3157/269/194 3158/270/194 3156/268/18 +f 3156/268/18 3155/267/18 3157/269/194 +f 3159/271/17 3160/272/17 3158/270/17 +f 3158/270/17 3157/269/17 3159/271/17 +f 3161/273/16 3162/274/16 3160/272/16 +f 3160/272/16 3159/271/16 3161/273/16 +f 3163/275/118 3164/276/118 3162/274/15 +f 3162/274/15 3161/273/118 3163/275/118 +f 3165/277/14 3166/278/14 3164/276/14 +f 3164/276/14 3163/275/14 3165/277/14 +f 3146/254/13 3145/255/13 3166/278/192 +f 3166/278/192 3165/277/192 3146/254/13 +f 3144/279/27 3167/282/27 3168/281/27 +f 3168/281/27 3145/280/27 3144/279/27 +f 3169/283/27 3170/284/27 3171/282/27 +f 3171/282/27 3172/279/27 3169/283/27 +f 3150/285/27 3173/285/27 3174/284/27 +f 3174/284/27 3148/283/27 3150/285/27 +f 3175/286/27 3176/287/27 3177/285/27 +f 3177/285/27 3178/285/27 3175/286/27 +f 3154/288/27 3179/289/27 3180/287/27 +f 3180/287/27 3152/286/27 3154/288/27 +f 3181/290/27 3182/291/27 3183/289/27 +f 3183/289/27 3184/288/27 3181/290/27 +f 3158/292/27 3185/293/27 3186/291/27 +f 3186/291/27 3156/290/27 3158/292/27 +f 3187/294/27 3188/295/27 3189/293/27 +f 3189/293/27 3190/292/27 3187/294/27 +f 3162/296/27 3191/297/27 3192/295/27 +f 3192/295/27 3160/294/27 3162/296/27 +f 3193/298/27 3194/299/27 3195/297/27 +f 3195/297/27 3196/296/27 3193/298/27 +f 3166/300/27 3197/300/27 3198/299/27 +f 3198/299/27 3164/298/27 3166/300/27 +f 3199/280/27 3200/281/27 3201/300/27 +f 3201/300/27 3202/300/27 3199/280/27 +f 3167/301/18 3203/304/18 3204/303/18 +f 3204/303/18 3168/302/18 3167/301/18 +f 3174/305/17 3205/306/17 3203/304/17 +f 3203/304/17 3167/301/17 3174/305/17 +f 3173/307/16 3206/308/16 3205/306/16 +f 3205/306/16 3174/305/16 3173/307/16 +f 3180/309/15 3207/310/15 3206/308/15 +f 3206/308/15 3173/307/15 3180/309/15 +f 3179/311/14 3208/312/14 3207/310/14 +f 3207/310/14 3180/309/14 3179/311/14 +f 3186/313/13 3209/314/13 3208/312/13 +f 3208/312/13 3179/311/13 3186/313/13 +f 3185/315/25 3210/316/25 3209/314/24 +f 3209/314/24 3186/313/24 3185/315/25 +f 3192/317/23 3211/318/23 3210/316/23 +f 3210/316/23 3185/315/23 3192/317/23 +f 3191/319/22 3212/320/22 3211/318/22 +f 3211/318/22 3192/317/22 3191/319/22 +f 3198/321/21 3213/324/21 3212/323/178 +f 3212/323/178 3191/322/21 3198/321/21 +f 3197/325/20 3214/326/20 3213/324/20 +f 3213/324/20 3198/321/20 3197/325/20 +f 3168/302/19 3204/303/19 3214/326/190 +f 3214/326/190 3197/325/190 3168/302/19 +f 3203/327/27 3215/329/27 3204/328/27 +f 3205/330/27 3215/329/27 3203/327/27 +f 3206/331/27 3215/329/27 3205/330/27 +f 3207/332/27 3215/329/27 3206/331/27 +f 3208/333/27 3215/329/27 3207/332/27 +f 3209/334/27 3215/329/27 3208/333/27 +f 3210/335/27 3215/329/27 3209/334/27 +f 3211/336/27 3215/329/27 3210/335/27 +f 3212/337/27 3215/329/27 3211/336/27 +f 3213/338/27 3215/329/27 3212/337/27 +f 3214/339/27 3215/329/27 3213/338/27 +f 3204/328/27 3215/329/27 3214/339/27 +f 3148/258/23 3169/341/23 3172/340/23 +f 3172/340/23 3144/256/23 3148/258/23 +f 3144/279/153 3172/279/153 3171/282/153 +f 3171/282/153 3167/282/153 3144/279/153 +f 3167/301/17 3171/343/17 3170/342/17 +f 3170/342/17 3174/305/17 3167/301/17 +f 3174/284/196 3170/284/196 3169/283/196 +f 3169/283/196 3148/283/196 3174/284/196 +f 3152/264/21 3175/345/21 3178/344/178 +f 3178/344/178 3150/263/21 3152/264/21 +f 3150/285/1 3178/285/1 3177/285/1 +f 3177/285/1 3173/285/1 3150/285/1 +f 3173/307/15 3177/347/15 3176/346/15 +f 3176/346/15 3180/309/15 3173/307/15 +f 3180/287/195 3176/287/195 3175/286/195 +f 3175/286/195 3152/286/195 3180/287/195 +f 3156/268/19 3181/349/19 3184/348/19 +f 3184/348/19 3154/266/19 3156/268/19 +f 3154/288/161 3184/288/161 3183/289/161 +f 3183/289/161 3179/289/161 3154/288/161 +f 3179/311/13 3183/351/13 3182/350/13 +f 3182/350/13 3186/313/13 3179/311/13 +f 3186/291/4 3182/291/4 3181/290/4 +f 3181/290/4 3156/290/4 3186/291/4 +f 3160/272/17 3187/353/17 3190/352/17 +f 3190/352/17 3158/270/17 3160/272/17 +f 3158/292/151 3190/292/151 3189/293/151 +f 3189/293/151 3185/293/151 3158/292/151 +f 3185/315/23 3189/355/23 3188/354/23 +f 3188/354/23 3192/317/23 3185/315/23 +f 3192/295/198 3188/295/198 3187/294/198 +f 3187/294/198 3160/294/198 3192/295/198 +f 3164/276/118 3193/357/15 3196/356/15 +f 3196/356/15 3162/274/15 3164/276/118 +f 3162/296/7 3196/296/7 3195/297/7 +f 3195/297/7 3191/297/7 3162/296/7 +f 3191/322/21 3195/359/21 3194/358/21 +f 3194/358/21 3198/321/21 3191/322/21 +f 3198/299/197 3194/299/197 3193/298/197 +f 3193/298/197 3164/298/197 3198/299/197 +f 3145/255/13 3199/361/13 3202/360/13 +f 3202/360/13 3166/278/192 3145/255/13 +f 3166/300/163 3202/300/163 3201/300/163 +f 3201/300/163 3197/300/163 3166/300/163 +f 3197/325/190 3201/363/190 3200/362/19 +f 3200/362/19 3168/302/19 3197/325/190 +f 3168/281/10 3200/281/10 3199/280/10 +f 3199/280/10 3145/280/10 3168/281/10 +f 3216/1/7 3217/2/8 3218/3/8 +f 3218/3/8 3219/4/7 3216/1/7 +f 3217/2/8 3220/5/9 3221/6/9 +f 3221/6/9 3218/3/8 3217/2/8 +f 3220/5/9 3222/7/10 3223/8/10 +f 3223/8/10 3221/6/9 3220/5/9 +f 3222/9/10 3224/10/11 3225/11/11 +f 3225/11/11 3223/12/10 3222/9/10 +f 3224/10/11 3226/13/12 3227/14/12 +f 3227/14/12 3225/11/11 3224/10/11 +f 3226/13/12 3228/15/1 3229/16/1 +f 3229/16/1 3227/14/12 3226/13/12 +f 3228/15/1 3230/17/2 3231/18/2 +f 3231/18/2 3229/16/1 3228/15/1 +f 3230/17/2 3232/19/3 3233/20/3 +f 3233/20/3 3231/18/2 3230/17/2 +f 3232/19/3 3234/21/4 3235/22/4 +f 3235/22/4 3233/20/3 3232/19/3 +f 3234/21/4 3236/23/5 3237/24/5 +f 3237/24/5 3235/22/4 3234/21/4 +f 3236/23/5 3238/25/6 3239/26/6 +f 3239/26/6 3237/24/5 3236/23/5 +f 3238/25/6 3216/1/7 3219/4/7 +f 3219/4/7 3239/26/6 3238/25/6 +f 3240/27/19 3241/28/19 3242/29/19 +f 3242/29/19 3243/30/19 3240/27/19 +f 3244/31/20 3240/27/20 3243/30/20 +f 3243/30/20 3245/32/20 3244/31/20 +f 3246/33/21 3244/31/21 3245/32/21 +f 3245/32/21 3247/34/21 3246/33/21 +f 3248/35/22 3246/36/22 3247/37/22 +f 3247/37/22 3249/38/22 3248/35/22 +f 3250/39/23 3248/35/23 3249/38/23 +f 3249/38/23 3251/40/23 3250/39/23 +f 3252/41/24 3250/39/24 3251/40/24 +f 3251/40/24 3253/42/24 3252/41/24 +f 3254/43/13 3252/41/13 3253/42/13 +f 3253/42/13 3255/44/13 3254/43/13 +f 3256/45/14 3254/43/14 3255/44/14 +f 3255/44/14 3257/46/14 3256/45/14 +f 3258/47/15 3256/45/15 3257/46/15 +f 3257/46/15 3259/48/15 3258/47/15 +f 3260/49/16 3258/47/16 3259/48/16 +f 3259/48/16 3261/50/16 3260/49/16 +f 3262/51/17 3260/49/17 3261/50/17 +f 3261/50/17 3263/52/17 3262/51/17 +f 3241/28/18 3262/51/194 3263/52/18 +f 3263/52/18 3242/29/18 3241/28/18 +f 3217/53/26 3216/54/26 3241/54/26 +f 3241/54/26 3240/53/26 3217/53/26 +f 3216/54/26 3238/55/26 3262/55/26 +f 3262/55/26 3241/54/26 3216/54/26 +f 3238/55/26 3236/56/26 3260/56/26 +f 3260/56/26 3262/55/26 3238/55/26 +f 3236/56/26 3234/57/26 3258/57/26 +f 3258/57/26 3260/56/26 3236/56/26 +f 3234/57/26 3232/58/26 3256/59/26 +f 3256/59/26 3258/57/26 3234/57/26 +f 3232/58/26 3230/60/26 3254/61/26 +f 3254/61/26 3256/59/26 3232/58/26 +f 3230/60/26 3228/62/26 3252/62/26 +f 3252/62/26 3254/61/26 3230/60/26 +f 3228/62/26 3226/63/26 3250/64/26 +f 3250/64/26 3252/62/26 3228/62/26 +f 3226/63/26 3224/65/26 3248/66/26 +f 3248/66/26 3250/64/26 3226/63/26 +f 3224/65/26 3222/67/26 3246/67/26 +f 3246/67/26 3248/66/26 3224/65/26 +f 3222/67/26 3220/68/26 3244/68/26 +f 3244/68/26 3246/67/26 3222/67/26 +f 3220/68/26 3217/53/26 3240/53/26 +f 3240/53/26 3244/68/26 3220/68/26 +f 3264/54/27 3265/53/27 3243/53/27 +f 3243/53/27 3242/54/27 3264/54/27 +f 3265/53/27 3266/68/27 3245/68/27 +f 3245/68/27 3243/53/27 3265/53/27 +f 3266/68/27 3267/67/27 3247/67/27 +f 3247/67/27 3245/68/27 3266/68/27 +f 3267/67/27 3268/65/27 3249/66/27 +f 3249/66/27 3247/67/27 3267/67/27 +f 3268/65/27 3269/63/27 3251/64/27 +f 3251/64/27 3249/66/27 3268/65/27 +f 3269/63/27 3270/62/27 3253/62/27 +f 3253/62/27 3251/64/27 3269/63/27 +f 3270/62/27 3271/60/27 3255/61/27 +f 3255/61/27 3253/62/27 3270/62/27 +f 3271/60/27 3272/58/27 3257/59/27 +f 3257/59/27 3255/61/27 3271/60/27 +f 3272/58/27 3273/57/27 3259/57/27 +f 3259/57/27 3257/59/27 3272/58/27 +f 3273/57/27 3274/56/27 3261/56/27 +f 3261/56/27 3259/57/27 3273/57/27 +f 3274/56/27 3275/55/27 3263/55/27 +f 3263/55/27 3261/56/27 3274/56/27 +f 3275/55/27 3264/54/27 3242/54/27 +f 3242/54/27 3263/55/27 3275/55/27 +f 3264/69/7 3276/70/7 3277/71/8 +f 3277/71/8 3265/72/8 3264/69/7 +f 3265/72/8 3277/71/8 3278/73/20 +f 3278/73/20 3266/74/20 3265/72/8 +f 3266/74/21 3278/73/21 3279/75/21 +f 3279/75/21 3267/76/21 3266/74/21 +f 3267/76/22 3279/75/22 3280/77/11 +f 3280/77/11 3268/78/11 3267/76/22 +f 3268/78/11 3280/77/11 3281/79/12 +f 3281/79/12 3269/80/12 3268/78/11 +f 3269/81/12 3281/82/12 3282/83/1 +f 3282/83/1 3270/84/1 3269/81/12 +f 3270/84/1 3282/83/1 3283/85/2 +f 3283/85/2 3271/86/2 3270/84/1 +f 3271/86/2 3283/85/2 3284/87/3 +f 3284/87/3 3272/88/3 3271/86/2 +f 3272/88/3 3284/87/3 3285/89/4 +f 3285/89/4 3273/90/4 3272/88/3 +f 3273/90/4 3285/89/4 3286/91/5 +f 3286/91/5 3274/92/5 3273/90/4 +f 3274/92/5 3286/91/5 3287/93/6 +f 3287/93/6 3275/94/6 3274/92/5 +f 3275/94/6 3287/93/6 3276/70/7 +f 3276/70/7 3264/69/7 3275/94/6 +f 3288/95/26 3289/96/26 3290/96/26 +f 3290/96/26 3291/95/26 3288/95/26 +f 3292/97/26 3288/95/26 3291/95/26 +f 3291/95/26 3293/97/26 3292/97/26 +f 3294/67/26 3292/97/26 3293/97/26 +f 3293/97/26 3295/98/26 3294/67/26 +f 3296/99/26 3294/67/26 3295/98/26 +f 3295/98/26 3297/99/26 3296/99/26 +f 3298/100/26 3296/99/26 3297/99/26 +f 3297/99/26 3299/100/26 3298/100/26 +f 3300/101/26 3298/100/26 3299/100/26 +f 3299/100/26 3301/101/26 3300/101/26 +f 3302/61/26 3300/101/26 3301/101/26 +f 3301/101/26 3303/61/26 3302/61/26 +f 3304/59/26 3302/61/26 3303/61/26 +f 3303/61/26 3305/102/26 3304/59/26 +f 3306/103/26 3304/59/26 3305/102/26 +f 3305/102/26 3307/103/26 3306/103/26 +f 3308/104/26 3306/103/26 3307/103/26 +f 3307/103/26 3309/105/26 3308/104/26 +f 3310/106/26 3308/104/26 3309/105/26 +f 3309/105/26 3311/106/26 3310/106/26 +f 3289/96/26 3310/106/26 3311/106/26 +f 3311/106/26 3290/96/26 3289/96/26 +f 3291/107/34 3290/108/34 3312/109/34 +f 3312/109/34 3313/110/34 3291/107/34 +f 3293/111/35 3291/107/35 3313/110/35 +f 3313/110/35 3314/112/35 3293/111/35 +f 3295/113/36 3293/111/36 3314/112/36 +f 3314/112/36 3315/114/36 3295/113/36 +f 3297/115/37 3295/113/37 3315/114/37 +f 3315/114/37 3316/116/37 3297/115/37 +f 3299/117/38 3297/115/38 3316/116/38 +f 3316/116/38 3317/118/38 3299/117/38 +f 3301/119/39 3299/117/39 3317/118/39 +f 3317/118/39 3318/120/39 3301/119/39 +f 3303/121/28 3301/119/28 3318/120/28 +f 3318/120/28 3319/122/28 3303/121/28 +f 3305/123/29 3303/121/29 3319/122/29 +f 3319/122/29 3320/124/29 3305/123/29 +f 3307/125/30 3305/123/30 3320/124/30 +f 3320/124/30 3321/126/30 3307/125/30 +f 3309/127/31 3307/128/31 3321/129/31 +f 3321/129/31 3322/130/31 3309/127/31 +f 3311/131/32 3309/127/32 3322/130/32 +f 3322/130/32 3323/132/32 3311/131/32 +f 3290/108/33 3311/131/33 3323/132/33 +f 3323/132/33 3312/109/33 3290/108/33 +f 3313/110/48 3312/109/48 3324/133/48 +f 3324/133/48 3325/134/48 3313/110/48 +f 3314/112/49 3313/110/49 3325/134/49 +f 3325/134/49 3326/135/49 3314/112/49 +f 3315/114/50 3314/112/50 3326/135/50 +f 3326/135/50 3327/136/50 3315/114/50 +f 3316/116/51 3315/114/51 3327/136/52 +f 3327/136/52 3328/137/51 3316/116/51 +f 3317/118/53 3316/116/53 3328/137/53 +f 3328/137/53 3329/138/53 3317/118/53 +f 3318/120/54 3317/118/54 3329/138/54 +f 3329/138/54 3330/139/54 3318/120/54 +f 3319/122/386 3318/120/40 3330/139/40 +f 3330/139/40 3331/140/40 3319/122/386 +f 3320/124/41 3319/122/41 3331/140/41 +f 3331/140/41 3332/141/41 3320/124/41 +f 3321/126/42 3320/124/42 3332/141/42 +f 3332/141/42 3333/142/43 3321/126/42 +f 3322/130/44 3321/129/44 3333/143/44 +f 3333/143/44 3334/144/44 3322/130/44 +f 3323/132/45 3322/130/45 3334/144/45 +f 3334/144/45 3335/145/45 3323/132/45 +f 3312/109/46 3323/132/385 3335/145/46 +f 3335/145/46 3324/133/46 3312/109/46 +f 3336/146/64 3337/147/64 3277/148/64 +f 3277/148/64 3276/149/64 3336/146/64 +f 3337/147/66 3338/150/66 3278/151/65 +f 3278/151/65 3277/148/65 3337/147/66 +f 3338/152/67 3339/153/67 3279/154/67 +f 3279/154/67 3278/155/67 3338/152/67 +f 3339/153/68 3340/142/68 3280/156/68 +f 3280/156/68 3279/154/68 3339/153/68 +f 3340/142/70 3341/157/70 3281/158/69 +f 3281/158/69 3280/156/69 3340/142/70 +f 3341/157/71 3342/159/71 3282/160/71 +f 3282/160/71 3281/158/71 3341/157/71 +f 3342/159/56 3343/161/56 3283/162/56 +f 3283/162/56 3282/160/56 3342/159/56 +f 3343/161/57 3344/163/57 3284/164/58 +f 3284/164/58 3283/162/58 3343/161/57 +f 3344/163/59 3345/165/59 3285/166/59 +f 3285/166/59 3284/164/59 3344/163/59 +f 3345/165/60 3346/167/60 3286/168/60 +f 3286/168/60 3285/166/60 3345/165/60 +f 3346/167/61 3347/169/61 3287/170/61 +f 3287/170/61 3286/168/62 3346/167/61 +f 3347/169/63 3336/146/63 3276/149/63 +f 3276/149/63 3287/170/63 3347/169/63 +f 3289/171/7 3288/172/8 3337/173/8 +f 3337/173/8 3336/174/7 3289/171/7 +f 3288/172/8 3292/175/9 3338/176/9 +f 3338/176/9 3337/173/8 3288/172/8 +f 3292/177/9 3294/178/10 3339/179/10 +f 3339/179/10 3338/180/9 3292/177/9 +f 3294/178/10 3296/86/11 3340/181/11 +f 3340/181/11 3339/179/10 3294/178/10 +f 3296/86/11 3298/182/12 3341/183/12 +f 3341/183/12 3340/181/11 3296/86/11 +f 3298/182/12 3300/184/1 3342/185/1 +f 3342/185/1 3341/183/12 3298/182/12 +f 3300/184/1 3302/186/2 3343/187/2 +f 3343/187/2 3342/185/1 3300/184/1 +f 3302/186/2 3304/188/3 3344/189/3 +f 3344/189/3 3343/187/2 3302/186/2 +f 3304/188/3 3306/190/4 3345/191/4 +f 3345/191/4 3344/189/3 3304/188/3 +f 3306/190/4 3308/76/5 3346/192/5 +f 3346/192/5 3345/191/4 3306/190/4 +f 3308/76/5 3310/193/6 3347/194/6 +f 3347/194/6 3346/192/5 3308/76/5 +f 3310/193/6 3289/171/7 3336/174/7 +f 3336/174/7 3347/194/6 3310/193/6 +f 3348/195/131 3349/196/131 3350/197/131 +f 3350/197/131 3351/198/131 3348/195/131 +f 3352/199/75 3353/200/75 3354/201/75 +f 3354/201/75 3355/202/75 3352/199/75 +f 3356/203/132 3357/204/132 3358/205/132 +f 3358/205/132 3359/206/132 3356/203/132 +f 3360/202/73 3361/201/73 3362/200/73 +f 3362/200/73 3363/199/73 3360/202/73 +f 3364/207/83 3365/207/83 3366/208/83 +f 3366/208/83 3367/209/83 3364/207/83 +f 3368/209/133 3369/210/133 3370/211/133 +f 3357/212/134 3371/196/134 3372/213/134 +f 3372/213/134 3358/214/134 3357/212/134 +f 3373/210/135 3374/209/135 3375/211/135 +f 3376/215/136 3377/216/136 3375/211/136 +f 3375/211/136 3374/209/136 3376/215/136 +f 3378/217/137 3379/218/137 3350/197/137 +f 3350/197/137 3349/196/137 3378/217/137 +f 3380/219/139 3381/220/139 3357/204/139 +f 3357/204/139 3356/203/139 3380/219/139 +f 3382/209/76 3383/208/76 3365/207/76 +f 3365/207/76 3364/207/76 3382/209/76 +f 3357/212/140 3381/214/140 3384/213/140 +f 3384/213/140 3371/196/140 3357/212/140 +f 3376/215/141 3368/209/141 3370/211/141 +f 3370/211/141 3377/216/141 3376/215/141 +f 3385/221/73 3372/222/73 3348/222/73 +f 3348/222/73 3351/221/73 3385/221/73 +f 3372/222/87 3371/203/87 3349/203/87 +f 3349/203/87 3348/222/87 3372/222/87 +f 3371/203/86 3384/206/86 3378/206/86 +f 3378/206/86 3349/203/86 3371/203/86 +f 3384/206/75 3386/223/75 3379/223/75 +f 3379/223/75 3378/206/75 3384/206/75 +f 3386/224/142 3387/225/142 3350/226/142 +f 3350/226/142 3379/224/142 3386/224/142 +f 3387/225/143 3385/224/143 3351/224/143 +f 3351/224/143 3350/226/143 3387/225/143 +f 3381/214/135 3388/227/135 3386/228/135 +f 3386/228/135 3384/213/135 3381/214/135 +f 3388/229/73 3381/220/73 3380/219/73 +f 3380/219/73 3389/221/73 3388/229/73 +f 3359/206/75 3358/205/75 3390/230/75 +f 3390/230/75 3391/223/75 3359/206/75 +f 3390/227/133 3358/214/133 3372/213/133 +f 3372/213/133 3385/228/133 3390/227/133 +f 3354/201/75 3353/200/75 3392/199/75 +f 3392/199/75 3393/202/75 3354/201/75 +f 3390/231/144 3385/224/144 3370/232/144 +f 3370/232/144 3369/233/144 3390/231/144 +f 3385/224/143 3387/225/143 3377/234/143 +f 3377/234/143 3370/232/143 3385/224/143 +f 3387/225/142 3386/224/142 3375/232/142 +f 3375/232/142 3377/234/142 3387/225/142 +f 3386/224/145 3388/231/145 3373/233/145 +f 3373/233/145 3375/232/145 3386/224/145 +f 3362/200/73 3361/201/73 3394/202/73 +f 3394/202/73 3395/199/73 3362/200/73 +f 3366/208/83 3365/207/83 3376/235/83 +f 3376/235/83 3374/236/83 3366/208/83 +f 3365/207/76 3383/208/76 3368/236/76 +f 3368/236/76 3376/235/76 3365/207/76 +f 3391/236/27 3390/231/27 3353/237/27 +f 3353/237/27 3352/238/27 3391/236/27 +f 3390/231/27 3369/233/27 3392/239/27 +f 3392/239/27 3353/237/27 3390/231/27 +f 3369/210/480 3368/209/480 3393/240/480 +f 3393/240/480 3392/241/480 3369/210/480 +f 3368/236/26 3383/208/26 3354/242/26 +f 3354/242/26 3393/238/26 3368/236/26 +f 3383/208/26 3382/209/26 3355/240/26 +f 3355/240/26 3354/242/26 3383/208/26 +f 3367/209/26 3366/208/26 3361/242/26 +f 3361/242/26 3360/240/26 3367/209/26 +f 3366/208/26 3374/236/26 3394/238/26 +f 3394/238/26 3361/242/26 3366/208/26 +f 3374/209/147 3373/210/147 3395/241/147 +f 3395/241/147 3394/240/147 3374/209/147 +f 3373/233/27 3388/231/27 3362/237/27 +f 3362/237/27 3395/239/27 3373/233/27 +f 3388/231/27 3389/236/27 3363/238/27 +f 3363/238/27 3362/237/27 3388/231/27 +f 3396/195/10 3397/196/10 3398/197/10 +f 3398/197/10 3399/198/10 3396/195/10 +f 3400/199/101 3401/200/100 3402/201/100 +f 3402/201/100 3403/202/101 3400/199/101 +f 3404/203/108 3405/204/108 3406/205/108 +f 3406/205/108 3407/206/108 3404/203/108 +f 3408/202/98 3409/201/97 3410/200/97 +f 3410/200/97 3411/199/98 3408/202/98 +f 3412/207/166 3413/207/166 3414/208/166 +f 3414/208/166 3415/209/166 3412/207/166 +f 3416/209/167 3417/210/167 3418/211/167 +f 3405/212/168 3419/196/168 3420/213/168 +f 3420/213/168 3406/214/168 3405/212/168 +f 3421/210/169 3422/209/169 3423/211/169 +f 3424/215/170 3425/216/170 3423/211/170 +f 3423/211/170 3422/209/170 3424/215/170 +f 3426/217/171 3427/218/171 3398/197/171 +f 3398/197/171 3397/196/171 3426/217/171 +f 3428/219/99 3429/220/99 3405/204/99 +f 3405/204/99 3404/203/99 3428/219/99 +f 3430/209/173 3431/208/173 3413/207/173 +f 3413/207/173 3412/207/173 3430/209/173 +f 3405/212/174 3429/214/174 3432/213/174 +f 3432/213/174 3419/196/174 3405/212/174 +f 3424/215/175 3416/209/175 3418/211/175 +f 3418/211/175 3425/216/175 3424/215/175 +f 3433/221/98 3420/222/98 3396/222/97 +f 3396/222/97 3399/221/97 3433/221/98 +f 3420/222/113 3419/203/113 3397/203/113 +f 3397/203/113 3396/222/113 3420/222/113 +f 3419/203/112 3432/206/112 3426/206/112 +f 3426/206/112 3397/203/112 3419/203/112 +f 3432/206/100 3434/223/100 3427/223/100 +f 3427/223/100 3426/206/100 3432/206/100 +f 3434/224/176 3435/225/176 3398/226/176 +f 3398/226/176 3427/224/176 3434/224/176 +f 3435/225/117 3433/224/117 3399/224/117 +f 3399/224/117 3398/226/117 3435/225/117 +f 3429/214/169 3436/227/169 3434/228/169 +f 3434/228/169 3432/213/169 3429/214/169 +f 3436/229/98 3429/220/98 3428/219/98 +f 3428/219/98 3437/221/98 3436/229/98 +f 3407/206/100 3406/205/100 3438/230/100 +f 3438/230/100 3439/223/100 3407/206/100 +f 3438/227/167 3406/214/167 3420/213/167 +f 3420/213/167 3433/228/167 3438/227/167 +f 3402/201/100 3401/200/100 3440/199/101 +f 3440/199/101 3441/202/101 3402/201/100 +f 3438/231/481 3433/224/481 3418/232/481 +f 3418/232/481 3417/233/481 3438/231/481 +f 3433/224/117 3435/225/117 3425/234/117 +f 3425/234/117 3418/232/117 3433/224/117 +f 3435/225/176 3434/224/176 3423/232/176 +f 3423/232/176 3425/234/176 3435/225/176 +f 3434/224/115 3436/231/115 3421/233/115 +f 3421/233/115 3423/232/115 3434/224/115 +f 3410/200/97 3409/201/97 3442/202/98 +f 3442/202/98 3443/199/98 3410/200/97 +f 3414/208/166 3413/207/166 3424/235/166 +f 3424/235/166 3422/236/166 3414/208/166 +f 3413/207/173 3431/208/173 3416/236/173 +f 3416/236/173 3424/235/173 3413/207/173 +f 3439/236/27 3438/231/27 3401/237/27 +f 3401/237/27 3400/238/27 3439/236/27 +f 3438/231/27 3417/233/27 3440/239/27 +f 3440/239/27 3401/237/27 3438/231/27 +f 3417/210/178 3416/209/178 3441/240/178 +f 3441/240/178 3440/241/178 3417/210/178 +f 3416/236/26 3431/208/26 3402/242/26 +f 3402/242/26 3441/238/26 3416/236/26 +f 3431/208/26 3430/209/26 3403/240/26 +f 3403/240/26 3402/242/26 3431/208/26 +f 3415/209/26 3414/208/26 3409/242/26 +f 3409/242/26 3408/240/26 3415/209/26 +f 3414/208/26 3422/236/26 3442/238/26 +f 3442/238/26 3409/242/26 3414/208/26 +f 3422/209/179 3421/210/179 3443/241/179 +f 3443/241/179 3442/240/179 3422/209/179 +f 3421/233/27 3436/231/27 3410/237/27 +f 3410/237/27 3443/239/27 3421/233/27 +f 3436/231/27 3437/236/27 3411/238/27 +f 3411/238/27 3410/237/27 3436/231/27 +f 3444/243/183 3445/244/183 3446/245/183 +f 3446/245/183 3447/246/183 3444/243/183 +f 3444/247/184 3447/248/184 3448/249/184 +f 3448/249/184 3449/250/184 3444/247/184 +f 3447/246/185 3446/245/185 3450/251/185 +f 3450/251/185 3448/252/185 3447/246/185 +f 3446/248/186 3445/247/186 3451/250/186 +f 3451/250/186 3450/249/186 3446/248/186 +f 3452/195/164 3453/196/164 3454/197/164 +f 3454/197/164 3455/198/164 3452/195/164 +f 3456/199/101 3457/200/100 3458/201/100 +f 3458/201/100 3459/202/101 3456/199/101 +f 3460/203/108 3461/204/108 3462/205/108 +f 3462/205/108 3463/206/108 3460/203/108 +f 3464/202/98 3465/201/97 3466/200/97 +f 3466/200/97 3467/199/98 3464/202/98 +f 3468/207/166 3469/207/166 3470/208/166 +f 3470/208/166 3471/209/166 3468/207/166 +f 3472/209/167 3473/210/167 3474/211/167 +f 3461/212/168 3475/196/168 3476/213/168 +f 3476/213/168 3462/214/168 3461/212/168 +f 3477/210/169 3478/209/169 3479/211/169 +f 3480/215/170 3481/216/170 3479/211/170 +f 3479/211/170 3478/209/170 3480/215/170 +f 3482/217/171 3483/218/171 3454/197/171 +f 3454/197/171 3453/196/171 3482/217/171 +f 3484/219/172 3485/220/172 3461/204/99 +f 3461/204/99 3460/203/99 3484/219/172 +f 3486/209/173 3487/208/173 3469/207/173 +f 3469/207/173 3468/207/173 3486/209/173 +f 3461/212/174 3485/214/174 3488/213/174 +f 3488/213/174 3475/196/174 3461/212/174 +f 3480/215/175 3472/209/175 3474/211/175 +f 3474/211/175 3481/216/175 3480/215/175 +f 3489/221/98 3476/222/98 3452/222/98 +f 3452/222/98 3455/221/98 3489/221/98 +f 3476/222/113 3475/203/113 3453/203/113 +f 3453/203/113 3452/222/113 3476/222/113 +f 3475/203/112 3488/206/112 3482/206/112 +f 3482/206/112 3453/203/112 3475/203/112 +f 3488/206/100 3490/223/100 3483/223/100 +f 3483/223/100 3482/206/100 3488/206/100 +f 3490/224/176 3491/225/176 3454/226/176 +f 3454/226/176 3483/224/176 3490/224/176 +f 3491/225/117 3489/224/117 3455/224/117 +f 3455/224/117 3454/226/117 3491/225/117 +f 3485/214/169 3492/227/169 3490/228/169 +f 3490/228/169 3488/213/169 3485/214/169 +f 3492/229/125 3485/220/125 3484/219/97 +f 3484/219/97 3493/221/97 3492/229/125 +f 3463/206/100 3462/205/101 3494/230/101 +f 3494/230/101 3495/223/100 3463/206/100 +f 3494/227/167 3462/214/167 3476/213/167 +f 3476/213/167 3489/228/167 3494/227/167 +f 3458/201/100 3457/200/100 3496/199/101 +f 3496/199/101 3497/202/101 3458/201/100 +f 3494/231/481 3489/224/481 3474/232/481 +f 3474/232/481 3473/233/481 3494/231/481 +f 3489/224/117 3491/225/117 3481/234/117 +f 3481/234/117 3474/232/117 3489/224/117 +f 3491/225/176 3490/224/176 3479/232/176 +f 3479/232/176 3481/234/176 3491/225/176 +f 3490/224/115 3492/231/115 3477/233/115 +f 3477/233/115 3479/232/115 3490/224/115 +f 3466/200/97 3465/201/97 3498/202/98 +f 3498/202/98 3499/199/98 3466/200/97 +f 3470/208/166 3469/207/166 3480/235/166 +f 3480/235/166 3478/236/166 3470/208/166 +f 3469/207/173 3487/208/173 3472/236/173 +f 3472/236/173 3480/235/173 3469/207/173 +f 3495/236/27 3494/231/27 3457/237/27 +f 3457/237/27 3456/238/27 3495/236/27 +f 3494/231/27 3473/233/27 3496/239/27 +f 3496/239/27 3457/237/27 3494/231/27 +f 3473/210/178 3472/209/178 3497/240/178 +f 3497/240/178 3496/241/178 3473/210/178 +f 3472/236/26 3487/208/26 3458/242/26 +f 3458/242/26 3497/238/26 3472/236/26 +f 3487/208/26 3486/209/26 3459/240/26 +f 3459/240/26 3458/242/26 3487/208/26 +f 3471/209/26 3470/208/26 3465/242/26 +f 3465/242/26 3464/240/26 3471/209/26 +f 3470/208/26 3478/236/26 3498/238/26 +f 3498/238/26 3465/242/26 3470/208/26 +f 3478/209/179 3477/210/179 3499/241/179 +f 3499/241/179 3498/240/179 3478/209/179 +f 3477/233/27 3492/231/27 3466/237/27 +f 3466/237/27 3499/239/27 3477/233/27 +f 3492/231/27 3493/236/27 3467/238/27 +f 3467/238/27 3466/237/27 3492/231/27 +f 3500/243/156 3501/244/156 3502/245/156 +f 3502/245/156 3503/246/156 3500/243/156 +f 3500/247/157 3503/248/157 3504/249/157 +f 3504/249/157 3505/250/157 3500/247/157 +f 3503/246/158 3502/245/158 3506/251/158 +f 3506/251/158 3504/252/158 3503/246/158 +f 3502/248/159 3501/247/159 3507/250/159 +f 3507/250/159 3506/249/159 3502/248/159 +f 3508/195/72 3509/196/72 3510/197/72 +f 3510/197/72 3511/198/72 3508/195/72 +f 3512/199/73 3513/200/73 3514/201/73 +f 3514/201/73 3515/202/73 3512/199/73 +f 3516/203/74 3517/204/74 3518/205/74 +f 3518/205/74 3519/206/74 3516/203/74 +f 3520/202/75 3521/201/75 3522/200/75 +f 3522/200/75 3523/199/75 3520/202/75 +f 3524/207/76 3525/207/76 3526/208/76 +f 3526/208/76 3527/209/76 3524/207/76 +f 3528/209/77 3529/210/77 3530/211/77 +f 3517/212/78 3531/196/78 3532/213/78 +f 3532/213/78 3518/214/78 3517/212/78 +f 3533/210/79 3534/209/79 3535/211/79 +f 3536/215/80 3537/216/80 3535/211/80 +f 3535/211/80 3534/209/80 3536/215/80 +f 3538/217/81 3539/218/81 3510/197/482 +f 3510/197/482 3509/196/482 3538/217/81 +f 3540/219/82 3541/220/82 3517/204/82 +f 3517/204/82 3516/203/82 3540/219/82 +f 3542/209/83 3543/208/83 3525/207/83 +f 3525/207/83 3524/207/83 3542/209/83 +f 3517/212/84 3541/214/84 3544/213/84 +f 3544/213/84 3531/196/84 3517/212/84 +f 3536/215/85 3528/209/85 3530/211/85 +f 3530/211/85 3537/216/85 3536/215/85 +f 3545/221/75 3532/222/75 3508/222/75 +f 3508/222/75 3511/221/75 3545/221/75 +f 3532/222/86 3531/203/86 3509/203/86 +f 3509/203/86 3508/222/86 3532/222/86 +f 3531/203/87 3544/206/87 3538/206/87 +f 3538/206/87 3509/203/87 3531/203/87 +f 3544/206/73 3546/223/73 3539/223/73 +f 3539/223/73 3538/206/73 3544/206/73 +f 3546/224/88 3547/225/88 3510/226/88 +f 3510/226/88 3539/224/88 3546/224/88 +f 3547/225/89 3545/224/89 3511/224/89 +f 3511/224/89 3510/226/89 3547/225/89 +f 3541/214/79 3548/227/79 3546/228/79 +f 3546/228/79 3544/213/79 3541/214/79 +f 3548/229/75 3541/220/75 3540/219/75 +f 3540/219/75 3549/221/75 3548/229/75 +f 3519/206/73 3518/205/73 3550/230/73 +f 3550/230/73 3551/223/73 3519/206/73 +f 3550/227/77 3518/214/77 3532/213/77 +f 3532/213/77 3545/228/77 3550/227/77 +f 3514/201/73 3513/200/73 3552/199/73 +f 3552/199/73 3553/202/73 3514/201/73 +f 3550/231/90 3545/224/90 3530/232/90 +f 3530/232/90 3529/233/90 3550/231/90 +f 3545/224/89 3547/225/89 3537/234/89 +f 3537/234/89 3530/232/89 3545/224/89 +f 3547/225/88 3546/224/88 3535/232/88 +f 3535/232/88 3537/234/88 3547/225/88 +f 3546/224/92 3548/231/92 3533/233/92 +f 3533/233/92 3535/232/92 3546/224/92 +f 3522/200/75 3521/201/75 3554/202/75 +f 3554/202/75 3555/199/75 3522/200/75 +f 3526/208/76 3525/207/76 3536/235/76 +f 3536/235/76 3534/236/76 3526/208/76 +f 3525/207/83 3543/208/83 3528/236/83 +f 3528/236/83 3536/235/83 3525/207/83 +f 3551/236/27 3550/231/27 3513/237/27 +f 3513/237/27 3512/238/27 3551/236/27 +f 3550/231/27 3529/233/27 3552/239/27 +f 3552/239/27 3513/237/27 3550/231/27 +f 3529/210/94 3528/209/94 3553/240/94 +f 3553/240/94 3552/241/94 3529/210/94 +f 3528/236/26 3543/208/26 3514/242/26 +f 3514/242/26 3553/238/26 3528/236/26 +f 3543/208/26 3542/209/26 3515/240/26 +f 3515/240/26 3514/242/26 3543/208/26 +f 3527/209/26 3526/208/26 3521/242/26 +f 3521/242/26 3520/240/26 3527/209/26 +f 3526/208/26 3534/236/26 3554/238/26 +f 3554/238/26 3521/242/26 3526/208/26 +f 3534/209/95 3533/210/95 3555/241/95 +f 3555/241/95 3554/240/95 3534/209/95 +f 3533/233/27 3548/231/27 3522/237/27 +f 3522/237/27 3555/239/27 3533/233/27 +f 3548/231/27 3549/236/27 3523/238/27 +f 3523/238/27 3522/237/27 3548/231/27 +f 3556/243/154 3557/244/154 3558/245/154 +f 3558/245/154 3559/246/154 3556/243/154 +f 3556/247/7 3559/248/7 3560/249/7 +f 3560/249/7 3561/250/7 3556/247/7 +f 3559/246/155 3558/245/155 3562/251/155 +f 3562/251/155 3560/252/155 3559/246/155 +f 3558/248/1 3557/247/1 3563/250/1 +f 3563/250/1 3562/249/1 3558/248/1 +f 3564/243/180 3565/244/180 3566/245/180 +f 3566/245/180 3567/246/180 3564/243/180 +f 3564/247/153 3567/248/153 3568/249/153 +f 3568/249/153 3569/250/153 3564/247/153 +f 3567/246/181 3566/245/181 3570/251/181 +f 3570/251/181 3568/252/181 3567/246/181 +f 3566/248/151 3565/247/151 3571/250/151 +f 3571/250/151 3570/249/151 3566/248/151 +f 3572/243/148 3573/244/148 3574/245/148 +f 3574/245/148 3575/246/148 3572/243/148 +f 3572/247/1 3575/248/1 3576/249/1 +f 3576/249/1 3577/250/1 3572/247/1 +f 3575/246/149 3574/245/149 3578/251/149 +f 3578/251/149 3576/252/149 3575/246/149 +f 3574/248/7 3573/247/7 3579/250/7 +f 3579/250/7 3578/249/7 3574/248/7 +f 3580/243/127 3581/244/127 3582/245/127 +f 3582/245/127 3583/246/127 3580/243/127 +f 3580/247/128 3583/248/128 3584/249/128 +f 3584/249/128 3585/250/128 3580/247/128 +f 3583/246/129 3582/245/129 3586/251/129 +f 3586/251/129 3584/252/129 3583/246/129 +f 3582/248/130 3581/247/130 3587/250/130 +f 3587/250/130 3586/249/130 3582/248/130 +f 3588/243/187 3589/244/187 3590/245/187 +f 3590/245/187 3591/246/187 3588/243/187 +f 3588/247/163 3591/248/163 3592/249/163 +f 3592/249/163 3593/250/163 3588/247/163 +f 3591/246/188 3590/245/188 3594/251/188 +f 3594/251/188 3592/252/188 3591/246/188 +f 3590/248/161 3589/247/161 3595/250/161 +f 3595/250/161 3594/249/161 3590/248/161 +f 3596/195/72 3597/196/72 3598/197/72 +f 3598/197/72 3599/198/72 3596/195/72 +f 3600/199/73 3601/200/73 3602/201/73 +f 3602/201/73 3603/202/73 3600/199/73 +f 3604/203/74 3605/204/74 3606/205/74 +f 3606/205/74 3607/206/74 3604/203/74 +f 3608/202/75 3609/201/75 3610/200/75 +f 3610/200/75 3611/199/75 3608/202/75 +f 3612/207/76 3613/207/76 3614/208/76 +f 3614/208/76 3615/209/76 3612/207/76 +f 3616/209/77 3617/210/77 3618/211/77 +f 3605/212/78 3619/196/78 3620/213/78 +f 3620/213/78 3606/214/78 3605/212/78 +f 3621/210/79 3622/209/79 3623/211/79 +f 3624/215/80 3625/216/80 3623/211/80 +f 3623/211/80 3622/209/80 3624/215/80 +f 3626/217/81 3627/218/81 3598/197/482 +f 3598/197/482 3597/196/482 3626/217/81 +f 3628/219/82 3629/220/82 3605/204/82 +f 3605/204/82 3604/203/82 3628/219/82 +f 3630/209/83 3631/208/83 3613/207/83 +f 3613/207/83 3612/207/83 3630/209/83 +f 3605/212/84 3629/214/84 3632/213/84 +f 3632/213/84 3619/196/84 3605/212/84 +f 3624/215/85 3616/209/85 3618/211/85 +f 3618/211/85 3625/216/85 3624/215/85 +f 3633/221/75 3620/222/75 3596/222/75 +f 3596/222/75 3599/221/75 3633/221/75 +f 3620/222/86 3619/203/86 3597/203/86 +f 3597/203/86 3596/222/86 3620/222/86 +f 3619/203/87 3632/206/87 3626/206/87 +f 3626/206/87 3597/203/87 3619/203/87 +f 3632/206/73 3634/223/73 3627/223/73 +f 3627/223/73 3626/206/73 3632/206/73 +f 3634/224/88 3635/225/88 3598/226/88 +f 3598/226/88 3627/224/88 3634/224/88 +f 3635/225/89 3633/224/89 3599/224/89 +f 3599/224/89 3598/226/89 3635/225/89 +f 3629/214/79 3636/227/79 3634/228/79 +f 3634/228/79 3632/213/79 3629/214/79 +f 3636/229/75 3629/220/75 3628/219/75 +f 3628/219/75 3637/221/75 3636/229/75 +f 3607/206/73 3606/205/73 3638/230/73 +f 3638/230/73 3639/223/73 3607/206/73 +f 3638/227/77 3606/214/77 3620/213/77 +f 3620/213/77 3633/228/77 3638/227/77 +f 3602/201/73 3601/200/73 3640/199/73 +f 3640/199/73 3641/202/73 3602/201/73 +f 3638/231/90 3633/224/90 3618/232/90 +f 3618/232/90 3617/233/90 3638/231/90 +f 3633/224/89 3635/225/89 3625/234/89 +f 3625/234/89 3618/232/89 3633/224/89 +f 3635/225/88 3634/224/88 3623/232/88 +f 3623/232/88 3625/234/88 3635/225/88 +f 3634/224/92 3636/231/92 3621/233/92 +f 3621/233/92 3623/232/92 3634/224/92 +f 3610/200/75 3609/201/75 3642/202/75 +f 3642/202/75 3643/199/75 3610/200/75 +f 3614/208/76 3613/207/76 3624/235/76 +f 3624/235/76 3622/236/76 3614/208/76 +f 3613/207/83 3631/208/83 3616/236/83 +f 3616/236/83 3624/235/83 3613/207/83 +f 3639/236/27 3638/231/27 3601/237/27 +f 3601/237/27 3600/238/27 3639/236/27 +f 3638/231/27 3617/233/27 3640/239/27 +f 3640/239/27 3601/237/27 3638/231/27 +f 3617/210/94 3616/209/94 3641/240/94 +f 3641/240/94 3640/241/94 3617/210/94 +f 3616/236/26 3631/208/26 3602/242/26 +f 3602/242/26 3641/238/26 3616/236/26 +f 3631/208/26 3630/209/26 3603/240/26 +f 3603/240/26 3602/242/26 3631/208/26 +f 3615/209/26 3614/208/26 3609/242/26 +f 3609/242/26 3608/240/26 3615/209/26 +f 3614/208/26 3622/236/26 3642/238/26 +f 3642/238/26 3609/242/26 3614/208/26 +f 3622/209/95 3621/210/95 3643/241/95 +f 3643/241/95 3642/240/95 3622/209/95 +f 3621/233/27 3636/231/27 3610/237/27 +f 3610/237/27 3643/239/27 3621/233/27 +f 3636/231/27 3637/236/27 3611/238/27 +f 3611/238/27 3610/237/27 3636/231/27 +f 3644/195/124 3645/196/96 3646/197/96 +f 3646/197/96 3647/198/124 3644/195/124 +f 3648/199/125 3649/200/125 3650/201/125 +f 3650/201/125 3651/202/125 3648/199/125 +f 3652/203/99 3653/204/99 3654/205/99 +f 3654/205/99 3655/206/99 3652/203/99 +f 3656/202/165 3657/201/165 3658/200/165 +f 3658/200/165 3659/199/165 3656/202/165 +f 3660/207/102 3661/207/102 3662/208/102 +f 3662/208/102 3663/209/102 3660/207/102 +f 3664/209/103 3665/210/103 3666/211/103 +f 3653/212/104 3667/196/104 3668/213/104 +f 3668/213/104 3654/214/104 3653/212/104 +f 3669/210/105 3670/209/105 3671/211/105 +f 3672/215/106 3673/216/106 3671/211/106 +f 3671/211/106 3670/209/106 3672/215/106 +f 3674/217/107 3675/218/107 3646/197/107 +f 3646/197/107 3645/196/107 3674/217/107 +f 3676/219/126 3677/220/108 3653/204/108 +f 3653/204/108 3652/203/108 3676/219/126 +f 3678/209/109 3679/208/109 3661/207/109 +f 3661/207/109 3660/207/109 3678/209/109 +f 3653/212/110 3677/214/110 3680/213/110 +f 3680/213/110 3667/196/110 3653/212/110 +f 3672/215/111 3664/209/111 3666/211/111 +f 3666/211/111 3673/216/111 3672/215/111 +f 3681/221/165 3668/222/165 3644/222/165 +f 3644/222/165 3647/221/165 3681/221/165 +f 3668/222/112 3667/203/112 3645/203/112 +f 3645/203/112 3644/222/112 3668/222/112 +f 3667/203/113 3680/206/113 3674/206/113 +f 3674/206/113 3645/203/113 3667/203/113 +f 3680/206/125 3682/223/125 3675/223/125 +f 3675/223/125 3674/206/125 3680/206/125 +f 3682/224/114 3683/225/114 3646/226/114 +f 3646/226/114 3675/224/114 3682/224/114 +f 3683/225/115 3681/224/115 3647/224/115 +f 3647/224/115 3646/226/115 3683/225/115 +f 3677/214/105 3684/227/105 3682/228/105 +f 3682/228/105 3680/213/105 3677/214/105 +f 3684/229/165 3677/220/165 3676/219/165 +f 3676/219/165 3685/221/165 3684/229/165 +f 3655/206/125 3654/205/125 3686/230/125 +f 3686/230/125 3687/223/125 3655/206/125 +f 3686/227/103 3654/214/103 3668/213/103 +f 3668/213/103 3681/228/103 3686/227/103 +f 3650/201/125 3649/200/125 3688/199/125 +f 3688/199/125 3689/202/125 3650/201/125 +f 3686/231/483 3681/224/483 3666/232/483 +f 3666/232/483 3665/233/483 3686/231/483 +f 3681/224/115 3683/225/115 3673/234/115 +f 3673/234/115 3666/232/115 3681/224/115 +f 3683/225/114 3682/224/114 3671/232/114 +f 3671/232/114 3673/234/114 3683/225/114 +f 3682/224/117 3684/231/117 3669/233/117 +f 3669/233/117 3671/232/117 3682/224/117 +f 3658/200/165 3657/201/165 3690/202/165 +f 3690/202/165 3691/199/165 3658/200/165 +f 3662/208/102 3661/207/102 3672/235/102 +f 3672/235/102 3670/236/102 3662/208/102 +f 3661/207/109 3679/208/109 3664/236/109 +f 3664/236/109 3672/235/109 3661/207/109 +f 3687/236/27 3686/231/27 3649/237/27 +f 3649/237/27 3648/238/27 3687/236/27 +f 3686/231/27 3665/233/27 3688/239/27 +f 3688/239/27 3649/237/27 3686/231/27 +f 3665/210/118 3664/209/118 3689/240/118 +f 3689/240/118 3688/241/118 3665/210/118 +f 3664/236/26 3679/208/26 3650/242/26 +f 3650/242/26 3689/238/26 3664/236/26 +f 3679/208/26 3678/209/26 3651/240/26 +f 3651/240/26 3650/242/26 3679/208/26 +f 3663/209/26 3662/208/26 3657/242/26 +f 3657/242/26 3656/240/26 3663/209/26 +f 3662/208/26 3670/236/26 3690/238/26 +f 3690/238/26 3657/242/26 3662/208/26 +f 3670/209/119 3669/210/119 3691/241/119 +f 3691/241/119 3690/240/119 3670/209/119 +f 3669/233/27 3684/231/27 3658/237/27 +f 3658/237/27 3691/239/27 3669/233/27 +f 3684/231/27 3685/236/27 3659/238/27 +f 3659/238/27 3658/237/27 3684/231/27 +f 3692/243/150 3693/244/150 3694/245/150 +f 3694/245/150 3695/246/150 3692/243/150 +f 3692/247/151 3695/248/151 3696/249/151 +f 3696/249/151 3697/250/151 3692/247/151 +f 3695/246/152 3694/245/152 3698/251/152 +f 3698/251/152 3696/252/152 3695/246/152 +f 3694/248/153 3693/247/153 3699/250/153 +f 3699/250/153 3698/249/153 3694/248/153 +f 3700/195/96 3701/196/124 3702/197/124 +f 3702/197/124 3703/198/96 3700/195/96 +f 3704/199/125 3705/200/125 3706/201/125 +f 3706/201/125 3707/202/125 3704/199/125 +f 3708/203/99 3709/204/99 3710/205/99 +f 3710/205/99 3711/206/99 3708/203/99 +f 3712/202/165 3713/201/165 3714/200/165 +f 3714/200/165 3715/199/165 3712/202/165 +f 3716/207/102 3717/207/102 3718/208/102 +f 3718/208/102 3719/209/102 3716/207/102 +f 3720/209/103 3721/210/103 3722/211/103 +f 3709/212/104 3723/196/104 3724/213/104 +f 3724/213/104 3710/214/104 3709/212/104 +f 3725/210/105 3726/209/105 3727/211/105 +f 3728/215/106 3729/216/106 3727/211/106 +f 3727/211/106 3726/209/106 3728/215/106 +f 3730/217/107 3731/218/107 3702/197/107 +f 3702/197/107 3701/196/107 3730/217/107 +f 3732/219/108 3733/220/108 3709/204/126 +f 3709/204/126 3708/203/108 3732/219/108 +f 3734/209/109 3735/208/109 3717/207/109 +f 3717/207/109 3716/207/109 3734/209/109 +f 3709/212/110 3733/214/110 3736/213/110 +f 3736/213/110 3723/196/110 3709/212/110 +f 3728/215/111 3720/209/111 3722/211/111 +f 3722/211/111 3729/216/111 3728/215/111 +f 3737/221/165 3724/222/165 3700/222/165 +f 3700/222/165 3703/221/165 3737/221/165 +f 3724/222/112 3723/203/112 3701/203/112 +f 3701/203/112 3700/222/112 3724/222/112 +f 3723/203/113 3736/206/113 3730/206/113 +f 3730/206/113 3701/203/113 3723/203/113 +f 3736/206/125 3738/223/125 3731/223/125 +f 3731/223/125 3730/206/125 3736/206/125 +f 3738/224/114 3739/225/114 3702/226/114 +f 3702/226/114 3731/224/114 3738/224/114 +f 3739/225/115 3737/224/115 3703/224/115 +f 3703/224/115 3702/226/115 3739/225/115 +f 3733/214/105 3740/227/105 3738/228/105 +f 3738/228/105 3736/213/105 3733/214/105 +f 3740/229/165 3733/220/165 3732/219/165 +f 3732/219/165 3741/221/165 3740/229/165 +f 3711/206/125 3710/205/125 3742/230/125 +f 3742/230/125 3743/223/125 3711/206/125 +f 3742/227/103 3710/214/103 3724/213/103 +f 3724/213/103 3737/228/103 3742/227/103 +f 3706/201/125 3705/200/125 3744/199/125 +f 3744/199/125 3745/202/125 3706/201/125 +f 3742/231/483 3737/224/483 3722/232/483 +f 3722/232/483 3721/233/483 3742/231/483 +f 3737/224/115 3739/225/115 3729/234/115 +f 3729/234/115 3722/232/115 3737/224/115 +f 3739/225/114 3738/224/114 3727/232/114 +f 3727/232/114 3729/234/114 3739/225/114 +f 3738/224/117 3740/231/117 3725/233/117 +f 3725/233/117 3727/232/117 3738/224/117 +f 3714/200/165 3713/201/165 3746/202/165 +f 3746/202/165 3747/199/165 3714/200/165 +f 3718/208/102 3717/207/102 3728/235/102 +f 3728/235/102 3726/236/102 3718/208/102 +f 3717/207/109 3735/208/109 3720/236/109 +f 3720/236/109 3728/235/109 3717/207/109 +f 3743/236/27 3742/231/27 3705/237/27 +f 3705/237/27 3704/238/27 3743/236/27 +f 3742/231/27 3721/233/27 3744/239/27 +f 3744/239/27 3705/237/27 3742/231/27 +f 3721/210/118 3720/209/118 3745/240/118 +f 3745/240/118 3744/241/118 3721/210/118 +f 3720/236/26 3735/208/26 3706/242/26 +f 3706/242/26 3745/238/26 3720/236/26 +f 3735/208/26 3734/209/26 3707/240/26 +f 3707/240/26 3706/242/26 3735/208/26 +f 3719/209/26 3718/208/26 3713/242/26 +f 3713/242/26 3712/240/26 3719/209/26 +f 3718/208/26 3726/236/26 3746/238/26 +f 3746/238/26 3713/242/26 3718/208/26 +f 3726/209/119 3725/210/119 3747/241/119 +f 3747/241/119 3746/240/119 3726/209/119 +f 3725/233/27 3740/231/27 3714/237/27 +f 3714/237/27 3747/239/27 3725/233/27 +f 3740/231/27 3741/236/27 3715/238/27 +f 3715/238/27 3714/237/27 3740/231/27 +f 3748/243/120 3749/244/120 3750/245/120 +f 3750/245/120 3751/246/120 3748/243/120 +f 3748/247/121 3751/248/121 3752/249/121 +f 3752/249/121 3753/250/121 3748/247/121 +f 3751/246/122 3750/245/122 3754/251/122 +f 3754/251/122 3752/252/122 3751/246/122 +f 3750/248/123 3749/247/123 3755/250/123 +f 3755/250/123 3754/249/123 3750/248/123 +f 3756/195/131 3757/196/131 3758/197/131 +f 3758/197/131 3759/198/131 3756/195/131 +f 3760/199/75 3761/200/75 3762/201/75 +f 3762/201/75 3763/202/75 3760/199/75 +f 3764/203/132 3765/204/132 3766/205/132 +f 3766/205/132 3767/206/132 3764/203/132 +f 3768/202/73 3769/201/73 3770/200/73 +f 3770/200/73 3771/199/73 3768/202/73 +f 3772/207/83 3773/207/83 3774/208/83 +f 3774/208/83 3775/209/83 3772/207/83 +f 3776/209/133 3777/210/133 3778/211/133 +f 3765/212/134 3779/196/134 3780/213/134 +f 3780/213/134 3766/214/134 3765/212/134 +f 3781/210/135 3782/209/135 3783/211/135 +f 3784/215/136 3785/216/136 3783/211/136 +f 3783/211/136 3782/209/136 3784/215/136 +f 3786/217/137 3787/218/137 3758/197/137 +f 3758/197/137 3757/196/137 3786/217/137 +f 3788/219/139 3789/220/139 3765/204/139 +f 3765/204/139 3764/203/139 3788/219/139 +f 3790/209/76 3791/208/76 3773/207/76 +f 3773/207/76 3772/207/76 3790/209/76 +f 3765/212/140 3789/214/140 3792/213/140 +f 3792/213/140 3779/196/140 3765/212/140 +f 3784/215/141 3776/209/141 3778/211/141 +f 3778/211/141 3785/216/141 3784/215/141 +f 3793/221/73 3780/222/73 3756/222/73 +f 3756/222/73 3759/221/73 3793/221/73 +f 3780/222/87 3779/203/87 3757/203/87 +f 3757/203/87 3756/222/87 3780/222/87 +f 3779/203/86 3792/206/86 3786/206/86 +f 3786/206/86 3757/203/86 3779/203/86 +f 3792/206/75 3794/223/75 3787/223/75 +f 3787/223/75 3786/206/75 3792/206/75 +f 3794/224/142 3795/225/142 3758/226/142 +f 3758/226/142 3787/224/142 3794/224/142 +f 3795/225/143 3793/224/143 3759/224/143 +f 3759/224/143 3758/226/143 3795/225/143 +f 3789/214/135 3796/227/135 3794/228/135 +f 3794/228/135 3792/213/135 3789/214/135 +f 3796/229/73 3789/220/73 3788/219/73 +f 3788/219/73 3797/221/73 3796/229/73 +f 3767/206/75 3766/205/75 3798/230/75 +f 3798/230/75 3799/223/75 3767/206/75 +f 3798/227/133 3766/214/133 3780/213/133 +f 3780/213/133 3793/228/133 3798/227/133 +f 3762/201/75 3761/200/75 3800/199/75 +f 3800/199/75 3801/202/75 3762/201/75 +f 3798/231/144 3793/224/144 3778/232/144 +f 3778/232/144 3777/233/144 3798/231/144 +f 3793/224/143 3795/225/143 3785/234/143 +f 3785/234/143 3778/232/143 3793/224/143 +f 3795/225/142 3794/224/142 3783/232/142 +f 3783/232/142 3785/234/142 3795/225/142 +f 3794/224/145 3796/231/145 3781/233/145 +f 3781/233/145 3783/232/145 3794/224/145 +f 3770/200/73 3769/201/73 3802/202/73 +f 3802/202/73 3803/199/73 3770/200/73 +f 3774/208/83 3773/207/83 3784/235/83 +f 3784/235/83 3782/236/83 3774/208/83 +f 3773/207/76 3791/208/76 3776/236/76 +f 3776/236/76 3784/235/76 3773/207/76 +f 3799/236/27 3798/231/27 3761/237/27 +f 3761/237/27 3760/238/27 3799/236/27 +f 3798/231/27 3777/233/27 3800/239/27 +f 3800/239/27 3761/237/27 3798/231/27 +f 3777/210/480 3776/209/480 3801/240/480 +f 3801/240/480 3800/241/480 3777/210/480 +f 3776/236/26 3791/208/26 3762/242/26 +f 3762/242/26 3801/238/26 3776/236/26 +f 3791/208/26 3790/209/26 3763/240/26 +f 3763/240/26 3762/242/26 3791/208/26 +f 3775/209/26 3774/208/26 3769/242/26 +f 3769/242/26 3768/240/26 3775/209/26 +f 3774/208/26 3782/236/26 3802/238/26 +f 3802/238/26 3769/242/26 3774/208/26 +f 3782/209/147 3781/210/147 3803/241/147 +f 3803/241/147 3802/240/147 3782/209/147 +f 3781/233/27 3796/231/27 3770/237/27 +f 3770/237/27 3803/239/27 3781/233/27 +f 3796/231/27 3797/236/27 3771/238/27 +f 3771/238/27 3770/237/27 3796/231/27 +f 3804/243/160 3805/244/160 3806/245/160 +f 3806/245/160 3807/246/160 3804/243/160 +f 3804/247/161 3807/248/161 3808/249/161 +f 3808/249/161 3809/250/161 3804/247/161 +f 3807/246/162 3806/245/162 3810/251/162 +f 3810/251/162 3808/252/162 3807/246/162 +f 3806/248/163 3805/247/163 3811/250/163 +f 3811/250/163 3810/249/163 3806/248/163 +f 3812/253/19 3813/254/19 3814/255/19 +f 3814/255/19 3815/256/19 3812/253/19 +f 3816/257/20 3812/253/20 3815/256/20 +f 3815/256/20 3817/258/20 3816/257/20 +f 3818/259/21 3816/257/21 3817/258/21 +f 3817/258/21 3819/260/21 3818/259/21 +f 3820/261/22 3818/262/191 3819/263/22 +f 3819/263/22 3821/264/22 3820/261/22 +f 3822/265/23 3820/261/23 3821/264/23 +f 3821/264/23 3823/266/23 3822/265/23 +f 3824/267/24 3822/265/24 3823/266/24 +f 3823/266/24 3825/268/24 3824/267/24 +f 3826/269/192 3824/267/13 3825/268/13 +f 3825/268/13 3827/270/192 3826/269/192 +f 3828/271/14 3826/269/14 3827/270/14 +f 3827/270/14 3829/272/14 3828/271/14 +f 3830/273/118 3828/271/15 3829/272/15 +f 3829/272/15 3831/274/15 3830/273/118 +f 3832/275/16 3830/273/16 3831/274/16 +f 3831/274/16 3833/276/16 3832/275/16 +f 3834/277/17 3832/275/17 3833/276/17 +f 3833/276/17 3835/278/17 3834/277/17 +f 3813/254/18 3834/277/194 3835/278/194 +f 3835/278/194 3814/255/18 3813/254/18 +f 3815/279/27 3814/280/27 3836/281/27 +f 3836/281/27 3837/282/27 3815/279/27 +f 3838/283/27 3839/279/27 3840/282/27 +f 3840/282/27 3841/284/27 3838/283/27 +f 3819/285/27 3817/283/27 3842/284/27 +f 3842/284/27 3843/285/27 3819/285/27 +f 3844/286/27 3845/285/27 3846/285/27 +f 3846/285/27 3847/287/27 3844/286/27 +f 3823/288/27 3821/286/27 3848/287/27 +f 3848/287/27 3849/289/27 3823/288/27 +f 3850/290/27 3851/288/27 3852/289/27 +f 3852/289/27 3853/291/27 3850/290/27 +f 3827/292/27 3825/290/27 3854/291/27 +f 3854/291/27 3855/293/27 3827/292/27 +f 3856/294/27 3857/292/27 3858/293/27 +f 3858/293/27 3859/295/27 3856/294/27 +f 3831/296/27 3829/294/27 3860/295/27 +f 3860/295/27 3861/297/27 3831/296/27 +f 3862/298/27 3863/296/27 3864/297/27 +f 3864/297/27 3865/299/27 3862/298/27 +f 3835/300/27 3833/298/27 3866/299/27 +f 3866/299/27 3867/300/27 3835/300/27 +f 3868/280/27 3869/300/27 3870/300/27 +f 3870/300/27 3871/281/27 3868/280/27 +f 3837/301/13 3836/302/13 3872/303/13 +f 3872/303/13 3873/304/13 3837/301/13 +f 3842/305/14 3837/301/14 3873/304/14 +f 3873/304/14 3874/306/14 3842/305/14 +f 3843/307/15 3842/305/118 3874/306/15 +f 3874/306/15 3875/308/15 3843/307/15 +f 3848/309/16 3843/307/16 3875/308/16 +f 3875/308/16 3876/310/16 3848/309/16 +f 3849/311/17 3848/309/17 3876/310/17 +f 3876/310/17 3877/312/17 3849/311/17 +f 3854/313/18 3849/311/18 3877/312/18 +f 3877/312/18 3878/314/18 3854/313/18 +f 3855/315/190 3854/313/19 3878/314/19 +f 3878/314/19 3879/316/190 3855/315/190 +f 3860/317/20 3855/315/20 3879/316/20 +f 3879/316/20 3880/318/20 3860/317/20 +f 3861/319/21 3860/317/21 3880/318/21 +f 3880/318/21 3881/320/21 3861/319/21 +f 3866/321/191 3861/322/22 3881/323/22 +f 3881/323/22 3882/324/22 3866/321/191 +f 3867/325/23 3866/321/23 3882/324/23 +f 3882/324/23 3883/326/23 3867/325/23 +f 3836/302/24 3867/325/25 3883/326/25 +f 3883/326/25 3872/303/24 3836/302/24 +f 3873/327/27 3872/328/27 3884/329/27 +f 3874/330/27 3873/327/27 3884/329/27 +f 3875/331/27 3874/330/27 3884/329/27 +f 3876/332/27 3875/331/27 3884/329/27 +f 3877/333/27 3876/332/27 3884/329/27 +f 3878/334/27 3877/333/27 3884/329/27 +f 3879/335/27 3878/334/27 3884/329/27 +f 3880/336/27 3879/335/27 3884/329/27 +f 3881/337/27 3880/336/27 3884/329/27 +f 3882/338/27 3881/337/27 3884/329/27 +f 3883/339/27 3882/338/27 3884/329/27 +f 3872/328/27 3883/339/27 3884/329/27 +f 3817/258/20 3815/256/20 3839/340/20 +f 3839/340/20 3838/341/20 3817/258/20 +f 3815/279/163 3837/282/163 3840/282/163 +f 3840/282/163 3839/279/163 3815/279/163 +f 3837/301/14 3842/305/14 3841/342/14 +f 3841/342/14 3840/343/14 3837/301/14 +f 3842/284/197 3817/283/197 3838/283/197 +f 3838/283/197 3841/284/197 3842/284/197 +f 3821/264/22 3819/263/22 3845/344/22 +f 3845/344/22 3844/345/22 3821/264/22 +f 3819/285/7 3843/285/7 3846/285/7 +f 3846/285/7 3845/285/7 3819/285/7 +f 3843/307/16 3848/309/16 3847/346/16 +f 3847/346/16 3846/347/16 3843/307/16 +f 3848/287/198 3821/286/198 3844/286/198 +f 3844/286/198 3847/287/198 3848/287/198 +f 3825/268/24 3823/266/24 3851/348/24 +f 3851/348/24 3850/349/24 3825/268/24 +f 3823/288/151 3849/289/151 3852/289/151 +f 3852/289/151 3851/288/151 3823/288/151 +f 3849/311/18 3854/313/18 3853/350/18 +f 3853/350/18 3852/351/18 3849/311/18 +f 3854/291/4 3825/290/4 3850/290/4 +f 3850/290/4 3853/291/4 3854/291/4 +f 3829/272/14 3827/270/14 3857/352/14 +f 3857/352/14 3856/353/14 3829/272/14 +f 3827/292/161 3855/293/161 3858/293/161 +f 3858/293/161 3857/292/161 3827/292/161 +f 3855/315/20 3860/317/20 3859/354/20 +f 3859/354/20 3858/355/20 3855/315/20 +f 3860/295/195 3829/294/195 3856/294/195 +f 3856/294/195 3859/295/195 3860/295/195 +f 3833/276/16 3831/274/16 3863/356/193 +f 3863/356/193 3862/357/16 3833/276/16 +f 3831/296/1 3861/297/1 3864/297/1 +f 3864/297/1 3863/296/1 3831/296/1 +f 3861/322/22 3866/321/191 3865/358/22 +f 3865/358/22 3864/359/22 3861/322/22 +f 3866/299/196 3833/298/196 3862/298/196 +f 3862/298/196 3865/299/196 3866/299/196 +f 3814/255/18 3835/278/194 3869/360/18 +f 3869/360/18 3868/361/18 3814/255/18 +f 3835/300/153 3867/300/153 3870/300/153 +f 3870/300/153 3869/300/153 3835/300/153 +f 3867/325/25 3836/302/24 3871/362/24 +f 3871/362/24 3870/363/25 3867/325/25 +f 3836/281/10 3814/280/10 3868/280/10 +f 3868/280/10 3871/281/10 3836/281/10 +f 3885/3/6 3886/2/6 3887/1/7 +f 3887/1/7 3888/4/7 3885/3/6 +f 3889/6/5 3890/5/5 3886/2/6 +f 3886/2/6 3885/3/6 3889/6/5 +f 3891/8/4 3892/7/4 3890/5/5 +f 3890/5/5 3889/6/5 3891/8/4 +f 3893/11/3 3894/10/3 3892/9/4 +f 3892/9/4 3891/12/4 3893/11/3 +f 3895/14/2 3896/13/2 3894/10/3 +f 3894/10/3 3893/11/3 3895/14/2 +f 3897/16/1 3898/15/1 3896/13/2 +f 3896/13/2 3895/14/2 3897/16/1 +f 3899/18/12 3900/17/12 3898/15/1 +f 3898/15/1 3897/16/1 3899/18/12 +f 3901/20/11 3902/19/11 3900/17/12 +f 3900/17/12 3899/18/12 3901/20/11 +f 3903/22/10 3904/21/10 3902/19/11 +f 3902/19/11 3901/20/11 3903/22/10 +f 3905/24/9 3906/23/9 3904/21/10 +f 3904/21/10 3903/22/10 3905/24/9 +f 3907/26/8 3908/25/8 3906/23/9 +f 3906/23/9 3905/24/9 3907/26/8 +f 3888/4/7 3887/1/7 3908/25/8 +f 3908/25/8 3907/26/8 3888/4/7 +f 3909/27/18 3910/30/18 3911/29/18 +f 3911/29/18 3912/28/18 3909/27/18 +f 3913/31/17 3914/32/17 3910/30/17 +f 3910/30/17 3909/27/17 3913/31/17 +f 3915/33/16 3916/34/16 3914/32/16 +f 3914/32/16 3913/31/16 3915/33/16 +f 3917/35/15 3918/38/15 3916/37/15 +f 3916/37/15 3915/36/15 3917/35/15 +f 3919/39/14 3920/40/14 3918/38/14 +f 3918/38/14 3917/35/14 3919/39/14 +f 3921/41/13 3922/42/13 3920/40/13 +f 3920/40/13 3919/39/13 3921/41/13 +f 3923/43/24 3924/44/24 3922/42/24 +f 3922/42/24 3921/41/24 3923/43/24 +f 3925/45/23 3926/46/23 3924/44/23 +f 3924/44/23 3923/43/23 3925/45/23 +f 3927/47/22 3928/48/22 3926/46/22 +f 3926/46/22 3925/45/22 3927/47/22 +f 3929/49/21 3930/50/21 3928/48/21 +f 3928/48/21 3927/47/21 3929/49/21 +f 3931/51/20 3932/52/20 3930/50/20 +f 3930/50/20 3929/49/20 3931/51/20 +f 3912/28/19 3911/29/19 3932/52/19 +f 3932/52/19 3931/51/190 3912/28/19 +f 3886/53/26 3909/53/26 3912/54/26 +f 3912/54/26 3887/54/26 3886/53/26 +f 3887/54/26 3912/54/26 3931/55/26 +f 3931/55/26 3908/55/26 3887/54/26 +f 3908/55/26 3931/55/26 3929/56/26 +f 3929/56/26 3906/56/26 3908/55/26 +f 3906/56/26 3929/56/26 3927/57/26 +f 3927/57/26 3904/57/26 3906/56/26 +f 3904/57/26 3927/57/26 3925/59/26 +f 3925/59/26 3902/58/26 3904/57/26 +f 3902/58/26 3925/59/26 3923/61/26 +f 3923/61/26 3900/60/26 3902/58/26 +f 3900/60/26 3923/61/26 3921/62/26 +f 3921/62/26 3898/62/26 3900/60/26 +f 3898/62/26 3921/62/26 3919/64/26 +f 3919/64/26 3896/63/26 3898/62/26 +f 3896/63/26 3919/64/26 3917/66/26 +f 3917/66/26 3894/65/26 3896/63/26 +f 3894/65/26 3917/66/26 3915/67/26 +f 3915/67/26 3892/67/26 3894/65/26 +f 3892/67/26 3915/67/26 3913/68/26 +f 3913/68/26 3890/68/26 3892/67/26 +f 3890/68/26 3913/68/26 3909/53/26 +f 3909/53/26 3886/53/26 3890/68/26 +f 3933/54/27 3911/54/27 3910/53/27 +f 3910/53/27 3934/53/27 3933/54/27 +f 3934/53/27 3910/53/27 3914/68/27 +f 3914/68/27 3935/68/27 3934/53/27 +f 3935/68/27 3914/68/27 3916/67/27 +f 3916/67/27 3936/67/27 3935/68/27 +f 3936/67/27 3916/67/27 3918/66/27 +f 3918/66/27 3937/65/27 3936/67/27 +f 3937/65/27 3918/66/27 3920/64/27 +f 3920/64/27 3938/63/27 3937/65/27 +f 3938/63/27 3920/64/27 3922/62/27 +f 3922/62/27 3939/62/27 3938/63/27 +f 3939/62/27 3922/62/27 3924/61/27 +f 3924/61/27 3940/60/27 3939/62/27 +f 3940/60/27 3924/61/27 3926/59/27 +f 3926/59/27 3941/58/27 3940/60/27 +f 3941/58/27 3926/59/27 3928/57/27 +f 3928/57/27 3942/57/27 3941/58/27 +f 3942/57/27 3928/57/27 3930/56/27 +f 3930/56/27 3943/56/27 3942/57/27 +f 3943/56/27 3930/56/27 3932/55/27 +f 3932/55/27 3944/55/27 3943/56/27 +f 3944/55/27 3932/55/27 3911/54/27 +f 3911/54/27 3933/54/27 3944/55/27 +f 3945/71/6 3946/70/7 3933/69/7 +f 3933/69/7 3934/72/6 3945/71/6 +f 3947/73/17 3945/71/6 3934/72/6 +f 3934/72/6 3935/74/17 3947/73/17 +f 3948/75/16 3947/73/16 3935/74/16 +f 3935/74/16 3936/76/16 3948/75/16 +f 3949/77/3 3948/75/15 3936/76/15 +f 3936/76/15 3937/78/3 3949/77/3 +f 3950/79/2 3949/77/3 3937/78/3 +f 3937/78/3 3938/80/2 3950/79/2 +f 3951/83/1 3950/82/2 3938/81/2 +f 3938/81/2 3939/84/1 3951/83/1 +f 3952/85/12 3951/83/1 3939/84/1 +f 3939/84/1 3940/86/12 3952/85/12 +f 3953/87/11 3952/85/12 3940/86/12 +f 3940/86/12 3941/88/11 3953/87/11 +f 3954/89/10 3953/87/11 3941/88/11 +f 3941/88/11 3942/90/10 3954/89/10 +f 3955/91/9 3954/89/10 3942/90/10 +f 3942/90/10 3943/92/9 3955/91/9 +f 3956/93/8 3955/91/9 3943/92/9 +f 3943/92/9 3944/94/8 3956/93/8 +f 3946/70/7 3956/93/8 3944/94/8 +f 3944/94/8 3933/69/7 3946/70/7 +f 3957/95/26 3958/95/26 3959/96/26 +f 3959/96/26 3960/96/26 3957/95/26 +f 3961/97/26 3962/97/26 3958/95/26 +f 3958/95/26 3957/95/26 3961/97/26 +f 3963/67/26 3964/98/26 3962/97/26 +f 3962/97/26 3961/97/26 3963/67/26 +f 3965/99/26 3966/99/26 3964/98/26 +f 3964/98/26 3963/67/26 3965/99/26 +f 3967/100/26 3968/100/26 3966/99/26 +f 3966/99/26 3965/99/26 3967/100/26 +f 3969/101/26 3970/101/26 3968/100/26 +f 3968/100/26 3967/100/26 3969/101/26 +f 3971/61/26 3972/61/26 3970/101/26 +f 3970/101/26 3969/101/26 3971/61/26 +f 3973/59/26 3974/102/26 3972/61/26 +f 3972/61/26 3971/61/26 3973/59/26 +f 3975/103/26 3976/103/26 3974/102/26 +f 3974/102/26 3973/59/26 3975/103/26 +f 3977/104/26 3978/105/26 3976/103/26 +f 3976/103/26 3975/103/26 3977/104/26 +f 3979/106/26 3980/106/26 3978/105/26 +f 3978/105/26 3977/104/26 3979/106/26 +f 3960/96/26 3959/96/26 3980/106/26 +f 3980/106/26 3979/106/26 3960/96/26 +f 3958/107/33 3981/110/33 3982/109/33 +f 3982/109/33 3959/108/33 3958/107/33 +f 3962/111/32 3983/112/32 3981/110/32 +f 3981/110/32 3958/107/32 3962/111/32 +f 3964/113/31 3984/114/31 3983/112/31 +f 3983/112/31 3962/111/31 3964/113/31 +f 3966/115/30 3985/116/30 3984/114/30 +f 3984/114/30 3964/113/30 3966/115/30 +f 3968/117/29 3986/118/29 3985/116/29 +f 3985/116/29 3966/115/29 3968/117/29 +f 3970/119/28 3987/120/28 3986/118/28 +f 3986/118/28 3968/117/28 3970/119/28 +f 3972/121/39 3988/122/39 3987/120/39 +f 3987/120/39 3970/119/39 3972/121/39 +f 3974/123/38 3989/124/38 3988/122/38 +f 3988/122/38 3972/121/38 3974/123/38 +f 3976/125/37 3990/126/37 3989/124/37 +f 3989/124/37 3974/123/37 3976/125/37 +f 3978/127/36 3991/130/36 3990/129/36 +f 3990/129/36 3976/128/36 3978/127/36 +f 3980/131/35 3992/132/35 3991/130/35 +f 3991/130/35 3978/127/35 3980/131/35 +f 3959/108/34 3982/109/34 3992/132/34 +f 3992/132/34 3980/131/34 3959/108/34 +f 3981/110/46 3993/134/46 3994/133/46 +f 3994/133/46 3982/109/46 3981/110/46 +f 3983/112/45 3995/135/45 3993/134/45 +f 3993/134/45 3981/110/45 3983/112/45 +f 3984/114/44 3996/136/44 3995/135/44 +f 3995/135/44 3983/112/44 3984/114/44 +f 3985/116/42 3997/137/42 3996/136/43 +f 3996/136/43 3984/114/42 3985/116/42 +f 3986/118/41 3998/138/41 3997/137/41 +f 3997/137/41 3985/116/41 3986/118/41 +f 3987/120/40 3999/139/40 3998/138/40 +f 3998/138/40 3986/118/40 3987/120/40 +f 3988/122/55 4000/140/54 3999/139/54 +f 3999/139/54 3987/120/54 3988/122/55 +f 3989/124/53 4001/141/53 4000/140/53 +f 4000/140/53 3988/122/53 3989/124/53 +f 3990/126/51 4002/142/52 4001/141/51 +f 4001/141/51 3989/124/51 3990/126/51 +f 3991/130/50 4003/144/50 4002/143/50 +f 4002/143/50 3990/129/50 3991/130/50 +f 3992/132/49 4004/145/49 4003/144/49 +f 4003/144/49 3991/130/49 3992/132/49 +f 3982/109/48 3994/133/48 4004/145/48 +f 4004/145/48 3992/132/47 3982/109/48 +f 3945/148/63 4005/147/63 4006/146/63 +f 4006/146/63 3946/149/63 3945/148/63 +f 3947/151/62 4007/150/61 4005/147/61 +f 4005/147/61 3945/148/62 3947/151/62 +f 3948/154/60 4008/153/60 4007/152/60 +f 4007/152/60 3947/155/60 3948/154/60 +f 3949/156/59 4009/142/59 4008/153/59 +f 4008/153/59 3948/154/59 3949/156/59 +f 3950/158/58 4010/157/57 4009/142/57 +f 4009/142/57 3949/156/58 3950/158/58 +f 3951/160/56 4011/159/56 4010/157/56 +f 4010/157/56 3950/158/56 3951/160/56 +f 3952/162/71 4012/161/71 4011/159/71 +f 4011/159/71 3951/160/71 3952/162/71 +f 3953/164/69 4013/163/70 4012/161/70 +f 4012/161/70 3952/162/69 3953/164/69 +f 3954/166/68 4014/165/68 4013/163/68 +f 4013/163/68 3953/164/68 3954/166/68 +f 3955/168/67 4015/167/67 4014/165/67 +f 4014/165/67 3954/166/67 3955/168/67 +f 3956/170/66 4016/169/66 4015/167/66 +f 4015/167/66 3955/168/65 3956/170/66 +f 3946/149/64 4006/146/64 4016/169/64 +f 4016/169/64 3956/170/64 3946/149/64 +f 4005/173/6 3957/172/6 3960/171/7 +f 3960/171/7 4006/174/7 4005/173/6 +f 4007/176/5 3961/175/5 3957/172/6 +f 3957/172/6 4005/173/6 4007/176/5 +f 4008/179/4 3963/178/4 3961/177/5 +f 3961/177/5 4007/180/5 4008/179/4 +f 4009/181/3 3965/86/3 3963/178/4 +f 3963/178/4 4008/179/4 4009/181/3 +f 4010/183/2 3967/182/2 3965/86/3 +f 3965/86/3 4009/181/3 4010/183/2 +f 4011/185/1 3969/184/1 3967/182/2 +f 3967/182/2 4010/183/2 4011/185/1 +f 4012/187/12 3971/186/12 3969/184/1 +f 3969/184/1 4011/185/1 4012/187/12 +f 4013/189/11 3973/188/11 3971/186/12 +f 3971/186/12 4012/187/12 4013/189/11 +f 4014/191/10 3975/190/10 3973/188/11 +f 3973/188/11 4013/189/11 4014/191/10 +f 4015/192/9 3977/76/9 3975/190/10 +f 3975/190/10 4014/191/10 4015/192/9 +f 4016/194/8 3979/193/8 3977/76/9 +f 3977/76/9 4015/192/9 4016/194/8 +f 4006/174/7 3960/171/7 3979/193/8 +f 3979/193/8 4016/194/8 4006/174/7 +f 4017/195/443 4018/198/443 4019/197/443 +f 4019/197/443 4020/196/443 4017/195/443 +f 4021/199/390 4022/202/390 4023/201/390 +f 4023/201/390 4024/200/390 4021/199/390 +f 4025/203/444 4026/206/444 4027/205/444 +f 4027/205/444 4028/204/444 4025/203/444 +f 4029/202/388 4030/199/388 4031/200/388 +f 4031/200/388 4032/201/388 4029/202/388 +f 4033/207/398 4034/209/398 4035/208/398 +f 4035/208/398 4036/207/398 4033/207/398 +f 4037/209/445 4038/211/445 4039/210/445 +f 4028/212/446 4027/214/446 4040/213/446 +f 4040/213/446 4041/196/446 4028/212/446 +f 4042/210/447 4043/211/447 4044/209/447 +f 4045/215/448 4044/209/448 4043/211/448 +f 4043/211/448 4046/216/448 4045/215/448 +f 4047/217/449 4020/196/449 4019/197/449 +f 4019/197/449 4048/218/449 4047/217/449 +f 4049/219/451 4025/203/451 4028/204/451 +f 4028/204/451 4050/220/451 4049/219/451 +f 4051/209/391 4033/207/391 4036/207/391 +f 4036/207/391 4052/208/391 4051/209/391 +f 4028/212/452 4041/196/452 4053/213/452 +f 4053/213/452 4050/214/452 4028/212/452 +f 4045/215/453 4046/216/453 4038/211/453 +f 4038/211/453 4037/209/453 4045/215/453 +f 4054/221/388 4018/221/388 4017/222/388 +f 4017/222/388 4040/222/388 4054/221/388 +f 4040/222/402 4017/222/402 4020/203/402 +f 4020/203/402 4041/203/402 4040/222/402 +f 4041/203/401 4020/203/401 4047/206/401 +f 4047/206/401 4053/206/401 4041/203/401 +f 4053/206/390 4047/206/390 4048/223/390 +f 4048/223/390 4055/223/390 4053/206/390 +f 4055/224/454 4048/224/454 4019/226/454 +f 4019/226/454 4056/225/454 4055/224/454 +f 4056/225/455 4019/226/455 4018/224/455 +f 4018/224/455 4054/224/455 4056/225/455 +f 4050/214/447 4053/213/447 4055/228/447 +f 4055/228/447 4057/227/447 4050/214/447 +f 4057/229/388 4058/221/388 4049/219/388 +f 4049/219/388 4050/220/388 4057/229/388 +f 4026/206/390 4059/223/390 4060/230/390 +f 4060/230/390 4027/205/390 4026/206/390 +f 4060/227/445 4054/228/445 4040/213/445 +f 4040/213/445 4027/214/445 4060/227/445 +f 4023/201/390 4061/202/390 4062/199/390 +f 4062/199/390 4024/200/390 4023/201/390 +f 4060/231/456 4039/233/456 4038/232/456 +f 4038/232/456 4054/224/456 4060/231/456 +f 4054/224/455 4038/232/455 4046/234/455 +f 4046/234/455 4056/225/455 4054/224/455 +f 4056/225/454 4046/234/454 4043/232/454 +f 4043/232/454 4055/224/454 4056/225/454 +f 4055/224/457 4043/232/457 4042/233/457 +f 4042/233/457 4057/231/457 4055/224/457 +f 4031/200/388 4063/199/388 4064/202/388 +f 4064/202/388 4032/201/388 4031/200/388 +f 4035/208/398 4044/236/398 4045/235/398 +f 4045/235/398 4036/207/398 4035/208/398 +f 4036/207/391 4045/235/391 4037/236/391 +f 4037/236/391 4052/208/391 4036/207/391 +f 4059/236/27 4021/238/27 4024/237/27 +f 4024/237/27 4060/231/27 4059/236/27 +f 4060/231/27 4024/237/27 4062/239/27 +f 4062/239/27 4039/233/27 4060/231/27 +f 4039/210/484 4062/241/484 4061/240/484 +f 4061/240/484 4037/209/484 4039/210/484 +f 4037/236/26 4061/238/26 4023/242/26 +f 4023/242/26 4052/208/26 4037/236/26 +f 4052/208/26 4023/242/26 4022/240/26 +f 4022/240/26 4051/209/26 4052/208/26 +f 4034/209/26 4029/240/26 4032/242/26 +f 4032/242/26 4035/208/26 4034/209/26 +f 4035/208/26 4032/242/26 4064/238/26 +f 4064/238/26 4044/236/26 4035/208/26 +f 4044/209/459 4064/240/459 4063/241/459 +f 4063/241/459 4042/210/459 4044/209/459 +f 4042/233/27 4063/239/27 4031/237/27 +f 4031/237/27 4057/231/27 4042/233/27 +f 4057/231/27 4031/237/27 4030/238/27 +f 4030/238/27 4058/236/27 4057/231/27 +f 4065/195/4 4066/198/4 4067/197/4 +f 4067/197/4 4068/196/4 4065/195/4 +f 4069/199/416 4070/202/416 4071/201/415 +f 4071/201/415 4072/200/415 4069/199/416 +f 4073/203/421 4074/206/421 4075/205/421 +f 4075/205/421 4076/204/421 4073/203/421 +f 4077/202/413 4078/199/413 4079/200/412 +f 4079/200/412 4080/201/412 4077/202/413 +f 4081/207/466 4082/209/466 4083/208/466 +f 4083/208/466 4084/207/466 4081/207/466 +f 4085/209/107 4086/211/107 4087/210/107 +f 4076/212/467 4075/214/467 4088/213/467 +f 4088/213/467 4089/196/467 4076/212/467 +f 4090/210/468 4091/211/468 4092/209/468 +f 4093/215/469 4092/209/469 4091/211/469 +f 4091/211/469 4094/216/469 4093/215/469 +f 4095/217/103 4068/196/103 4067/197/103 +f 4067/197/103 4096/218/103 4095/217/103 +f 4097/219/414 4073/203/414 4076/204/414 +f 4076/204/414 4098/220/414 4097/219/414 +f 4099/209/471 4081/207/471 4084/207/471 +f 4084/207/471 4100/208/471 4099/209/471 +f 4076/212/472 4089/196/472 4101/213/472 +f 4101/213/472 4098/214/472 4076/212/472 +f 4093/215/332 4094/216/332 4086/211/332 +f 4086/211/332 4085/209/332 4093/215/332 +f 4102/221/413 4066/221/412 4065/222/412 +f 4065/222/412 4088/222/413 4102/221/413 +f 4088/222/426 4065/222/426 4068/203/426 +f 4068/203/426 4089/203/426 4088/222/426 +f 4089/203/425 4068/203/425 4095/206/425 +f 4095/206/425 4101/206/425 4089/203/425 +f 4101/206/415 4095/206/415 4096/223/415 +f 4096/223/415 4103/223/415 4101/206/415 +f 4103/224/473 4096/224/473 4067/226/473 +f 4067/226/473 4104/225/473 4103/224/473 +f 4104/225/430 4067/226/430 4066/224/430 +f 4066/224/430 4102/224/430 4104/225/430 +f 4098/214/468 4101/213/468 4103/228/468 +f 4103/228/468 4105/227/468 4098/214/468 +f 4105/229/413 4106/221/413 4097/219/413 +f 4097/219/413 4098/220/413 4105/229/413 +f 4074/206/415 4107/223/415 4108/230/415 +f 4108/230/415 4075/205/415 4074/206/415 +f 4108/227/107 4102/228/107 4088/213/107 +f 4088/213/107 4075/214/107 4108/227/107 +f 4071/201/415 4109/202/416 4110/199/416 +f 4110/199/416 4072/200/415 4071/201/415 +f 4108/231/485 4087/233/485 4086/232/485 +f 4086/232/485 4102/224/485 4108/231/485 +f 4102/224/430 4086/232/430 4094/234/430 +f 4094/234/430 4104/225/430 4102/224/430 +f 4104/225/473 4094/234/473 4091/232/473 +f 4091/232/473 4103/224/473 4104/225/473 +f 4103/224/428 4091/232/428 4090/233/428 +f 4090/233/428 4105/231/428 4103/224/428 +f 4079/200/412 4111/199/413 4112/202/413 +f 4112/202/413 4080/201/412 4079/200/412 +f 4083/208/466 4092/236/466 4093/235/466 +f 4093/235/466 4084/207/466 4083/208/466 +f 4084/207/471 4093/235/471 4085/236/471 +f 4085/236/471 4100/208/471 4084/207/471 +f 4107/236/27 4069/238/27 4072/237/27 +f 4072/237/27 4108/231/27 4107/236/27 +f 4108/231/27 4072/237/27 4110/239/27 +f 4110/239/27 4087/233/27 4108/231/27 +f 4087/210/193 4110/241/193 4109/240/193 +f 4109/240/193 4085/209/193 4087/210/193 +f 4085/236/26 4109/238/26 4071/242/26 +f 4071/242/26 4100/208/26 4085/236/26 +f 4100/208/26 4071/242/26 4070/240/26 +f 4070/240/26 4099/209/26 4100/208/26 +f 4082/209/26 4077/240/26 4080/242/26 +f 4080/242/26 4083/208/26 4082/209/26 +f 4083/208/26 4080/242/26 4112/238/26 +f 4112/238/26 4092/236/26 4083/208/26 +f 4092/209/475 4112/240/475 4111/241/475 +f 4111/241/475 4090/210/475 4092/209/475 +f 4090/233/27 4111/239/27 4079/237/27 +f 4079/237/27 4105/231/27 4090/233/27 +f 4105/231/27 4079/237/27 4078/238/27 +f 4078/238/27 4106/236/27 4105/231/27 +f 4113/243/476 4114/246/476 4115/245/476 +f 4115/245/476 4116/244/476 4113/243/476 +f 4113/247/477 4117/250/477 4118/249/477 +f 4118/249/477 4114/248/477 4113/247/477 +f 4114/246/478 4118/252/478 4119/251/478 +f 4119/251/478 4115/245/478 4114/246/478 +f 4115/248/479 4119/249/479 4120/250/479 +f 4120/250/479 4116/247/479 4115/248/479 +f 4121/195/464 4122/198/464 4123/197/464 +f 4123/197/464 4124/196/464 4121/195/464 +f 4125/199/416 4126/202/416 4127/201/415 +f 4127/201/415 4128/200/415 4125/199/416 +f 4129/203/421 4130/206/421 4131/205/421 +f 4131/205/421 4132/204/421 4129/203/421 +f 4133/202/413 4134/199/413 4135/200/412 +f 4135/200/412 4136/201/412 4133/202/413 +f 4137/207/466 4138/209/466 4139/208/466 +f 4139/208/466 4140/207/466 4137/207/466 +f 4141/209/107 4142/211/107 4143/210/107 +f 4132/212/467 4131/214/467 4144/213/467 +f 4144/213/467 4145/196/467 4132/212/467 +f 4146/210/468 4147/211/468 4148/209/468 +f 4149/215/469 4148/209/469 4147/211/469 +f 4147/211/469 4150/216/469 4149/215/469 +f 4151/217/103 4124/196/103 4123/197/103 +f 4123/197/103 4152/218/103 4151/217/103 +f 4153/219/470 4129/203/414 4132/204/414 +f 4132/204/414 4154/220/470 4153/219/470 +f 4155/209/471 4137/207/471 4140/207/471 +f 4140/207/471 4156/208/471 4155/209/471 +f 4132/212/472 4145/196/472 4157/213/472 +f 4157/213/472 4154/214/472 4132/212/472 +f 4149/215/332 4150/216/332 4142/211/332 +f 4142/211/332 4141/209/332 4149/215/332 +f 4158/221/413 4122/221/413 4121/222/413 +f 4121/222/413 4144/222/413 4158/221/413 +f 4144/222/426 4121/222/426 4124/203/426 +f 4124/203/426 4145/203/426 4144/222/426 +f 4145/203/425 4124/203/425 4151/206/425 +f 4151/206/425 4157/206/425 4145/203/425 +f 4157/206/415 4151/206/415 4152/223/415 +f 4152/223/415 4159/223/415 4157/206/415 +f 4159/224/473 4152/224/473 4123/226/473 +f 4123/226/473 4160/225/473 4159/224/473 +f 4160/225/430 4123/226/430 4122/224/430 +f 4122/224/430 4158/224/430 4160/225/430 +f 4154/214/468 4157/213/468 4159/228/468 +f 4159/228/468 4161/227/468 4154/214/468 +f 4161/229/437 4162/221/412 4153/219/412 +f 4153/219/412 4154/220/437 4161/229/437 +f 4130/206/415 4163/223/415 4164/230/416 +f 4164/230/416 4131/205/416 4130/206/415 +f 4164/227/107 4158/228/107 4144/213/107 +f 4144/213/107 4131/214/107 4164/227/107 +f 4127/201/415 4165/202/416 4166/199/416 +f 4166/199/416 4128/200/415 4127/201/415 +f 4164/231/485 4143/233/485 4142/232/485 +f 4142/232/485 4158/224/485 4164/231/485 +f 4158/224/430 4142/232/430 4150/234/430 +f 4150/234/430 4160/225/430 4158/224/430 +f 4160/225/473 4150/234/473 4147/232/473 +f 4147/232/473 4159/224/473 4160/225/473 +f 4159/224/428 4147/232/428 4146/233/428 +f 4146/233/428 4161/231/428 4159/224/428 +f 4135/200/412 4167/199/413 4168/202/413 +f 4168/202/413 4136/201/412 4135/200/412 +f 4139/208/466 4148/236/466 4149/235/466 +f 4149/235/466 4140/207/466 4139/208/466 +f 4140/207/471 4149/235/471 4141/236/471 +f 4141/236/471 4156/208/471 4140/207/471 +f 4163/236/27 4125/238/27 4128/237/27 +f 4128/237/27 4164/231/27 4163/236/27 +f 4164/231/27 4128/237/27 4166/239/27 +f 4166/239/27 4143/233/27 4164/231/27 +f 4143/210/193 4166/241/193 4165/240/193 +f 4165/240/193 4141/209/193 4143/210/193 +f 4141/236/26 4165/238/26 4127/242/26 +f 4127/242/26 4156/208/26 4141/236/26 +f 4156/208/26 4127/242/26 4126/240/26 +f 4126/240/26 4155/209/26 4156/208/26 +f 4138/209/26 4133/240/26 4136/242/26 +f 4136/242/26 4139/208/26 4138/209/26 +f 4139/208/26 4136/242/26 4168/238/26 +f 4168/238/26 4148/236/26 4139/208/26 +f 4148/209/475 4168/240/475 4167/241/475 +f 4167/241/475 4146/210/475 4148/209/475 +f 4146/233/27 4167/239/27 4135/237/27 +f 4135/237/27 4161/231/27 4146/233/27 +f 4161/231/27 4135/237/27 4134/238/27 +f 4134/238/27 4162/236/27 4161/231/27 +f 4169/243/460 4170/246/460 4171/245/460 +f 4171/245/460 4172/244/460 4169/243/460 +f 4169/247/461 4173/250/461 4174/249/461 +f 4174/249/461 4170/248/461 4169/247/461 +f 4170/246/462 4174/252/462 4175/251/462 +f 4175/251/462 4171/245/462 4170/246/462 +f 4171/248/463 4175/249/463 4176/250/463 +f 4176/250/463 4172/247/463 4171/248/463 +f 4177/195/387 4178/198/387 4179/197/387 +f 4179/197/387 4180/196/387 4177/195/387 +f 4181/199/388 4182/202/388 4183/201/388 +f 4183/201/388 4184/200/388 4181/199/388 +f 4185/203/389 4186/206/389 4187/205/389 +f 4187/205/389 4188/204/389 4185/203/389 +f 4189/202/390 4190/199/390 4191/200/390 +f 4191/200/390 4192/201/390 4189/202/390 +f 4193/207/391 4194/209/391 4195/208/391 +f 4195/208/391 4196/207/391 4193/207/391 +f 4197/209/392 4198/211/392 4199/210/392 +f 4188/212/393 4187/214/393 4200/213/393 +f 4200/213/393 4201/196/393 4188/212/393 +f 4202/210/394 4203/211/394 4204/209/394 +f 4205/215/395 4204/209/395 4203/211/395 +f 4203/211/395 4206/216/395 4205/215/395 +f 4207/217/396 4180/196/486 4179/197/486 +f 4179/197/486 4208/218/396 4207/217/396 +f 4209/219/397 4185/203/397 4188/204/397 +f 4188/204/397 4210/220/397 4209/219/397 +f 4211/209/398 4193/207/398 4196/207/398 +f 4196/207/398 4212/208/398 4211/209/398 +f 4188/212/399 4201/196/399 4213/213/399 +f 4213/213/399 4210/214/399 4188/212/399 +f 4205/215/400 4206/216/400 4198/211/400 +f 4198/211/400 4197/209/400 4205/215/400 +f 4214/221/390 4178/221/390 4177/222/390 +f 4177/222/390 4200/222/390 4214/221/390 +f 4200/222/401 4177/222/401 4180/203/401 +f 4180/203/401 4201/203/401 4200/222/401 +f 4201/203/402 4180/203/402 4207/206/402 +f 4207/206/402 4213/206/402 4201/203/402 +f 4213/206/388 4207/206/388 4208/223/388 +f 4208/223/388 4215/223/388 4213/206/388 +f 4215/224/403 4208/224/403 4179/226/403 +f 4179/226/403 4216/225/403 4215/224/403 +f 4216/225/404 4179/226/404 4178/224/404 +f 4178/224/404 4214/224/404 4216/225/404 +f 4210/214/394 4213/213/394 4215/228/394 +f 4215/228/394 4217/227/394 4210/214/394 +f 4217/229/390 4218/221/390 4209/219/390 +f 4209/219/390 4210/220/390 4217/229/390 +f 4186/206/388 4219/223/388 4220/230/388 +f 4220/230/388 4187/205/388 4186/206/388 +f 4220/227/392 4214/228/392 4200/213/392 +f 4200/213/392 4187/214/392 4220/227/392 +f 4183/201/388 4221/202/388 4222/199/388 +f 4222/199/388 4184/200/388 4183/201/388 +f 4220/231/405 4199/233/405 4198/232/405 +f 4198/232/405 4214/224/405 4220/231/405 +f 4214/224/404 4198/232/404 4206/234/404 +f 4206/234/404 4216/225/404 4214/224/404 +f 4216/225/403 4206/234/403 4203/232/403 +f 4203/232/403 4215/224/403 4216/225/403 +f 4215/224/407 4203/232/407 4202/233/407 +f 4202/233/407 4217/231/407 4215/224/407 +f 4191/200/390 4223/199/390 4224/202/390 +f 4224/202/390 4192/201/390 4191/200/390 +f 4195/208/391 4204/236/391 4205/235/391 +f 4205/235/391 4196/207/391 4195/208/391 +f 4196/207/398 4205/235/398 4197/236/398 +f 4197/236/398 4212/208/398 4196/207/398 +f 4219/236/27 4181/238/27 4184/237/27 +f 4184/237/27 4220/231/27 4219/236/27 +f 4220/231/27 4184/237/27 4222/239/27 +f 4222/239/27 4199/233/27 4220/231/27 +f 4199/210/409 4222/241/409 4221/240/409 +f 4221/240/409 4197/209/409 4199/210/409 +f 4197/236/26 4221/238/26 4183/242/26 +f 4183/242/26 4212/208/26 4197/236/26 +f 4212/208/26 4183/242/26 4182/240/26 +f 4182/240/26 4211/209/26 4212/208/26 +f 4194/209/26 4189/240/26 4192/242/26 +f 4192/242/26 4195/208/26 4194/209/26 +f 4195/208/26 4192/242/26 4224/238/26 +f 4224/238/26 4204/236/26 4195/208/26 +f 4204/209/410 4224/240/410 4223/241/410 +f 4223/241/410 4202/210/410 4204/209/410 +f 4202/233/27 4223/239/27 4191/237/27 +f 4191/237/27 4217/231/27 4202/233/27 +f 4217/231/27 4191/237/27 4190/238/27 +f 4190/238/27 4218/236/27 4217/231/27 +f 4225/243/148 4226/246/148 4227/245/148 +f 4227/245/148 4228/244/148 4225/243/148 +f 4225/247/7 4229/250/7 4230/249/7 +f 4230/249/7 4226/248/7 4225/247/7 +f 4226/246/149 4230/252/149 4231/251/149 +f 4231/251/149 4227/245/149 4226/246/149 +f 4227/248/1 4231/249/1 4232/250/1 +f 4232/250/1 4228/247/1 4227/248/1 +f 4233/243/187 4234/246/187 4235/245/187 +f 4235/245/187 4236/244/187 4233/243/187 +f 4233/247/161 4237/250/161 4238/249/161 +f 4238/249/161 4234/248/161 4233/247/161 +f 4234/246/188 4238/252/188 4239/251/188 +f 4239/251/188 4235/245/188 4234/246/188 +f 4235/248/163 4239/249/163 4240/250/163 +f 4240/250/163 4236/247/163 4235/248/163 +f 4241/243/154 4242/246/154 4243/245/154 +f 4243/245/154 4244/244/154 4241/243/154 +f 4241/247/1 4245/250/1 4246/249/1 +f 4246/249/1 4242/248/1 4241/247/1 +f 4242/246/155 4246/252/155 4247/251/155 +f 4247/251/155 4243/245/155 4242/246/155 +f 4243/248/7 4247/249/7 4248/250/7 +f 4248/250/7 4244/247/7 4243/248/7 +f 4249/243/439 4250/246/439 4251/245/439 +f 4251/245/439 4252/244/439 4249/243/439 +f 4249/247/440 4253/250/440 4254/249/440 +f 4254/249/440 4250/248/440 4249/247/440 +f 4250/246/441 4254/252/441 4255/251/441 +f 4255/251/441 4251/245/441 4250/246/441 +f 4251/248/442 4255/249/442 4256/250/442 +f 4256/250/442 4252/247/442 4251/248/442 +f 4257/243/180 4258/246/180 4259/245/180 +f 4259/245/180 4260/244/180 4257/243/180 +f 4257/247/151 4261/250/151 4262/249/151 +f 4262/249/151 4258/248/151 4257/247/151 +f 4258/246/181 4262/252/181 4263/251/181 +f 4263/251/181 4259/245/181 4258/246/181 +f 4259/248/153 4263/249/153 4264/250/153 +f 4264/250/153 4260/247/153 4259/248/153 +f 4265/195/387 4266/198/387 4267/197/387 +f 4267/197/387 4268/196/387 4265/195/387 +f 4269/199/388 4270/202/388 4271/201/388 +f 4271/201/388 4272/200/388 4269/199/388 +f 4273/203/389 4274/206/389 4275/205/389 +f 4275/205/389 4276/204/389 4273/203/389 +f 4277/202/390 4278/199/390 4279/200/390 +f 4279/200/390 4280/201/390 4277/202/390 +f 4281/207/391 4282/209/391 4283/208/391 +f 4283/208/391 4284/207/391 4281/207/391 +f 4285/209/392 4286/211/392 4287/210/392 +f 4276/212/393 4275/214/393 4288/213/393 +f 4288/213/393 4289/196/393 4276/212/393 +f 4290/210/394 4291/211/394 4292/209/394 +f 4293/215/395 4292/209/395 4291/211/395 +f 4291/211/395 4294/216/395 4293/215/395 +f 4295/217/396 4268/196/486 4267/197/486 +f 4267/197/486 4296/218/396 4295/217/396 +f 4297/219/397 4273/203/397 4276/204/397 +f 4276/204/397 4298/220/397 4297/219/397 +f 4299/209/398 4281/207/398 4284/207/398 +f 4284/207/398 4300/208/398 4299/209/398 +f 4276/212/399 4289/196/399 4301/213/399 +f 4301/213/399 4298/214/399 4276/212/399 +f 4293/215/400 4294/216/400 4286/211/400 +f 4286/211/400 4285/209/400 4293/215/400 +f 4302/221/390 4266/221/390 4265/222/390 +f 4265/222/390 4288/222/390 4302/221/390 +f 4288/222/401 4265/222/401 4268/203/401 +f 4268/203/401 4289/203/401 4288/222/401 +f 4289/203/402 4268/203/402 4295/206/402 +f 4295/206/402 4301/206/402 4289/203/402 +f 4301/206/388 4295/206/388 4296/223/388 +f 4296/223/388 4303/223/388 4301/206/388 +f 4303/224/403 4296/224/403 4267/226/403 +f 4267/226/403 4304/225/403 4303/224/403 +f 4304/225/404 4267/226/404 4266/224/404 +f 4266/224/404 4302/224/404 4304/225/404 +f 4298/214/394 4301/213/394 4303/228/394 +f 4303/228/394 4305/227/394 4298/214/394 +f 4305/229/390 4306/221/390 4297/219/390 +f 4297/219/390 4298/220/390 4305/229/390 +f 4274/206/388 4307/223/388 4308/230/388 +f 4308/230/388 4275/205/388 4274/206/388 +f 4308/227/392 4302/228/392 4288/213/392 +f 4288/213/392 4275/214/392 4308/227/392 +f 4271/201/388 4309/202/388 4310/199/388 +f 4310/199/388 4272/200/388 4271/201/388 +f 4308/231/405 4287/233/405 4286/232/405 +f 4286/232/405 4302/224/405 4308/231/405 +f 4302/224/404 4286/232/404 4294/234/404 +f 4294/234/404 4304/225/404 4302/224/404 +f 4304/225/403 4294/234/403 4291/232/403 +f 4291/232/403 4303/224/403 4304/225/403 +f 4303/224/407 4291/232/407 4290/233/407 +f 4290/233/407 4305/231/407 4303/224/407 +f 4279/200/390 4311/199/390 4312/202/390 +f 4312/202/390 4280/201/390 4279/200/390 +f 4283/208/391 4292/236/391 4293/235/391 +f 4293/235/391 4284/207/391 4283/208/391 +f 4284/207/398 4293/235/398 4285/236/398 +f 4285/236/398 4300/208/398 4284/207/398 +f 4307/236/27 4269/238/27 4272/237/27 +f 4272/237/27 4308/231/27 4307/236/27 +f 4308/231/27 4272/237/27 4310/239/27 +f 4310/239/27 4287/233/27 4308/231/27 +f 4287/210/409 4310/241/409 4309/240/409 +f 4309/240/409 4285/209/409 4287/210/409 +f 4285/236/26 4309/238/26 4271/242/26 +f 4271/242/26 4300/208/26 4285/236/26 +f 4300/208/26 4271/242/26 4270/240/26 +f 4270/240/26 4299/209/26 4300/208/26 +f 4282/209/26 4277/240/26 4280/242/26 +f 4280/242/26 4283/208/26 4282/209/26 +f 4283/208/26 4280/242/26 4312/238/26 +f 4312/238/26 4292/236/26 4283/208/26 +f 4292/209/410 4312/240/410 4311/241/410 +f 4311/241/410 4290/210/410 4292/209/410 +f 4290/233/27 4311/239/27 4279/237/27 +f 4279/237/27 4305/231/27 4290/233/27 +f 4305/231/27 4279/237/27 4278/238/27 +f 4278/238/27 4306/236/27 4305/231/27 +f 4313/195/436 4314/198/436 4315/197/411 +f 4315/197/411 4316/196/411 4313/195/436 +f 4317/199/437 4318/202/437 4319/201/437 +f 4319/201/437 4320/200/437 4317/199/437 +f 4321/203/414 4322/206/414 4323/205/414 +f 4323/205/414 4324/204/414 4321/203/414 +f 4325/202/465 4326/199/465 4327/200/465 +f 4327/200/465 4328/201/465 4325/202/465 +f 4329/207/417 4330/209/417 4331/208/417 +f 4331/208/417 4332/207/417 4329/207/417 +f 4333/209/171 4334/211/171 4335/210/171 +f 4324/212/418 4323/214/418 4336/213/418 +f 4336/213/418 4337/196/418 4324/212/418 +f 4338/210/419 4339/211/419 4340/209/419 +f 4341/215/420 4340/209/420 4339/211/420 +f 4339/211/420 4342/216/420 4341/215/420 +f 4343/217/167 4316/196/167 4315/197/167 +f 4315/197/167 4344/218/167 4343/217/167 +f 4345/219/438 4321/203/421 4324/204/421 +f 4324/204/421 4346/220/421 4345/219/438 +f 4347/209/422 4329/207/422 4332/207/422 +f 4332/207/422 4348/208/422 4347/209/422 +f 4324/212/423 4337/196/423 4349/213/423 +f 4349/213/423 4346/214/423 4324/212/423 +f 4341/215/424 4342/216/424 4334/211/424 +f 4334/211/424 4333/209/424 4341/215/424 +f 4350/221/465 4314/221/465 4313/222/465 +f 4313/222/465 4336/222/465 4350/221/465 +f 4336/222/425 4313/222/425 4316/203/425 +f 4316/203/425 4337/203/425 4336/222/425 +f 4337/203/426 4316/203/426 4343/206/426 +f 4343/206/426 4349/206/426 4337/203/426 +f 4349/206/437 4343/206/437 4344/223/437 +f 4344/223/437 4351/223/437 4349/206/437 +f 4351/224/427 4344/224/427 4315/226/427 +f 4315/226/427 4352/225/427 4351/224/427 +f 4352/225/428 4315/226/428 4314/224/428 +f 4314/224/428 4350/224/428 4352/225/428 +f 4346/214/419 4349/213/419 4351/228/419 +f 4351/228/419 4353/227/419 4346/214/419 +f 4353/229/465 4354/221/465 4345/219/465 +f 4345/219/465 4346/220/465 4353/229/465 +f 4322/206/437 4355/223/437 4356/230/437 +f 4356/230/437 4323/205/437 4322/206/437 +f 4356/227/171 4350/228/171 4336/213/171 +f 4336/213/171 4323/214/171 4356/227/171 +f 4319/201/437 4357/202/437 4358/199/437 +f 4358/199/437 4320/200/437 4319/201/437 +f 4356/231/487 4335/233/487 4334/232/487 +f 4334/232/487 4350/224/487 4356/231/487 +f 4350/224/428 4334/232/428 4342/234/428 +f 4342/234/428 4352/225/428 4350/224/428 +f 4352/225/427 4342/234/427 4339/232/427 +f 4339/232/427 4351/224/427 4352/225/427 +f 4351/224/430 4339/232/430 4338/233/430 +f 4338/233/430 4353/231/430 4351/224/430 +f 4327/200/465 4359/199/465 4360/202/465 +f 4360/202/465 4328/201/465 4327/200/465 +f 4331/208/417 4340/236/417 4341/235/417 +f 4341/235/417 4332/207/417 4331/208/417 +f 4332/207/422 4341/235/422 4333/236/422 +f 4333/236/422 4348/208/422 4332/207/422 +f 4355/236/27 4317/238/27 4320/237/27 +f 4320/237/27 4356/231/27 4355/236/27 +f 4356/231/27 4320/237/27 4358/239/27 +f 4358/239/27 4335/233/27 4356/231/27 +f 4335/210/191 4358/241/191 4357/240/191 +f 4357/240/191 4333/209/191 4335/210/191 +f 4333/236/26 4357/238/26 4319/242/26 +f 4319/242/26 4348/208/26 4333/236/26 +f 4348/208/26 4319/242/26 4318/240/26 +f 4318/240/26 4347/209/26 4348/208/26 +f 4330/209/26 4325/240/26 4328/242/26 +f 4328/242/26 4331/208/26 4330/209/26 +f 4331/208/26 4328/242/26 4360/238/26 +f 4360/238/26 4340/236/26 4331/208/26 +f 4340/209/431 4360/240/431 4359/241/431 +f 4359/241/431 4338/210/431 4340/209/431 +f 4338/233/27 4359/239/27 4327/237/27 +f 4327/237/27 4353/231/27 4338/233/27 +f 4353/231/27 4327/237/27 4326/238/27 +f 4326/238/27 4354/236/27 4353/231/27 +f 4361/243/160 4362/246/160 4363/245/160 +f 4363/245/160 4364/244/160 4361/243/160 +f 4361/247/163 4365/250/163 4366/249/163 +f 4366/249/163 4362/248/163 4361/247/163 +f 4362/246/162 4366/252/162 4367/251/162 +f 4367/251/162 4363/245/162 4362/246/162 +f 4363/248/161 4367/249/161 4368/250/161 +f 4368/250/161 4364/247/161 4363/248/161 +f 4369/195/411 4370/198/411 4371/197/436 +f 4371/197/436 4372/196/436 4369/195/411 +f 4373/199/437 4374/202/437 4375/201/437 +f 4375/201/437 4376/200/437 4373/199/437 +f 4377/203/414 4378/206/414 4379/205/414 +f 4379/205/414 4380/204/414 4377/203/414 +f 4381/202/465 4382/199/465 4383/200/465 +f 4383/200/465 4384/201/465 4381/202/465 +f 4385/207/417 4386/209/417 4387/208/417 +f 4387/208/417 4388/207/417 4385/207/417 +f 4389/209/171 4390/211/171 4391/210/171 +f 4380/212/418 4379/214/418 4392/213/418 +f 4392/213/418 4393/196/418 4380/212/418 +f 4394/210/419 4395/211/419 4396/209/419 +f 4397/215/420 4396/209/420 4395/211/420 +f 4395/211/420 4398/216/420 4397/215/420 +f 4399/217/167 4372/196/167 4371/197/167 +f 4371/197/167 4400/218/167 4399/217/167 +f 4401/219/421 4377/203/421 4380/204/438 +f 4380/204/438 4402/220/421 4401/219/421 +f 4403/209/422 4385/207/422 4388/207/422 +f 4388/207/422 4404/208/422 4403/209/422 +f 4380/212/423 4393/196/423 4405/213/423 +f 4405/213/423 4402/214/423 4380/212/423 +f 4397/215/424 4398/216/424 4390/211/424 +f 4390/211/424 4389/209/424 4397/215/424 +f 4406/221/465 4370/221/465 4369/222/465 +f 4369/222/465 4392/222/465 4406/221/465 +f 4392/222/425 4369/222/425 4372/203/425 +f 4372/203/425 4393/203/425 4392/222/425 +f 4393/203/426 4372/203/426 4399/206/426 +f 4399/206/426 4405/206/426 4393/203/426 +f 4405/206/437 4399/206/437 4400/223/437 +f 4400/223/437 4407/223/437 4405/206/437 +f 4407/224/427 4400/224/427 4371/226/427 +f 4371/226/427 4408/225/427 4407/224/427 +f 4408/225/428 4371/226/428 4370/224/428 +f 4370/224/428 4406/224/428 4408/225/428 +f 4402/214/419 4405/213/419 4407/228/419 +f 4407/228/419 4409/227/419 4402/214/419 +f 4409/229/465 4410/221/465 4401/219/465 +f 4401/219/465 4402/220/465 4409/229/465 +f 4378/206/437 4411/223/437 4412/230/437 +f 4412/230/437 4379/205/437 4378/206/437 +f 4412/227/171 4406/228/171 4392/213/171 +f 4392/213/171 4379/214/171 4412/227/171 +f 4375/201/437 4413/202/437 4414/199/437 +f 4414/199/437 4376/200/437 4375/201/437 +f 4412/231/487 4391/233/487 4390/232/487 +f 4390/232/487 4406/224/487 4412/231/487 +f 4406/224/428 4390/232/428 4398/234/428 +f 4398/234/428 4408/225/428 4406/224/428 +f 4408/225/427 4398/234/427 4395/232/427 +f 4395/232/427 4407/224/427 4408/225/427 +f 4407/224/430 4395/232/430 4394/233/430 +f 4394/233/430 4409/231/430 4407/224/430 +f 4383/200/465 4415/199/465 4416/202/465 +f 4416/202/465 4384/201/465 4383/200/465 +f 4387/208/417 4396/236/417 4397/235/417 +f 4397/235/417 4388/207/417 4387/208/417 +f 4388/207/422 4397/235/422 4389/236/422 +f 4389/236/422 4404/208/422 4388/207/422 +f 4411/236/27 4373/238/27 4376/237/27 +f 4376/237/27 4412/231/27 4411/236/27 +f 4412/231/27 4376/237/27 4414/239/27 +f 4414/239/27 4391/233/27 4412/231/27 +f 4391/210/191 4414/241/191 4413/240/191 +f 4413/240/191 4389/209/191 4391/210/191 +f 4389/236/26 4413/238/26 4375/242/26 +f 4375/242/26 4404/208/26 4389/236/26 +f 4404/208/26 4375/242/26 4374/240/26 +f 4374/240/26 4403/209/26 4404/208/26 +f 4386/209/26 4381/240/26 4384/242/26 +f 4384/242/26 4387/208/26 4386/209/26 +f 4387/208/26 4384/242/26 4416/238/26 +f 4416/238/26 4396/236/26 4387/208/26 +f 4396/209/431 4416/240/431 4415/241/431 +f 4415/241/431 4394/210/431 4396/209/431 +f 4394/233/27 4415/239/27 4383/237/27 +f 4383/237/27 4409/231/27 4394/233/27 +f 4409/231/27 4383/237/27 4382/238/27 +f 4382/238/27 4410/236/27 4409/231/27 +f 4417/243/432 4418/246/432 4419/245/432 +f 4419/245/432 4420/244/432 4417/243/432 +f 4417/247/433 4421/250/433 4422/249/433 +f 4422/249/433 4418/248/433 4417/247/433 +f 4418/246/434 4422/252/434 4423/251/434 +f 4423/251/434 4419/245/434 4418/246/434 +f 4419/248/435 4423/249/435 4424/250/435 +f 4424/250/435 4420/247/435 4419/248/435 +f 4425/195/443 4426/198/443 4427/197/443 +f 4427/197/443 4428/196/443 4425/195/443 +f 4429/199/390 4430/202/390 4431/201/390 +f 4431/201/390 4432/200/390 4429/199/390 +f 4433/203/444 4434/206/444 4435/205/444 +f 4435/205/444 4436/204/444 4433/203/444 +f 4437/202/388 4438/199/388 4439/200/388 +f 4439/200/388 4440/201/388 4437/202/388 +f 4441/207/398 4442/209/398 4443/208/398 +f 4443/208/398 4444/207/398 4441/207/398 +f 4445/209/445 4446/211/445 4447/210/445 +f 4436/212/446 4435/214/446 4448/213/446 +f 4448/213/446 4449/196/446 4436/212/446 +f 4450/210/447 4451/211/447 4452/209/447 +f 4453/215/448 4452/209/448 4451/211/448 +f 4451/211/448 4454/216/448 4453/215/448 +f 4455/217/449 4428/196/449 4427/197/449 +f 4427/197/449 4456/218/449 4455/217/449 +f 4457/219/451 4433/203/451 4436/204/451 +f 4436/204/451 4458/220/451 4457/219/451 +f 4459/209/391 4441/207/391 4444/207/391 +f 4444/207/391 4460/208/391 4459/209/391 +f 4436/212/452 4449/196/452 4461/213/452 +f 4461/213/452 4458/214/452 4436/212/452 +f 4453/215/453 4454/216/453 4446/211/453 +f 4446/211/453 4445/209/453 4453/215/453 +f 4462/221/388 4426/221/388 4425/222/388 +f 4425/222/388 4448/222/388 4462/221/388 +f 4448/222/402 4425/222/402 4428/203/402 +f 4428/203/402 4449/203/402 4448/222/402 +f 4449/203/401 4428/203/401 4455/206/401 +f 4455/206/401 4461/206/401 4449/203/401 +f 4461/206/390 4455/206/390 4456/223/390 +f 4456/223/390 4463/223/390 4461/206/390 +f 4463/224/454 4456/224/454 4427/226/454 +f 4427/226/454 4464/225/454 4463/224/454 +f 4464/225/455 4427/226/455 4426/224/455 +f 4426/224/455 4462/224/455 4464/225/455 +f 4458/214/447 4461/213/447 4463/228/447 +f 4463/228/447 4465/227/447 4458/214/447 +f 4465/229/388 4466/221/388 4457/219/388 +f 4457/219/388 4458/220/388 4465/229/388 +f 4434/206/390 4467/223/390 4468/230/390 +f 4468/230/390 4435/205/390 4434/206/390 +f 4468/227/445 4462/228/445 4448/213/445 +f 4448/213/445 4435/214/445 4468/227/445 +f 4431/201/390 4469/202/390 4470/199/390 +f 4470/199/390 4432/200/390 4431/201/390 +f 4468/231/456 4447/233/456 4446/232/456 +f 4446/232/456 4462/224/456 4468/231/456 +f 4462/224/455 4446/232/455 4454/234/455 +f 4454/234/455 4464/225/455 4462/224/455 +f 4464/225/454 4454/234/454 4451/232/454 +f 4451/232/454 4463/224/454 4464/225/454 +f 4463/224/457 4451/232/457 4450/233/457 +f 4450/233/457 4465/231/457 4463/224/457 +f 4439/200/388 4471/199/388 4472/202/388 +f 4472/202/388 4440/201/388 4439/200/388 +f 4443/208/398 4452/236/398 4453/235/398 +f 4453/235/398 4444/207/398 4443/208/398 +f 4444/207/391 4453/235/391 4445/236/391 +f 4445/236/391 4460/208/391 4444/207/391 +f 4467/236/27 4429/238/27 4432/237/27 +f 4432/237/27 4468/231/27 4467/236/27 +f 4468/231/27 4432/237/27 4470/239/27 +f 4470/239/27 4447/233/27 4468/231/27 +f 4447/210/484 4470/241/484 4469/240/484 +f 4469/240/484 4445/209/484 4447/210/484 +f 4445/236/26 4469/238/26 4431/242/26 +f 4431/242/26 4460/208/26 4445/236/26 +f 4460/208/26 4431/242/26 4430/240/26 +f 4430/240/26 4459/209/26 4460/208/26 +f 4442/209/26 4437/240/26 4440/242/26 +f 4440/242/26 4443/208/26 4442/209/26 +f 4443/208/26 4440/242/26 4472/238/26 +f 4472/238/26 4452/236/26 4443/208/26 +f 4452/209/459 4472/240/459 4471/241/459 +f 4471/241/459 4450/210/459 4452/209/459 +f 4450/233/27 4471/239/27 4439/237/27 +f 4439/237/27 4465/231/27 4450/233/27 +f 4465/231/27 4439/237/27 4438/238/27 +f 4438/238/27 4466/236/27 4465/231/27 +f 4473/243/150 4474/246/150 4475/245/150 +f 4475/245/150 4476/244/150 4473/243/150 +f 4473/247/153 4477/250/153 4478/249/153 +f 4478/249/153 4474/248/153 4473/247/153 +f 4474/246/152 4478/252/152 4479/251/152 +f 4479/251/152 4475/245/152 4474/246/152 +f 4475/248/151 4479/249/151 4480/250/151 +f 4480/250/151 4476/247/151 4475/248/151 +f 4481/253/18 4482/256/18 4483/255/18 +f 4483/255/18 4484/254/18 4481/253/18 +f 4485/257/17 4486/258/17 4482/256/17 +f 4482/256/17 4481/253/17 4485/257/17 +f 4487/259/16 4488/260/16 4486/258/16 +f 4486/258/16 4485/257/16 4487/259/16 +f 4489/261/15 4490/264/15 4488/263/15 +f 4488/263/15 4487/262/118 4489/261/15 +f 4491/265/14 4492/266/14 4490/264/14 +f 4490/264/14 4489/261/14 4491/265/14 +f 4493/267/13 4494/268/13 4492/266/13 +f 4492/266/13 4491/265/13 4493/267/13 +f 4495/269/25 4496/270/25 4494/268/24 +f 4494/268/24 4493/267/24 4495/269/25 +f 4497/271/23 4498/272/23 4496/270/23 +f 4496/270/23 4495/269/23 4497/271/23 +f 4499/273/191 4500/274/22 4498/272/22 +f 4498/272/22 4497/271/22 4499/273/191 +f 4501/275/21 4502/276/21 4500/274/21 +f 4500/274/21 4499/273/21 4501/275/21 +f 4503/277/20 4504/278/20 4502/276/20 +f 4502/276/20 4501/275/20 4503/277/20 +f 4484/254/19 4483/255/19 4504/278/190 +f 4504/278/190 4503/277/190 4484/254/19 +f 4482/279/27 4505/282/27 4506/281/27 +f 4506/281/27 4483/280/27 4482/279/27 +f 4507/283/27 4508/284/27 4509/282/27 +f 4509/282/27 4510/279/27 4507/283/27 +f 4488/285/27 4511/285/27 4512/284/27 +f 4512/284/27 4486/283/27 4488/285/27 +f 4513/286/27 4514/287/27 4515/285/27 +f 4515/285/27 4516/285/27 4513/286/27 +f 4492/288/27 4517/289/27 4518/287/27 +f 4518/287/27 4490/286/27 4492/288/27 +f 4519/290/27 4520/291/27 4521/289/27 +f 4521/289/27 4522/288/27 4519/290/27 +f 4496/292/27 4523/293/27 4524/291/27 +f 4524/291/27 4494/290/27 4496/292/27 +f 4525/294/27 4526/295/27 4527/293/27 +f 4527/293/27 4528/292/27 4525/294/27 +f 4500/296/27 4529/297/27 4530/295/27 +f 4530/295/27 4498/294/27 4500/296/27 +f 4531/298/27 4532/299/27 4533/297/27 +f 4533/297/27 4534/296/27 4531/298/27 +f 4504/300/27 4535/300/27 4536/299/27 +f 4536/299/27 4502/298/27 4504/300/27 +f 4537/280/27 4538/281/27 4539/300/27 +f 4539/300/27 4540/300/27 4537/280/27 +f 4505/301/24 4541/304/24 4542/303/24 +f 4542/303/24 4506/302/24 4505/301/24 +f 4512/305/23 4543/306/23 4541/304/23 +f 4541/304/23 4505/301/23 4512/305/23 +f 4511/307/22 4544/308/22 4543/306/22 +f 4543/306/22 4512/305/191 4511/307/22 +f 4518/309/21 4545/310/21 4544/308/21 +f 4544/308/21 4511/307/21 4518/309/21 +f 4517/311/20 4546/312/20 4545/310/20 +f 4545/310/20 4518/309/20 4517/311/20 +f 4524/313/19 4547/314/19 4546/312/19 +f 4546/312/19 4517/311/19 4524/313/19 +f 4523/315/194 4548/316/194 4547/314/18 +f 4547/314/18 4524/313/18 4523/315/194 +f 4530/317/17 4549/318/17 4548/316/17 +f 4548/316/17 4523/315/17 4530/317/17 +f 4529/319/16 4550/320/16 4549/318/16 +f 4549/318/16 4530/317/16 4529/319/16 +f 4536/321/118 4551/324/15 4550/323/15 +f 4550/323/15 4529/322/15 4536/321/118 +f 4535/325/14 4552/326/14 4551/324/14 +f 4551/324/14 4536/321/14 4535/325/14 +f 4506/302/13 4542/303/13 4552/326/192 +f 4552/326/192 4535/325/192 4506/302/13 +f 4541/327/27 4553/329/27 4542/328/27 +f 4543/330/27 4553/329/27 4541/327/27 +f 4544/331/27 4553/329/27 4543/330/27 +f 4545/332/27 4553/329/27 4544/331/27 +f 4546/333/27 4553/329/27 4545/332/27 +f 4547/334/27 4553/329/27 4546/333/27 +f 4548/335/27 4553/329/27 4547/334/27 +f 4549/336/27 4553/329/27 4548/335/27 +f 4550/337/27 4553/329/27 4549/336/27 +f 4551/338/27 4553/329/27 4550/337/27 +f 4552/339/27 4553/329/27 4551/338/27 +f 4542/328/27 4553/329/27 4552/339/27 +f 4486/258/17 4507/341/17 4510/340/17 +f 4510/340/17 4482/256/17 4486/258/17 +f 4482/279/151 4510/279/151 4509/282/151 +f 4509/282/151 4505/282/151 4482/279/151 +f 4505/301/23 4509/343/23 4508/342/23 +f 4508/342/23 4512/305/23 4505/301/23 +f 4512/284/198 4508/284/198 4507/283/198 +f 4507/283/198 4486/283/198 4512/284/198 +f 4490/264/15 4513/345/15 4516/344/15 +f 4516/344/15 4488/263/15 4490/264/15 +f 4488/285/7 4516/285/7 4515/285/7 +f 4515/285/7 4511/285/7 4488/285/7 +f 4511/307/21 4515/347/21 4514/346/21 +f 4514/346/21 4518/309/21 4511/307/21 +f 4518/287/197 4514/287/197 4513/286/197 +f 4513/286/197 4490/286/197 4518/287/197 +f 4494/268/13 4519/349/13 4522/348/13 +f 4522/348/13 4492/266/13 4494/268/13 +f 4492/288/163 4522/288/163 4521/289/163 +f 4521/289/163 4517/289/163 4492/288/163 +f 4517/311/19 4521/351/19 4520/350/19 +f 4520/350/19 4524/313/19 4517/311/19 +f 4524/291/10 4520/291/10 4519/290/10 +f 4519/290/10 4494/290/10 4524/291/10 +f 4498/272/23 4525/353/23 4528/352/23 +f 4528/352/23 4496/270/23 4498/272/23 +f 4496/292/153 4528/292/153 4527/293/153 +f 4527/293/153 4523/293/153 4496/292/153 +f 4523/315/17 4527/355/17 4526/354/17 +f 4526/354/17 4530/317/17 4523/315/17 +f 4530/295/196 4526/295/196 4525/294/196 +f 4525/294/196 4498/294/196 4530/295/196 +f 4502/276/21 4531/357/21 4534/356/178 +f 4534/356/178 4500/274/21 4502/276/21 +f 4500/296/1 4534/296/1 4533/297/1 +f 4533/297/1 4529/297/1 4500/296/1 +f 4529/322/15 4533/359/15 4532/358/15 +f 4532/358/15 4536/321/118 4529/322/15 +f 4536/299/195 4532/299/195 4531/298/195 +f 4531/298/195 4502/298/195 4536/299/195 +f 4483/255/19 4537/361/19 4540/360/19 +f 4540/360/19 4504/278/190 4483/255/19 +f 4504/300/161 4540/300/161 4539/300/161 +f 4539/300/161 4535/300/161 4504/300/161 +f 4535/325/192 4539/363/192 4538/362/13 +f 4538/362/13 4506/302/13 4535/325/192 +f 4506/281/4 4538/281/4 4537/280/4 +f 4537/280/4 4483/280/4 4506/281/4 +# 7168 faces + diff --git a/examples/models/resources/models/obj/castle_diffuse.png b/examples/models/resources/models/obj/castle_diffuse.png new file mode 100644 index 0000000..c7085a3 Binary files /dev/null and b/examples/models/resources/models/obj/castle_diffuse.png differ diff --git a/examples/models/resources/models/obj/cube.obj b/examples/models/resources/models/obj/cube.obj new file mode 100644 index 0000000..bf7e3be --- /dev/null +++ b/examples/models/resources/models/obj/cube.obj @@ -0,0 +1,68 @@ +# reference material +#mtllib cube.mtl + +# object box + +# vertex (XZY) +v 5.5 0 1.5 +v 8.5 0 1.5 +v 5.5 0 -1.5 +v 8.5 0 -1.5 +v 5.5 3 1.5 +v 8.5 3 1.5 +v 5.5 3 -1.5 +v 8.5 3 -1.5 + +# normals (XYZ) +vn 0 -1 0 +vn 0 1 0 +vn 0 0 1 +vn 1 0 0 +vn 0 0 -1 +vn -1 0 0 + +# UVs (XY) +vt 0.5 0 0 +vt 1 0 0 +vt 1 0.5 0 +vt 0.5 0.5 0 +vt 0.5 0.5 0 +vt 1 0.5 0 +vt 0.5 1 0 +vt 1 1 0 +vt 0 0.5 0 +vt 1 0.5 0 +vt 1 0 0 +vt 0 0 0 +vt 0 0.5 0 +vt 1 0.5 0 +vt 1 1 0 +vt 0 1 0 +vt 0.5 0 0 +vt 0 0 0 +vt 0 0.5 0 +vt 0.5 0.5 0 +vt 0 0.5 0 +vt 0.5 0.5 0 +vt 0.5 1 0 +vt 0 1 0 + +# merger +g box + +# reference material +#usemtl mat01 + +# faces +f 1/9/1 3/10/1 4/11/1 +f 4/11/1 2/12/1 1/9/1 +f 5/13/2 6/14/2 8/15/2 +f 8/15/2 7/16/2 5/13/2 +f 1/17/6 2/18/6 6/19/6 +f 6/19/6 5/20/6 1/17/6 +f 2/6/1 4/5/1 8/7/1 +f 8/7/1 6/8/1 2/6/1 +f 4/2/3 3/1/3 7/4/3 +f 7/4/3 8/3/3 4/2/3 +f 3/22/5 1/21/5 5/24/5 +f 5/24/5 7/23/5 3/22/5 diff --git a/examples/models/resources/models/obj/cube_diffuse.png b/examples/models/resources/models/obj/cube_diffuse.png new file mode 100644 index 0000000..6becd47 Binary files /dev/null and b/examples/models/resources/models/obj/cube_diffuse.png differ diff --git a/examples/models/resources/models/obj/house.obj b/examples/models/resources/models/obj/house.obj new file mode 100644 index 0000000..67d2c88 --- /dev/null +++ b/examples/models/resources/models/obj/house.obj @@ -0,0 +1,4564 @@ +# (c) 2018 Medieval Assets Pack by Alberto Cano +# Licensed as Creative Commons Attribution-NonCommercial 4.0 + +# +# object house +# + +v -6.3138 8.7250 -0.7017 +v -7.4057 8.9558 -0.7017 +v -7.3659 9.1439 -0.7017 +v -6.2741 8.9132 -0.7017 +v -7.2840 9.5316 -0.1884 +v -6.1921 9.3008 -0.1884 +v -6.2319 9.1127 -0.1884 +v -6.1895 9.3135 -0.0777 +v -7.2813 9.5443 -0.0777 +v -6.2292 9.1254 -0.0777 +v -6.3138 8.7250 0.5464 +v -6.2741 8.9132 0.5464 +v -7.3659 9.1439 0.5464 +v -7.4057 8.9558 0.5464 +v -6.1921 9.3008 0.0331 +v -7.2840 9.5316 0.0331 +v -6.2319 9.1127 0.0331 +v -5.1675 8.5556 -0.7017 +v -6.2794 8.6512 -0.7017 +v -6.2629 8.8428 -0.7017 +v -5.1510 8.7472 -0.7017 +v -6.2290 9.2375 -0.1884 +v -5.1171 9.1420 -0.1884 +v -5.1335 8.9504 -0.1884 +v -5.1160 9.1549 -0.0777 +v -6.2279 9.2504 -0.0777 +v -5.1324 8.9633 -0.0777 +v -5.1675 8.5556 0.5464 +v -5.1510 8.7472 0.5464 +v -6.2629 8.8428 0.5464 +v -6.2794 8.6512 0.5464 +v -5.1171 9.1420 0.0331 +v -6.2290 9.2375 0.0331 +v -5.1335 8.9504 0.0331 +v -3.1858 8.2183 -0.7017 +v -4.3011 8.2559 -0.7017 +v -4.2946 8.4481 -0.7017 +v -3.1793 8.4104 -0.7017 +v -4.2813 8.8441 -0.1884 +v -3.1659 8.8064 -0.1884 +v -3.1724 8.6143 -0.1884 +v -3.1655 8.8194 -0.0777 +v -4.2808 8.8570 -0.0777 +v -3.1720 8.6272 -0.0777 +v -3.1858 8.2183 0.5464 +v -3.1793 8.4104 0.5464 +v -4.2946 8.4481 0.5464 +v -4.3011 8.2559 0.5464 +v -3.1659 8.8064 0.0331 +v -4.2813 8.8441 0.0331 +v -3.1724 8.6143 0.0331 +v -4.2172 8.3089 -0.7017 +v -5.3250 8.4436 -0.7017 +v -5.3018 8.6344 -0.7017 +v -4.1940 8.4997 -0.7017 +v -5.2540 9.0278 -0.1884 +v -4.1462 8.8931 -0.1884 +v -4.1694 8.7022 -0.1884 +v -4.1446 8.9059 -0.0777 +v -5.2524 9.0406 -0.0777 +v -4.1678 8.7150 -0.0777 +v -4.2172 8.3089 0.5464 +v -4.1940 8.4997 0.5464 +v -5.3018 8.6344 0.5464 +v -5.3250 8.4436 0.5464 +v -4.1462 8.8931 0.0331 +v -5.2540 9.0278 0.0331 +v -4.1694 8.7022 0.0331 +v 6.7499 10.4845 -0.7017 +v 6.7434 10.6766 -0.7017 +v 7.8588 10.7143 -0.7017 +v 7.8653 10.5221 -0.7017 +v 7.8454 11.1103 -0.1884 +v 6.7301 11.0726 -0.1884 +v 6.7366 10.8805 -0.1884 +v 6.7296 11.0856 -0.0777 +v 7.8450 11.1232 -0.0777 +v 6.7361 10.8934 -0.0777 +v 6.7499 10.4845 0.5464 +v 7.8653 10.5221 0.5464 +v 7.8588 10.7143 0.5464 +v 6.7434 10.6766 0.5464 +v 7.8454 11.1103 0.0331 +v 6.7301 11.0726 0.0331 +v 6.7366 10.8805 0.0331 +v 5.8327 10.2129 -0.7017 +v 5.7996 10.4023 -0.7017 +v 6.8989 10.5944 -0.7017 +v 6.9320 10.4050 -0.7017 +v 6.8307 10.9847 -0.1884 +v 5.7314 10.7926 -0.1884 +v 5.7645 10.6032 -0.1884 +v 5.7291 10.8054 -0.0777 +v 6.8284 10.9974 -0.0777 +v 5.7622 10.6159 -0.0777 +v 5.8327 10.2129 0.5464 +v 6.9320 10.4050 0.5464 +v 6.8989 10.5944 0.5464 +v 5.7996 10.4023 0.5464 +v 6.8307 10.9847 0.0331 +v 5.7314 10.7926 0.0331 +v 5.7645 10.6032 0.0331 +v 4.8462 10.0032 -0.7017 +v 4.8230 10.1940 -0.7017 +v 5.9308 10.3287 -0.7017 +v 5.9540 10.1379 -0.7017 +v 5.8830 10.7221 -0.1884 +v 4.7752 10.5874 -0.1884 +v 4.7984 10.3965 -0.1884 +v 4.7736 10.6002 -0.0777 +v 5.8814 10.7349 -0.0777 +v 4.7968 10.4094 -0.0777 +v 4.8462 10.0032 0.5464 +v 5.9540 10.1379 0.5464 +v 5.9308 10.3287 0.5464 +v 4.8230 10.1940 0.5464 +v 5.8830 10.7221 0.0331 +v 4.7752 10.5874 0.0331 +v 4.7984 10.3965 0.0331 +v 3.8496 9.8167 -0.7017 +v 3.8264 10.0075 -0.7017 +v 4.9342 10.1423 -0.7017 +v 4.9574 9.9514 -0.7017 +v 4.8864 10.5356 -0.1884 +v 3.7786 10.4009 -0.1884 +v 3.8018 10.2100 -0.1884 +v 3.7770 10.4137 -0.0777 +v 4.8848 10.5484 -0.0777 +v 3.8002 10.2229 -0.0777 +v 3.8496 9.8167 0.5464 +v 4.9574 9.9514 0.5464 +v 4.9342 10.1423 0.5464 +v 3.8264 10.0076 0.5464 +v 4.8864 10.5356 0.0331 +v 3.7786 10.4009 0.0331 +v 3.8018 10.2100 0.0331 +v 2.9090 9.7161 -0.7017 +v 2.9025 9.9083 -0.7017 +v 4.0178 9.9460 -0.7017 +v 4.0243 9.7538 -0.7017 +v 4.0044 10.3420 -0.1884 +v 2.8891 10.3043 -0.1884 +v 2.8956 10.1121 -0.1884 +v 2.8887 10.3173 -0.0777 +v 4.0040 10.3549 -0.0777 +v 2.8952 10.1251 -0.0777 +v 2.9090 9.7161 0.5464 +v 4.0243 9.7538 0.5464 +v 4.0178 9.9460 0.5464 +v 2.9025 9.9083 0.5464 +v 4.0044 10.3420 0.0331 +v 2.8891 10.3043 0.0331 +v 2.8956 10.1121 0.0331 +v 1.9911 9.6053 -0.7017 +v 1.9808 9.7973 -0.7017 +v 3.0952 9.8570 -0.7017 +v 3.1055 9.6650 -0.7017 +v 3.0740 10.2527 -0.1884 +v 1.9596 10.1930 -0.1884 +v 1.9699 10.0010 -0.1884 +v 1.9589 10.2059 -0.0777 +v 3.0733 10.2656 -0.0777 +v 1.9692 10.0139 -0.0777 +v 1.9911 9.6053 0.5464 +v 3.1055 9.6650 0.5464 +v 3.0952 9.8570 0.5464 +v 1.9808 9.7973 0.5464 +v 3.0740 10.2527 0.0331 +v 1.9596 10.1930 0.0331 +v 1.9699 10.0010 0.0331 +v -3.0236 10.4055 -0.7017 +v -4.1154 10.6363 -0.7017 +v -4.0757 10.8244 -0.7017 +v -2.9838 10.5936 -0.7017 +v -3.9937 11.2121 -0.1884 +v -2.9019 10.9813 -0.1884 +v -2.9417 10.7932 -0.1884 +v -2.8992 10.9940 -0.0777 +v -3.9911 11.2247 -0.0777 +v -2.9390 10.8059 -0.0777 +v -3.0236 10.4055 0.5464 +v -2.9838 10.5937 0.5464 +v -4.0757 10.8244 0.5464 +v -4.1154 10.6363 0.5464 +v -2.9019 10.9813 0.0331 +v -3.9937 11.2121 0.0331 +v -2.9417 10.7932 0.0331 +v -1.8772 10.2361 -0.7017 +v -2.9891 10.3316 -0.7017 +v -2.9726 10.5232 -0.7017 +v -1.8608 10.4277 -0.7017 +v -2.9387 10.9180 -0.1884 +v -1.8268 10.8225 -0.1884 +v -1.8433 10.6309 -0.1884 +v -1.8257 10.8354 -0.0777 +v -2.9376 10.9309 -0.0777 +v -1.8422 10.6438 -0.0777 +v -1.8772 10.2361 0.5464 +v -1.8608 10.4277 0.5464 +v -2.9726 10.5232 0.5464 +v -2.9891 10.3316 0.5464 +v -1.8268 10.8225 0.0331 +v -2.9387 10.9180 0.0331 +v -1.8433 10.6309 0.0331 +v -0.9270 9.9893 -0.7017 +v -2.0348 10.1241 -0.7017 +v -2.0116 10.3149 -0.7017 +v -0.9038 10.1802 -0.7017 +v -1.9637 10.7083 -0.1884 +v -0.8559 10.5736 -0.1884 +v -0.8791 10.3827 -0.1884 +v -0.8544 10.5864 -0.0777 +v -1.9622 10.7211 -0.0777 +v -0.8776 10.3955 -0.0777 +v -0.9270 9.9893 0.5464 +v -0.9038 10.1802 0.5464 +v -2.0116 10.3149 0.5464 +v -2.0348 10.1241 0.5464 +v -0.8559 10.5736 0.0331 +v -1.9637 10.7083 0.0331 +v -0.8791 10.3827 0.0331 +v 0.1045 9.8987 -0.7017 +v -1.0109 9.9364 -0.7017 +v -1.0044 10.1286 -0.7017 +v 0.1109 10.0909 -0.7017 +v -0.9910 10.5246 -0.1884 +v 0.1243 10.4869 -0.1884 +v 0.1178 10.2947 -0.1884 +v 0.1248 10.4999 -0.0777 +v -0.9906 10.5375 -0.0777 +v 0.1183 10.3077 -0.0777 +v 0.1045 9.8987 0.5464 +v 0.1109 10.0909 0.5464 +v -1.0044 10.1286 0.5464 +v -1.0109 9.9364 0.5464 +v 0.1243 10.4869 0.0331 +v -0.9910 10.5246 0.0331 +v 0.1178 10.2947 0.0331 +v 1.1663 9.7500 -0.7017 +v 0.0510 9.7876 -0.7017 +v 0.0575 9.9798 -0.7017 +v 1.1728 9.9421 -0.7017 +v 0.0708 10.3758 -0.1884 +v 1.1862 10.3381 -0.1884 +v 1.1797 10.1460 -0.1884 +v 1.1866 10.3511 -0.0777 +v 0.0713 10.3887 -0.0777 +v 1.1801 10.1589 -0.0777 +v 1.1663 9.7500 0.5464 +v 1.1728 9.9422 0.5464 +v 0.0575 9.9798 0.5464 +v 0.0510 9.7876 0.5464 +v 1.1862 10.3381 0.0331 +v 0.0708 10.3758 0.0331 +v 1.1797 10.1460 0.0331 +v 2.0591 9.7227 -0.7017 +v 0.9513 9.5879 -0.7017 +v 0.9281 9.7788 -0.7017 +v 2.0359 9.9135 -0.7017 +v 0.8803 10.1721 -0.1884 +v 1.9881 10.3069 -0.1884 +v 2.0113 10.1160 -0.1884 +v 1.9865 10.3197 -0.0777 +v 0.8787 10.1850 -0.0777 +v 2.0097 10.1289 -0.0777 +v 2.0591 9.7227 0.5464 +v 2.0359 9.9135 0.5464 +v 0.9281 9.7788 0.5464 +v 0.9513 9.5879 0.5464 +v 1.9881 10.3069 0.0331 +v 0.8803 10.1721 0.0331 +v 2.0113 10.1160 0.0331 +v 0.9445 11.6574 4.7943 +v 0.9445 11.7921 5.9021 +v 0.9445 11.9830 5.8789 +v 0.9445 11.8483 4.7711 +v 1.4578 12.3763 5.8310 +v 1.4578 12.2416 4.7232 +v 1.4578 12.0508 4.7465 +v 1.5686 12.2545 4.7217 +v 1.5686 12.3892 5.8295 +v 1.5686 12.0636 4.7449 +v 2.1926 11.6574 4.7943 +v 2.1926 11.8483 4.7711 +v 2.1926 11.9830 5.8789 +v 2.1926 11.7921 5.9021 +v 1.6793 12.2416 4.7232 +v 1.6793 12.3763 5.8310 +v 1.6793 12.0508 4.7465 +v 0.9445 11.4668 3.7151 +v 0.9445 11.5624 4.8270 +v 0.9445 11.7540 4.8105 +v 0.9445 11.6584 3.6987 +v 1.4578 12.1487 4.7766 +v 1.4578 12.0532 3.6647 +v 1.4578 11.8616 3.6812 +v 1.5686 12.0661 3.6636 +v 1.5686 12.1616 4.7755 +v 1.5686 11.8745 3.6801 +v 2.1926 11.4668 3.7151 +v 2.1926 11.6584 3.6987 +v 2.1926 11.7540 4.8105 +v 2.1926 11.5624 4.8270 +v 1.6793 12.0532 3.6647 +v 1.6793 12.1487 4.7766 +v 1.6793 11.8616 3.6812 +v 0.9445 11.2863 3.3077 +v 0.9445 11.3239 4.4230 +v 0.9445 11.5161 4.4165 +v 0.9445 11.4784 3.3012 +v 1.4578 11.9121 4.4032 +v 1.4578 11.8745 3.2879 +v 1.4578 11.6823 3.2943 +v 1.5686 11.8874 3.2874 +v 1.5686 11.9250 4.4027 +v 1.5686 11.6952 3.2939 +v 2.1926 11.2863 3.3077 +v 2.1926 11.4784 3.3012 +v 2.1926 11.5161 4.4165 +v 2.1926 11.3239 4.4230 +v 1.6793 11.8745 3.2879 +v 1.6793 11.9121 4.4032 +v 1.6793 11.6823 3.2943 +v 2.1926 11.3823 3.3259 +v 2.1926 11.5170 2.2181 +v 2.1926 11.7079 2.2413 +v 2.1926 11.5732 3.3492 +v 1.6793 12.1012 2.2892 +v 1.6793 11.9665 3.3970 +v 1.6793 11.7757 3.3738 +v 1.5686 11.9794 3.3985 +v 1.5686 12.1141 2.2907 +v 1.5686 11.7885 3.3753 +v 0.9445 11.3823 3.3259 +v 0.9445 11.5732 3.3492 +v 0.9445 11.7079 2.2413 +v 0.9445 11.5170 2.2181 +v 1.4578 11.9665 3.3970 +v 1.4578 12.1012 2.2892 +v 1.4578 11.7757 3.3738 +v 2.1926 11.5582 2.4201 +v 2.1926 11.6929 1.3123 +v 2.1926 11.8838 1.3355 +v 2.1926 11.7491 2.4433 +v 1.6793 12.2771 1.3833 +v 1.6793 12.1424 2.4911 +v 1.6793 11.9516 2.4679 +v 1.5686 12.1553 2.4927 +v 1.5686 12.2900 1.3849 +v 1.5686 11.9644 2.4695 +v 0.9445 11.5582 2.4201 +v 0.9445 11.7491 2.4433 +v 0.9445 11.8838 1.3355 +v 0.9445 11.6929 1.3123 +v 1.4578 12.1424 2.4911 +v 1.4578 12.2771 1.3833 +v 1.4578 11.9516 2.4679 +v 2.1926 11.7610 1.6115 +v 2.1926 11.8957 0.5037 +v 2.1926 12.0866 0.5269 +v 2.1926 11.9519 1.6347 +v 1.6793 12.4799 0.5747 +v 1.6793 12.3452 1.6826 +v 1.6793 12.1543 1.6593 +v 1.5686 12.3580 1.6841 +v 1.5686 12.4928 0.5763 +v 1.5686 12.1672 1.6609 +v 0.9445 11.7610 1.6115 +v 0.9445 11.9519 1.6347 +v 0.9445 12.0866 0.5269 +v 0.9445 11.8957 0.5037 +v 1.4578 12.3452 1.6826 +v 1.4578 12.4799 0.5747 +v 1.4578 12.1543 1.6593 +v -1.1371 7.4582 -4.0955 +v -4.2338 7.4582 -4.3121 +v -4.2273 7.6317 -4.5957 +v -1.1338 7.6317 -4.3617 +v -3.2516 7.7677 3.5028 +v -4.2338 7.4582 4.2507 +v -4.6406 11.0258 -0.0777 +v -3.2516 10.6900 -0.0777 +v -3.2516 7.7677 -3.8461 +v -0.6460 7.7677 -3.6582 +v -4.6406 11.2779 -0.0777 +v -1.3405 10.5888 -0.0777 +v -1.1371 7.4582 3.9402 +v 1.9596 7.4582 3.9402 +v 1.9596 7.6317 4.2064 +v -1.1338 7.6317 4.2064 +v -0.6460 7.7677 3.5028 +v 1.9596 7.7677 3.5028 +v 1.9596 10.0791 -0.0777 +v 1.9596 7.4582 -4.0955 +v 1.9596 7.6317 -4.3617 +v 1.9596 7.7677 -3.6582 +v -4.2273 7.6317 4.5343 +v 8.1465 7.6317 -4.5957 +v 8.1530 7.4582 -4.3121 +v 5.0563 7.4582 -4.0955 +v 5.0531 7.6317 -4.3617 +v 7.1709 7.7677 3.5028 +v 7.1709 10.6900 -0.0777 +v 8.5599 11.0258 -0.0777 +v 8.1530 7.4582 4.2507 +v 7.1709 7.7677 -3.8461 +v 4.5652 7.7677 -3.6582 +v 5.2597 10.5888 -0.0777 +v 8.5599 11.2779 -0.0777 +v 5.0563 7.4582 3.9402 +v 5.0531 7.6317 4.2064 +v 4.5652 7.7677 3.5028 +v 8.1465 7.6317 4.5343 +v -4.6567 6.8869 -2.9522 +v -7.7534 6.8869 -3.1079 +v -7.7469 7.0605 -3.3117 +v -4.6535 7.0605 -3.1435 +v -6.7712 7.1965 2.5090 +v -7.7534 6.8869 3.0465 +v -8.1602 9.3059 -0.0645 +v -6.7712 8.9701 -0.0645 +v -6.7712 7.1965 -2.7729 +v -4.1656 7.1965 -2.6379 +v -8.1602 9.5581 -0.0645 +v -4.8601 8.8689 -0.0645 +v -4.6567 6.8869 2.8233 +v -3.2516 6.8869 2.8233 +v -3.2516 7.0605 3.0146 +v -4.6535 7.0605 3.0146 +v -4.1656 7.1965 2.5090 +v -3.2516 7.1965 2.5090 +v -3.2516 8.5897 -0.0645 +v -3.2516 6.8869 -2.9522 +v -3.2516 7.0605 -3.1435 +v -3.2516 7.1965 -2.6379 +v -7.7469 7.0605 3.2504 +v -6.7232 3.1632 -3.0057 +v -7.2373 3.1632 -3.0057 +v -7.2146 4.8291 -2.9829 +v -6.8069 4.8291 -2.9829 +v -6.7232 3.1632 -2.4581 +v -6.8069 4.8291 -2.5099 +v -7.2373 3.1632 -2.4581 +v -7.2146 4.8291 -2.5099 +v -6.6744 6.9707 -3.0545 +v -7.2862 6.9707 -3.0545 +v -6.6744 7.4227 -2.4093 +v -7.2862 7.4227 -2.4093 +v -7.1861 2.8938 -0.0777 +v -3.1845 2.8938 -0.0777 +v -3.1845 2.8938 2.8036 +v -7.1861 2.8938 2.8036 +v -3.1845 7.0912 2.8036 +v -7.1861 7.0912 2.8036 +v -3.1845 2.8938 -2.9589 +v -7.1861 2.8938 -2.9589 +v -7.1861 7.0912 -2.9589 +v -3.1845 7.0912 -2.9589 +v -7.1861 9.1993 -0.0777 +v -7.1931 5.9506 -0.5142 +v -7.1931 4.9600 -0.5142 +v -7.1931 4.9340 -0.0777 +v -7.1931 6.2676 -0.0777 +v -7.1671 4.9838 -0.8556 +v -7.1671 4.8411 -0.8556 +v -7.2673 4.8411 -0.8556 +v -7.2673 4.9838 -0.8556 +v -7.1671 6.5014 -0.0777 +v -7.1671 6.0404 -0.7429 +v -7.2673 6.0404 -0.7429 +v -7.2673 6.5014 -0.0777 +v -7.1671 4.8411 0.7003 +v -7.1671 4.9838 0.7003 +v -7.2673 4.9838 0.7003 +v -7.2673 4.8411 0.7003 +v -7.1671 4.7914 -0.0777 +v -7.1671 4.8411 0.5875 +v -7.2673 4.8411 0.5875 +v -7.2673 4.7914 -0.0777 +v -7.3772 4.8411 -0.7429 +v -7.3772 4.9600 -0.5142 +v -7.3772 4.9838 -0.7429 +v -7.2673 5.9506 -0.5142 +v -7.2673 6.2676 -0.0777 +v -7.3772 4.9838 0.5875 +v -7.3772 4.9692 0.3589 +v -7.3772 4.8411 0.5875 +v -7.3772 4.7914 -0.0777 +v -7.3772 4.9340 -0.0777 +v -7.1931 5.9506 0.3589 +v -7.1931 4.9692 0.3589 +v -7.1671 6.0404 0.5875 +v -7.2673 6.0404 0.5875 +v -7.1671 4.8411 -0.7429 +v -7.2673 4.8411 -0.7429 +v -7.2673 5.9506 0.3589 +v -7.2673 4.9600 -0.5142 +v -7.2673 4.9692 0.3589 +v -7.2673 4.9340 -0.0777 +v -7.2673 4.9838 0.5875 +v -7.1671 4.9838 0.5875 +v -7.1671 4.9838 -0.7429 +v -7.2673 4.9838 -0.7429 +v -7.3772 4.8411 -0.8556 +v -7.3772 4.9838 -0.8556 +v -7.3772 4.9838 0.7003 +v -7.3772 4.8411 0.7003 +v -7.4310 3.2178 2.3310 +v -7.4310 2.7084 2.3310 +v -7.4310 2.7084 2.8790 +v -7.4310 3.2178 2.8790 +v -2.7750 2.7084 2.8790 +v -5.1030 2.5335 2.8790 +v -5.1030 2.5335 2.3310 +v -2.7750 2.7084 2.3310 +v -2.7750 3.2178 2.8790 +v -5.1030 3.0429 2.8790 +v -2.7750 3.2178 2.3310 +v -5.1030 3.0429 2.3310 +v -7.4310 3.2178 -2.4864 +v -7.4310 3.2178 -3.0343 +v -7.4310 2.7084 -3.0343 +v -7.4310 2.7084 -2.4864 +v -2.7750 2.7084 -3.0343 +v -2.7750 2.7084 -2.4864 +v -5.1030 2.5335 -2.4864 +v -5.1030 2.5335 -3.0343 +v -2.7750 3.2178 -3.0343 +v -5.1030 3.0429 -3.0343 +v -2.7750 3.2178 -2.4864 +v -5.1030 3.0429 -2.4864 +v -6.8803 -0.0302 2.7568 +v -6.8202 0.4686 2.6769 +v -6.8202 0.4686 1.9103 +v -6.8803 -0.0302 1.8305 +v -6.1832 -0.0302 2.7568 +v -6.2433 0.4686 2.6769 +v -6.1832 -0.0302 1.8305 +v -6.2433 0.4686 1.9103 +v -6.7553 3.1304 2.0287 +v -6.6814 1.5987 2.0734 +v -6.6814 1.5987 2.5139 +v -6.7553 3.1304 2.5586 +v -6.3096 1.5987 2.5139 +v -6.3082 3.1304 2.5586 +v -6.3096 1.5987 2.0734 +v -6.3082 3.1304 2.0287 +v -6.7553 0.5951 2.5586 +v -6.7553 0.5951 2.0287 +v -6.7995 0.5454 1.9480 +v -6.7995 0.5454 2.6393 +v -6.3082 0.5951 2.0287 +v -6.2639 0.5454 1.9480 +v -6.3082 0.5951 2.5586 +v -6.2639 0.5454 2.6393 +v -6.8803 -0.0302 -1.9648 +v -6.8202 0.4686 -2.0447 +v -6.8202 0.4686 -2.8113 +v -6.8803 -0.0302 -2.8911 +v -6.1832 -0.0302 -1.9648 +v -6.2433 0.4686 -2.0447 +v -6.1832 -0.0302 -2.8911 +v -6.2433 0.4686 -2.8113 +v -6.7553 3.1304 -2.6929 +v -6.6814 1.5987 -2.6482 +v -6.6814 1.5987 -2.2077 +v -6.7553 3.1304 -2.1631 +v -6.3096 1.5987 -2.2077 +v -6.3082 3.1304 -2.1631 +v -6.3096 1.5987 -2.6482 +v -6.3082 3.1304 -2.6929 +v -6.7553 0.5951 -2.1631 +v -6.7553 0.5951 -2.6929 +v -6.7995 0.5454 -2.7737 +v -6.7995 0.5454 -2.0823 +v -6.3082 0.5951 -2.6929 +v -6.2639 0.5454 -2.7737 +v -6.3082 0.5951 -2.1631 +v -6.2639 0.5454 -2.0823 +v -3.2516 2.9096 3.5028 +v 7.1709 2.9096 3.5028 +v 7.1709 7.9373 3.5028 +v -3.2516 7.9373 3.5028 +v 7.1709 2.9096 -0.0777 +v 7.1709 10.8036 -0.0777 +v 7.1709 2.9096 -3.6582 +v -3.2516 2.9096 -3.6582 +v -3.2516 7.9373 -3.6582 +v 7.1709 7.9373 -3.6582 +v -3.2516 2.9096 -0.0777 +v -3.2516 10.8036 -0.0777 +v -2.8467 2.9096 3.2440 +v 6.7660 2.9096 3.2440 +v -2.8467 2.9096 -0.0777 +v -2.8467 2.9096 -3.3994 +v 6.7660 2.9096 -3.3994 +v 6.7660 2.9096 -0.0777 +v -2.8468 -0.0302 3.2440 +v 6.7660 -0.0302 3.2440 +v -2.8468 -0.0302 -0.0777 +v -2.8468 -0.0302 -3.3994 +v 6.7660 -0.0302 -3.3994 +v 6.7660 -0.0302 -0.0777 +v 7.0102 3.0089 -4.2256 +v 7.5581 3.0089 -4.2256 +v 7.5581 2.4996 -4.2256 +v 7.0102 2.4996 -4.2256 +v 7.0102 3.0089 4.1317 +v 7.0102 2.4996 4.1317 +v 7.5581 2.4996 4.1317 +v 7.5581 3.0089 4.1317 +v -3.7439 3.0089 3.3027 +v -3.7439 2.4996 3.3027 +v -3.7439 2.4996 3.8506 +v -3.7439 3.0089 3.8506 +v 7.7366 3.0089 3.3027 +v 7.7366 3.0089 3.8506 +v 7.7366 2.4996 3.8506 +v 7.7366 2.4996 3.3027 +v -3.7439 3.0089 -3.4580 +v -3.7439 3.0089 -4.0060 +v -3.7439 2.4996 -4.0060 +v -3.7439 2.4996 -3.4580 +v 7.7366 3.0089 -3.4580 +v 7.7366 2.4996 -3.4580 +v 7.7366 2.4996 -4.0060 +v 7.7366 3.0089 -4.0060 +v -2.5135 6.6183 -3.5180 +v -2.5135 5.7934 -6.4571 +v 0.6090 5.7934 -6.4571 +v 0.6090 6.6183 -3.5180 +v -2.5135 6.8326 -3.5754 +v 0.6090 6.8326 -3.5754 +v 0.6090 6.0078 -6.5145 +v -2.5135 6.0078 -6.5145 +v 0.3848 3.3060 -6.2601 +v -2.4169 3.3060 -6.2601 +v -2.4169 3.3060 -3.5850 +v 0.3848 3.3060 -3.5850 +v 0.3848 2.8320 -3.5850 +v 0.3848 2.8320 -6.2601 +v -2.4169 2.8320 -6.2601 +v -2.4169 2.8320 -3.5850 +v -2.9596 2.9096 -4.0064 +v -3.5423 2.9096 -4.0064 +v -3.2948 5.6756 -3.7907 +v -2.8870 5.6756 -3.7907 +v -2.9596 2.9096 -3.3856 +v -2.8870 5.6756 -3.3177 +v -3.5423 2.9096 -3.3856 +v -3.2948 5.6756 -3.3177 +v -2.9450 7.9058 -4.0186 +v -3.5568 7.9058 -4.0186 +v -2.9450 8.2459 -3.3733 +v -3.5568 8.2459 -3.3733 +v -2.9596 2.9096 3.8510 +v -2.8870 5.6756 3.6354 +v -3.2948 5.6756 3.6354 +v -3.5423 2.9096 3.8510 +v -2.9596 2.9096 3.2303 +v -2.8870 5.6756 3.1623 +v -3.5423 2.9096 3.2303 +v -3.2948 5.6756 3.1623 +v -2.9450 7.9058 3.8633 +v -3.5568 7.9058 3.8633 +v -2.9450 8.2459 3.2180 +v -3.5568 8.2459 3.2180 +v -1.8648 5.8242 -3.6286 +v -0.5551 5.8242 -3.6286 +v -0.5551 5.8242 -3.9835 +v -1.8648 5.8242 -3.9835 +v -0.5551 3.3060 -3.6286 +v -0.5551 3.3060 -3.9835 +v -0.7855 3.3060 -3.8323 +v -1.6344 3.3060 -3.8323 +v -1.6344 5.4437 -3.8323 +v -0.7855 5.4437 -3.8323 +v -1.8648 3.3060 -3.9835 +v -1.8648 3.3060 -3.6286 +v -1.6344 5.4437 -3.9835 +v -1.6344 3.3060 -3.9835 +v -0.7855 5.4437 -3.9835 +v -0.7855 3.3060 -3.9835 +v 0.3607 2.7805 -6.2096 +v 1.9873 1.2273 -6.1877 +v 1.9873 1.2273 -5.9635 +v 0.3607 2.7805 -5.9635 +v 2.3459 1.5102 -5.9635 +v 2.3459 1.5102 -6.2096 +v 0.3607 3.3463 -6.2096 +v 0.3607 3.3463 -5.9635 +v 3.2877 -0.0134 -6.2096 +v 4.0129 -0.0134 -6.2096 +v 3.2877 -0.0134 -5.9635 +v 4.0129 -0.0134 -5.9635 +v -2.3337 -0.0302 -5.9479 +v -2.0764 -0.0302 -5.9479 +v -2.0324 2.9450 -5.7109 +v -2.2898 2.9450 -5.7109 +v -2.3337 -0.0302 -6.2053 +v -2.2898 2.9450 -5.9682 +v -2.0764 -0.0302 -6.2053 +v -2.0324 2.9450 -5.9682 +v -2.3337 5.9816 -5.9479 +v -2.0764 5.9816 -5.9479 +v -2.3337 5.9816 -6.2053 +v -2.0764 5.9816 -6.2053 +v -0.0074 -0.0302 -5.9479 +v 0.2500 -0.0302 -5.9479 +v 0.2939 2.9450 -5.7109 +v 0.0366 2.9450 -5.7109 +v -0.0074 -0.0302 -6.2053 +v 0.0366 2.9450 -5.9682 +v 0.2500 -0.0302 -6.2053 +v 0.2939 2.9450 -5.9682 +v -0.0074 5.9816 -5.9479 +v 0.2500 5.9816 -5.9479 +v -0.0074 5.9816 -6.2053 +v 0.2500 5.9816 -6.2053 +v -2.6217 0.0000 -3.7376 +v -3.2044 0.0000 -3.7376 +v -2.9569 1.0456 -3.5220 +v -2.5492 1.0456 -3.5220 +v -2.6217 0.0000 -3.1169 +v -2.5492 1.0456 -3.0489 +v -3.2044 0.0000 -3.1169 +v -2.9569 1.0456 -3.0489 +v -2.6072 2.9699 -3.7499 +v -3.2190 2.9699 -3.7499 +v -2.6072 3.0985 -3.1046 +v -3.2190 3.0985 -3.1046 +v 4.8927 5.3687 -5.8348 +v 4.8927 5.2326 -5.8348 +v 4.8927 5.2326 -5.9129 +v 4.8927 5.3687 -5.9129 +v 4.8927 5.0965 -5.8348 +v 4.8927 5.0965 -5.9129 +v 4.8927 4.9605 -5.8348 +v 4.8927 4.9605 -5.9129 +v 4.8927 4.7832 -5.8348 +v 4.8927 4.8244 -5.9129 +v 4.8927 5.3687 -5.9909 +v 4.8927 5.2540 -5.9909 +v 4.8927 5.2754 -6.0690 +v 4.8927 5.3687 -6.0690 +v 4.8927 5.1730 -5.9909 +v 4.8927 5.1792 -6.0690 +v 4.8927 5.3687 -6.2250 +v 4.8927 5.3687 -6.1470 +v 4.8927 5.2540 -6.1470 +v 4.8927 5.2326 -6.2250 +v 4.8927 5.1730 -6.1470 +v 4.8927 5.0965 -6.2250 +v 4.8927 5.3687 -6.3030 +v 4.8927 5.2326 -6.3030 +v 4.8927 5.2326 -6.3811 +v 4.8927 5.3687 -6.3811 +v 4.8927 5.0965 -6.3030 +v 4.8927 5.0965 -6.3811 +v 4.8927 4.9605 -6.3030 +v 4.8927 4.9605 -6.3811 +v 4.8927 4.7832 -6.3030 +v 4.8927 4.8244 -6.3811 +v 4.8927 5.3687 -5.7568 +v 4.8927 5.2326 -5.7568 +v 4.8927 5.0965 -5.7568 +v 4.8927 4.9605 -5.7568 +v 4.8927 4.8244 -5.7568 +v 4.8927 4.9605 -6.2250 +v 4.8927 4.8244 -6.2250 +v 4.8927 5.4217 -6.8979 +v 4.8927 4.9763 -6.8979 +v 4.8927 4.9763 -7.1386 +v 4.8927 5.4217 -7.1386 +v 4.8927 4.5310 -6.8979 +v 4.8927 4.5310 -7.1386 +v 4.8927 4.0856 -6.8979 +v 4.8927 4.0856 -7.1386 +v 4.8927 3.6402 -6.8979 +v 4.8927 3.7482 -7.1386 +v 4.8927 4.9763 -7.3794 +v 4.8927 5.4217 -7.3794 +v 4.8927 4.5310 -7.3794 +v 4.8927 4.0856 -7.3794 +v 4.8927 3.8020 -7.3794 +v 4.8927 4.9763 -7.6201 +v 4.8927 5.4217 -7.6201 +v 4.8927 4.5310 -7.6201 +v 4.8927 4.0856 -7.6201 +v 4.8927 3.7482 -7.6201 +v 4.8927 4.9763 -7.8609 +v 4.8927 5.4217 -7.8609 +v 4.8927 4.5310 -7.8609 +v 4.8927 4.0856 -7.8609 +v 4.8927 3.6402 -7.8609 +v 4.8983 5.4267 -4.2675 +v 4.8983 5.3567 -6.1034 +v 4.9561 5.3919 -6.1034 +v 4.9561 5.4619 -4.2675 +v 4.8983 5.4971 -4.2675 +v 4.8983 5.4271 -6.1034 +v 4.8983 5.4971 -7.9394 +v 4.9561 5.4619 -7.9394 +v 4.8983 5.4267 -7.9394 +v 5.2716 4.9661 -3.7293 +v 3.3567 4.9661 -3.7293 +v 3.3567 6.2120 -3.7293 +v 5.2716 6.2120 -3.7293 +v 5.4434 4.8376 -3.8169 +v 3.2170 4.8376 -3.8169 +v 3.3567 4.9661 -3.8169 +v 5.2716 4.9661 -3.8169 +v 3.2170 6.3098 -3.8169 +v 3.3567 6.2120 -3.8169 +v 5.4434 6.3098 -3.8169 +v 5.2716 6.2120 -3.8169 +v 3.2170 4.8376 -3.5927 +v 5.4434 4.8376 -3.5927 +v 3.2170 6.3098 -3.5927 +v 5.4434 6.3098 -3.5927 +v 3.1685 4.7720 -3.6639 +v 3.6230 4.7720 -4.9127 +v 3.7254 4.7720 -4.8755 +v 3.2708 4.7720 -3.6267 +v 3.1685 6.3098 -3.6639 +v 3.2708 6.3098 -3.6267 +v 3.7254 6.3098 -4.8755 +v 3.6230 6.3098 -4.9127 +v 5.3873 4.7720 -3.6267 +v 4.9328 4.7720 -4.8755 +v 5.0351 4.7720 -4.9127 +v 5.4897 4.7720 -3.6639 +v 5.3873 6.3098 -3.6267 +v 5.4897 6.3098 -3.6639 +v 5.0351 6.3098 -4.9127 +v 4.9328 6.3098 -4.8755 +v 6.8788 2.9096 -4.0064 +v 6.8063 5.6756 -3.7907 +v 7.2140 5.6756 -3.7907 +v 7.4615 2.9096 -4.0064 +v 6.8788 2.9096 -3.3856 +v 6.8063 5.6756 -3.3177 +v 7.4615 2.9096 -3.3856 +v 7.2140 5.6756 -3.3177 +v 6.8642 7.9058 -4.0186 +v 7.4761 7.9058 -4.0186 +v 6.8642 8.2459 -3.3734 +v 7.4761 8.2459 -3.3734 +v 6.8788 2.9096 3.8510 +v 7.4615 2.9096 3.8510 +v 7.2140 5.6756 3.6354 +v 6.8063 5.6756 3.6354 +v 6.8788 2.9096 3.2303 +v 6.8063 5.6756 3.1623 +v 7.4615 2.9096 3.2303 +v 7.2140 5.6756 3.1623 +v 6.8642 7.9058 3.8633 +v 7.4761 7.9058 3.8633 +v 6.8642 8.2459 3.2180 +v 7.4761 8.2459 3.2180 +v -1.0499 7.1920 0.8801 +v 1.5686 7.1920 0.8801 +v 1.5686 7.1920 5.9052 +v -1.0499 7.1920 5.9052 +v 1.5686 12.3427 5.9052 +v -1.0499 10.1678 5.9052 +v 4.1870 7.1920 5.9052 +v 4.1870 7.1920 0.8801 +v 4.1870 10.1678 0.8801 +v 4.1870 10.1678 5.9052 +v 1.5686 12.3427 0.8801 +v -1.0499 10.1678 0.8801 +v 1.0847 11.4972 -1.1541 +v 1.0847 12.4648 -1.1541 +v 2.0524 12.4648 -1.1541 +v 2.0524 11.4972 -1.1541 +v 1.2329 10.9471 0.9987 +v 1.2329 11.5276 0.9987 +v 1.9042 11.5276 0.9987 +v 1.9042 10.9471 0.9987 +v 1.5686 12.6046 6.6574 +v 1.5686 11.7979 3.3926 +v -1.5299 9.9268 3.3926 +v -1.6653 9.9268 6.6574 +v 4.8024 9.9268 6.6574 +v 4.6670 9.9268 3.3926 +v -1.6653 9.6585 6.6574 +v 1.5686 12.3363 6.6574 +v 4.8024 9.6585 6.6574 +v 4.6670 9.6585 3.3926 +v 4.8024 9.6585 0.1279 +v 1.5686 12.3363 0.1279 +v 1.5686 12.6046 0.1279 +v 4.8024 9.9268 0.1279 +v -1.6653 9.6585 0.1279 +v -1.6653 9.9268 0.1279 +v -1.5299 9.6585 3.3926 +v 1.5686 11.5296 3.3926 +v 0.9445 11.9887 1.1864 +v 0.9445 12.1807 1.1967 +v 0.9445 12.2404 0.0823 +v 0.9445 12.0484 0.0720 +v 1.4578 12.4440 0.0932 +v 1.4578 12.6360 0.1035 +v 1.4578 12.5763 1.2179 +v 1.4578 12.3843 1.2076 +v 1.5686 12.6490 0.1042 +v 1.5686 12.4569 0.0939 +v 1.5686 12.5893 1.2186 +v 1.5686 12.3972 1.2083 +v 2.1926 11.9887 1.1864 +v 2.1926 12.0484 0.0720 +v 2.1926 12.2404 0.0823 +v 2.1926 12.1807 1.1967 +v 1.6793 12.4440 0.0932 +v 1.6793 12.6360 0.1035 +v 1.6793 12.5763 1.2179 +v 1.6793 12.3843 1.2076 +v 0.9445 12.0392 6.7986 +v 0.9445 12.2301 6.7754 +v 0.9445 12.0954 5.6676 +v 0.9445 11.9045 5.6908 +v 1.4578 12.2978 5.6430 +v 1.4578 12.4887 5.6198 +v 1.4578 12.6234 6.7276 +v 1.4578 12.4325 6.7508 +v 1.5686 12.5016 5.6182 +v 1.5686 12.3107 5.6414 +v 1.5686 12.6363 6.7260 +v 1.5686 12.4454 6.7492 +v 2.1926 12.0392 6.7986 +v 2.1926 11.9045 5.6908 +v 2.1926 12.0954 5.6676 +v 2.1926 12.2301 6.7754 +v 1.6793 12.2978 5.6430 +v 1.6793 12.4887 5.6198 +v 1.6793 12.6234 6.7276 +v 1.6793 12.4325 6.7508 +v -4.7348 10.7447 -0.7017 +v -4.7116 10.9356 -0.7017 +v -3.6038 10.8009 -0.7017 +v -3.6270 10.6100 -0.7017 +v -3.5792 11.0033 -0.1884 +v -3.5560 11.1942 -0.1884 +v -4.6638 11.3289 -0.1884 +v -4.6870 11.1380 -0.1884 +v -3.5544 11.2071 -0.0777 +v -3.5776 11.0162 -0.0777 +v -4.6622 11.3418 -0.0777 +v -4.6854 11.1509 -0.0777 +v -4.7348 10.7447 0.5464 +v -3.6270 10.6100 0.5464 +v -3.6038 10.8009 0.5464 +v -4.7116 10.9356 0.5464 +v -3.5792 11.0033 0.0331 +v -3.5560 11.1942 0.0331 +v -4.6638 11.3289 0.0331 +v -4.6870 11.1380 0.0331 +v -4.7348 10.7185 -0.7017 +v -4.7116 10.9094 -0.7017 +v -3.6038 10.7747 -0.7017 +v -3.6270 10.5838 -0.7017 +v -3.5792 10.9772 -0.1884 +v -3.5560 11.1680 -0.1884 +v -4.6638 11.3028 -0.1884 +v -4.6870 11.1119 -0.1884 +v -3.5544 11.1809 -0.0777 +v -3.5776 10.9900 -0.0777 +v -4.6622 11.3156 -0.0777 +v -4.6854 11.1247 -0.0777 +v -4.7348 10.7185 0.5464 +v -3.6270 10.5838 0.5464 +v -3.6038 10.7747 0.5464 +v -4.7116 10.9094 0.5464 +v -3.5792 10.9772 0.0331 +v -3.5560 11.1680 0.0331 +v -4.6638 11.3028 0.0331 +v -4.6870 11.1119 0.0331 +v -5.3701 9.6711 0.4061 +v -5.3701 10.6387 0.4061 +v -5.3701 10.6387 -0.5615 +v -5.3701 9.6711 -0.5615 +v -3.2173 9.1210 0.2580 +v -3.2173 9.7015 0.2580 +v -3.2173 9.7015 -0.4133 +v -3.2173 9.1210 -0.4133 +v -8.2811 9.1402 -0.7017 +v -8.2579 9.3310 -0.7017 +v -7.1501 9.1963 -0.7017 +v -7.1733 9.0054 -0.7017 +v -7.1255 9.3988 -0.1884 +v -7.1023 9.5897 -0.1884 +v -8.2101 9.7244 -0.1884 +v -8.2333 9.5335 -0.1884 +v -7.1007 9.6025 -0.0777 +v -7.1239 9.4116 -0.0777 +v -8.2085 9.7372 -0.0777 +v -8.2317 9.5463 -0.0777 +v -8.2811 9.1402 0.5464 +v -7.1733 9.0054 0.5464 +v -7.1501 9.1963 0.5464 +v -8.2579 9.3310 0.5464 +v -7.1255 9.3988 0.0331 +v -7.1023 9.5897 0.0331 +v -8.2101 9.7244 0.0331 +v -8.2333 9.5335 0.0331 +v -9.2893 8.2216 0.4061 +v -9.2893 9.1892 0.4061 +v -9.2893 9.1892 -0.5615 +v -9.2893 8.2216 -0.5615 +v -7.1365 7.6714 0.2580 +v -7.1365 8.2520 0.2580 +v -7.1365 8.2520 -0.4133 +v -7.1365 7.6714 -0.4133 +v 8.6541 10.7185 -0.7017 +v 7.5463 10.5838 -0.7017 +v 7.5230 10.7747 -0.7017 +v 8.6309 10.9094 -0.7017 +v 7.4984 10.9772 -0.1884 +v 7.4752 11.1680 -0.1884 +v 8.5830 11.3028 -0.1884 +v 8.6062 11.1119 -0.1884 +v 7.4969 10.9900 -0.0777 +v 7.4736 11.1809 -0.0777 +v 8.5814 11.3156 -0.0777 +v 8.6047 11.1247 -0.0777 +v 8.6541 10.7185 0.5464 +v 8.6308 10.9094 0.5464 +v 7.5230 10.7747 0.5464 +v 7.5463 10.5838 0.5464 +v 7.4752 11.1680 0.0331 +v 7.4984 10.9772 0.0331 +v 8.5830 11.3028 0.0331 +v 8.6062 11.1119 0.0331 +v 1.0847 11.4972 7.9394 +v 2.0524 11.4972 7.9394 +v 2.0524 12.4648 7.9394 +v 1.0847 12.4648 7.9394 +v 1.2329 10.9471 5.7866 +v 1.2329 11.5276 5.7866 +v 1.9042 11.5276 5.7866 +v 1.9042 10.9471 5.7866 +v 4.7414 7.7419 5.5111 +v 4.7414 7.7419 6.0591 +v 4.7414 7.2325 6.0591 +v 4.7414 7.2325 5.5111 +v -1.6043 7.7419 5.5111 +v -1.6043 7.2325 5.5111 +v -1.6043 7.2325 6.0591 +v -1.6043 7.7419 6.0591 +v 1.5686 7.1097 6.0591 +v 1.5686 7.1097 5.5111 +v 1.5686 7.6191 6.0591 +v 1.5686 7.6191 5.5111 +v -1.2469 7.6233 5.5056 +v -1.2469 7.6233 6.0196 +v -1.2309 8.9468 5.9403 +v -1.2309 8.9468 5.5326 +v -0.6993 7.6233 5.5056 +v -0.7579 8.9468 5.5326 +v -0.6993 7.6233 6.0196 +v -0.7579 8.9468 5.9403 +v -1.2958 10.1392 5.4567 +v -1.2958 10.1392 6.0685 +v -0.6505 10.5249 5.4567 +v -0.6505 10.5249 6.0685 +v -0.6744 7.6552 6.1897 +v -1.2224 7.6552 6.1897 +v -1.2224 7.1458 6.1897 +v -0.6744 7.1458 6.1897 +v -0.6744 7.0906 4.5742 +v -1.2224 7.0906 4.5742 +v -1.2224 7.2524 3.0420 +v -0.6744 7.2524 3.0420 +v -1.2224 7.6000 4.5742 +v -1.2224 7.7618 3.0420 +v -0.6744 7.6000 4.5742 +v -0.6744 7.7618 3.0420 +v -0.1324 5.2606 3.5028 +v -0.1877 6.0816 4.8319 +v -0.7894 6.0816 4.8319 +v -0.8447 5.2606 3.5028 +v -0.1324 6.0605 3.5028 +v -0.1877 6.3358 4.2867 +v -0.8447 6.0605 3.5028 +v -0.7894 6.3358 4.2867 +v -0.1324 7.1920 5.8631 +v -0.8447 7.1920 5.8631 +v -0.1324 7.1920 5.1509 +v -0.8447 7.1920 5.1509 +v -2.6217 0.0000 3.5823 +v -2.5492 1.0456 3.3666 +v -2.9569 1.0456 3.3666 +v -3.2044 0.0000 3.5823 +v -2.6217 0.0000 2.9615 +v -2.5492 1.0456 2.8936 +v -3.2044 0.0000 2.9615 +v -2.9569 1.0456 2.8936 +v -2.6072 2.9699 3.5946 +v -3.2190 2.9699 3.5946 +v -2.6072 3.0985 2.9493 +v -3.2190 3.0985 2.9493 +v -6.7232 3.1632 2.8503 +v -6.8069 4.8291 2.8276 +v -7.2146 4.8291 2.8276 +v -7.2373 3.1632 2.8503 +v -6.7232 3.1632 2.3028 +v -6.8069 4.8291 2.3546 +v -7.2373 3.1632 2.3028 +v -7.2146 4.8291 2.3546 +v -6.6744 6.9707 2.8992 +v -7.2862 6.9707 2.8992 +v -6.6744 7.4227 2.2539 +v -7.2862 7.4227 2.2539 +v -6.7182 3.2178 3.0952 +v -7.2662 3.2178 3.0952 +v -7.2662 2.7084 3.0952 +v -6.7182 2.7084 3.0952 +v -6.7182 3.2178 -3.2505 +v -6.7182 2.7084 -3.2505 +v -7.2662 2.7084 -3.2505 +v -7.2662 3.2178 -3.2505 +v -7.2662 2.5856 -0.0777 +v -6.7182 2.5856 -0.0777 +v -7.2662 3.0950 -0.0777 +v -6.7182 3.0950 -0.0777 +v 3.2696 5.2606 3.5028 +v 3.9818 5.2606 3.5028 +v 3.9265 6.0816 4.8319 +v 3.3249 6.0816 4.8319 +v 3.2696 6.0605 3.5028 +v 3.3249 6.3358 4.2867 +v 3.9818 6.0605 3.5028 +v 3.9265 6.3358 4.2867 +v 3.2696 7.1920 5.8631 +v 3.9818 7.1920 5.8631 +v 3.2696 7.1920 5.1509 +v 3.9818 7.1920 5.1509 +v 2.0051 9.8771 5.9061 +v 1.5686 10.1940 5.9061 +v 1.5686 8.8605 5.9061 +v 2.0051 8.8864 5.9061 +v 2.3465 8.9102 5.8801 +v 2.3465 8.9102 5.9803 +v 2.3465 8.7676 5.9803 +v 2.3465 8.7676 5.8801 +v 1.5686 10.4279 5.8801 +v 1.5686 10.4279 5.9803 +v 2.2338 9.9669 5.9803 +v 2.2338 9.9669 5.8801 +v 0.7906 8.7676 5.8801 +v 0.7906 8.7676 5.9803 +v 0.7906 8.9102 5.9803 +v 0.7906 8.9102 5.8801 +v 1.5686 8.7179 5.8801 +v 1.5686 8.7179 5.9803 +v 0.9033 8.7676 5.9803 +v 0.9033 8.7676 5.8801 +v 2.2338 8.7676 6.0902 +v 2.2338 8.9102 6.0902 +v 2.0051 8.8864 6.0902 +v 1.5686 10.1940 5.9803 +v 2.0051 9.8771 5.9803 +v 0.9033 8.9102 6.0902 +v 0.9033 8.7676 6.0902 +v 1.1320 8.8957 6.0902 +v 1.5686 8.7179 6.0902 +v 1.5686 8.8605 6.0902 +v 1.1320 9.8771 5.9061 +v 1.1320 8.8957 5.9061 +v 0.9033 9.9669 5.8801 +v 0.9033 9.9669 5.9803 +v 2.2338 8.7676 5.8801 +v 2.2338 8.7676 5.9803 +v 1.1320 9.8771 5.9803 +v 2.0051 8.8864 5.9803 +v 1.1320 8.8957 5.9803 +v 1.5686 8.8605 5.9803 +v 0.9033 8.9102 5.9803 +v 0.9033 8.9102 5.8801 +v 2.2338 8.9102 5.9803 +v 2.2338 8.9102 5.8801 +v 2.3465 8.9102 6.0902 +v 2.3465 8.7676 6.0902 +v 0.7906 8.7676 6.0902 +v 0.7906 8.9102 6.0902 +v 7.1954 5.9506 -0.5142 +v 7.1954 6.2676 -0.0777 +v 7.1954 4.9340 -0.0777 +v 7.1954 4.9600 -0.5142 +v 7.1694 4.9838 -0.8556 +v 7.2696 4.9838 -0.8556 +v 7.2696 4.8411 -0.8556 +v 7.1694 4.8411 -0.8556 +v 7.1694 6.5014 -0.0777 +v 7.2696 6.5014 -0.0777 +v 7.2696 6.0404 -0.7429 +v 7.1694 6.0404 -0.7429 +v 7.1694 4.8411 0.7003 +v 7.2696 4.8411 0.7003 +v 7.2696 4.9838 0.7003 +v 7.1694 4.9838 0.7003 +v 7.1694 4.7914 -0.0777 +v 7.2696 4.7914 -0.0777 +v 7.2696 4.8411 0.5875 +v 7.1694 4.8411 0.5875 +v 7.3796 4.8411 -0.7429 +v 7.3796 4.9838 -0.7429 +v 7.3796 4.9600 -0.5142 +v 7.2696 6.2676 -0.0777 +v 7.2696 5.9506 -0.5142 +v 7.3796 4.9838 0.5875 +v 7.3796 4.8411 0.5875 +v 7.3796 4.9692 0.3589 +v 7.3796 4.7914 -0.0777 +v 7.3796 4.9340 -0.0777 +v 7.1954 5.9506 0.3589 +v 7.1954 4.9692 0.3589 +v 7.1694 6.0404 0.5875 +v 7.2696 6.0404 0.5875 +v 7.1694 4.8411 -0.7429 +v 7.2696 4.8411 -0.7429 +v 7.2696 5.9506 0.3589 +v 7.2696 4.9600 -0.5142 +v 7.2696 4.9692 0.3589 +v 7.2696 4.9340 -0.0777 +v 7.2696 4.9838 0.5875 +v 7.1694 4.9838 0.5875 +v 7.2696 4.9838 -0.7429 +v 7.1694 4.9838 -0.7429 +v 7.3796 4.9838 -0.8556 +v 7.3796 4.8411 -0.8556 +v 7.3796 4.8411 0.7003 +v 7.3796 4.9838 0.7003 +v 6.4902 0.0000 3.5823 +v 7.0730 0.0000 3.5823 +v 6.8254 1.0456 3.3666 +v 6.4177 1.0456 3.3666 +v 6.4902 0.0000 2.9615 +v 6.4177 1.0456 2.8936 +v 7.0730 0.0000 2.9615 +v 6.8254 1.0456 2.8936 +v 6.4757 2.9699 3.5946 +v 7.0875 2.9699 3.5946 +v 6.4757 3.0985 2.9493 +v 7.0875 3.0985 2.9493 +v 6.4902 0.0000 -3.7376 +v 6.4177 1.0456 -3.5220 +v 6.8254 1.0456 -3.5220 +v 7.0730 0.0000 -3.7376 +v 6.4902 0.0000 -3.1169 +v 6.4177 1.0456 -3.0489 +v 7.0730 0.0000 -3.1169 +v 6.8254 1.0456 -3.0489 +v 6.4757 2.9699 -3.7499 +v 7.0875 2.9699 -3.7499 +v 6.4757 3.0985 -3.1046 +v 7.0875 3.0985 -3.1046 +v 9.2893 9.6711 0.4061 +v 9.2893 9.6711 -0.5615 +v 9.2893 10.6387 -0.5615 +v 9.2893 10.6387 0.4061 +v 7.1365 9.1210 0.2580 +v 7.1365 9.7015 0.2580 +v 7.1365 9.7015 -0.4133 +v 7.1365 9.1210 -0.4133 +v 2.3881 0.8227 -4.2558 +v 3.0109 0.8227 -4.2558 +v 3.0109 0.8227 -5.9635 +v 2.3881 0.8227 -5.9635 +v 3.0109 0.7221 -4.2558 +v 3.0109 0.7221 -5.9635 +v 2.7807 0.4301 -4.2558 +v 3.4035 0.4301 -4.2558 +v 3.4035 0.4301 -5.9635 +v 2.7807 0.4301 -5.9635 +v 3.4035 0.3295 -4.2558 +v 3.4035 0.3295 -5.9635 +v 3.2028 0.2090 -4.2558 +v 3.8256 0.2090 -4.2558 +v 3.8256 0.2090 -5.9635 +v 3.2028 0.2090 -5.9635 +v 3.8256 0.1084 -4.2558 +v 3.8256 0.1084 -5.9635 +v 0.3607 2.7805 -4.2760 +v 1.9873 1.2273 -4.2541 +v 1.9873 1.2273 -4.0299 +v 0.3607 2.7805 -4.0299 +v 2.3459 1.5102 -4.0299 +v 2.3459 1.5102 -4.2760 +v 0.3607 3.3463 -4.2760 +v 0.3607 3.3463 -4.0299 +v 3.2877 -0.0134 -4.2760 +v 4.0129 -0.0134 -4.2760 +v 3.2877 -0.0134 -4.0299 +v 4.0129 -0.0134 -4.0299 +v 1.2101 2.0007 -4.2558 +v 1.8329 2.0007 -4.2558 +v 1.8329 2.0007 -5.9635 +v 1.2101 2.0007 -5.9635 +v 1.8329 1.9001 -4.2558 +v 1.8329 1.9001 -5.9635 +v 1.9954 1.2154 -4.2558 +v 2.6182 1.2154 -4.2558 +v 2.6182 1.2154 -5.9635 +v 1.9954 1.2154 -5.9635 +v 2.6182 1.1148 -4.2558 +v 2.6182 1.1148 -5.9635 +v 1.6028 1.6080 -4.2558 +v 2.2256 1.6080 -4.2558 +v 2.2256 1.6080 -5.9635 +v 1.6028 1.6080 -5.9635 +v 2.2256 1.5074 -4.2558 +v 2.2256 1.5074 -5.9635 +v 0.8175 2.3933 -4.2558 +v 1.4403 2.3933 -4.2558 +v 1.4403 2.3933 -5.9635 +v 0.8175 2.3933 -5.9635 +v 1.4403 2.2927 -4.2558 +v 1.4403 2.2927 -5.9635 +v 0.4248 2.7860 -4.2558 +v 1.0476 2.7860 -4.2558 +v 1.0476 2.7860 -5.9635 +v 0.4248 2.7860 -5.9635 +v 1.0476 2.6854 -4.2558 +v 1.0476 2.6854 -5.9635 +v 4.3804 4.9359 -3.7128 +v 4.3804 4.9359 -3.8100 +v 4.3804 6.2446 -3.8100 +v 4.3804 6.2446 -3.7128 +v 4.2479 4.9359 -3.8100 +v 4.2479 6.2446 -3.8100 +v 4.2479 4.9359 -3.7128 +v 4.2479 6.2446 -3.7128 +v 4.3840 7.5263 5.5056 +v 4.3681 8.8497 5.5326 +v 4.3681 8.8497 5.9403 +v 4.3840 7.5263 6.0196 +v 3.8365 7.5263 5.5056 +v 3.8950 8.8497 5.5326 +v 3.8365 7.5263 6.0196 +v 3.8950 8.8497 5.9403 +v 4.4329 10.0421 5.4567 +v 4.4329 10.0421 6.0685 +v 3.7876 10.4278 5.4567 +v 3.7876 10.4278 6.0685 +v 3.8116 7.6552 6.1897 +v 3.8116 7.1458 6.1897 +v 4.3595 7.1458 6.1897 +v 4.3595 7.6552 6.1897 +v 3.8116 7.0906 4.5742 +v 3.8116 7.2524 3.0420 +v 4.3595 7.2524 3.0420 +v 4.3595 7.0906 4.5742 +v 4.3595 7.7618 3.0420 +v 4.3595 7.6000 4.5742 +v 3.8116 7.7618 3.0420 +v 3.8116 7.6000 4.5742 +v -1.4771 5.0898 -6.4637 +v -1.9428 5.1372 -6.7076 +v -2.0334 5.8873 -6.3814 +v -1.4996 5.8873 -6.3814 +v -0.9691 5.1030 -6.5948 +v -0.9657 5.8873 -6.3814 +v -0.4435 5.1002 -6.5399 +v -0.4319 5.8873 -6.3814 +v 0.0759 5.0635 -6.4447 +v 0.1019 5.8873 -6.3814 +v -1.4413 4.3211 -6.5007 +v -1.7739 4.4052 -6.9063 +v -0.9920 4.3538 -6.7854 +v -0.5263 4.3417 -6.5267 +v -0.0178 4.2732 -6.3949 +v -1.3879 3.5934 -6.5914 +v -1.5246 3.7366 -7.0874 +v -0.9385 3.6267 -6.8777 +v -0.4313 3.6518 -6.7088 +v -0.2051 3.5484 -6.2310 +v -1.2861 2.9368 -6.7930 +v -1.7756 3.1551 -6.8101 +v -0.7710 2.9815 -6.6713 +v -0.3018 3.0074 -6.9315 +v 0.1094 3.0048 -6.5830 +# 1383 vertices + +vn 0.0000 0.0000 -1.0000 +vn 0.4638 0.6957 -0.5486 +vn 0.4636 0.6954 -0.5490 +vn 0.4638 0.6957 -0.5485 +vn 0.9977 -0.0673 -0.0000 +vn 0.5491 0.8298 -0.0992 +vn 0.9977 -0.0673 0.0000 +vn 0.0000 -0.0000 1.0000 +vn 0.4638 0.6957 0.5485 +vn 0.4637 0.6955 0.5489 +vn 0.4638 0.6957 0.5486 +vn 0.4637 0.6956 0.5488 +vn 0.5491 0.8298 0.0992 +vn 0.5492 0.8298 0.0991 +vn 0.2072 0.7740 -0.5984 +vn 0.2072 0.7738 -0.5986 +vn 0.2072 0.7741 -0.5981 +vn 0.9997 -0.0244 -0.0000 +vn 0.9995 -0.0305 -0.0000 +vn 0.2596 0.9591 -0.1127 +vn 0.2596 0.9591 -0.1126 +vn 0.2568 0.9599 -0.1127 +vn 0.2568 0.9599 -0.1128 +vn 0.9997 -0.0244 0.0000 +vn 0.9995 -0.0305 0.0000 +vn 0.2072 0.7740 0.5984 +vn 0.2596 0.9591 0.1126 +vn 0.2568 0.9599 0.1128 +vn 0.2568 0.9599 0.1127 +vn 0.2596 0.9591 0.1127 +vn 0.0825 0.7882 -0.6099 +vn 0.0855 0.7881 -0.6096 +vn 0.0855 0.7882 -0.6095 +vn 0.9999 -0.0122 -0.0000 +vn 0.1037 0.9879 -0.1155 +vn 0.1037 0.9879 -0.1153 +vn 0.1037 0.9879 -0.1154 +vn 0.0855 0.7880 0.6097 +vn 0.0855 0.7881 0.6096 +vn 0.0825 0.7882 0.6098 +vn 0.1037 0.9879 0.1155 +vn 0.1037 0.9879 0.1154 +vn 0.2867 0.7565 -0.5878 +vn 0.2896 0.7561 -0.5869 +vn 0.2868 0.7568 -0.5874 +vn 0.9993 -0.0367 -0.0000 +vn 0.3544 0.9287 -0.1096 +vn 0.9993 -0.0367 0.0000 +vn 0.2896 0.7559 0.5871 +vn 0.2867 0.7565 0.5878 +vn 0.2868 0.7568 0.5874 +vn 0.3544 0.9287 0.1096 +vn -0.0851 0.7903 -0.6068 +vn -0.0851 0.7905 -0.6065 +vn -0.9999 -0.0122 -0.0000 +vn -0.1037 0.9879 -0.1154 +vn -0.1037 0.9879 -0.1157 +vn -0.1037 0.9879 -0.1155 +vn -0.1037 0.9879 -0.1153 +vn -0.0851 0.7903 0.6068 +vn -0.1037 0.9879 0.1153 +vn -0.1037 0.9879 0.1155 +vn -0.1037 0.9879 0.1156 +vn -0.1037 0.9879 0.1154 +vn -0.3972 0.7211 -0.5676 +vn -0.3974 0.7215 -0.5671 +vn -0.9981 -0.0609 -0.0000 +vn -0.9985 -0.0548 -0.0000 +vn -0.4788 0.8717 -0.1041 +vn -0.4788 0.8717 -0.1043 +vn -0.4788 0.8717 -0.1044 +vn -0.4788 0.8717 -0.1042 +vn -0.3974 0.7215 0.5671 +vn -0.3972 0.7211 0.5676 +vn -0.3972 0.7212 0.5676 +vn -0.9981 -0.0609 0.0000 +vn -0.4788 0.8717 0.1041 +vn -0.4788 0.8717 0.1043 +vn -0.2868 0.7566 -0.5877 +vn -0.2868 0.7568 -0.5874 +vn -0.2895 0.7558 -0.5874 +vn -0.2896 0.7560 -0.5870 +vn -0.9993 -0.0367 -0.0000 +vn -0.3544 0.9287 -0.1095 +vn -0.3544 0.9287 -0.1096 +vn -0.9993 -0.0367 0.0000 +vn -0.2896 0.7559 0.5871 +vn -0.2868 0.7566 0.5877 +vn -0.2896 0.7560 0.5870 +vn -0.3544 0.9287 0.1096 +vn -0.3544 0.9287 0.1095 +vn -0.2896 0.7561 -0.5869 +vn -0.9991 -0.0428 -0.0000 +vn -0.9991 -0.0428 0.0000 +vn -0.0821 0.7905 -0.6069 +vn -0.0825 0.7884 -0.6096 +vn -0.9999 -0.0122 0.0000 +vn -0.0825 0.7882 0.6099 +vn -0.0821 0.7905 0.6069 +vn -0.1316 0.7835 -0.6073 +vn -0.1310 0.7857 -0.6045 +vn -0.1315 0.7830 -0.6079 +vn -0.9998 -0.0183 -0.0000 +vn -0.1668 0.9793 -0.1149 +vn -0.1653 0.9795 -0.1150 +vn -0.1653 0.9795 -0.1152 +vn -0.1643 0.9797 -0.1147 +vn -0.1668 0.9793 -0.1150 +vn -0.1315 0.7830 0.6079 +vn -0.1310 0.7859 0.6043 +vn -0.1316 0.7835 0.6073 +vn -0.1668 0.9793 0.1150 +vn -0.1643 0.9797 0.1146 +vn -0.1653 0.9795 0.1150 +vn -0.1668 0.9793 0.1149 +vn -0.9998 -0.0183 0.0000 +vn 0.4615 0.6968 -0.5491 +vn 0.4637 0.6955 -0.5489 +vn 0.4612 0.6964 -0.5498 +vn 0.9981 -0.0610 -0.0000 +vn 0.9973 -0.0732 -0.0000 +vn 0.5492 0.8298 -0.0991 +vn 0.5491 0.8298 -0.0994 +vn 0.9981 -0.0610 0.0000 +vn 0.4615 0.6968 0.5491 +vn 0.4611 0.6963 0.5501 +vn 0.5491 0.8298 0.0994 +vn 0.2082 0.7714 -0.6013 +vn 0.2082 0.7715 -0.6012 +vn 0.2081 0.7713 -0.6014 +vn 0.2082 0.7717 -0.6010 +vn 0.2567 0.9600 -0.1121 +vn 0.2567 0.9600 -0.1120 +vn 0.2581 0.9596 -0.1120 +vn 0.2082 0.7715 0.6012 +vn 0.2081 0.7714 0.6014 +vn 0.2567 0.9600 0.1120 +vn 0.2581 0.9596 0.1120 +vn 0.2567 0.9600 0.1121 +vn 0.2896 0.7560 -0.5870 +vn 0.2889 0.7562 -0.5871 +vn 0.2874 0.7563 -0.5878 +vn 0.9993 -0.0366 -0.0000 +vn 0.9991 -0.0427 -0.0000 +vn 0.3550 0.9284 -0.1096 +vn 0.9993 -0.0366 0.0000 +vn 0.2869 0.7569 0.5872 +vn 0.2889 0.7562 0.5872 +vn 0.2896 0.7560 0.5870 +vn 0.3550 0.9284 0.1096 +vn 0.0844 0.7904 -0.6067 +vn 0.0844 0.7899 -0.6074 +vn 0.0827 0.7884 -0.6096 +vn 0.0848 0.7882 -0.6095 +vn 0.1051 0.9877 -0.1155 +vn 0.1052 0.9877 -0.1153 +vn 0.1052 0.9877 -0.1155 +vn 0.0827 0.7882 0.6099 +vn 0.0844 0.7899 0.6074 +vn 0.0844 0.7904 0.6067 +vn 0.0848 0.7881 0.6097 +vn 0.1051 0.9877 0.1155 +vn 0.1052 0.9877 0.1155 +vn 0.1052 0.9878 0.1152 +vn 0.0823 0.7905 -0.6069 +vn 0.0821 0.7905 -0.6069 +vn 0.0847 0.7875 -0.6105 +vn 0.1029 0.9879 -0.1157 +vn 0.1050 0.9877 -0.1155 +vn 0.1052 0.9878 -0.1152 +vn 0.0821 0.7905 0.6069 +vn 0.0823 0.7905 0.6069 +vn 0.1050 0.9877 0.1155 +vn 0.1029 0.9880 0.1155 +vn 0.1052 0.9877 0.1153 +vn 0.9999 -0.0122 0.0000 +vn -0.2889 0.7562 -0.5871 +vn -0.2889 0.7563 -0.5870 +vn 0.9993 0.0366 0.0000 +vn 0.9991 0.0427 0.0000 +vn -0.3550 0.9284 -0.1096 +vn -0.3550 0.9284 -0.1095 +vn -0.2889 0.7562 0.5871 +vn -0.2889 0.7561 0.5873 +vn -0.3550 0.9284 0.1095 +vn -0.3550 0.9284 0.1096 +vn -1.0000 0.0000 -0.0000 +vn -0.9244 0.3783 -0.0488 +vn -0.9245 0.3784 -0.0458 +vn 0.0000 -0.1222 -0.9925 +vn -0.3448 0.9318 -0.1134 +vn -0.3462 0.9313 -0.1133 +vn -0.3461 0.9310 -0.1164 +vn -0.3447 0.9315 -0.1164 +vn 1.0000 0.0000 -0.0000 +vn 0.9245 0.3784 -0.0458 +vn 0.9244 0.3783 -0.0488 +vn 0.3462 0.9313 -0.1133 +vn 0.3461 0.9310 -0.1164 +vn -0.9250 0.3785 -0.0336 +vn 0.0000 -0.0856 -0.9963 +vn -0.3434 0.9359 -0.0790 +vn -0.3433 0.9356 -0.0820 +vn -0.3420 0.9364 -0.0790 +vn 0.9250 0.3785 -0.0336 +vn 0.3434 0.9359 -0.0790 +vn 0.3433 0.9356 -0.0820 +vn -0.9254 0.3787 -0.0122 +vn 0.0000 -0.0367 -0.9993 +vn 0.0000 -0.0366 -0.9993 +vn -0.3429 0.9389 -0.0305 +vn -0.3456 0.9379 -0.0305 +vn -0.3443 0.9384 -0.0305 +vn 0.9254 0.3787 -0.0122 +vn 0.3443 0.9384 -0.0305 +vn 0.3456 0.9379 -0.0305 +vn 0.9245 0.3784 0.0458 +vn 0.0000 -0.1222 0.9925 +vn 0.3462 0.9313 0.1133 +vn 0.3448 0.9318 0.1134 +vn 0.3448 0.9316 0.1149 +vn -0.9245 0.3784 0.0458 +vn -0.3462 0.9313 0.1133 +vn -0.3461 0.9311 0.1149 +vn -0.3448 0.9318 0.1134 +vn 0.0000 -0.1220 0.9925 +vn -0.9244 0.3786 0.0458 +vn 0.9245 0.3783 0.0461 +vn 0.3462 0.9313 0.1137 +vn 0.3448 0.9317 0.1142 +vn -0.9245 0.3783 0.0461 +vn -0.3462 0.9313 0.1137 +vn -0.3448 0.9317 0.1142 +vn 0.1113 -0.8478 -0.5185 +vn 0.1128 -0.8477 -0.5184 +vn 0.1284 -0.8312 -0.5409 +vn 0.1276 -0.8313 -0.5410 +vn -0.5831 -0.6350 -0.5068 +vn -0.5830 -0.6349 -0.5069 +vn -0.5055 -0.6699 -0.5437 +vn -0.5053 -0.6697 -0.5442 +vn -0.5051 -0.6694 -0.5447 +vn -0.5049 -0.6691 0.5454 +vn -0.5051 -0.6693 0.5449 +vn -0.5072 -0.6661 0.5469 +vn -0.1315 -0.7827 0.6084 +vn -0.1285 -0.7830 0.6086 +vn -0.1284 -0.7824 0.6095 +vn -0.1342 -0.7809 0.6101 +vn -0.1357 -0.7807 0.6099 +vn -0.1378 -0.7857 0.6030 +vn -0.1356 -0.7860 0.6032 +vn -0.1341 -0.7861 0.6033 +vn 0.4588 0.6974 -0.5506 +vn 0.4585 0.6969 -0.5515 +vn 0.1356 0.8168 -0.5607 +vn 0.1334 0.8170 -0.5609 +vn 0.1341 0.8170 -0.5609 +vn 0.0000 -0.8372 0.5469 +vn 0.0000 -0.8172 -0.5763 +vn 0.0000 0.8673 0.4978 +vn 0.0000 0.8680 0.4965 +vn 0.3717 0.7678 0.5219 +vn 0.3701 0.7677 0.5231 +vn 0.3693 0.7676 0.5239 +vn 0.0000 -0.8372 -0.5469 +vn 0.0000 -0.8172 0.5763 +vn 0.3700 0.7673 -0.5237 +vn 0.3701 0.7677 -0.5231 +vn 0.3717 0.7678 -0.5219 +vn 0.0000 0.8681 -0.4965 +vn 0.0000 0.8673 -0.4978 +vn 0.1682 -0.8258 0.5383 +vn 0.1700 -0.8418 0.5124 +vn 0.1708 -0.8417 0.5123 +vn -0.1354 -0.8945 -0.4260 +vn -0.1339 -0.8947 -0.4261 +vn 0.1830 0.8114 0.5551 +vn 0.1838 0.8113 0.5551 +vn 0.1853 0.8085 0.5585 +vn 0.4591 0.7053 0.5402 +vn 0.4589 0.7051 0.5405 +vn 0.4608 0.7019 0.5432 +vn -0.1158 -0.8474 -0.5182 +vn -0.1128 -0.8477 -0.5184 +vn -0.1284 -0.8312 -0.5409 +vn 0.5072 -0.6661 -0.5469 +vn 0.5054 -0.6698 -0.5441 +vn 0.5056 -0.6700 -0.5435 +vn 0.5809 -0.6359 -0.5081 +vn 0.5811 -0.6361 -0.5077 +vn 0.1284 -0.7824 0.6094 +vn 0.1285 -0.7830 0.6086 +vn 0.5072 -0.6661 0.5469 +vn 0.5051 -0.6694 0.5447 +vn 0.5049 -0.6691 0.5454 +vn 0.1341 -0.7861 0.6033 +vn 0.1371 -0.7858 0.6031 +vn 0.1342 -0.7809 0.6101 +vn -0.4585 0.6969 -0.5515 +vn -0.4587 0.6972 -0.5509 +vn -0.4588 0.6974 -0.5506 +vn -0.1341 0.8170 -0.5609 +vn -0.1341 0.8169 -0.5610 +vn -0.3719 0.7681 0.5212 +vn -0.3715 0.7674 0.5225 +vn -0.3717 0.7678 0.5219 +vn -0.3717 0.7678 -0.5219 +vn -0.3715 0.7674 -0.5225 +vn -0.3713 0.7669 -0.5234 +vn -0.1682 -0.8258 0.5383 +vn -0.1712 -0.8254 0.5380 +vn -0.1708 -0.8417 0.5123 +vn 0.1339 -0.8947 -0.4261 +vn -0.1838 0.8089 0.5585 +vn -0.1860 0.8109 0.5548 +vn -0.1830 0.8114 0.5551 +vn -0.4584 0.7029 0.5439 +vn -0.4568 0.7066 0.5404 +vn -0.4566 0.7062 0.5411 +vn 0.9996 0.0000 -0.0288 +vn 0.9997 -0.0183 -0.0183 +vn 0.9996 0.0000 -0.0291 +vn 0.9996 -0.0000 0.0282 +vn 0.9996 -0.0000 0.0285 +vn 0.9998 -0.0122 0.0183 +vn 0.9998 -0.0122 0.0152 +vn -0.9998 -0.0122 0.0183 +vn -0.9996 -0.0000 0.0285 +vn -0.9996 -0.0000 0.0282 +vn -0.9998 -0.0122 0.0152 +vn -0.9997 -0.0183 -0.0183 +vn -0.9996 0.0000 -0.0288 +vn -0.9996 0.0000 -0.0291 +vn 0.1039 -0.7575 -0.6445 +vn 0.1156 -0.7365 -0.6665 +vn 0.1096 -0.7370 -0.6669 +vn 0.1126 -0.7367 -0.6667 +vn -0.2503 -0.7694 -0.5877 +vn -0.2501 -0.7687 -0.5887 +vn -0.2503 -0.7693 -0.5879 +vn -0.5318 -0.6968 -0.4812 +vn -0.5318 -0.6968 -0.4813 +vn -0.5172 -0.6815 0.5177 +vn -0.5195 -0.6784 0.5195 +vn 0.2383 -0.8127 0.5316 +vn 0.2322 -0.8126 0.5346 +vn 0.2323 -0.8130 0.5338 +vn -0.1162 -0.6727 0.7308 +vn -0.1160 -0.6775 0.7263 +vn -0.1220 -0.6770 0.7258 +vn 0.4650 0.7097 -0.5292 +vn 0.4650 0.7098 -0.5291 +vn 0.4674 0.7088 -0.5283 +vn 0.0854 0.8601 -0.5030 +vn 0.0854 0.8600 -0.5032 +vn 0.0000 -0.7399 0.6727 +vn 0.0000 -0.7132 -0.7010 +vn 0.0000 0.8956 0.4448 +vn 0.0000 0.8960 0.4440 +vn 0.4281 0.7828 0.4516 +vn 0.4280 0.7826 0.4522 +vn 0.4279 0.7825 0.4524 +vn 0.0000 -0.7399 -0.6727 +vn 0.0000 -0.7132 0.7010 +vn 0.4279 0.7825 -0.4524 +vn 0.4280 0.7826 -0.4522 +vn 0.4281 0.7828 -0.4516 +vn 0.0000 0.8960 -0.4440 +vn 0.0000 0.8956 -0.4448 +vn 0.1524 -0.7316 0.6645 +vn 0.1494 -0.7319 0.6648 +vn 0.1528 -0.7516 0.6416 +vn -0.1223 -0.8258 -0.5505 +vn -0.1218 -0.8284 -0.5467 +vn 0.1223 0.8564 0.5016 +vn 0.1187 0.8583 0.4992 +vn 0.1193 0.8566 0.5019 +vn 0.4673 0.7148 0.5203 +vn 0.4648 0.7156 0.5214 +vn 0.4700 0.7141 0.5188 +vn -0.9995 -0.0183 0.0274 +vn -0.9992 -0.0000 0.0395 +vn -0.9992 -0.0000 0.0391 +vn -0.9995 -0.0183 -0.0274 +vn -0.9992 0.0000 -0.0399 +vn -0.9992 0.0000 -0.0404 +vn 0.0000 0.0122 -0.9999 +vn 0.0000 -0.0091 -1.0000 +vn 0.9999 0.0152 0.0000 +vn 0.0000 0.0305 0.9995 +vn -1.0000 0.0030 0.0000 +vn -1.0000 -0.0030 -0.0000 +vn 0.0000 -0.0305 -0.9995 +vn 0.9998 -0.0213 -0.0000 +vn 0.9998 -0.0183 -0.0000 +vn 0.9998 -0.0183 0.0122 +vn 0.9998 -0.0183 0.0107 +vn 0.0000 -0.0366 0.9993 +vn 0.0000 -0.0397 0.9992 +vn -0.9999 -0.0122 0.0061 +vn -1.0000 -0.0061 0.0061 +vn 0.0000 -1.0000 -0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.0000 0.8224 -0.5689 +vn 0.0000 -0.9972 0.0743 +vn 0.0000 0.8224 0.5689 +vn 0.0000 -0.9973 -0.0740 +vn 0.0000 -0.9972 -0.0747 +vn 0.0000 -0.8101 0.5863 +vn 0.0000 -0.8103 0.5860 +vn 0.0000 -0.8103 -0.5860 +vn 0.0000 -0.8101 -0.5863 +vn 0.0000 0.9968 -0.0804 +vn 0.0000 0.9968 -0.0803 +vn 0.0000 0.9982 0.0594 +vn 0.0000 0.9982 0.0591 +vn 0.0000 0.9946 0.1037 +vn 0.0000 0.9946 0.1034 +vn 0.0000 0.9980 -0.0633 +vn 0.0000 -0.9972 0.0745 +vn 0.0000 -0.9972 -0.0745 +vn 0.2289 -0.9735 -0.0000 +vn -0.2289 0.9735 0.0000 +vn -0.2260 -0.9741 -0.0000 +vn 0.2318 0.9728 0.0000 +vn -0.9993 0.0383 0.0000 +vn -0.9993 0.0385 0.0000 +vn 0.0000 0.1578 0.9875 +vn 0.0000 0.1581 0.9874 +vn 0.0000 0.1580 0.9874 +vn 0.0000 0.1579 0.9875 +vn 0.9993 0.0383 0.0000 +vn 0.9993 0.0385 0.0000 +vn 0.0000 0.1581 -0.9874 +vn 0.0000 0.1583 -0.9874 +vn -0.9999 -0.0152 -0.0000 +vn -1.0000 0.0046 0.0000 +vn 0.0000 -0.0275 0.9996 +vn 0.0000 0.0076 1.0000 +vn 0.0000 -0.0275 -0.9996 +vn 0.0000 0.0076 -1.0000 +vn -0.9622 0.2725 0.0000 +vn -0.9623 0.2722 0.0000 +vn 0.0000 0.8520 -0.5235 +vn 0.0000 0.8512 -0.5248 +vn 0.9623 0.2722 0.0000 +vn 0.9622 0.2725 0.0000 +vn 0.0000 0.8520 0.5235 +vn 0.0000 0.8513 0.5246 +vn -0.9963 0.0856 0.0000 +vn -0.9964 0.0852 0.0000 +vn 0.0000 0.4396 -0.8982 +vn 0.9964 0.0852 0.0000 +vn 0.9963 0.0856 0.0000 +vn 0.0000 0.4405 0.8978 +vn 0.0000 0.4402 0.8979 +vn -0.9997 0.0236 0.0000 +vn 0.0000 0.0446 0.9990 +vn 1.0000 0.0004 0.0000 +vn 0.0000 0.0446 -0.9990 +vn 0.0000 0.1583 0.9874 +vn 0.0000 0.1579 -0.9875 +vn 0.0000 -0.0274 -0.9996 +vn 0.0000 0.8513 -0.5246 +vn 0.0000 0.4402 -0.8979 +vn 0.0000 0.4405 -0.8978 +vn 0.0000 0.4396 0.8982 +vn -0.9997 0.0232 0.0000 +vn 0.0000 0.0447 -0.9990 +vn 0.0000 -0.9633 0.2683 +vn 0.0000 0.9626 -0.2711 +vn 0.0000 0.9633 -0.2683 +vn 0.0000 -0.2569 -0.9664 +vn 0.0000 0.0762 -0.9971 +vn 0.0000 -0.0122 -0.9999 +vn 1.0000 -0.0091 -0.0000 +vn 1.0000 -0.0061 -0.0000 +vn 0.0000 -0.0244 0.9997 +vn -0.9996 0.0274 0.0000 +vn -1.0000 -0.0061 0.0030 +vn -1.0000 -0.0061 -0.0000 +vn 0.0000 -0.1037 -0.9946 +vn 1.0000 0.0061 0.0000 +vn 1.0000 0.0061 -0.0030 +vn 0.0000 0.0244 0.9997 +vn 0.0000 0.0183 0.9998 +vn -0.9994 -0.0306 0.0153 +vn -0.9994 -0.0306 0.0183 +vn 0.0000 0.0762 0.9971 +vn 0.0000 -0.0122 0.9999 +vn 0.0000 -0.0244 -0.9997 +vn -1.0000 -0.0061 -0.0030 +vn 0.0000 -0.1037 0.9946 +vn 1.0000 0.0061 0.0030 +vn 0.0000 0.0244 -0.9997 +vn 0.0000 0.0183 -0.9998 +vn -0.9994 -0.0306 -0.0153 +vn -0.9994 -0.0306 -0.0183 +vn -0.9483 -0.3173 -0.0000 +vn -0.9486 -0.3165 -0.0000 +vn 0.9451 0.3267 0.0000 +vn 0.9452 0.3265 0.0000 +vn -0.0122 -0.0025 -0.9999 +vn -0.1127 -0.0320 -0.9931 +vn -0.0870 -0.0321 -0.9957 +vn 0.9442 0.3295 0.0000 +vn -0.0061 -0.0030 -1.0000 +vn 0.0000 -0.0795 0.9968 +vn -1.0000 0.0047 0.0000 +vn 0.0000 0.0795 -0.9968 +vn 1.0000 -0.0047 -0.0000 +vn 0.0000 0.0795 0.9968 +vn 0.0000 -0.0795 -0.9968 +vn 0.0000 0.2019 -0.9794 +vn 0.0000 0.0458 -0.9989 +vn 0.0000 0.0420 -0.9991 +vn 0.9998 -0.0221 -0.0000 +vn 0.0000 -0.0649 0.9979 +vn 0.0000 -0.0648 0.9979 +vn -0.9972 0.0751 0.0000 +vn -0.9999 0.0152 0.0000 +vn -0.9998 0.0175 0.0000 +vn 0.0000 -0.1161 -0.9932 +vn 1.0000 0.0099 0.0000 +vn 1.0000 0.0091 0.0000 +vn 1.0000 0.0091 -0.0030 +vn 1.0000 0.0092 -0.0031 +vn 0.0000 0.0274 0.9996 +vn -0.9992 -0.0397 0.0061 +vn -0.9992 -0.0397 0.0092 +vn -0.5810 -0.8134 0.0306 +vn -0.5603 -0.8283 -0.0000 +vn 0.9999 0.0122 0.0000 +vn -0.5600 0.8279 -0.0304 +vn -0.5812 0.8137 0.0000 +vn -0.5810 -0.8134 -0.0306 +vn -0.5629 0.8260 0.0306 +vn 0.9932 -0.0000 0.1161 +vn 0.9933 -0.0000 0.1158 +vn 0.7528 0.0000 -0.6583 +vn 0.7514 0.0000 -0.6598 +vn -0.9933 0.0000 -0.1158 +vn -0.9932 0.0000 -0.1161 +vn 0.9933 0.0000 -0.1158 +vn -0.7514 0.0000 -0.6598 +vn -0.9932 -0.0000 0.1161 +vn -0.9933 -0.0000 0.1158 +vn -1.0000 -0.0091 -0.0000 +vn 0.9996 0.0274 0.0000 +vn -1.0000 0.0061 -0.0030 +vn -1.0000 0.0061 0.0000 +vn 0.9994 -0.0305 0.0152 +vn 0.9994 -0.0305 0.0183 +vn -1.0000 0.0061 0.0030 +vn 0.9994 -0.0305 -0.0152 +vn -0.9998 -0.0000 0.0221 +vn 0.0000 0.9167 0.3995 +vn 0.0000 0.9170 0.3989 +vn 0.9998 -0.0000 0.0221 +vn 0.0000 -0.9687 -0.2483 +vn 0.0000 -0.9685 -0.2490 +vn 0.0476 0.9818 -0.1841 +vn 0.0805 0.9968 0.0000 +vn -0.9123 0.4095 0.0000 +vn -0.9330 0.3598 -0.0122 +vn 0.9134 0.4033 -0.0550 +vn 0.8857 0.4642 0.0000 +vn 0.9999 0.0000 -0.0122 +vn -0.9999 -0.0000 0.0122 +vn -0.9999 -0.0000 0.0133 +vn -0.9133 -0.4032 -0.0575 +vn -0.8857 -0.4642 -0.0000 +vn -0.9100 -0.4146 -0.0000 +vn -0.9308 -0.3546 -0.0886 +vn 0.9137 -0.4027 -0.0538 +vn 0.8857 -0.4642 -0.0000 +vn 0.9100 -0.4146 -0.0000 +vn 0.9330 -0.3598 -0.0123 +vn 0.0475 0.9816 0.1852 +vn -0.9330 0.3598 0.0123 +vn 0.9133 0.4032 0.0576 +vn 0.9999 -0.0000 0.0132 +vn 0.9999 -0.0000 0.0122 +vn -0.9999 0.0000 -0.0122 +vn -0.9134 -0.4033 0.0550 +vn -0.9311 -0.3547 0.0856 +vn 0.9137 -0.4027 0.0549 +vn 0.9330 -0.3598 0.0122 +vn 0.0000 0.0488 -0.9988 +vn -0.9252 0.3789 0.0206 +vn -0.9253 0.3787 0.0206 +vn -0.9253 0.3787 0.0204 +vn -0.9252 0.3789 0.0204 +vn 0.0000 -0.0488 0.9988 +vn -0.3440 0.9376 0.0502 +vn -0.3440 0.9376 0.0501 +vn -0.3440 0.9376 0.0500 +vn 0.9253 0.3787 0.0204 +vn 0.9253 0.3787 0.0206 +vn 0.3427 0.9381 0.0503 +vn 0.3427 0.9381 0.0501 +vn 0.3427 0.9381 0.0502 +vn 0.0000 -0.1218 -0.9926 +vn 0.0000 0.1218 0.9926 +vn 0.3447 0.9315 -0.1164 +vn 0.2867 0.7564 -0.5879 +vn -0.9993 0.0367 0.0000 +vn 0.3544 0.9287 -0.1095 +vn 0.3544 0.9287 0.1095 +vn -0.9993 0.0367 -0.0000 +vn 0.2868 0.7566 0.5877 +vn 0.2106 -0.0000 0.9776 +vn 0.2135 -0.0000 0.9769 +vn 0.8058 0.5922 0.0000 +vn 0.8087 0.5882 0.0000 +vn 0.2106 0.0000 -0.9776 +vn 0.2135 0.0000 -0.9769 +vn -0.6251 -0.7806 -0.0000 +vn -0.6232 -0.7821 -0.0000 +vn 0.9991 -0.0426 -0.0000 +vn 0.2867 0.7563 -0.5880 +vn 0.2868 0.7567 -0.5875 +vn -0.9993 0.0366 0.0000 +vn 0.2868 0.7567 0.5875 +vn 0.2867 0.7564 0.5880 +vn 0.3544 0.9287 0.1097 +vn -0.9993 0.0366 -0.0000 +vn 0.2075 -0.0000 0.9782 +vn 0.2075 0.0000 -0.9782 +vn -0.6269 -0.7791 -0.0000 +vn -0.9993 -0.0366 -0.0000 +vn -0.2867 0.7564 -0.5879 +vn -0.2868 0.7567 -0.5875 +vn -0.9993 -0.0366 0.0000 +vn -0.3544 0.9287 -0.1094 +vn -0.2868 0.7567 0.5875 +vn 0.9993 0.0366 -0.0000 +vn -0.9997 0.0000 -0.0244 +vn 0.0000 0.9176 -0.3976 +vn 0.9997 0.0000 -0.0244 +vn 0.0000 -0.9679 0.2512 +vn 0.1188 -0.9929 -0.0000 +vn -0.1218 0.9926 0.0000 +vn -0.1188 -0.9929 -0.0000 +vn 0.1218 0.9926 0.0000 +vn 0.0000 0.0609 0.9981 +vn 0.0122 -0.0244 0.9996 +vn 0.0000 -0.0669 -0.9978 +vn 0.0946 -0.0488 -0.9943 +vn 0.1415 -0.0852 0.9863 +vn 0.1559 -0.0856 0.9841 +vn 0.0000 -0.9993 -0.0366 +vn 0.0000 -0.9946 -0.1037 +vn 0.0000 0.9993 0.0366 +vn 0.0000 -0.9993 0.0366 +vn 0.0000 0.9993 -0.0366 +vn 0.0000 -0.8504 0.5261 +vn 0.0000 -0.7737 0.6336 +vn 0.9999 0.0061 0.0122 +vn 0.9999 0.0122 0.0061 +vn 0.0000 0.9434 -0.3317 +vn 0.0000 0.8477 -0.5305 +vn -0.9999 0.0061 0.0153 +vn -1.0000 -0.0000 0.0061 +vn -0.9998 -0.0000 0.0214 +vn 0.0000 -0.6823 0.7311 +vn 0.0000 0.7102 -0.7040 +vn 0.0000 0.2019 0.9794 +vn 0.0000 0.0420 0.9991 +vn 0.0000 0.0458 0.9989 +vn 0.9998 -0.0220 -0.0000 +vn 0.0000 -0.0648 -0.9979 +vn -0.9972 0.0752 0.0000 +vn 0.0000 -0.1161 0.9932 +vn 1.0000 0.0092 0.0031 +vn 1.0000 0.0091 0.0030 +vn 0.0000 0.0274 -0.9996 +vn -0.9992 -0.0397 -0.0061 +vn -0.9992 -0.0397 -0.0092 +vn 0.0000 0.0152 0.9999 +vn 0.0000 -0.0091 1.0000 +vn 0.0000 0.0305 -0.9995 +vn 0.0000 0.0336 -0.9994 +vn 0.0000 -0.0367 0.9993 +vn 0.9998 -0.0152 -0.0122 +vn 0.9998 -0.0183 -0.0122 +vn 0.0000 -0.0397 -0.9992 +vn -0.9999 -0.0122 -0.0061 +vn -1.0000 -0.0061 -0.0061 +vn 0.0000 -0.9992 0.0397 +vn 0.0000 0.9992 -0.0397 +vn 0.0000 -0.9992 -0.0397 +vn 0.0000 0.9992 0.0397 +vn -0.9999 0.0061 0.0122 +vn -0.9999 0.0122 0.0061 +vn 0.9999 0.0061 0.0152 +vn 0.9998 -0.0000 0.0213 +vn 1.0000 -0.0000 0.0061 +vn 0.9095 0.4158 0.0000 +vn -0.2267 -0.9740 -0.0000 +vn -0.9096 0.4155 0.0000 +vn 0.2267 -0.9740 -0.0000 +vn -0.9153 -0.4027 -0.0000 +vn 0.9153 -0.4027 -0.0000 +vn 0.2447 0.9696 0.0000 +vn 0.2454 0.9694 0.0000 +vn -0.1847 0.9828 0.0000 +vn -0.3094 0.9509 0.0000 +vn 0.1957 0.9807 0.0000 +vn 0.0000 -0.8100 0.5864 +vn 0.0000 0.9982 0.0593 +vn -0.9998 -0.0220 -0.0000 +vn -0.9998 -0.0221 -0.0000 +vn 0.9971 0.0755 0.0000 +vn 0.9998 0.0175 0.0000 +vn 0.9972 0.0754 0.0000 +vn -1.0000 0.0099 0.0000 +vn -1.0000 0.0091 0.0000 +vn -1.0000 0.0091 0.0030 +vn 0.9992 -0.0396 -0.0061 +vn 0.9992 -0.0396 -0.0091 +vn 0.0000 -0.0650 0.9979 +vn -1.0000 0.0091 -0.0030 +vn 0.9992 -0.0396 0.0061 +vn 0.9992 -0.0396 0.0091 +vn -0.2135 -0.0000 0.9769 +vn -0.8058 0.5922 0.0000 +vn -0.8087 0.5882 0.0000 +vn -0.2135 0.0000 -0.9769 +vn 0.6269 -0.7791 -0.0000 +vn -0.1131 -0.0321 -0.9931 +vn -0.9999 0.0122 0.0000 +vn -0.0152 -0.0244 0.9996 +vn -0.0946 -0.0488 -0.9943 +vn -0.0915 -0.0488 -0.9946 +vn -0.9997 -0.0244 -0.0000 +vn -0.1430 -0.0852 0.9860 +vn -0.1559 -0.0856 0.9841 +vn 0.1677 0.1769 -0.9698 +vn 0.8852 0.1526 -0.4395 +vn 0.3225 0.1704 -0.9311 +vn -0.0915 0.1647 -0.9821 +vn -0.0990 0.1675 -0.9809 +vn 0.0351 0.2381 -0.9706 +vn 0.4087 0.0824 -0.9089 +vn 0.0681 0.1522 -0.9860 +vn 0.4566 0.0335 -0.8890 +vn 0.2185 0.1406 -0.9657 +vn 0.9746 0.1098 -0.1952 +vn -0.0808 0.1708 -0.9820 +vn 0.7953 0.0367 -0.6051 +vn 0.5738 -0.1465 -0.8058 +vn 0.5406 0.0855 -0.8369 +vn 0.9869 0.0793 -0.1403 +vn -0.4059 0.0183 -0.9138 +vn 0.9062 0.1768 -0.3841 +vn 0.9727 0.1342 -0.1891 +vn 0.6202 0.0823 -0.7801 +vn -0.3954 -0.3511 -0.8488 +vn -0.5274 -0.0761 -0.8462 +vn 0.4245 0.0701 -0.9027 +vn 0.9479 0.2046 -0.2443 +# 763 vertex normals + +vt 0.1653 0.1021 0.0000 +vt 0.1651 0.0040 0.0000 +vt 0.1820 0.0040 0.0000 +vt 0.1822 0.1021 0.0000 +vt 0.2390 0.0039 0.0000 +vt 0.2392 0.1021 0.0000 +vt 0.2288 0.1154 0.0000 +vt 0.1718 0.1155 0.0000 +vt 0.2488 0.1016 0.0000 +vt 0.2488 0.0038 0.0000 +vt 0.2488 0.1182 0.0000 +vt 0.2389 0.1192 0.0000 +vt 0.3830 0.9833 0.0000 +vt 0.4937 0.9905 0.0000 +vt 0.4968 0.9761 0.0000 +vt 0.3847 0.9691 0.0000 +vt 0.6248 0.0480 0.0000 +vt 0.6387 0.0358 0.0000 +vt 0.6762 0.1456 0.0000 +vt 0.6504 0.1422 0.0000 +vt 0.5881 0.0420 0.0000 +vt 0.5812 0.0529 0.0000 +vt 0.5194 0.7064 0.0000 +vt 0.3946 0.7339 0.0000 +vt 0.2729 0.9827 0.0000 +vt 0.2728 0.9686 0.0000 +vt 0.5372 0.0542 0.0000 +vt 0.5369 0.0436 0.0000 +vt 0.2725 0.7531 0.0000 +vt 0.0490 0.9765 0.0000 +vt 0.0520 0.9909 0.0000 +vt 0.1627 0.9835 0.0000 +vt 0.1610 0.9693 0.0000 +vt 0.1503 0.7341 0.0000 +vt 0.0254 0.7068 0.0000 +vt 0.0129 0.7181 0.0000 +vt 0.0276 0.9777 0.0000 +vt 0.5319 0.7177 0.0000 +vt 0.5181 0.9773 0.0000 +vt 0.6276 0.2100 0.0000 +vt 0.7886 0.2167 0.0000 +vt 0.7880 0.2311 0.0000 +vt 0.6271 0.2239 0.0000 +vt 0.4417 0.0530 0.0000 +vt 0.4170 0.0379 0.0000 +vt 0.4116 0.1636 0.0000 +vt 0.4454 0.1617 0.0000 +vt 0.4931 0.0459 0.0000 +vt 0.5057 0.0598 0.0000 +vt 0.7706 0.5706 0.0000 +vt 0.8113 0.7913 0.0000 +vt 0.6338 0.7720 0.0000 +vt 0.6173 0.5801 0.0000 +vt 0.5547 0.2097 0.0000 +vt 0.5544 0.2235 0.0000 +vt 0.5281 0.0606 0.0000 +vt 0.5276 0.0471 0.0000 +vt 0.5480 0.5803 0.0000 +vt 0.5491 0.7648 0.0000 +vt 0.5131 0.2010 0.0000 +vt 0.8012 0.2068 0.0000 +vt 0.7879 0.1921 0.0000 +vt 0.5137 0.1820 0.0000 +vt 0.9505 0.4390 0.0000 +vt 0.9294 0.4390 0.0000 +vt 0.9268 0.5619 0.0000 +vt 0.9416 0.5619 0.0000 +vt 0.9656 0.4348 0.0000 +vt 0.9905 0.4348 0.0000 +vt 0.9819 0.5570 0.0000 +vt 0.9629 0.5570 0.0000 +vt 0.9511 0.6874 0.0000 +vt 0.9289 0.6874 0.0000 +vt 0.9910 0.6819 0.0000 +vt 0.9651 0.6969 0.0000 +vt 0.4778 0.5469 0.0000 +vt 0.4769 0.4583 0.0000 +vt 0.5358 0.4581 0.0000 +vt 0.5367 0.5468 0.0000 +vt 0.6262 0.4580 0.0000 +vt 0.6271 0.5466 0.0000 +vt 0.4789 0.6840 0.0000 +vt 0.5368 0.6372 0.0000 +vt 0.4840 0.2971 0.0000 +vt 0.4836 0.2217 0.0000 +vt 0.4504 0.2199 0.0000 +vt 0.4509 0.3214 0.0000 +vt 0.4283 0.2164 0.0000 +vt 0.4283 0.1990 0.0000 +vt 0.4162 0.1990 0.0000 +vt 0.4162 0.2164 0.0000 +vt 0.4609 0.4514 0.0000 +vt 0.4609 0.4281 0.0000 +vt 0.4583 0.4281 0.0000 +vt 0.4583 0.4514 0.0000 +vt 0.4865 0.1873 0.0000 +vt 0.5044 0.1875 0.0000 +vt 0.5045 0.1849 0.0000 +vt 0.4865 0.1847 0.0000 +vt 0.6103 0.2288 0.0000 +vt 0.5859 0.2443 0.0000 +vt 0.6117 0.2447 0.0000 +vt 0.4590 0.3365 0.0000 +vt 0.5049 0.3047 0.0000 +vt 0.4891 0.2985 0.0000 +vt 0.4590 0.3204 0.0000 +vt 0.5355 0.2298 0.0000 +vt 0.5369 0.2457 0.0000 +vt 0.4175 0.2974 0.0000 +vt 0.4172 0.2227 0.0000 +vt 0.4609 0.4747 0.0000 +vt 0.4583 0.4747 0.0000 +vt 0.4655 0.5044 0.0000 +vt 0.4632 0.5044 0.0000 +vt 0.4632 0.4694 0.0000 +vt 0.4655 0.4694 0.0000 +vt 0.4632 0.4503 0.0000 +vt 0.4655 0.4503 0.0000 +vt 0.4632 0.4312 0.0000 +vt 0.4655 0.4312 0.0000 +vt 0.4632 0.3965 0.0000 +vt 0.4655 0.3965 0.0000 +vt 0.4486 0.1864 0.0000 +vt 0.4487 0.1898 0.0000 +vt 0.4128 0.1905 0.0000 +vt 0.4128 0.1871 0.0000 +vt 0.4891 0.2302 0.0000 +vt 0.5049 0.2318 0.0000 +vt 0.4583 0.5052 0.0000 +vt 0.4609 0.5052 0.0000 +vt 0.4609 0.3976 0.0000 +vt 0.4583 0.3976 0.0000 +vt 0.4674 0.1860 0.0000 +vt 0.4673 0.1809 0.0000 +vt 0.4485 0.1813 0.0000 +vt 0.4127 0.1820 0.0000 +vt 0.5045 0.1821 0.0000 +vt 0.4865 0.1818 0.0000 +vt 0.4675 0.1906 0.0000 +vt 0.4768 0.1904 0.0000 +vt 0.4767 0.1858 0.0000 +vt 0.4766 0.1807 0.0000 +vt 0.6243 0.2436 0.0000 +vt 0.6229 0.2277 0.0000 +vt 0.5075 0.1821 0.0000 +vt 0.5075 0.1850 0.0000 +vt 0.5075 0.1876 0.0000 +vt 0.1703 0.1211 0.0000 +vt 0.2654 0.1211 0.0000 +vt 0.2654 0.2162 0.0000 +vt 0.1703 0.2162 0.0000 +vt 0.8033 0.5516 0.0000 +vt 0.7284 0.5516 0.0000 +vt 0.7284 0.5346 0.0000 +vt 0.8033 0.5346 0.0000 +vt 0.7612 0.2899 0.0000 +vt 0.8771 0.2848 0.0000 +vt 0.8771 0.2638 0.0000 +vt 0.7612 0.2689 0.0000 +vt 0.6536 0.5516 0.0000 +vt 0.6536 0.5346 0.0000 +vt 0.9930 0.2899 0.0000 +vt 0.9930 0.2689 0.0000 +vt 0.7695 0.3379 0.0000 +vt 0.7630 0.3785 0.0000 +vt 0.7061 0.3785 0.0000 +vt 0.7007 0.3379 0.0000 +vt 0.7465 0.4731 0.0000 +vt 0.7420 0.5110 0.0000 +vt 0.6983 0.5110 0.0000 +vt 0.6938 0.4731 0.0000 +vt 0.5336 0.4511 0.0000 +vt 0.5358 0.3703 0.0000 +vt 0.5581 0.3703 0.0000 +vt 0.5604 0.4511 0.0000 +vt 0.5044 0.4512 0.0000 +vt 0.5079 0.3704 0.0000 +vt 0.5257 0.3704 0.0000 +vt 0.5258 0.4512 0.0000 +vt 0.7541 0.3903 0.0000 +vt 0.7147 0.3904 0.0000 +vt 0.7088 0.3850 0.0000 +vt 0.7601 0.3849 0.0000 +vt 0.7371 0.5221 0.0000 +vt 0.7033 0.5221 0.0000 +vt 0.6999 0.5170 0.0000 +vt 0.7404 0.5170 0.0000 +vt 0.5336 0.3173 0.0000 +vt 0.5604 0.3173 0.0000 +vt 0.5044 0.3174 0.0000 +vt 0.5258 0.3174 0.0000 +vt 0.2295 0.5679 0.0000 +vt 0.2295 0.7248 0.0000 +vt 0.1491 0.7248 0.0000 +vt 0.1491 0.5679 0.0000 +vt 0.0734 0.3884 0.0000 +vt 0.0734 0.5343 0.0000 +vt 0.1303 0.4803 0.0000 +vt 0.1303 0.3884 0.0000 +vt 0.3285 0.3780 0.0000 +vt 0.3285 0.5521 0.0000 +vt 0.2393 0.5521 0.0000 +vt 0.2393 0.3780 0.0000 +vt 0.0724 0.5388 0.0000 +vt 0.0724 0.7084 0.0000 +vt 0.1385 0.6456 0.0000 +vt 0.1385 0.5388 0.0000 +vt 0.0133 0.3872 0.0000 +vt 0.0133 0.4806 0.0000 +vt 0.0711 0.5356 0.0000 +vt 0.0711 0.3872 0.0000 +vt 0.0056 0.5388 0.0000 +vt 0.0056 0.6456 0.0000 +vt 0.0717 0.7084 0.0000 +vt 0.0717 0.5388 0.0000 +vt 0.7780 0.1420 0.0000 +vt 0.9957 0.1420 0.0000 +vt 0.9872 0.1360 0.0000 +vt 0.7865 0.1360 0.0000 +vt 0.8376 0.2361 0.0000 +vt 0.9159 0.2361 0.0000 +vt 0.9159 0.2269 0.0000 +vt 0.8433 0.2269 0.0000 +vt 0.9942 0.2361 0.0000 +vt 0.9885 0.2269 0.0000 +vt 0.9872 0.0716 0.0000 +vt 0.7865 0.0716 0.0000 +vt 0.9159 0.1545 0.0000 +vt 0.8433 0.1545 0.0000 +vt 0.9885 0.1545 0.0000 +vt 0.9876 0.0658 0.0000 +vt 0.9876 0.0428 0.0000 +vt 0.6555 0.0428 0.0000 +vt 0.6555 0.0658 0.0000 +vt 0.4488 0.0337 0.0000 +vt 0.9905 0.0337 0.0000 +vt 0.9905 0.0094 0.0000 +vt 0.4488 0.0094 0.0000 +vt 0.9148 0.8638 0.0000 +vt 0.9148 0.9891 0.0000 +vt 0.8086 0.9891 0.0000 +vt 0.8086 0.8638 0.0000 +vt 0.9707 0.8288 0.0000 +vt 0.8024 0.8287 0.0000 +vt 0.8033 0.8422 0.0000 +vt 0.9717 0.8424 0.0000 +vt 0.3342 0.1880 0.0000 +vt 0.2823 0.1880 0.0000 +vt 0.2823 0.1347 0.0000 +vt 0.3342 0.1347 0.0000 +vt 0.2844 0.1207 0.0000 +vt 0.3817 0.1207 0.0000 +vt 0.3817 0.1011 0.0000 +vt 0.2844 0.1011 0.0000 +vt 0.8802 0.3593 0.0000 +vt 0.9103 0.3593 0.0000 +vt 0.8975 0.5055 0.0000 +vt 0.8764 0.5055 0.0000 +vt 0.8320 0.3574 0.0000 +vt 0.8649 0.3574 0.0000 +vt 0.8535 0.5016 0.0000 +vt 0.8284 0.5016 0.0000 +vt 0.8794 0.6233 0.0000 +vt 0.9111 0.6233 0.0000 +vt 0.8656 0.6178 0.0000 +vt 0.8314 0.6355 0.0000 +vt 0.4228 0.7112 0.0000 +vt 0.4228 0.6424 0.0000 +vt 0.4423 0.6424 0.0000 +vt 0.4423 0.7112 0.0000 +vt 0.4425 0.5680 0.0000 +vt 0.4227 0.5680 0.0000 +vt 0.4227 0.7116 0.0000 +vt 0.4425 0.7116 0.0000 +vt 0.4065 0.5654 0.0000 +vt 0.3637 0.5654 0.0000 +vt 0.3637 0.6823 0.0000 +vt 0.4065 0.6823 0.0000 +vt 0.3520 0.5654 0.0000 +vt 0.3520 0.7031 0.0000 +vt 0.4182 0.7031 0.0000 +vt 0.4182 0.5654 0.0000 +vt 0.3394 0.5706 0.0000 +vt 0.3394 0.7049 0.0000 +vt 0.3486 0.7049 0.0000 +vt 0.3486 0.5706 0.0000 +vt 0.3548 0.7182 0.0000 +vt 0.4174 0.7182 0.0000 +vt 0.4174 0.7064 0.0000 +vt 0.3548 0.7064 0.0000 +vt 0.1513 0.0157 0.0000 +vt 0.0741 0.0157 0.0000 +vt 0.0741 0.0084 0.0000 +vt 0.1513 0.0084 0.0000 +vt 0.2558 0.0882 0.0000 +vt 0.3008 0.0414 0.0000 +vt 0.3107 0.0499 0.0000 +vt 0.2558 0.1052 0.0000 +vt 0.3368 0.0041 0.0000 +vt 0.3569 0.0041 0.0000 +vt 0.0100 0.0157 0.0000 +vt 0.0100 0.0084 0.0000 +vt 0.3418 0.3603 0.0000 +vt 0.3577 0.3603 0.0000 +vt 0.3604 0.5475 0.0000 +vt 0.3445 0.5475 0.0000 +vt 0.3638 0.3511 0.0000 +vt 0.3799 0.3511 0.0000 +vt 0.3947 0.5483 0.0000 +vt 0.3786 0.5483 0.0000 +vt 0.9865 0.8562 0.0000 +vt 0.9634 0.8562 0.0000 +vt 0.9732 0.9032 0.0000 +vt 0.9893 0.9032 0.0000 +vt 0.9534 0.8563 0.0000 +vt 0.9269 0.8563 0.0000 +vt 0.9361 0.9027 0.0000 +vt 0.9563 0.9027 0.0000 +vt 0.9870 0.9897 0.0000 +vt 0.9628 0.9897 0.0000 +vt 0.9264 0.9882 0.0000 +vt 0.9540 0.9939 0.0000 +vt 0.3862 0.0933 0.0000 +vt 0.3862 0.0789 0.0000 +vt 0.3785 0.0789 0.0000 +vt 0.3785 0.0933 0.0000 +vt 0.3862 0.0646 0.0000 +vt 0.3785 0.0646 0.0000 +vt 0.3862 0.0502 0.0000 +vt 0.3785 0.0502 0.0000 +vt 0.3862 0.0314 0.0000 +vt 0.3785 0.0358 0.0000 +vt 0.3708 0.0933 0.0000 +vt 0.3708 0.0812 0.0000 +vt 0.3630 0.0835 0.0000 +vt 0.3630 0.0933 0.0000 +vt 0.3708 0.0726 0.0000 +vt 0.3630 0.0733 0.0000 +vt 0.3476 0.0933 0.0000 +vt 0.3553 0.0933 0.0000 +vt 0.3553 0.0812 0.0000 +vt 0.3476 0.0789 0.0000 +vt 0.3553 0.0726 0.0000 +vt 0.3476 0.0646 0.0000 +vt 0.3398 0.0933 0.0000 +vt 0.3398 0.0789 0.0000 +vt 0.3321 0.0789 0.0000 +vt 0.3321 0.0933 0.0000 +vt 0.3398 0.0646 0.0000 +vt 0.3321 0.0646 0.0000 +vt 0.3398 0.0502 0.0000 +vt 0.3321 0.0502 0.0000 +vt 0.3398 0.0314 0.0000 +vt 0.3321 0.0358 0.0000 +vt 0.3940 0.0933 0.0000 +vt 0.3940 0.0789 0.0000 +vt 0.3940 0.0646 0.0000 +vt 0.3940 0.0502 0.0000 +vt 0.3940 0.0358 0.0000 +vt 0.3476 0.0502 0.0000 +vt 0.3476 0.0358 0.0000 +vt 0.0870 0.2093 0.0000 +vt 0.0870 0.1769 0.0000 +vt 0.1033 0.1769 0.0000 +vt 0.1033 0.2093 0.0000 +vt 0.0870 0.1445 0.0000 +vt 0.1033 0.1445 0.0000 +vt 0.0870 0.1122 0.0000 +vt 0.1033 0.1122 0.0000 +vt 0.0870 0.0798 0.0000 +vt 0.1033 0.0879 0.0000 +vt 0.1195 0.1769 0.0000 +vt 0.1195 0.2093 0.0000 +vt 0.1195 0.1445 0.0000 +vt 0.1195 0.1122 0.0000 +vt 0.1195 0.0919 0.0000 +vt 0.1358 0.1769 0.0000 +vt 0.1358 0.2093 0.0000 +vt 0.1358 0.1445 0.0000 +vt 0.1358 0.1122 0.0000 +vt 0.1358 0.0879 0.0000 +vt 0.1521 0.1769 0.0000 +vt 0.1521 0.2093 0.0000 +vt 0.1521 0.1445 0.0000 +vt 0.1521 0.1122 0.0000 +vt 0.1521 0.0798 0.0000 +vt 0.9805 0.3515 0.0000 +vt 0.8919 0.3515 0.0000 +vt 0.8919 0.3478 0.0000 +vt 0.9816 0.3476 0.0000 +vt 0.9830 0.3553 0.0000 +vt 0.8919 0.3552 0.0000 +vt 0.8919 0.3440 0.0000 +vt 0.9824 0.3437 0.0000 +vt 0.9965 0.3561 0.0000 +vt 0.9831 0.3494 0.0000 +vt 0.9965 0.3427 0.0000 +vt 0.7419 0.2470 0.0000 +vt 0.6431 0.2470 0.0000 +vt 0.6431 0.3190 0.0000 +vt 0.7419 0.3190 0.0000 +vt 0.7507 0.2396 0.0000 +vt 0.6359 0.2396 0.0000 +vt 0.6359 0.3246 0.0000 +vt 0.7507 0.3246 0.0000 +vt 0.6389 0.1517 0.0000 +vt 0.6389 0.1732 0.0000 +vt 0.8323 0.1732 0.0000 +vt 0.8323 0.1517 0.0000 +vt 0.8265 0.2627 0.0000 +vt 0.8140 0.2627 0.0000 +vt 0.8140 0.1773 0.0000 +vt 0.8265 0.1773 0.0000 +vt 0.6510 0.1648 0.0000 +vt 0.8174 0.1648 0.0000 +vt 0.8174 0.1732 0.0000 +vt 0.6510 0.1732 0.0000 +vt 0.8189 0.1848 0.0000 +vt 0.8189 0.2570 0.0000 +vt 0.8140 0.2570 0.0000 +vt 0.8140 0.1848 0.0000 +vt 0.5178 0.0689 0.0000 +vt 0.4575 0.0689 0.0000 +vt 0.4575 0.0739 0.0000 +vt 0.5178 0.0739 0.0000 +vt 0.5266 0.0771 0.0000 +vt 0.4556 0.0771 0.0000 +vt 0.4556 0.1622 0.0000 +vt 0.5266 0.1622 0.0000 +vt 0.4526 0.0711 0.0000 +vt 0.4480 0.0711 0.0000 +vt 0.4480 0.1341 0.0000 +vt 0.4526 0.1341 0.0000 +vt 0.0867 0.2315 0.0000 +vt 0.0133 0.2315 0.0000 +vt 0.0133 0.3783 0.0000 +vt 0.0867 0.3783 0.0000 +vt 0.2532 0.5764 0.0000 +vt 0.2532 0.7062 0.0000 +vt 0.3181 0.6514 0.0000 +vt 0.3181 0.5764 0.0000 +vt 0.1025 0.2299 0.0000 +vt 0.3167 0.2299 0.0000 +vt 0.3167 0.3662 0.0000 +vt 0.1025 0.3662 0.0000 +vt 0.1508 0.3732 0.0000 +vt 0.1508 0.4723 0.0000 +vt 0.2003 0.4304 0.0000 +vt 0.2003 0.3732 0.0000 +vt 0.2287 0.4613 0.0000 +vt 0.2287 0.5184 0.0000 +vt 0.1793 0.5602 0.0000 +vt 0.1793 0.4613 0.0000 +vt 0.4010 0.2138 0.0000 +vt 0.4010 0.2947 0.0000 +vt 0.3310 0.3538 0.0000 +vt 0.3310 0.2138 0.0000 +vt 0.5641 0.3335 0.0000 +vt 0.5946 0.3335 0.0000 +vt 0.6439 0.4416 0.0000 +vt 0.5931 0.4416 0.0000 +vt 0.6529 0.4224 0.0000 +vt 0.6831 0.4224 0.0000 +vt 0.6898 0.5217 0.0000 +vt 0.6462 0.5217 0.0000 +vt 0.5446 0.8121 0.0000 +vt 0.6711 0.8320 0.0000 +vt 0.6711 0.9870 0.0000 +vt 0.5446 0.9872 0.0000 +vt 0.4371 0.3303 0.0000 +vt 0.4358 0.5309 0.0000 +vt 0.4457 0.5400 0.0000 +vt 0.4471 0.3395 0.0000 +vt 0.4093 0.5489 0.0000 +vt 0.4272 0.5489 0.0000 +vt 0.4272 0.3265 0.0000 +vt 0.4093 0.3265 0.0000 +vt 0.6195 0.0640 0.0000 +vt 0.5319 0.0641 0.0000 +vt 0.5319 0.1713 0.0000 +vt 0.6195 0.1791 0.0000 +vt 0.7976 0.8121 0.0000 +vt 0.7976 0.9872 0.0000 +vt 0.0096 0.1316 0.0000 +vt 0.0232 0.1315 0.0000 +vt 0.0232 0.2108 0.0000 +vt 0.0096 0.2108 0.0000 +vt 0.0617 0.2213 0.0000 +vt 0.0151 0.2219 0.0000 +vt 0.0690 0.2103 0.0000 +vt 0.0690 0.1320 0.0000 +vt 0.0151 0.1205 0.0000 +vt 0.0616 0.1211 0.0000 +vt 0.0764 0.2116 0.0000 +vt 0.0694 0.2244 0.0000 +vt 0.0764 0.1307 0.0000 +vt 0.0694 0.1180 0.0000 +vt 0.8502 0.6523 0.0000 +vt 0.8216 0.6519 0.0000 +vt 0.8262 0.7280 0.0000 +vt 0.8489 0.7283 0.0000 +vt 0.8996 0.6351 0.0000 +vt 0.8678 0.6351 0.0000 +vt 0.8688 0.7106 0.0000 +vt 0.8962 0.7106 0.0000 +vt 0.8524 0.7973 0.0000 +vt 0.8184 0.7968 0.0000 +vt 0.8650 0.7842 0.0000 +vt 0.9025 0.8081 0.0000 +vt 0.8800 0.2990 0.0000 +vt 0.8800 0.3360 0.0000 +vt 0.7763 0.3478 0.0000 +vt 0.7763 0.3107 0.0000 +vt 0.9894 0.3030 0.0000 +vt 0.9894 0.3400 0.0000 +vt 0.8122 0.5069 0.0000 +vt 0.8110 0.4335 0.0000 +vt 0.7852 0.4335 0.0000 +vt 0.7817 0.5069 0.0000 +vt 0.6664 0.4078 0.0000 +vt 0.7042 0.4222 0.0000 +vt 0.7305 0.4089 0.0000 +vt 0.6664 0.3660 0.0000 +vt 0.7582 0.5158 0.0000 +vt 0.7594 0.5000 0.0000 +vt 0.7724 0.5000 0.0000 +vt 0.7736 0.5158 0.0000 +vt 0.8133 0.3622 0.0000 +vt 0.7828 0.3622 0.0000 +vt 0.7458 0.4669 0.0000 +vt 0.7801 0.4669 0.0000 +vt 0.7582 0.4758 0.0000 +vt 0.7736 0.4758 0.0000 +vt 0.0071 0.1053 0.0000 +vt 0.0071 0.0766 0.0000 +vt 0.0724 0.0766 0.0000 +vt 0.0724 0.1053 0.0000 +vt 0.0071 0.0727 0.0000 +vt 0.0724 0.0727 0.0000 +vt 0.4675 0.5387 0.0000 +vt 0.4559 0.5387 0.0000 +vt 0.4559 0.6952 0.0000 +vt 0.4675 0.6952 0.0000 +vt 0.4704 0.5364 0.0000 +vt 0.4532 0.5364 0.0000 +vt 0.4532 0.6969 0.0000 +vt 0.4704 0.6969 0.0000 +vt 0.9357 0.7417 0.0000 +vt 0.9172 0.7417 0.0000 +vt 0.9172 0.7159 0.0000 +vt 0.9357 0.7159 0.0000 +vt 0.9541 0.7417 0.0000 +vt 0.9541 0.7159 0.0000 +vt 0.9725 0.7417 0.0000 +vt 0.9725 0.7159 0.0000 +vt 0.9909 0.7417 0.0000 +vt 0.9909 0.7159 0.0000 +vt 0.9357 0.7675 0.0000 +vt 0.9172 0.7675 0.0000 +vt 0.9541 0.7675 0.0000 +vt 0.9725 0.7675 0.0000 +vt 0.9909 0.7675 0.0000 +vt 0.9357 0.7933 0.0000 +vt 0.9172 0.7933 0.0000 +vt 0.9541 0.7933 0.0000 +vt 0.9725 0.7933 0.0000 +vt 0.9909 0.7933 0.0000 +vt 0.9357 0.8191 0.0000 +vt 0.9172 0.8191 0.0000 +vt 0.9541 0.8191 0.0000 +vt 0.9725 0.8191 0.0000 +vt 0.9909 0.8191 0.0000 +# 572 texture coords + +o house +g house +f 1/1/1 2/2/1 3/3/1 +f 3/3/1 4/4/1 1/1/1 +f 5/5/2 6/6/3 4/4/4 +f 4/4/4 3/3/3 5/5/2 +f 6/6/5 7/7/5 1/8/5 +f 1/8/5 4/4/5 6/6/5 +f 8/9/6 6/6/6 5/5/6 +f 5/5/6 9/10/6 8/9/6 +f 10/11/5 7/12/5 6/6/5 +f 6/6/5 8/9/7 10/11/7 +f 11/1/8 12/4/8 13/3/8 +f 13/3/8 14/2/8 11/1/8 +f 12/4/9 15/6/10 16/5/11 +f 16/5/11 13/3/12 12/4/9 +f 11/8/5 17/7/5 15/6/5 +f 15/6/7 12/4/5 11/8/5 +f 8/9/13 9/10/13 16/5/13 +f 16/5/14 15/6/14 8/9/13 +f 10/11/5 8/9/5 15/6/5 +f 15/6/7 17/12/7 10/11/7 +f 18/1/1 19/2/1 20/3/1 +f 20/3/1 21/4/1 18/1/1 +f 22/5/15 23/6/15 21/4/16 +f 21/4/16 20/3/17 22/5/15 +f 23/6/18 24/7/18 18/8/18 +f 18/8/18 21/4/19 23/6/18 +f 25/9/20 23/6/21 22/5/22 +f 22/5/22 26/10/23 25/9/21 +f 27/11/19 24/12/18 23/6/18 +f 23/6/18 25/9/24 27/11/25 +f 28/1/8 29/4/8 30/3/8 +f 30/3/8 31/2/8 28/1/8 +f 29/4/26 32/6/26 33/5/26 +f 33/5/26 30/3/26 29/4/26 +f 28/8/18 34/7/18 32/6/18 +f 32/6/18 29/4/18 28/8/18 +f 25/9/27 26/10/28 33/5/29 +f 33/5/28 32/6/30 25/9/30 +f 27/11/19 25/9/18 32/6/18 +f 32/6/24 34/12/24 27/11/19 +f 35/1/1 36/2/1 37/3/1 +f 37/3/1 38/4/1 35/1/1 +f 39/5/31 40/6/32 38/4/33 +f 38/4/33 37/3/33 39/5/31 +f 40/6/34 41/7/34 35/8/34 +f 35/8/34 38/4/34 40/6/34 +f 42/9/35 40/6/36 39/5/35 +f 39/5/35 43/10/37 42/9/35 +f 44/11/34 41/12/34 40/6/34 +f 40/6/34 42/9/34 44/11/34 +f 45/1/8 46/4/8 47/3/8 +f 47/3/8 48/2/8 45/1/8 +f 46/4/38 49/6/39 50/5/40 +f 50/5/40 47/3/38 46/4/38 +f 45/8/34 51/7/34 49/6/34 +f 49/6/34 46/4/34 45/8/34 +f 42/9/41 43/10/42 50/5/41 +f 50/5/41 49/6/42 42/9/41 +f 44/11/34 42/9/34 49/6/34 +f 49/6/34 51/12/34 44/11/34 +f 52/1/1 53/2/1 54/3/1 +f 54/3/1 55/4/1 52/1/1 +f 56/5/43 57/6/43 55/4/44 +f 55/4/44 54/3/45 56/5/43 +f 57/6/46 58/7/46 52/8/46 +f 52/8/46 55/4/46 57/6/46 +f 59/9/47 57/6/47 56/5/47 +f 56/5/47 60/10/47 59/9/47 +f 61/11/46 58/12/46 57/6/46 +f 57/6/46 59/9/48 61/11/48 +f 62/1/8 63/4/8 64/3/8 +f 64/3/8 65/2/8 62/1/8 +f 63/4/49 66/6/50 67/5/50 +f 67/5/50 64/3/51 63/4/49 +f 62/8/46 68/7/46 66/6/46 +f 66/6/46 63/4/46 62/8/46 +f 59/9/52 60/10/52 67/5/52 +f 67/5/52 66/6/52 59/9/52 +f 61/11/46 59/9/46 66/6/46 +f 66/6/46 68/12/46 61/11/46 +f 69/1/1 70/4/1 71/3/1 +f 71/3/1 72/2/1 69/1/1 +f 73/5/53 71/3/54 70/4/54 +f 70/4/54 74/6/53 73/5/53 +f 74/6/55 70/4/55 69/8/55 +f 69/8/55 75/7/55 74/6/55 +f 76/9/56 77/10/56 73/5/57 +f 73/5/58 74/6/58 76/9/59 +f 78/11/55 76/9/55 74/6/55 +f 74/6/55 75/12/55 78/11/55 +f 79/1/8 80/2/8 81/3/8 +f 81/3/8 82/4/8 79/1/8 +f 82/4/60 81/3/60 83/5/60 +f 83/5/60 84/6/60 82/4/60 +f 79/8/55 82/4/55 84/6/55 +f 84/6/55 85/7/55 79/8/55 +f 76/9/61 84/6/62 83/5/63 +f 83/5/63 77/10/64 76/9/64 +f 78/11/55 85/12/55 84/6/55 +f 84/6/55 76/9/55 78/11/55 +f 86/1/1 87/4/1 88/3/1 +f 88/3/1 89/2/1 86/1/1 +f 90/5/65 88/3/65 87/4/66 +f 87/4/66 91/6/65 90/5/65 +f 91/6/67 87/4/67 86/8/68 +f 86/8/68 92/7/67 91/6/67 +f 93/9/69 94/10/70 90/5/71 +f 90/5/71 91/6/71 93/9/72 +f 95/11/67 93/9/67 91/6/67 +f 91/6/67 92/12/67 95/11/67 +f 96/1/8 97/2/8 98/3/8 +f 98/3/8 99/4/8 96/1/8 +f 99/4/73 98/3/74 100/5/75 +f 100/5/75 101/6/75 99/4/73 +f 96/8/68 99/4/67 101/6/76 +f 101/6/67 102/7/67 96/8/68 +f 93/9/77 101/6/78 100/5/78 +f 100/5/78 94/10/78 93/9/77 +f 95/11/67 102/12/76 101/6/76 +f 101/6/67 93/9/67 95/11/67 +f 103/1/1 104/4/1 105/3/1 +f 105/3/1 106/2/1 103/1/1 +f 107/5/79 105/3/80 104/4/81 +f 104/4/81 108/6/82 107/5/79 +f 108/6/83 104/4/83 103/8/83 +f 103/8/83 109/7/83 108/6/83 +f 110/9/84 111/10/84 107/5/85 +f 107/5/85 108/6/85 110/9/85 +f 112/11/86 110/9/86 108/6/83 +f 108/6/83 109/12/83 112/11/83 +f 113/1/8 114/2/8 115/3/8 +f 115/3/8 116/4/8 113/1/8 +f 116/4/87 115/3/88 117/5/88 +f 117/5/88 118/6/89 116/4/87 +f 113/8/83 116/4/83 118/6/86 +f 118/6/83 119/7/83 113/8/83 +f 110/9/90 118/6/90 117/5/90 +f 117/5/91 111/10/91 110/9/91 +f 112/11/83 119/12/86 118/6/86 +f 118/6/83 110/9/83 112/11/83 +f 120/1/1 121/4/1 122/3/1 +f 122/3/1 123/2/1 120/1/1 +f 124/5/82 122/3/92 121/4/92 +f 121/4/92 125/6/82 124/5/82 +f 125/6/83 121/4/93 120/8/83 +f 120/8/83 126/7/93 125/6/83 +f 127/9/85 128/10/85 124/5/85 +f 124/5/85 125/6/85 127/9/85 +f 129/11/83 127/9/83 125/6/83 +f 125/6/83 126/12/93 129/11/83 +f 130/1/8 131/2/8 132/3/8 +f 132/3/8 133/4/8 130/1/8 +f 133/4/88 132/3/87 134/5/89 +f 134/5/89 135/6/89 133/4/88 +f 130/8/83 133/4/83 135/6/86 +f 135/6/83 136/7/93 130/8/83 +f 127/9/90 135/6/90 134/5/90 +f 134/5/90 128/10/90 127/9/90 +f 129/11/83 136/12/94 135/6/86 +f 135/6/83 127/9/83 129/11/83 +f 137/1/1 138/4/1 139/3/1 +f 139/3/1 140/2/1 137/1/1 +f 141/5/95 139/3/96 138/4/96 +f 138/4/96 142/6/95 141/5/95 +f 142/6/55 138/4/55 137/8/55 +f 137/8/55 143/7/55 142/6/55 +f 144/9/58 145/10/58 141/5/58 +f 141/5/58 142/6/59 144/9/58 +f 146/11/55 144/9/55 142/6/55 +f 142/6/55 143/12/55 146/11/97 +f 147/1/8 148/2/8 149/3/8 +f 149/3/8 150/4/8 147/1/8 +f 150/4/98 149/3/98 151/5/99 +f 151/5/99 152/6/99 150/4/98 +f 147/8/55 150/4/55 152/6/55 +f 152/6/55 153/7/55 147/8/55 +f 144/9/63 152/6/61 151/5/62 +f 151/5/62 145/10/62 144/9/62 +f 146/11/55 153/12/55 152/6/55 +f 152/6/55 144/9/97 146/11/97 +f 154/1/1 155/4/1 156/3/1 +f 156/3/1 157/2/1 154/1/1 +f 158/5/100 156/3/101 155/4/102 +f 155/4/102 159/6/102 158/5/100 +f 159/6/103 155/4/103 154/8/103 +f 154/8/103 160/7/103 159/6/103 +f 161/9/104 162/10/105 158/5/105 +f 158/5/106 159/6/107 161/9/108 +f 163/11/103 161/9/103 159/6/103 +f 159/6/103 160/12/103 163/11/103 +f 164/1/8 165/2/8 166/3/8 +f 166/3/8 167/4/8 164/1/8 +f 167/4/109 166/3/110 168/5/111 +f 168/5/111 169/6/109 167/4/109 +f 164/8/103 167/4/103 169/6/103 +f 169/6/103 170/7/103 164/8/103 +f 161/9/112 169/6/113 168/5/114 +f 168/5/114 162/10/114 161/9/115 +f 163/11/116 170/12/116 169/6/116 +f 169/6/103 161/9/103 163/11/103 +f 171/1/1 172/2/1 173/3/1 +f 173/3/1 174/4/1 171/1/1 +f 175/5/117 176/6/118 174/4/3 +f 174/4/3 173/3/119 175/5/117 +f 176/6/120 177/7/120 171/8/121 +f 171/8/121 174/4/121 176/6/120 +f 178/9/122 176/6/6 175/5/6 +f 175/5/6 179/10/123 178/9/6 +f 180/11/120 177/12/120 176/6/120 +f 176/6/120 178/9/124 180/11/124 +f 181/1/8 182/4/8 183/3/8 +f 183/3/8 184/2/8 181/1/8 +f 182/4/12 185/6/10 186/5/125 +f 186/5/125 183/3/126 182/4/12 +f 181/8/121 187/7/120 185/6/120 +f 185/6/124 182/4/121 181/8/121 +f 178/9/13 179/10/127 186/5/13 +f 186/5/14 185/6/14 178/9/14 +f 180/11/120 178/9/120 185/6/120 +f 185/6/124 187/12/124 180/11/124 +f 188/1/1 189/2/1 190/3/1 +f 190/3/1 191/4/1 188/1/1 +f 192/5/128 193/6/129 191/4/130 +f 191/4/130 190/3/131 192/5/128 +f 193/6/18 194/7/18 188/8/19 +f 188/8/19 191/4/18 193/6/18 +f 195/9/132 193/6/133 192/5/134 +f 192/5/134 196/10/134 195/9/133 +f 197/11/18 194/12/18 193/6/18 +f 193/6/18 195/9/24 197/11/24 +f 198/1/8 199/4/8 200/3/8 +f 200/3/8 201/2/8 198/1/8 +f 199/4/135 202/6/135 203/5/136 +f 203/5/136 200/3/135 199/4/135 +f 198/8/19 204/7/18 202/6/18 +f 202/6/18 199/4/18 198/8/19 +f 195/9/137 196/10/138 203/5/138 +f 203/5/138 202/6/139 195/9/139 +f 197/11/18 195/9/18 202/6/18 +f 202/6/24 204/12/24 197/11/18 +f 205/1/1 206/2/1 207/3/1 +f 207/3/1 208/4/1 205/1/1 +f 209/5/140 210/6/141 208/4/142 +f 208/4/142 207/3/44 209/5/140 +f 210/6/143 211/7/143 205/8/143 +f 205/8/143 208/4/144 210/6/143 +f 212/9/145 210/6/145 209/5/47 +f 209/5/47 213/10/47 212/9/145 +f 214/11/143 211/12/143 210/6/143 +f 210/6/143 212/9/146 214/11/146 +f 215/1/8 216/4/8 217/3/8 +f 217/3/8 218/2/8 215/1/8 +f 216/4/147 219/6/148 220/5/149 +f 220/5/149 217/3/49 216/4/147 +f 215/8/143 221/7/143 219/6/143 +f 219/6/143 216/4/143 215/8/143 +f 212/9/150 213/10/52 220/5/52 +f 220/5/52 219/6/150 212/9/150 +f 214/11/143 212/9/143 219/6/143 +f 219/6/143 221/12/143 214/11/143 +f 222/1/1 223/2/1 224/3/1 +f 224/3/1 225/4/1 222/1/1 +f 226/5/151 227/6/152 225/4/153 +f 225/4/153 224/3/154 226/5/151 +f 227/6/34 228/7/34 222/8/34 +f 222/8/34 225/4/34 227/6/34 +f 229/9/155 227/6/155 226/5/156 +f 226/5/156 230/10/157 229/9/155 +f 231/11/34 228/12/34 227/6/34 +f 227/6/34 229/9/34 231/11/34 +f 232/1/8 233/4/8 234/3/8 +f 234/3/8 235/2/8 232/1/8 +f 233/4/158 236/6/159 237/5/160 +f 237/5/160 234/3/161 233/4/158 +f 232/8/34 238/7/34 236/6/34 +f 236/6/34 233/4/34 232/8/34 +f 229/9/162 230/10/163 237/5/164 +f 237/5/164 236/6/162 229/9/162 +f 231/11/34 229/9/34 236/6/34 +f 236/6/34 238/12/34 231/11/34 +f 239/1/1 240/2/1 241/3/1 +f 241/3/1 242/4/1 239/1/1 +f 243/5/165 244/6/166 242/4/167 +f 242/4/167 241/3/153 243/5/165 +f 244/6/34 245/7/34 239/8/34 +f 239/8/34 242/4/34 244/6/34 +f 246/9/156 244/6/168 243/5/169 +f 243/5/169 247/10/169 246/9/170 +f 248/11/34 245/12/34 244/6/34 +f 244/6/34 246/9/34 248/11/34 +f 249/1/8 250/4/8 251/3/8 +f 251/3/8 252/2/8 249/1/8 +f 250/4/161 253/6/171 254/5/172 +f 254/5/172 251/3/158 250/4/161 +f 249/8/34 255/7/34 253/6/34 +f 253/6/34 250/4/34 249/8/34 +f 246/9/164 247/10/173 254/5/173 +f 254/5/173 253/6/174 246/9/175 +f 248/11/34 246/9/34 253/6/34 +f 253/6/176 255/12/176 248/11/34 +f 256/1/1 257/2/1 258/3/1 +f 258/3/1 259/4/1 256/1/1 +f 260/5/177 261/6/82 259/4/92 +f 259/4/92 258/3/178 260/5/177 +f 261/6/179 262/7/179 256/8/180 +f 256/8/180 259/4/179 261/6/179 +f 263/9/85 261/6/85 260/5/181 +f 260/5/181 264/10/182 263/9/84 +f 265/11/179 262/12/179 261/6/179 +f 261/6/179 263/9/179 265/11/179 +f 266/1/8 267/4/8 268/3/8 +f 268/3/8 269/2/8 266/1/8 +f 267/4/87 270/6/89 271/5/183 +f 271/5/183 268/3/184 267/4/87 +f 266/8/180 272/7/179 270/6/179 +f 270/6/179 267/4/179 266/8/180 +f 263/9/91 264/10/185 271/5/185 +f 271/5/186 270/6/90 263/9/90 +f 265/11/179 263/9/179 270/6/179 +f 270/6/179 272/12/179 265/11/179 +f 273/1/187 274/2/187 275/3/187 +f 275/3/187 276/4/187 273/1/187 +f 277/5/188 278/6/189 276/4/189 +f 276/4/189 275/3/188 277/5/188 +f 278/6/190 279/7/190 273/8/190 +f 273/8/190 276/4/190 278/6/190 +f 280/9/191 278/6/192 277/5/193 +f 277/5/193 281/10/194 280/9/191 +f 282/11/190 279/12/190 278/6/190 +f 278/6/190 280/9/190 282/11/190 +f 283/1/195 284/4/195 285/3/195 +f 285/3/195 286/2/195 283/1/195 +f 284/4/196 287/6/196 288/5/197 +f 288/5/197 285/3/197 284/4/196 +f 283/8/190 289/7/190 287/6/190 +f 287/6/190 284/4/190 283/8/190 +f 280/9/198 281/10/199 288/5/199 +f 288/5/199 287/6/198 280/9/198 +f 282/11/190 280/9/190 287/6/190 +f 287/6/190 289/12/190 282/11/190 +f 290/1/187 291/2/187 292/3/187 +f 292/3/187 293/4/187 290/1/187 +f 294/5/200 295/6/200 293/4/200 +f 293/4/200 292/3/200 294/5/200 +f 295/6/201 296/7/201 290/8/201 +f 290/8/201 293/4/201 295/6/201 +f 297/9/202 295/6/202 294/5/203 +f 294/5/203 298/10/204 297/9/202 +f 299/11/201 296/12/201 295/6/201 +f 295/6/201 297/9/201 299/11/201 +f 300/1/195 301/4/195 302/3/195 +f 302/3/195 303/2/195 300/1/195 +f 301/4/205 304/6/205 305/5/205 +f 305/5/205 302/3/205 301/4/205 +f 300/8/201 306/7/201 304/6/201 +f 304/6/201 301/4/201 300/8/201 +f 297/9/206 298/10/206 305/5/207 +f 305/5/207 304/6/206 297/9/206 +f 299/11/201 297/9/201 304/6/201 +f 304/6/201 306/12/201 299/11/201 +f 307/1/187 308/2/187 309/3/187 +f 309/3/187 310/4/187 307/1/187 +f 311/5/208 312/6/208 310/4/208 +f 310/4/208 309/3/208 311/5/208 +f 312/6/209 313/7/210 307/8/210 +f 307/8/210 310/4/210 312/6/209 +f 314/9/211 312/6/212 311/5/213 +f 311/5/213 315/10/213 314/9/211 +f 316/11/210 313/12/210 312/6/209 +f 312/6/209 314/9/210 316/11/210 +f 317/1/195 318/4/195 319/3/195 +f 319/3/195 320/2/195 317/1/195 +f 318/4/214 321/6/214 322/5/214 +f 322/5/214 319/3/214 318/4/214 +f 317/8/210 323/7/210 321/6/209 +f 321/6/209 318/4/210 317/8/210 +f 314/9/215 315/10/215 322/5/215 +f 322/5/215 321/6/216 314/9/215 +f 316/11/210 314/9/210 321/6/209 +f 321/6/209 323/12/210 316/11/210 +f 324/1/195 325/2/195 326/3/195 +f 326/3/195 327/4/195 324/1/195 +f 328/5/217 329/6/217 327/4/217 +f 327/4/217 326/3/217 328/5/217 +f 329/6/218 330/7/218 324/8/218 +f 324/8/218 327/4/218 329/6/218 +f 331/9/219 329/6/219 328/5/220 +f 328/5/220 332/10/221 331/9/219 +f 333/11/218 330/12/218 329/6/218 +f 329/6/218 331/9/218 333/11/218 +f 334/1/187 335/4/187 336/3/187 +f 336/3/187 337/2/187 334/1/187 +f 335/4/222 338/6/222 339/5/222 +f 339/5/222 336/3/222 335/4/222 +f 334/8/218 340/7/218 338/6/218 +f 338/6/218 335/4/218 334/8/218 +f 331/9/223 332/10/224 339/5/225 +f 339/5/225 338/6/225 331/9/223 +f 333/11/218 331/9/218 338/6/218 +f 338/6/218 340/12/218 333/11/218 +f 341/1/195 342/2/195 343/3/195 +f 343/3/195 344/4/195 341/1/195 +f 345/5/217 346/6/217 344/4/217 +f 344/4/217 343/3/217 345/5/217 +f 346/6/226 347/7/226 341/8/226 +f 341/8/226 344/4/226 346/6/226 +f 348/9/219 346/6/219 345/5/220 +f 345/5/220 349/10/220 348/9/219 +f 350/11/218 347/12/226 346/6/226 +f 346/6/226 348/9/226 350/11/218 +f 351/1/187 352/4/187 353/3/187 +f 353/3/187 354/2/187 351/1/187 +f 352/4/222 355/6/222 356/5/222 +f 356/5/222 353/3/227 352/4/222 +f 351/8/226 357/7/226 355/6/226 +f 355/6/226 352/4/226 351/8/226 +f 348/9/223 349/10/223 356/5/225 +f 356/5/225 355/6/225 348/9/223 +f 350/11/218 348/9/226 355/6/226 +f 355/6/226 357/12/226 350/11/218 +f 358/1/195 359/2/195 360/3/195 +f 360/3/195 361/4/195 358/1/195 +f 362/5/228 363/6/217 361/4/217 +f 361/4/217 360/3/228 362/5/228 +f 363/6/226 364/7/226 358/8/226 +f 358/8/226 361/4/226 363/6/226 +f 365/9/219 363/6/219 362/5/229 +f 362/5/229 366/10/230 365/9/219 +f 367/11/218 364/12/226 363/6/226 +f 363/6/226 365/9/226 367/11/218 +f 368/1/187 369/4/187 370/3/187 +f 370/3/187 371/2/187 368/1/187 +f 369/4/222 372/6/222 373/5/231 +f 373/5/231 370/3/231 369/4/222 +f 368/8/226 374/7/226 372/6/226 +f 372/6/226 369/4/226 368/8/226 +f 365/9/223 366/10/232 373/5/233 +f 373/5/233 372/6/225 365/9/223 +f 367/11/218 365/9/226 372/6/226 +f 372/6/226 374/12/226 367/11/218 +f 375/13/234 376/14/235 377/15/235 +f 377/15/236 378/16/237 375/13/237 +f 379/17/238 380/18/238 381/19/239 +f 381/19/240 382/20/241 379/17/242 +f 382/20/243 381/19/244 376/18/245 +f 376/18/246 383/17/247 382/20/248 +f 383/17/249 376/18/249 375/21/250 +f 375/21/251 384/22/252 383/17/253 +f 377/15/254 385/23/255 386/24/255 +f 386/24/256 378/16/257 377/15/258 +f 387/13/259 388/25/259 389/26/259 +f 389/26/259 390/16/259 387/13/259 +f 391/22/260 392/27/260 388/28/260 +f 388/28/260 387/21/260 391/22/260 +f 390/16/261 389/26/261 393/29/262 +f 393/29/263 386/24/264 390/16/265 +f 394/25/266 375/13/266 378/16/266 +f 378/16/266 395/26/266 394/25/266 +f 384/22/267 375/21/267 394/28/267 +f 394/28/267 396/27/267 384/22/267 +f 378/16/268 386/24/269 393/29/270 +f 393/29/271 395/26/272 378/16/272 +f 380/14/273 387/13/273 390/16/273 +f 390/16/274 397/15/275 380/14/275 +f 379/17/260 391/22/260 387/21/260 +f 387/21/276 380/18/277 379/17/277 +f 397/15/278 390/16/279 386/24/280 +f 386/24/281 385/23/282 397/15/283 +f 398/30/284 399/31/284 400/32/285 +f 400/32/286 401/33/286 398/30/286 +f 402/17/287 403/20/288 404/19/289 +f 404/19/290 405/18/291 402/17/291 +f 403/20/292 406/17/293 399/18/293 +f 399/18/294 404/19/295 403/20/296 +f 406/17/297 407/22/298 400/21/298 +f 400/21/299 399/18/299 406/17/299 +f 408/34/300 409/35/301 398/30/302 +f 398/30/303 401/33/303 408/34/304 +f 389/26/259 388/25/259 410/32/259 +f 410/32/259 411/33/259 389/26/259 +f 388/28/260 392/27/260 412/22/260 +f 412/22/260 410/21/260 388/28/260 +f 393/29/262 389/26/261 411/33/261 +f 411/33/305 408/34/306 393/29/307 +f 401/33/266 400/32/266 394/25/266 +f 394/25/266 395/26/266 401/33/266 +f 407/22/267 396/27/267 394/28/267 +f 394/28/267 400/21/267 407/22/267 +f 401/33/272 395/26/272 393/29/271 +f 393/29/308 408/34/309 401/33/310 +f 411/33/311 410/32/311 405/31/312 +f 405/31/313 413/30/313 411/33/313 +f 410/21/260 412/22/260 402/17/260 +f 402/17/314 405/18/314 410/21/314 +f 408/34/315 411/33/316 413/30/317 +f 413/30/318 409/35/319 408/34/320 +f 404/36/321 399/37/322 398/30/322 +f 398/30/322 409/35/323 404/36/321 +f 404/36/324 409/35/325 413/30/326 +f 413/30/326 405/37/327 404/36/324 +f 397/15/328 385/23/329 381/38/330 +f 381/38/330 380/39/331 397/15/328 +f 377/15/332 376/39/332 381/38/333 +f 381/38/333 385/23/334 377/15/332 +f 414/40/335 415/41/335 416/42/335 +f 416/42/336 417/43/337 414/40/338 +f 418/44/339 419/45/340 420/46/341 +f 420/46/342 421/47/342 418/44/343 +f 421/47/344 420/46/344 415/45/345 +f 415/45/346 422/44/347 421/47/348 +f 422/44/349 415/45/349 414/48/349 +f 414/48/350 423/49/350 422/44/351 +f 416/50/352 424/51/353 425/52/354 +f 425/52/355 417/53/356 416/50/356 +f 426/40/357 427/54/357 428/55/357 +f 428/55/357 429/43/357 426/40/357 +f 430/49/358 431/56/358 427/57/358 +f 427/57/358 426/48/358 430/49/358 +f 429/53/359 428/58/359 432/59/360 +f 432/59/361 425/52/362 429/53/363 +f 433/54/364 414/40/364 417/43/364 +f 417/43/364 434/55/364 433/54/364 +f 423/49/365 414/48/365 433/57/365 +f 433/57/365 435/56/365 423/49/365 +f 417/53/366 425/52/367 432/59/368 +f 432/59/369 434/58/370 417/53/370 +f 419/41/371 426/40/371 429/43/372 +f 429/43/373 436/42/373 419/41/373 +f 418/44/358 430/49/358 426/48/358 +f 426/48/374 419/45/374 418/44/375 +f 436/50/376 429/53/377 425/52/378 +f 425/52/379 424/51/380 436/50/381 +f 436/60/382 424/61/383 420/62/384 +f 420/62/384 419/63/382 436/60/382 +f 416/60/385 415/63/385 420/62/386 +f 420/62/386 424/61/387 416/60/385 +f 437/64/388 438/65/388 439/66/389 +f 439/66/389 440/67/389 437/64/388 +f 441/68/390 437/69/390 440/70/390 +f 440/70/390 442/71/390 441/68/390 +f 443/64/391 441/65/391 442/66/391 +f 442/66/391 444/67/391 443/64/391 +f 443/68/392 444/71/393 439/70/393 +f 439/70/393 438/69/392 443/68/392 +f 445/72/394 440/67/389 439/66/389 +f 439/66/389 446/73/394 445/72/394 +f 442/71/395 440/70/395 445/74/396 +f 445/74/397 447/75/397 442/71/398 +f 448/72/399 444/67/400 442/66/400 +f 442/66/400 447/73/399 448/72/399 +f 446/74/401 439/70/393 444/71/393 +f 444/71/393 448/75/402 446/74/401 +f 449/76/403 450/77/403 451/78/403 +f 451/78/403 452/79/403 449/76/403 +f 452/79/8 451/78/8 453/80/8 +f 453/80/8 454/81/8 452/79/8 +f 455/78/1 456/79/1 457/81/1 +f 457/81/1 458/80/1 455/78/1 +f 449/76/187 459/82/187 457/83/187 +f 457/83/187 456/79/187 449/76/187 +f 456/79/403 455/78/403 450/77/403 +f 450/77/403 449/76/403 456/79/403 +f 452/79/187 454/83/187 459/82/187 +f 459/82/187 449/76/187 452/79/187 +f 460/84/187 461/85/187 462/86/187 +f 462/86/187 463/87/187 460/84/187 +f 464/88/1 465/89/1 466/90/1 +f 466/90/1 467/91/1 464/88/1 +f 468/92/404 469/93/405 470/94/405 +f 470/94/405 471/95/404 468/92/404 +f 472/89/8 473/88/8 474/91/8 +f 474/91/8 475/90/8 472/89/8 +f 476/96/403 477/97/406 478/98/406 +f 478/98/406 479/99/403 476/96/403 +f 480/100/187 481/101/187 482/102/187 +f 471/103/187 470/104/187 483/105/187 +f 483/105/187 484/106/187 471/103/187 +f 485/102/187 486/101/187 487/100/187 +f 488/107/187 487/100/187 486/101/187 +f 486/101/187 489/108/187 488/107/187 +f 490/109/187 463/87/187 462/86/187 +f 462/86/187 491/110/187 490/109/187 +f 492/111/407 468/92/404 471/95/404 +f 471/95/404 493/112/407 492/111/407 +f 494/97/408 476/96/403 479/99/403 +f 479/99/403 495/98/409 494/97/408 +f 471/103/187 484/106/187 496/105/187 +f 496/105/187 493/104/187 471/103/187 +f 488/107/187 489/108/187 481/101/187 +f 481/101/187 480/100/187 488/107/187 +f 497/113/8 461/114/8 460/115/8 +f 460/115/8 483/116/8 497/113/8 +f 483/116/410 460/115/410 463/117/411 +f 463/117/411 484/118/411 483/116/410 +f 484/118/412 463/117/412 490/119/413 +f 490/119/413 496/120/413 484/118/412 +f 496/120/1 490/119/1 491/121/1 +f 491/121/1 498/122/1 496/120/1 +f 498/123/414 491/124/414 462/125/415 +f 462/125/415 499/126/415 498/123/414 +f 499/126/416 462/125/416 461/124/417 +f 461/124/417 497/123/417 499/126/416 +f 493/104/187 496/105/187 498/127/187 +f 498/127/187 500/128/187 493/104/187 +f 500/129/8 501/130/8 492/111/8 +f 492/111/8 493/112/8 500/129/8 +f 469/93/1 502/131/1 503/132/1 +f 503/132/1 470/94/1 469/93/1 +f 503/128/187 497/127/187 483/105/187 +f 483/105/187 470/104/187 503/128/187 +f 466/90/1 504/89/1 505/88/1 +f 505/88/1 467/91/1 466/90/1 +f 503/133/418 482/134/418 481/135/419 +f 481/135/419 497/123/419 503/133/418 +f 497/123/417 481/135/417 489/136/416 +f 489/136/416 499/126/416 497/123/417 +f 499/126/415 489/136/415 486/135/414 +f 486/135/414 498/123/414 499/126/415 +f 498/123/420 486/135/420 485/134/420 +f 485/134/420 500/133/420 498/123/420 +f 474/91/8 506/88/8 507/89/8 +f 507/89/8 475/90/8 474/91/8 +f 478/98/406 487/137/406 488/138/421 +f 488/138/421 479/99/421 478/98/406 +f 479/99/422 488/138/422 480/137/409 +f 480/137/409 495/98/409 479/99/422 +f 502/139/404 464/140/404 467/141/404 +f 467/141/404 503/133/404 502/139/404 +f 503/133/404 467/141/404 505/142/404 +f 505/142/404 482/134/404 503/133/404 +f 482/102/187 505/143/187 504/144/187 +f 504/144/187 480/100/187 482/102/187 +f 480/137/403 504/145/403 466/146/403 +f 466/146/403 495/98/403 480/137/403 +f 495/98/403 466/146/403 465/147/403 +f 465/147/403 494/97/403 495/98/403 +f 477/97/403 472/147/403 475/146/403 +f 475/146/403 478/98/403 477/97/403 +f 478/98/403 475/146/403 507/145/403 +f 507/145/403 487/137/403 478/98/403 +f 487/100/187 507/144/187 506/143/187 +f 506/143/187 485/102/187 487/100/187 +f 485/134/404 506/142/404 474/141/404 +f 474/141/404 500/133/404 485/134/404 +f 500/133/404 474/141/404 473/140/404 +f 473/140/404 501/139/404 500/133/404 +f 508/148/187 509/149/187 510/150/187 +f 510/150/187 511/151/187 508/148/187 +f 512/152/423 513/153/403 514/154/403 +f 514/154/403 515/155/423 512/152/423 +f 516/156/8 517/157/8 513/158/8 +f 513/158/8 512/159/8 516/156/8 +f 518/155/424 519/154/404 517/153/404 +f 517/153/404 516/152/424 518/155/424 +f 510/160/425 509/161/425 514/154/403 +f 514/154/403 513/153/403 510/160/425 +f 511/162/8 510/163/8 513/158/8 +f 513/158/8 517/157/8 511/162/8 +f 508/161/426 511/160/426 517/153/404 +f 517/153/404 519/154/404 508/161/426 +f 520/148/187 521/151/187 522/150/187 +f 522/150/187 523/149/187 520/148/187 +f 524/152/423 525/155/423 526/154/403 +f 526/154/403 527/153/403 524/152/423 +f 528/156/1 524/159/1 527/158/1 +f 527/158/1 529/157/1 528/156/1 +f 530/155/424 528/152/424 529/153/404 +f 529/153/404 531/154/404 530/155/424 +f 522/160/425 527/153/403 526/154/403 +f 526/154/403 523/161/425 522/160/425 +f 521/162/1 529/157/1 527/158/1 +f 527/158/1 522/163/1 521/162/1 +f 520/161/426 531/154/404 529/153/404 +f 529/153/404 521/160/426 520/161/426 +f 532/164/427 533/165/428 534/166/428 +f 534/166/428 535/167/427 532/164/427 +f 536/168/429 537/169/430 533/170/430 +f 533/170/430 532/171/431 536/168/432 +f 538/164/433 539/165/434 537/166/434 +f 537/166/434 536/167/433 538/164/433 +f 535/168/435 534/169/436 539/170/436 +f 539/170/436 538/171/435 535/168/435 +f 540/172/437 541/173/438 542/174/438 +f 542/174/438 543/175/437 540/172/437 +f 543/176/439 542/177/440 544/178/440 +f 544/178/440 545/179/439 543/176/439 +f 545/172/195 544/173/195 546/174/195 +f 546/174/195 547/175/195 545/172/195 +f 547/179/441 546/178/442 541/177/442 +f 541/177/442 540/176/441 547/179/441 +f 548/180/443 549/181/443 550/182/444 +f 550/182/444 551/183/444 548/180/443 +f 549/184/445 552/185/445 553/186/446 +f 553/186/446 550/187/445 549/184/445 +f 552/180/447 554/181/447 555/182/448 +f 555/182/448 553/183/448 552/180/447 +f 554/184/449 548/185/449 551/186/450 +f 551/186/450 555/187/450 554/184/449 +f 533/165/451 551/183/452 550/182/452 +f 550/182/452 534/166/451 533/165/451 +f 534/169/453 550/187/453 553/186/453 +f 553/186/453 539/170/453 534/169/453 +f 539/165/454 553/183/455 555/182/455 +f 555/182/455 537/166/454 539/165/454 +f 537/169/456 555/187/457 551/186/457 +f 551/186/457 533/170/457 537/169/456 +f 549/188/458 548/189/458 542/174/438 +f 542/174/438 541/173/438 549/188/458 +f 548/190/459 554/191/459 544/178/440 +f 544/178/440 542/177/440 548/190/459 +f 554/188/460 552/189/460 546/174/195 +f 546/174/195 544/173/195 554/188/460 +f 552/191/461 549/190/461 541/177/442 +f 541/177/442 546/178/442 552/191/461 +f 556/164/427 557/165/428 558/166/428 +f 558/166/428 559/167/427 556/164/427 +f 560/168/430 561/169/462 557/170/462 +f 557/170/462 556/171/430 560/168/430 +f 562/164/433 563/165/434 561/166/434 +f 561/166/434 560/167/433 562/164/433 +f 559/168/463 558/169/435 563/170/435 +f 563/170/435 562/171/463 559/168/463 +f 564/172/437 565/173/438 566/174/438 +f 566/174/438 567/175/437 564/172/437 +f 567/176/439 566/177/440 568/178/440 +f 568/178/440 569/179/439 567/176/439 +f 569/175/195 568/174/195 570/173/195 +f 570/173/195 571/172/195 569/175/195 +f 571/179/464 570/178/442 565/177/442 +f 565/177/442 564/176/464 571/179/464 +f 572/180/443 573/181/443 574/182/444 +f 574/182/444 575/183/444 572/180/443 +f 573/184/446 576/185/465 577/186/465 +f 577/186/465 574/187/465 573/184/446 +f 576/180/448 578/181/448 579/182/447 +f 579/182/447 577/183/447 576/180/448 +f 578/184/449 572/185/449 575/186/449 +f 575/186/449 579/187/449 578/184/449 +f 557/165/451 575/183/452 574/182/452 +f 574/182/452 558/166/451 557/165/451 +f 558/169/466 574/187/467 577/186/466 +f 577/186/466 563/170/467 558/169/466 +f 563/165/455 577/183/454 579/182/454 +f 579/182/454 561/166/455 563/165/455 +f 561/169/468 579/187/468 575/186/468 +f 575/186/468 557/170/468 561/169/468 +f 573/188/469 572/189/469 566/174/438 +f 566/174/438 565/173/438 573/188/469 +f 572/190/459 578/191/459 568/178/440 +f 568/178/440 566/177/440 572/190/459 +f 578/189/460 576/188/460 570/173/195 +f 570/173/195 568/174/195 578/189/460 +f 576/191/470 573/190/470 565/177/442 +f 565/177/442 570/178/442 576/191/470 +f 580/192/8 581/193/8 582/194/8 +f 582/194/8 583/195/8 580/192/8 +f 584/196/195 585/197/195 582/198/195 +f 582/198/195 581/199/195 584/196/195 +f 586/200/1 587/201/1 588/202/1 +f 588/202/1 589/203/1 586/200/1 +f 590/204/187 591/205/187 588/206/187 +f 588/206/187 587/207/187 590/204/187 +f 586/208/195 589/209/195 585/210/195 +f 585/210/195 584/211/195 586/208/195 +f 580/212/187 583/213/187 591/214/187 +f 591/214/187 590/215/187 580/212/187 +f 581/216/403 580/217/403 592/218/403 +f 592/218/403 593/219/403 581/216/403 +f 580/220/403 590/221/403 594/222/403 +f 594/222/403 592/223/403 580/220/403 +f 590/221/403 587/224/403 595/225/403 +f 595/225/403 594/222/403 590/221/403 +f 587/217/403 586/216/403 596/219/403 +f 596/219/403 595/218/403 587/217/403 +f 586/224/403 584/221/403 597/222/403 +f 597/222/403 596/225/403 586/224/403 +f 584/221/403 581/220/403 593/223/403 +f 593/223/403 597/222/403 584/221/403 +f 593/219/8 592/218/8 598/226/8 +f 598/226/8 599/227/8 593/219/8 +f 592/223/187 594/222/187 600/228/187 +f 600/228/187 598/229/187 592/223/187 +f 594/222/187 595/225/187 601/230/187 +f 601/230/187 600/228/187 594/222/187 +f 595/218/1 596/219/1 602/227/1 +f 602/227/1 601/226/1 595/218/1 +f 596/225/195 597/222/195 603/228/195 +f 603/228/195 602/230/195 596/225/195 +f 597/222/195 593/223/195 599/229/195 +f 599/229/195 603/228/195 597/222/195 +f 604/151/1 605/150/1 606/149/1 +f 606/149/1 607/148/1 604/151/1 +f 608/151/8 609/148/8 610/149/8 +f 610/149/8 611/150/8 608/151/8 +f 607/231/403 606/232/403 610/233/403 +f 610/233/403 609/234/403 607/231/403 +f 606/232/195 605/231/195 611/234/195 +f 611/234/195 610/233/195 606/232/195 +f 605/234/404 604/233/404 608/232/404 +f 608/232/404 611/231/404 605/234/404 +f 612/151/187 613/148/187 614/149/187 +f 614/149/187 615/150/187 612/151/187 +f 616/151/195 617/150/195 618/149/195 +f 618/149/195 619/148/195 616/151/195 +f 613/235/403 619/236/403 618/237/403 +f 618/237/403 614/238/403 613/235/403 +f 614/238/8 618/237/8 617/236/8 +f 617/236/8 615/235/8 614/238/8 +f 615/238/404 617/237/404 616/236/404 +f 616/236/404 612/235/404 615/238/404 +f 620/151/187 621/150/187 622/149/187 +f 622/149/187 623/148/187 620/151/187 +f 624/151/195 625/148/195 626/149/195 +f 626/149/195 627/150/195 624/151/195 +f 623/235/403 622/238/403 626/237/403 +f 626/237/403 625/236/403 623/235/403 +f 622/238/1 621/235/1 627/236/1 +f 627/236/1 626/237/1 622/238/1 +f 621/238/404 620/235/404 624/236/404 +f 624/236/404 627/237/404 621/238/404 +f 628/239/471 629/240/471 630/241/471 +f 630/241/471 631/242/471 628/239/471 +f 632/242/472 633/239/472 634/240/473 +f 634/240/473 635/241/473 632/242/472 +f 631/243/195 630/244/195 634/245/195 +f 634/245/195 633/246/195 631/243/195 +f 630/244/474 629/243/474 635/246/474 +f 635/246/474 634/245/474 630/244/474 +f 629/244/187 628/243/187 632/246/187 +f 632/246/187 635/245/187 629/244/187 +f 636/247/404 637/248/404 638/249/404 +f 638/249/404 639/250/404 636/247/404 +f 636/251/195 639/252/195 640/253/195 +f 640/253/195 641/254/195 636/251/195 +f 637/252/1 636/251/1 641/254/1 +f 641/254/1 642/253/1 637/252/1 +f 638/252/187 637/251/187 642/254/187 +f 642/254/187 643/253/187 638/252/187 +f 644/255/475 645/256/475 646/257/476 +f 646/257/476 647/258/476 644/255/475 +f 648/259/477 644/260/477 647/261/478 +f 647/261/478 649/262/478 648/259/477 +f 650/260/479 648/259/479 649/262/479 +f 649/262/479 651/261/479 650/260/479 +f 650/259/480 651/262/481 646/261/482 +f 646/261/482 645/260/480 650/259/480 +f 652/263/483 647/258/476 646/257/476 +f 646/257/476 653/264/483 652/263/483 +f 649/262/484 647/261/484 652/265/484 +f 652/265/485 654/266/485 649/262/485 +f 655/265/486 651/261/487 649/262/486 +f 649/262/486 654/266/486 655/265/486 +f 653/265/488 646/261/482 651/262/481 +f 651/262/481 655/266/489 653/265/488 +f 656/255/490 657/258/491 658/257/491 +f 658/257/491 659/256/490 656/255/490 +f 660/259/477 661/262/478 657/261/478 +f 657/261/478 656/260/477 660/259/477 +f 662/260/492 663/261/492 661/262/492 +f 661/262/492 660/259/492 662/260/492 +f 662/259/480 659/260/480 658/261/482 +f 658/261/482 663/262/493 662/259/480 +f 664/263/494 665/264/494 658/257/491 +f 658/257/491 657/258/491 664/263/494 +f 661/262/495 666/266/495 664/265/495 +f 664/265/484 657/261/484 661/262/484 +f 667/265/496 666/266/496 661/262/496 +f 661/262/496 663/261/497 667/265/496 +f 665/265/498 667/266/499 663/262/493 +f 663/262/493 658/261/482 665/265/498 +f 668/267/404 669/268/404 670/269/404 +f 670/269/404 671/270/404 668/267/404 +f 672/271/195 673/272/195 670/273/195 +f 670/273/195 669/274/195 672/271/195 +f 674/275/1 675/276/1 676/277/1 +f 676/277/1 677/278/1 674/275/1 +f 678/272/187 679/271/187 668/274/187 +f 668/274/187 671/273/187 678/272/187 +f 678/279/1 671/280/1 680/277/1 +f 680/277/1 681/276/1 678/279/1 +f 671/280/1 670/281/1 682/278/1 +f 682/278/1 680/277/1 671/280/1 +f 670/281/1 673/282/1 683/275/1 +f 683/275/1 682/278/1 670/281/1 +f 681/283/195 680/284/195 676/285/195 +f 676/285/195 675/286/195 681/283/195 +f 680/287/403 682/288/403 677/289/403 +f 677/289/403 676/290/403 680/287/403 +f 682/284/187 683/283/187 674/286/187 +f 674/286/187 677/285/187 682/284/187 +f 684/291/500 685/292/501 686/293/501 +f 686/293/501 687/294/500 684/291/500 +f 688/293/502 689/292/502 690/291/503 +f 690/291/503 691/294/503 688/293/502 +f 687/295/8 686/296/8 688/297/8 +f 688/297/8 691/298/8 687/295/8 +f 692/299/504 685/296/505 689/297/506 +f 689/297/506 693/300/1 692/299/504 +f 692/301/501 694/302/501 686/293/501 +f 686/293/501 685/292/501 692/301/501 +f 695/302/507 693/301/507 689/292/502 +f 689/292/502 688/293/502 695/302/507 +f 694/299/8 695/300/8 688/297/8 +f 688/297/8 686/296/8 694/299/8 +f 684/295/508 690/298/1 689/297/506 +f 689/297/506 685/296/505 684/295/508 +f 696/303/509 697/304/509 698/305/8 +f 698/305/8 699/306/8 696/303/509 +f 700/307/510 696/308/510 699/309/187 +f 699/309/187 701/310/187 700/307/510 +f 702/304/511 700/303/511 701/306/1 +f 701/306/1 703/305/1 702/304/511 +f 697/308/512 702/307/512 703/310/195 +f 703/310/195 698/309/195 697/308/512 +f 704/303/513 699/306/8 698/305/8 +f 698/305/8 705/304/513 704/303/513 +f 706/307/482 701/310/187 699/309/187 +f 699/309/187 704/308/482 706/307/482 +f 707/304/514 703/305/1 701/306/1 +f 701/306/1 706/303/514 707/304/514 +f 705/308/484 698/309/195 703/310/195 +f 703/310/195 707/307/484 705/308/484 +f 708/303/509 709/304/509 710/305/8 +f 710/305/8 711/306/8 708/303/509 +f 712/307/510 708/308/510 711/309/187 +f 711/309/187 713/310/187 712/307/510 +f 714/304/511 712/303/511 713/306/1 +f 713/306/1 715/305/1 714/304/511 +f 709/308/512 714/307/512 715/310/195 +f 715/310/195 710/309/195 709/308/512 +f 716/303/513 711/306/8 710/305/8 +f 710/305/8 717/304/513 716/303/513 +f 718/307/482 713/310/187 711/309/187 +f 711/309/187 716/308/482 718/307/482 +f 719/304/514 715/305/1 713/306/1 +f 713/306/1 718/303/514 719/304/514 +f 717/308/484 710/309/195 715/310/195 +f 715/310/195 719/307/484 717/308/484 +f 720/311/515 721/312/515 722/313/516 +f 722/313/516 723/314/517 720/311/515 +f 724/315/518 720/316/518 723/317/518 +f 723/317/518 725/318/518 724/315/518 +f 726/312/519 724/311/519 725/314/520 +f 725/314/520 727/313/520 726/312/519 +f 726/315/521 727/318/522 722/317/523 +f 722/317/523 721/316/521 726/315/521 +f 728/319/524 723/314/517 722/313/516 +f 722/313/516 729/320/524 728/319/524 +f 725/318/525 723/317/525 728/321/526 +f 728/321/527 730/322/527 725/318/528 +f 731/320/529 727/313/529 725/314/529 +f 725/314/529 730/319/529 731/320/529 +f 729/321/530 722/317/523 727/318/522 +f 727/318/522 731/322/531 729/321/530 +f 732/323/195 733/324/195 734/325/195 +f 734/325/195 735/326/195 732/323/195 +f 733/324/195 736/327/195 737/328/195 +f 737/328/195 734/325/195 733/324/195 +f 736/327/195 738/329/195 739/330/195 +f 739/330/195 737/328/195 736/327/195 +f 738/329/195 740/331/195 741/332/195 +f 741/332/195 739/330/195 738/329/195 +f 742/333/195 743/334/195 744/335/195 +f 744/335/195 745/336/195 742/333/195 +f 743/334/195 746/337/195 747/338/195 +f 747/338/195 744/335/195 743/334/195 +f 748/339/195 749/340/195 750/341/195 +f 750/341/195 751/342/195 748/339/195 +f 751/342/195 750/341/195 752/343/195 +f 752/343/195 753/344/195 751/342/195 +f 754/345/195 755/346/195 756/347/195 +f 756/347/195 757/348/195 754/345/195 +f 755/346/195 758/349/195 759/350/195 +f 759/350/195 756/347/195 755/346/195 +f 758/349/195 760/351/195 761/352/195 +f 761/352/195 759/350/195 758/349/195 +f 760/351/195 762/353/195 763/354/195 +f 763/354/195 761/352/195 760/351/195 +f 764/355/195 765/356/195 733/324/195 +f 733/324/195 732/323/195 764/355/195 +f 765/356/195 766/357/195 736/327/195 +f 736/327/195 733/324/195 765/356/195 +f 766/357/195 767/358/195 738/329/195 +f 738/329/195 736/327/195 766/357/195 +f 767/358/195 768/359/195 740/331/195 +f 740/331/195 738/329/195 767/358/195 +f 748/339/195 751/342/195 755/346/195 +f 755/346/195 754/345/195 748/339/195 +f 751/342/195 753/344/195 758/349/195 +f 758/349/195 755/346/195 751/342/195 +f 753/344/195 769/360/195 760/351/195 +f 760/351/195 758/349/195 753/344/195 +f 769/360/195 770/361/195 762/353/195 +f 762/353/195 760/351/195 769/360/195 +f 735/326/195 734/325/195 743/334/195 +f 743/334/195 742/333/195 735/326/195 +f 734/325/195 737/328/195 746/337/195 +f 746/337/195 743/334/195 734/325/195 +f 749/340/195 745/336/195 744/335/195 +f 744/335/195 750/341/195 749/340/195 +f 750/341/195 744/335/195 747/338/195 +f 747/338/195 752/343/195 750/341/195 +f 771/362/195 772/363/195 773/364/195 +f 773/364/195 774/365/195 771/362/195 +f 772/363/195 775/366/195 776/367/195 +f 776/367/195 773/364/195 772/363/195 +f 775/366/195 777/368/195 778/369/195 +f 778/369/195 776/367/195 775/366/195 +f 777/368/195 779/370/195 780/371/195 +f 780/371/195 778/369/195 777/368/195 +f 774/365/195 773/364/195 781/372/195 +f 781/372/195 782/373/195 774/365/195 +f 773/364/195 776/367/195 783/374/195 +f 783/374/195 781/372/195 773/364/195 +f 776/367/195 778/369/195 784/375/195 +f 784/375/195 783/374/195 776/367/195 +f 778/369/195 780/371/195 785/376/195 +f 785/376/195 784/375/195 778/369/195 +f 782/373/195 781/372/195 786/377/195 +f 786/377/195 787/378/195 782/373/195 +f 781/372/195 783/374/195 788/379/195 +f 788/379/195 786/377/195 781/372/195 +f 783/374/195 784/375/195 789/380/195 +f 789/380/195 788/379/195 783/374/195 +f 784/375/195 785/376/195 790/381/195 +f 790/381/195 789/380/195 784/375/195 +f 787/378/195 786/377/195 791/382/195 +f 791/382/195 792/383/195 787/378/195 +f 786/377/195 788/379/195 793/384/195 +f 793/384/195 791/382/195 786/377/195 +f 788/379/195 789/380/195 794/385/195 +f 794/385/195 793/384/195 788/379/195 +f 789/380/195 790/381/195 795/386/195 +f 795/386/195 794/385/195 789/380/195 +f 796/387/532 797/388/533 798/389/34 +f 798/389/34 799/390/534 796/387/532 +f 800/391/535 801/392/536 797/388/533 +f 797/388/533 796/387/532 800/391/535 +f 799/390/534 798/389/34 801/393/536 +f 801/393/536 800/394/535 799/390/534 +f 802/395/1 803/396/1 804/397/1 +f 804/387/537 803/390/534 798/389/34 +f 798/389/34 797/388/533 804/387/537 +f 802/391/538 804/387/537 797/388/533 +f 797/388/533 801/392/536 802/391/538 +f 803/390/534 802/394/538 801/393/536 +f 801/393/536 798/389/34 803/390/534 +f 805/398/1 806/399/1 807/400/1 +f 807/400/1 808/401/1 805/398/1 +f 809/402/1 810/403/1 811/399/1 +f 811/399/1 812/398/1 809/402/1 +f 810/403/1 813/404/1 814/400/1 +f 814/400/1 811/399/1 810/403/1 +f 813/404/1 815/405/1 816/401/1 +f 816/401/1 814/400/1 813/404/1 +f 815/405/1 809/402/1 812/398/1 +f 812/398/1 816/401/1 815/405/1 +f 817/406/403 810/407/403 809/408/403 +f 809/408/403 818/409/403 817/406/403 +f 819/410/187 813/411/187 810/412/187 +f 810/412/187 817/413/187 819/410/187 +f 819/406/404 820/409/404 815/408/404 +f 815/408/404 813/407/404 819/406/404 +f 818/413/195 809/412/195 815/411/195 +f 815/411/195 820/410/195 818/413/195 +f 806/414/404 805/415/404 812/416/404 +f 812/416/404 811/417/404 806/414/404 +f 805/418/187 808/419/187 816/420/187 +f 816/420/187 812/421/187 805/418/187 +f 808/415/403 807/414/403 814/417/403 +f 814/417/403 816/416/403 808/415/403 +f 807/419/195 806/418/195 811/421/195 +f 811/421/195 814/420/195 807/419/195 +f 821/422/403 822/423/403 823/424/403 +f 823/424/403 824/425/403 821/422/403 +f 825/422/404 826/425/404 827/424/404 +f 827/424/404 828/423/404 825/422/404 +f 824/426/539 823/427/540 827/428/540 +f 827/428/540 826/429/539 824/426/539 +f 823/430/541 822/431/542 828/432/542 +f 828/432/542 827/433/541 823/430/541 +f 822/427/543 821/426/544 825/429/544 +f 825/429/544 828/428/543 822/427/543 +f 829/422/403 830/423/403 831/424/403 +f 831/424/403 832/425/403 829/422/403 +f 833/422/404 834/425/404 835/424/404 +f 835/424/404 836/423/404 833/422/404 +f 832/426/545 831/427/545 835/428/545 +f 835/428/545 834/429/545 832/426/545 +f 831/430/546 830/431/546 836/432/546 +f 836/432/546 835/433/546 831/430/546 +f 830/427/547 829/426/548 833/429/548 +f 833/429/548 836/428/547 830/427/547 +f 837/255/475 838/258/476 839/257/476 +f 839/257/476 840/256/475 837/255/475 +f 841/259/549 842/262/482 838/261/482 +f 838/261/482 837/260/549 841/259/549 +f 843/260/479 844/261/479 842/262/479 +f 842/262/479 841/259/479 843/260/479 +f 843/259/550 840/260/550 839/261/478 +f 839/261/478 844/262/478 843/259/550 +f 845/263/483 846/264/483 839/257/476 +f 839/257/476 838/258/476 845/263/483 +f 842/262/551 847/266/551 845/265/551 +f 845/265/552 838/261/552 842/262/552 +f 848/265/486 847/266/486 842/262/486 +f 842/262/486 844/261/487 848/265/486 +f 846/265/553 848/266/554 844/262/478 +f 844/262/478 839/261/478 846/265/553 +f 849/255/490 850/256/490 851/257/491 +f 851/257/491 852/258/491 849/255/490 +f 853/259/549 849/260/549 852/261/482 +f 852/261/482 854/262/482 853/259/549 +f 855/260/492 853/259/492 854/262/492 +f 854/262/492 856/261/492 855/260/492 +f 855/259/550 856/262/478 851/261/478 +f 851/261/478 850/260/550 855/259/550 +f 857/263/494 852/258/491 851/257/491 +f 851/257/491 858/264/494 857/263/494 +f 854/262/552 852/261/552 857/265/552 +f 857/265/555 859/266/555 854/262/555 +f 860/265/496 856/261/497 854/262/496 +f 854/262/496 859/266/496 860/265/496 +f 858/265/556 851/261/478 856/262/478 +f 856/262/478 860/266/556 858/265/556 +f 861/434/403 862/435/403 863/436/403 +f 863/436/403 864/437/403 861/434/403 +f 863/438/8 865/439/8 866/440/8 +f 866/440/8 864/441/8 863/438/8 +f 867/442/195 868/443/195 869/444/195 +f 869/444/195 870/445/195 867/442/195 +f 862/446/1 871/447/1 869/448/1 +f 869/448/1 868/449/1 862/446/1 +f 861/443/187 864/442/187 866/445/187 +f 866/445/187 872/444/187 861/443/187 +f 868/434/403 867/437/403 863/436/403 +f 863/436/403 862/435/403 868/434/403 +f 867/450/8 870/451/8 865/452/8 +f 865/452/8 863/453/8 867/450/8 +f 861/454/1 872/455/1 871/456/1 +f 871/456/1 862/457/1 861/454/1 +f 873/148/1 874/149/1 875/150/1 +f 875/150/1 876/151/1 873/148/1 +f 877/458/557 878/459/557 874/460/557 +f 874/460/557 873/461/557 877/458/557 +f 878/462/558 879/463/558 875/464/559 +f 875/464/559 874/465/559 878/462/558 +f 879/459/560 880/458/560 876/461/560 +f 876/461/560 875/460/560 879/459/560 +f 880/463/561 877/462/561 873/465/562 +f 873/465/562 876/464/562 880/463/561 +f 881/466/563 882/467/564 883/468/565 +f 883/468/565 884/469/566 881/466/563 +f 885/469/567 886/468/568 882/467/564 +f 882/467/564 881/466/563 885/469/567 +f 887/470/8 888/471/8 881/472/8 +f 881/472/8 884/473/8 887/470/8 +f 888/471/8 889/470/8 885/473/8 +f 885/473/8 881/472/8 888/471/8 +f 890/474/569 886/475/569 885/476/569 +f 885/476/569 889/477/569 890/474/569 +f 891/470/1 892/471/1 893/472/1 +f 893/472/1 894/473/1 891/470/1 +f 892/471/1 895/470/1 896/473/1 +f 896/473/1 893/472/1 892/471/1 +f 897/474/570 883/475/570 896/476/571 +f 896/476/571 895/477/571 897/474/570 +f 891/478/572 890/479/573 898/480/574 +f 898/480/574 892/481/575 891/478/572 +f 892/481/576 898/480/577 897/479/578 +f 897/479/578 895/478/579 892/481/576 +f 893/482/580 896/483/581 883/468/565 +f 883/468/565 882/467/564 893/482/580 +f 894/483/582 893/482/580 882/467/564 +f 882/467/564 886/468/568 894/483/582 +f 891/477/583 894/476/583 886/475/584 +f 886/475/584 890/474/584 891/477/583 +f 887/477/585 884/476/585 883/475/585 +f 883/475/585 897/474/585 887/477/585 +f 889/478/586 888/481/587 898/480/574 +f 898/480/574 890/479/573 889/478/586 +f 888/481/588 887/478/589 897/479/578 +f 897/479/578 898/480/577 888/481/588 +f 899/484/187 900/485/187 901/486/187 +f 901/486/187 902/487/187 899/484/187 +f 903/488/590 902/489/590 901/486/590 +f 901/486/590 904/490/590 903/488/590 +f 900/485/591 905/491/592 904/490/593 +f 904/490/593 901/486/594 900/485/591 +f 899/492/595 906/493/595 905/491/595 +f 905/491/595 900/485/595 899/492/595 +f 903/488/590 904/490/590 907/494/590 +f 907/494/590 908/495/590 903/488/590 +f 909/496/596 907/494/597 904/490/598 +f 904/490/598 905/491/596 909/496/596 +f 910/497/595 909/496/595 905/491/595 +f 905/491/595 906/493/595 910/497/595 +f 911/484/195 912/487/195 913/486/195 +f 913/486/195 914/485/195 911/484/195 +f 913/486/590 912/489/590 915/488/590 +f 915/488/590 916/490/590 913/486/590 +f 916/490/599 917/491/600 914/485/600 +f 914/485/600 913/486/599 916/490/599 +f 917/491/595 918/493/595 911/492/595 +f 911/492/595 914/485/595 917/491/595 +f 915/488/590 908/495/590 907/494/590 +f 907/494/590 916/490/590 915/488/590 +f 909/496/601 917/491/601 916/490/602 +f 916/490/602 907/494/603 909/496/601 +f 910/497/595 918/493/595 917/491/595 +f 917/491/595 909/496/595 910/497/595 +f 919/484/187 920/485/187 921/486/187 +f 921/486/187 922/487/187 919/484/187 +f 923/488/604 922/489/604 921/486/604 +f 921/486/604 924/490/604 923/488/604 +f 920/485/188 925/491/188 924/490/188 +f 924/490/188 921/486/188 920/485/188 +f 919/492/605 926/493/605 925/491/605 +f 925/491/605 920/485/605 919/492/605 +f 923/488/604 924/490/604 927/494/604 +f 927/494/604 928/495/604 923/488/604 +f 929/496/193 927/494/193 924/490/193 +f 924/490/193 925/491/193 929/496/193 +f 930/497/605 929/496/605 925/491/605 +f 925/491/605 926/493/605 930/497/605 +f 931/484/195 932/487/195 933/486/195 +f 933/486/195 934/485/195 931/484/195 +f 933/486/604 932/489/604 935/488/604 +f 935/488/604 936/490/604 933/486/604 +f 936/490/197 937/491/197 934/485/197 +f 934/485/197 933/486/197 936/490/197 +f 937/491/605 938/493/605 931/492/605 +f 931/492/605 934/485/605 937/491/605 +f 935/488/604 928/495/604 927/494/604 +f 927/494/604 936/490/604 935/488/604 +f 929/496/606 937/491/606 936/490/606 +f 936/490/606 927/494/606 929/496/606 +f 930/497/605 938/493/605 937/491/605 +f 937/491/605 929/496/605 930/497/605 +f 939/484/1 940/485/1 941/486/1 +f 941/486/1 942/487/1 939/484/1 +f 943/488/46 942/489/46 941/486/46 +f 941/486/46 944/490/46 943/488/46 +f 940/485/607 945/491/140 944/490/140 +f 944/490/140 941/486/44 940/485/607 +f 939/492/608 946/493/608 945/491/608 +f 945/491/608 940/485/608 939/492/608 +f 943/488/46 944/490/46 947/494/48 +f 947/494/46 948/495/46 943/488/46 +f 949/496/47 947/494/47 944/490/47 +f 944/490/47 945/491/47 949/496/609 +f 950/497/608 949/496/608 945/491/608 +f 945/491/608 946/493/608 950/497/608 +f 951/484/8 952/487/8 953/486/8 +f 953/486/8 954/485/8 951/484/8 +f 953/486/46 952/489/46 955/488/46 +f 955/488/46 956/490/46 953/486/46 +f 956/490/149 957/491/149 954/485/147 +f 954/485/147 953/486/49 956/490/149 +f 957/491/608 958/493/608 951/492/608 +f 951/492/608 954/485/608 957/491/608 +f 955/488/46 948/495/46 947/494/46 +f 947/494/46 956/490/46 955/488/46 +f 949/496/610 957/491/610 956/490/610 +f 956/490/52 947/494/52 949/496/52 +f 950/497/611 958/493/611 957/491/611 +f 957/491/608 949/496/608 950/497/608 +f 959/484/1 960/485/1 961/486/1 +f 961/486/1 962/487/1 959/484/1 +f 963/488/46 962/489/46 961/486/46 +f 961/486/46 964/490/46 963/488/46 +f 960/485/607 965/491/140 964/490/140 +f 964/490/140 961/486/44 960/485/607 +f 959/492/608 966/493/608 965/491/608 +f 965/491/608 960/485/608 959/492/608 +f 963/488/46 964/490/46 967/494/48 +f 967/494/46 968/495/46 963/488/46 +f 969/496/47 967/494/47 964/490/47 +f 964/490/47 965/491/47 969/496/609 +f 970/497/608 969/496/608 965/491/608 +f 965/491/608 966/493/608 970/497/608 +f 971/484/8 972/487/8 973/486/8 +f 973/486/8 974/485/8 971/484/8 +f 973/486/46 972/489/46 975/488/46 +f 975/488/46 976/490/46 973/486/46 +f 976/490/149 977/491/149 974/485/612 +f 974/485/612 973/486/49 976/490/149 +f 977/491/608 978/493/608 971/492/608 +f 971/492/608 974/485/608 977/491/608 +f 975/488/46 968/495/46 967/494/46 +f 967/494/46 976/490/46 975/488/46 +f 969/496/610 977/491/610 976/490/610 +f 976/490/52 967/494/52 969/496/52 +f 970/497/611 978/493/611 977/491/611 +f 977/491/608 969/496/608 970/497/608 +f 979/148/187 980/149/187 981/150/187 +f 981/150/187 982/151/187 979/148/187 +f 983/458/613 984/459/613 980/460/614 +f 980/460/614 979/461/614 983/458/613 +f 984/462/615 985/463/615 981/464/616 +f 981/464/616 980/465/616 984/462/615 +f 985/459/617 986/458/617 982/461/618 +f 982/461/618 981/460/618 985/459/617 +f 986/463/619 983/462/619 979/465/620 +f 979/465/620 982/464/620 986/463/619 +f 987/484/1 988/485/1 989/486/1 +f 989/486/1 990/487/1 987/484/1 +f 991/488/143 990/489/143 989/486/143 +f 989/486/143 992/490/621 991/488/143 +f 988/485/45 993/491/622 992/490/623 +f 992/490/623 989/486/45 988/485/45 +f 987/492/624 994/493/624 993/491/624 +f 993/491/624 988/485/624 987/492/624 +f 991/488/143 992/490/621 995/494/146 +f 995/494/143 996/495/143 991/488/143 +f 997/496/47 995/494/47 992/490/47 +f 992/490/47 993/491/47 997/496/47 +f 998/497/624 997/496/624 993/491/624 +f 993/491/624 994/493/624 998/497/624 +f 999/484/8 1000/487/8 1001/486/8 +f 1001/486/8 1002/485/8 999/484/8 +f 1001/486/143 1000/489/143 1003/488/143 +f 1003/488/143 1004/490/621 1001/486/143 +f 1004/490/625 1005/491/626 1002/485/612 +f 1002/485/612 1001/486/612 1004/490/625 +f 1005/491/624 1006/493/624 999/492/624 +f 999/492/624 1002/485/624 1005/491/624 +f 1003/488/143 996/495/143 995/494/143 +f 995/494/143 1004/490/621 1003/488/143 +f 997/496/52 1005/491/52 1004/490/627 +f 1004/490/627 995/494/52 997/496/52 +f 998/497/628 1006/493/628 1005/491/628 +f 1005/491/624 997/496/624 998/497/624 +f 1007/148/187 1008/149/187 1009/150/187 +f 1009/150/187 1010/151/187 1007/148/187 +f 1011/458/629 1012/459/629 1008/460/614 +f 1008/460/614 1007/461/614 1011/458/629 +f 1012/462/615 1013/463/615 1009/464/615 +f 1009/464/615 1008/465/615 1012/462/615 +f 1013/459/630 1014/458/630 1010/461/618 +f 1010/461/618 1009/460/618 1013/459/630 +f 1014/463/631 1011/462/631 1007/465/620 +f 1007/465/620 1010/464/620 1014/463/631 +f 1015/484/1 1016/487/1 1017/486/1 +f 1017/486/1 1018/485/1 1015/484/1 +f 1019/488/632 1020/490/632 1017/486/632 +f 1017/486/632 1016/489/632 1019/488/632 +f 1018/485/80 1017/486/633 1020/490/79 +f 1020/490/79 1021/491/634 1018/485/80 +f 1015/492/179 1018/485/179 1021/491/179 +f 1021/491/179 1022/493/179 1015/492/179 +f 1019/488/632 1023/495/632 1024/494/632 +f 1024/494/635 1020/490/632 1019/488/632 +f 1025/496/84 1021/491/636 1020/490/636 +f 1020/490/85 1024/494/85 1025/496/85 +f 1026/497/179 1022/493/179 1021/491/179 +f 1021/491/179 1025/496/179 1026/497/179 +f 1027/484/8 1028/485/8 1029/486/8 +f 1029/486/8 1030/487/8 1027/484/8 +f 1029/486/632 1031/490/632 1032/488/632 +f 1032/488/632 1030/489/632 1029/486/632 +f 1031/490/88 1029/486/88 1028/485/88 +f 1028/485/88 1033/491/637 1031/490/88 +f 1033/491/179 1028/485/179 1027/492/179 +f 1027/492/179 1034/493/179 1033/491/179 +f 1032/488/632 1031/490/632 1024/494/632 +f 1024/494/632 1023/495/632 1032/488/632 +f 1025/496/90 1024/494/90 1031/490/90 +f 1031/490/91 1033/491/91 1025/496/91 +f 1026/497/179 1025/496/179 1033/491/179 +f 1033/491/638 1034/493/638 1026/497/638 +f 1035/148/8 1036/151/8 1037/150/8 +f 1037/150/8 1038/149/8 1035/148/8 +f 1039/458/639 1035/461/639 1038/460/639 +f 1038/460/639 1040/459/639 1039/458/639 +f 1040/462/640 1038/465/640 1037/464/640 +f 1037/464/640 1041/463/640 1040/462/640 +f 1041/459/641 1037/460/641 1036/461/641 +f 1036/461/641 1042/458/641 1041/459/641 +f 1042/463/642 1036/464/642 1035/465/642 +f 1035/465/642 1039/462/642 1042/463/642 +f 1043/149/195 1044/150/195 1045/151/195 +f 1045/151/195 1046/148/195 1043/149/195 +f 1047/148/187 1048/149/187 1049/150/187 +f 1049/150/187 1050/151/187 1047/148/187 +f 1045/160/643 1051/153/403 1052/154/403 +f 1052/154/403 1046/161/643 1045/160/643 +f 1044/162/8 1053/157/8 1051/158/8 +f 1051/158/8 1045/163/8 1044/162/8 +f 1043/161/644 1054/154/404 1053/153/404 +f 1053/153/404 1044/160/644 1043/161/644 +f 1049/152/645 1048/155/645 1052/154/403 +f 1052/154/403 1051/153/403 1049/152/645 +f 1050/156/8 1049/159/8 1051/158/8 +f 1051/158/8 1053/157/8 1050/156/8 +f 1047/155/646 1050/152/646 1053/153/404 +f 1053/153/404 1054/154/404 1047/155/646 +f 1055/498/552 1056/499/552 1057/500/482 +f 1057/500/482 1058/501/482 1055/498/552 +f 1059/502/497 1055/503/497 1058/504/497 +f 1058/504/497 1060/505/497 1059/502/497 +f 1061/499/534 1059/498/534 1060/501/534 +f 1060/501/534 1062/500/534 1061/499/534 +f 1061/502/647 1062/505/648 1057/504/479 +f 1057/504/479 1056/503/647 1061/502/647 +f 1063/506/103 1058/501/482 1057/500/482 +f 1057/500/482 1064/507/103 1063/506/103 +f 1060/505/649 1058/504/649 1063/508/649 +f 1063/508/650 1065/509/650 1060/505/650 +f 1066/507/18 1062/500/18 1060/501/18 +f 1060/501/18 1065/506/18 1066/507/18 +f 1064/508/651 1057/504/479 1062/505/648 +f 1062/505/648 1066/509/652 1064/508/651 +f 1067/150/8 1068/151/8 1069/148/8 +f 1069/148/8 1070/149/8 1067/150/8 +f 1071/154/653 1072/153/653 1073/160/654 +f 1073/160/654 1074/161/654 1071/154/653 +f 1072/510/187 1075/511/187 1076/512/187 +f 1076/512/187 1073/513/187 1072/510/187 +f 1075/153/655 1077/154/655 1078/161/418 +f 1078/161/418 1076/160/418 1075/153/655 +f 1070/155/656 1069/152/656 1072/153/653 +f 1072/153/653 1071/154/653 1070/155/656 +f 1069/514/187 1068/515/187 1075/511/187 +f 1075/511/187 1072/510/187 1069/514/187 +f 1068/152/657 1067/155/657 1077/154/655 +f 1077/154/655 1075/153/655 1068/152/657 +f 1079/516/658 1080/517/659 1081/518/659 +f 1081/518/659 1082/519/658 1079/516/658 +f 1083/520/660 1084/521/661 1080/522/478 +f 1080/522/478 1079/523/584 1083/520/660 +f 1085/524/662 1086/525/663 1084/526/663 +f 1084/526/663 1083/527/662 1085/524/662 +f 1082/523/664 1081/522/482 1086/521/665 +f 1086/521/665 1085/520/666 1082/523/664 +f 1087/528/667 1088/529/667 1081/518/659 +f 1081/518/659 1080/517/659 1087/528/667 +f 1089/530/396 1087/531/396 1080/522/478 +f 1080/522/478 1084/521/661 1089/530/396 +f 1090/532/668 1089/533/668 1084/526/663 +f 1084/526/663 1086/525/663 1090/532/668 +f 1088/531/103 1090/530/103 1086/521/665 +f 1086/521/665 1081/522/482 1088/531/103 +f 1091/311/669 1092/314/670 1093/313/671 +f 1093/313/671 1094/312/669 1091/311/669 +f 1095/315/672 1096/318/518 1092/317/518 +f 1092/317/518 1091/316/518 1095/315/672 +f 1097/312/673 1098/313/673 1096/314/673 +f 1096/314/673 1095/311/673 1097/312/673 +f 1097/315/674 1094/316/521 1093/317/523 +f 1093/317/523 1098/318/522 1097/315/674 +f 1099/319/675 1100/320/675 1093/313/671 +f 1093/313/671 1092/314/670 1099/319/675 +f 1096/318/676 1101/322/677 1099/321/677 +f 1099/321/526 1092/317/525 1096/318/525 +f 1102/320/678 1101/319/678 1096/314/678 +f 1096/314/678 1098/313/678 1102/320/678 +f 1100/321/679 1102/322/680 1098/318/522 +f 1098/318/522 1093/317/523 1100/321/679 +f 1103/64/681 1104/67/682 1105/66/682 +f 1105/66/682 1106/65/681 1103/64/681 +f 1107/68/390 1108/71/390 1104/70/390 +f 1104/70/390 1103/69/390 1107/68/390 +f 1109/64/683 1110/67/683 1108/66/684 +f 1108/66/684 1107/65/683 1109/64/683 +f 1109/68/392 1106/69/392 1105/70/393 +f 1105/70/393 1110/71/393 1109/68/392 +f 1111/72/685 1112/73/685 1105/66/682 +f 1105/66/682 1104/67/682 1111/72/685 +f 1108/71/686 1113/75/687 1111/74/687 +f 1111/74/396 1104/70/396 1108/71/396 +f 1114/72/210 1113/73/210 1108/66/688 +f 1108/66/688 1110/67/688 1114/72/210 +f 1112/74/689 1114/75/690 1110/71/393 +f 1110/71/393 1105/70/393 1112/74/689 +f 1115/149/8 1116/150/8 1117/151/8 +f 1117/151/8 1118/148/8 1115/149/8 +f 1119/148/1 1120/149/1 1121/150/1 +f 1121/150/1 1122/151/1 1119/148/1 +f 1117/160/691 1123/153/403 1124/154/403 +f 1124/154/403 1118/161/691 1117/160/691 +f 1116/162/187 1125/157/187 1123/158/187 +f 1123/158/187 1117/163/187 1116/162/187 +f 1115/161/692 1126/154/404 1125/153/404 +f 1125/153/404 1116/160/692 1115/161/692 +f 1121/152/693 1120/155/693 1124/154/403 +f 1124/154/403 1123/153/403 1121/152/693 +f 1122/156/187 1121/159/187 1123/158/187 +f 1123/158/187 1125/157/187 1122/156/187 +f 1119/155/694 1122/152/694 1125/153/404 +f 1125/153/404 1126/154/404 1119/155/694 +f 1127/516/658 1128/519/658 1129/518/659 +f 1129/518/659 1130/517/659 1127/516/658 +f 1131/520/695 1127/523/570 1130/522/482 +f 1130/522/482 1132/521/696 1131/520/695 +f 1133/524/662 1131/527/662 1132/526/663 +f 1132/526/663 1134/525/663 1133/524/662 +f 1128/523/697 1133/520/698 1134/521/699 +f 1134/521/699 1129/522/478 1128/523/697 +f 1135/528/667 1130/517/659 1129/518/659 +f 1129/518/659 1136/529/667 1135/528/667 +f 1137/530/103 1132/521/696 1130/522/482 +f 1130/522/482 1135/531/103 1137/530/103 +f 1138/532/668 1134/525/663 1132/526/663 +f 1132/526/663 1137/533/668 1138/532/668 +f 1136/531/396 1129/522/478 1134/521/699 +f 1134/521/699 1138/530/396 1136/531/396 +f 1139/84/8 1140/87/8 1141/86/8 +f 1141/86/8 1142/85/8 1139/84/8 +f 1143/88/195 1144/91/195 1145/90/195 +f 1145/90/195 1146/89/195 1143/88/195 +f 1147/92/404 1148/95/404 1149/94/700 +f 1149/94/700 1150/93/700 1147/92/404 +f 1151/89/187 1152/90/187 1153/91/187 +f 1153/91/187 1154/88/187 1151/89/187 +f 1155/96/403 1156/99/403 1157/98/701 +f 1157/98/701 1158/97/701 1155/96/403 +f 1159/100/8 1160/102/8 1161/101/8 +f 1148/103/8 1162/106/8 1163/105/8 +f 1163/105/8 1149/104/8 1148/103/8 +f 1164/102/8 1165/100/8 1166/101/8 +f 1167/107/8 1168/108/8 1166/101/8 +f 1166/101/8 1165/100/8 1167/107/8 +f 1169/109/8 1170/110/8 1141/86/8 +f 1141/86/8 1140/87/8 1169/109/8 +f 1171/111/702 1172/112/702 1148/95/404 +f 1148/95/404 1147/92/404 1171/111/702 +f 1173/97/703 1174/98/703 1156/99/403 +f 1156/99/403 1155/96/403 1173/97/703 +f 1148/103/8 1172/104/8 1175/105/8 +f 1175/105/8 1162/106/8 1148/103/8 +f 1167/107/8 1159/100/8 1161/101/8 +f 1161/101/8 1168/108/8 1167/107/8 +f 1176/113/187 1163/116/187 1139/115/187 +f 1139/115/187 1142/114/187 1176/113/187 +f 1163/116/704 1162/118/704 1140/117/704 +f 1140/117/704 1139/115/704 1163/116/704 +f 1162/118/705 1175/120/705 1169/119/705 +f 1169/119/705 1140/117/705 1162/118/705 +f 1175/120/195 1177/122/195 1170/121/195 +f 1170/121/195 1169/119/195 1175/120/195 +f 1177/123/706 1178/126/707 1141/125/707 +f 1141/125/707 1170/124/706 1177/123/706 +f 1178/126/708 1176/123/708 1142/124/708 +f 1142/124/708 1141/125/708 1178/126/708 +f 1172/104/8 1179/128/8 1177/127/8 +f 1177/127/8 1175/105/8 1172/104/8 +f 1179/129/187 1172/112/187 1171/111/187 +f 1171/111/187 1180/130/187 1179/129/187 +f 1150/93/195 1149/94/195 1181/132/195 +f 1181/132/195 1182/131/195 1150/93/195 +f 1181/128/8 1149/104/8 1163/105/8 +f 1163/105/8 1176/127/8 1181/128/8 +f 1145/90/195 1144/91/195 1183/88/195 +f 1183/88/195 1184/89/195 1145/90/195 +f 1181/133/709 1176/123/709 1161/135/709 +f 1161/135/709 1160/134/709 1181/133/709 +f 1176/123/708 1178/126/708 1168/136/708 +f 1168/136/708 1161/135/708 1176/123/708 +f 1178/126/707 1177/123/706 1166/135/706 +f 1166/135/706 1168/136/707 1178/126/707 +f 1177/123/710 1179/133/710 1164/134/710 +f 1164/134/710 1166/135/710 1177/123/710 +f 1153/91/187 1152/90/187 1185/89/187 +f 1185/89/187 1186/88/187 1153/91/187 +f 1157/98/701 1156/99/701 1167/138/701 +f 1167/138/701 1165/137/701 1157/98/701 +f 1156/99/703 1174/98/703 1159/137/703 +f 1159/137/703 1167/138/703 1156/99/703 +f 1182/139/404 1181/133/404 1144/141/404 +f 1144/141/404 1143/140/404 1182/139/404 +f 1181/133/404 1160/134/404 1183/142/404 +f 1183/142/404 1144/141/404 1181/133/404 +f 1160/102/8 1159/100/8 1184/144/8 +f 1184/144/8 1183/143/8 1160/102/8 +f 1159/137/403 1174/98/403 1145/146/403 +f 1145/146/403 1184/145/403 1159/137/403 +f 1174/98/403 1173/97/403 1146/147/403 +f 1146/147/403 1145/146/403 1174/98/403 +f 1158/97/403 1157/98/403 1152/146/403 +f 1152/146/403 1151/147/403 1158/97/403 +f 1157/98/403 1165/137/403 1185/145/403 +f 1185/145/403 1152/146/403 1157/98/403 +f 1165/100/8 1164/102/8 1186/143/8 +f 1186/143/8 1185/144/8 1165/100/8 +f 1164/134/404 1179/133/404 1153/141/404 +f 1153/141/404 1186/142/404 1164/134/404 +f 1179/133/404 1180/139/404 1154/140/404 +f 1154/140/404 1153/141/404 1179/133/404 +f 1187/84/195 1188/87/195 1189/86/195 +f 1189/86/195 1190/85/195 1187/84/195 +f 1191/88/1 1192/91/1 1193/90/1 +f 1193/90/1 1194/89/1 1191/88/1 +f 1195/92/404 1196/95/404 1197/94/405 +f 1197/94/405 1198/93/405 1195/92/404 +f 1199/89/8 1200/90/8 1201/91/8 +f 1201/91/8 1202/88/8 1199/89/8 +f 1203/96/403 1204/99/403 1205/98/406 +f 1205/98/406 1206/97/406 1203/96/403 +f 1207/100/195 1208/102/195 1209/101/195 +f 1196/103/195 1210/106/195 1211/105/195 +f 1211/105/195 1197/104/195 1196/103/195 +f 1212/102/195 1213/100/195 1214/101/195 +f 1215/107/195 1216/108/195 1214/101/195 +f 1214/101/195 1213/100/195 1215/107/195 +f 1217/109/195 1218/110/195 1189/86/195 +f 1189/86/195 1188/87/195 1217/109/195 +f 1219/111/407 1220/112/407 1196/95/404 +f 1196/95/404 1195/92/404 1219/111/407 +f 1221/97/409 1222/98/408 1204/99/403 +f 1204/99/403 1203/96/403 1221/97/409 +f 1196/103/195 1220/104/195 1223/105/195 +f 1223/105/195 1210/106/195 1196/103/195 +f 1215/107/195 1207/100/195 1209/101/195 +f 1209/101/195 1216/108/195 1215/107/195 +f 1224/113/8 1211/116/8 1187/115/8 +f 1187/115/8 1190/114/8 1224/113/8 +f 1211/116/410 1210/118/711 1188/117/711 +f 1188/117/711 1187/115/410 1211/116/410 +f 1210/118/413 1223/120/413 1217/119/413 +f 1217/119/413 1188/117/413 1210/118/413 +f 1223/120/1 1225/122/1 1218/121/1 +f 1218/121/1 1217/119/1 1223/120/1 +f 1225/123/414 1226/126/415 1189/125/415 +f 1189/125/415 1218/124/414 1225/123/414 +f 1226/126/712 1224/123/417 1190/124/417 +f 1190/124/417 1189/125/416 1226/126/712 +f 1220/104/195 1227/128/195 1225/127/195 +f 1225/127/195 1223/105/195 1220/104/195 +f 1227/129/8 1220/112/8 1219/111/8 +f 1219/111/8 1228/130/8 1227/129/8 +f 1198/93/1 1197/94/1 1229/132/1 +f 1229/132/1 1230/131/1 1198/93/1 +f 1229/128/195 1197/104/195 1211/105/195 +f 1211/105/195 1224/127/195 1229/128/195 +f 1193/90/1 1192/91/1 1231/88/1 +f 1231/88/1 1232/89/1 1193/90/1 +f 1229/133/418 1224/123/419 1209/135/419 +f 1209/135/419 1208/134/418 1229/133/418 +f 1224/123/417 1226/126/712 1216/136/416 +f 1216/136/416 1209/135/417 1224/123/417 +f 1226/126/415 1225/123/414 1214/135/414 +f 1214/135/414 1216/136/415 1226/126/415 +f 1225/123/420 1227/133/420 1212/134/420 +f 1212/134/420 1214/135/420 1225/123/420 +f 1201/91/8 1200/90/8 1233/89/8 +f 1233/89/8 1234/88/8 1201/91/8 +f 1205/98/406 1204/99/421 1215/138/421 +f 1215/138/421 1213/137/406 1205/98/406 +f 1204/99/422 1222/98/408 1207/137/408 +f 1207/137/408 1215/138/422 1204/99/422 +f 1230/139/404 1229/133/404 1192/141/404 +f 1192/141/404 1191/140/404 1230/139/404 +f 1229/133/404 1208/134/404 1231/142/404 +f 1231/142/404 1192/141/404 1229/133/404 +f 1208/102/195 1207/100/195 1232/144/195 +f 1232/144/195 1231/143/195 1208/102/195 +f 1207/137/403 1222/98/403 1193/146/403 +f 1193/146/403 1232/145/403 1207/137/403 +f 1222/98/403 1221/97/403 1194/147/403 +f 1194/147/403 1193/146/403 1222/98/403 +f 1206/97/403 1205/98/403 1200/146/403 +f 1200/146/403 1199/147/403 1206/97/403 +f 1205/98/403 1213/137/403 1233/145/403 +f 1233/145/403 1200/146/403 1205/98/403 +f 1213/100/195 1212/102/195 1234/143/195 +f 1234/143/195 1233/144/195 1213/100/195 +f 1212/134/404 1227/133/404 1201/141/404 +f 1201/141/404 1234/142/404 1212/134/404 +f 1227/133/404 1228/139/404 1202/140/404 +f 1202/140/404 1201/141/404 1227/133/404 +f 1235/311/669 1236/312/669 1237/313/671 +f 1237/313/671 1238/314/670 1235/311/669 +f 1239/315/713 1235/316/714 1238/317/714 +f 1238/317/714 1240/318/714 1239/315/713 +f 1241/312/673 1239/311/673 1240/314/673 +f 1240/314/673 1242/313/673 1241/312/673 +f 1241/315/715 1242/318/390 1237/317/716 +f 1237/317/716 1236/316/717 1241/315/715 +f 1243/319/675 1238/314/670 1237/313/671 +f 1237/313/671 1244/320/675 1243/319/675 +f 1240/318/718 1238/317/718 1243/321/719 +f 1243/321/720 1245/322/720 1240/318/720 +f 1246/320/678 1242/313/678 1240/314/678 +f 1240/314/678 1245/319/678 1246/320/678 +f 1244/321/721 1237/317/716 1242/318/390 +f 1242/318/390 1246/322/722 1244/321/721 +f 1247/311/515 1248/314/517 1249/313/516 +f 1249/313/516 1250/312/515 1247/311/515 +f 1251/315/714 1252/318/714 1248/317/714 +f 1248/317/714 1247/316/714 1251/315/714 +f 1253/312/723 1254/313/520 1252/314/520 +f 1252/314/520 1251/311/723 1253/312/723 +f 1253/315/717 1250/316/717 1249/317/716 +f 1249/317/716 1254/318/390 1253/315/717 +f 1255/319/524 1256/320/524 1249/313/516 +f 1249/313/516 1248/314/517 1255/319/524 +f 1252/318/724 1257/322/724 1255/321/724 +f 1255/321/719 1248/317/718 1252/318/718 +f 1258/320/529 1257/319/529 1252/314/529 +f 1252/314/529 1254/313/529 1258/320/529 +f 1256/321/725 1258/322/726 1254/318/390 +f 1254/318/390 1249/317/716 1256/321/725 +f 1259/148/195 1260/151/195 1261/150/195 +f 1261/150/195 1262/149/195 1259/148/195 +f 1263/458/727 1259/461/727 1262/460/727 +f 1262/460/727 1264/459/727 1263/458/727 +f 1264/462/728 1262/465/729 1261/464/729 +f 1261/464/729 1265/463/728 1264/462/728 +f 1265/459/730 1261/460/730 1260/461/730 +f 1260/461/730 1266/458/730 1265/459/730 +f 1266/463/731 1260/464/731 1259/465/731 +f 1259/465/731 1263/462/731 1266/463/731 +f 1267/534/404 1268/535/404 1269/536/404 +f 1269/536/404 1270/537/404 1267/534/404 +f 1271/538/195 1272/539/195 1269/536/195 +f 1269/536/195 1268/535/195 1271/538/195 +f 1273/534/404 1274/535/404 1275/536/404 +f 1275/536/404 1276/537/404 1273/534/404 +f 1277/538/195 1278/539/195 1275/536/195 +f 1275/536/195 1274/535/195 1277/538/195 +f 1279/534/404 1280/535/404 1281/536/404 +f 1281/536/404 1282/537/404 1279/534/404 +f 1283/538/195 1284/539/195 1281/536/195 +f 1281/536/195 1280/535/195 1283/538/195 +f 1285/291/500 1286/292/501 1287/293/501 +f 1287/293/501 1288/294/500 1285/291/500 +f 1289/293/502 1290/292/502 1291/291/503 +f 1291/291/503 1292/294/503 1289/293/502 +f 1288/295/8 1287/296/8 1289/297/8 +f 1289/297/8 1292/298/8 1288/295/8 +f 1293/299/504 1286/296/732 1290/297/506 +f 1290/297/506 1294/300/1 1293/299/504 +f 1293/301/501 1295/302/501 1287/293/501 +f 1287/293/501 1286/292/501 1293/301/501 +f 1296/302/507 1294/301/507 1290/292/502 +f 1290/292/502 1289/293/502 1296/302/507 +f 1295/299/8 1296/300/8 1289/297/8 +f 1289/297/8 1287/296/8 1295/299/8 +f 1285/295/508 1291/298/1 1290/297/506 +f 1290/297/506 1286/296/732 1285/295/508 +f 1297/534/404 1298/535/404 1299/536/404 +f 1299/536/404 1300/537/404 1297/534/404 +f 1301/538/195 1302/539/195 1299/536/195 +f 1299/536/195 1298/535/195 1301/538/195 +f 1303/534/404 1304/535/404 1305/536/404 +f 1305/536/404 1306/537/404 1303/534/404 +f 1307/538/195 1308/539/195 1305/536/195 +f 1305/536/195 1304/535/195 1307/538/195 +f 1309/534/404 1310/535/404 1311/536/404 +f 1311/536/404 1312/537/404 1309/534/404 +f 1313/538/195 1314/539/195 1311/536/195 +f 1311/536/195 1310/535/195 1313/538/195 +f 1315/534/404 1316/535/404 1317/536/404 +f 1317/536/404 1318/537/404 1315/534/404 +f 1319/538/195 1320/539/195 1317/536/195 +f 1317/536/195 1316/535/195 1319/538/195 +f 1321/534/404 1322/535/404 1323/536/404 +f 1323/536/404 1324/537/404 1321/534/404 +f 1325/538/195 1326/539/195 1323/536/195 +f 1323/536/195 1322/535/195 1325/538/195 +f 1327/540/195 1328/541/195 1329/542/195 +f 1329/542/195 1330/543/195 1327/540/195 +f 1328/544/1 1331/545/1 1332/546/1 +f 1332/546/1 1329/547/1 1328/544/1 +f 1331/541/187 1333/540/187 1334/543/187 +f 1334/543/187 1332/542/187 1331/541/187 +f 1335/498/484 1336/501/478 1337/500/478 +f 1337/500/478 1338/499/484 1335/498/484 +f 1339/502/497 1340/505/497 1336/504/497 +f 1336/504/497 1335/503/497 1339/502/497 +f 1341/499/733 1342/500/733 1340/501/733 +f 1340/501/733 1339/498/733 1341/499/733 +f 1341/502/647 1338/503/647 1337/504/479 +f 1337/504/479 1342/505/734 1341/502/647 +f 1343/506/396 1344/507/396 1337/500/478 +f 1337/500/478 1336/501/478 1343/506/396 +f 1340/505/735 1345/509/736 1343/508/736 +f 1343/508/649 1336/504/649 1340/505/649 +f 1346/507/737 1345/506/737 1340/501/737 +f 1340/501/737 1342/500/737 1346/507/737 +f 1344/508/738 1346/509/739 1342/505/734 +f 1342/505/734 1337/504/479 1344/508/738 +f 1347/150/8 1348/149/8 1349/148/8 +f 1349/148/8 1350/151/8 1347/150/8 +f 1351/154/653 1352/161/654 1353/160/654 +f 1353/160/654 1354/153/653 1351/154/653 +f 1354/510/195 1353/513/195 1355/512/195 +f 1355/512/195 1356/511/195 1354/510/195 +f 1356/153/655 1355/160/418 1357/161/418 +f 1357/161/418 1358/154/655 1356/153/655 +f 1348/155/656 1351/154/653 1354/153/653 +f 1354/153/653 1349/152/656 1348/155/656 +f 1349/514/195 1354/510/195 1356/511/195 +f 1356/511/195 1350/515/195 1349/514/195 +f 1350/152/657 1356/153/655 1358/154/655 +f 1358/154/655 1347/155/657 1350/152/657 +f 1359/548/740 1360/549/741 1361/550/742 +f 1361/550/742 1362/551/743 1359/548/740 +f 1363/552/744 1359/548/740 1362/551/743 +f 1362/551/743 1364/553/745 1363/552/744 +f 1365/554/746 1363/552/744 1364/553/745 +f 1364/553/745 1366/555/747 1365/554/746 +f 1367/556/748 1365/554/746 1366/555/747 +f 1366/555/747 1368/557/511 1367/556/748 +f 1369/558/749 1370/559/750 1360/549/741 +f 1360/549/741 1359/548/740 1369/558/749 +f 1371/560/751 1369/558/749 1359/548/740 +f 1359/548/740 1363/552/744 1371/560/751 +f 1372/561/752 1371/560/751 1363/552/744 +f 1363/552/744 1365/554/746 1372/561/752 +f 1373/562/753 1372/561/752 1365/554/746 +f 1365/554/746 1367/556/748 1373/562/753 +f 1374/563/754 1375/564/755 1370/559/750 +f 1370/559/750 1369/558/749 1374/563/754 +f 1376/565/756 1374/563/754 1369/558/749 +f 1369/558/749 1371/560/751 1376/565/756 +f 1377/566/757 1376/565/756 1371/560/751 +f 1371/560/751 1372/561/752 1377/566/757 +f 1378/567/758 1377/566/757 1372/561/752 +f 1372/561/752 1373/562/753 1378/567/758 +f 1379/568/759 1380/569/760 1375/564/755 +f 1375/564/755 1374/563/754 1379/568/759 +f 1381/570/761 1379/568/759 1374/563/754 +f 1374/563/754 1376/565/756 1381/570/761 +f 1382/571/762 1381/570/761 1376/565/756 +f 1376/565/756 1377/566/757 1382/571/762 +f 1383/572/763 1382/571/762 1377/566/757 +f 1377/566/757 1378/567/758 1383/572/763 +# 1829 faces + diff --git a/examples/models/resources/models/obj/house_diffuse.png b/examples/models/resources/models/obj/house_diffuse.png new file mode 100644 index 0000000..b36a58a Binary files /dev/null and b/examples/models/resources/models/obj/house_diffuse.png differ diff --git a/examples/models/resources/models/obj/market.obj b/examples/models/resources/models/obj/market.obj new file mode 100644 index 0000000..14b56c9 --- /dev/null +++ b/examples/models/resources/models/obj/market.obj @@ -0,0 +1,7301 @@ +# (c) 2018 Medieval Assets Pack by Alberto Cano +# Licensed as Creative Commons Attribution-NonCommercial 4.0 + +# +# object market +# + +v 3.5020 2.5780 0.6000 +v 3.5857 2.3300 -0.3566 +v 0.9034 2.4385 -0.3059 +v 0.7972 2.5666 0.3634 +v 7.0514 2.3106 -0.0534 +v 6.9677 2.5586 0.9032 +v 10.0279 2.4607 0.6293 +v 9.9809 2.5751 1.1668 +v 3.4183 2.7080 1.5566 +v 0.6157 2.7701 1.3114 +v 6.8840 2.6886 1.8598 +v 9.8972 2.7851 2.1234 +v 3.3346 3.0185 2.5132 +v 0.4535 3.1325 2.2611 +v 6.8004 2.9991 2.8164 +v 9.8135 3.1163 3.0800 +v 3.2509 3.4794 3.4697 +v 0.2754 3.5551 3.2094 +v 6.7167 3.4600 3.7729 +v 9.7298 3.4639 4.0366 +v 10.0455 2.8240 2.2646 +v 10.2142 2.4497 0.4830 +v 9.9850 2.4497 0.4630 +v 9.8767 2.8240 2.2499 +v 10.0391 2.6661 2.3384 +v 10.2064 2.2594 0.5720 +v 9.8703 2.6661 2.3236 +v 9.9773 2.2594 0.5519 +v 9.6576 3.4698 3.8991 +v 9.9399 3.4698 3.9238 +v 9.9304 3.2353 4.0334 +v 9.6480 3.2353 4.0087 +v 10.2259 2.6757 0.6552 +v 10.2479 2.6757 0.4044 +v 9.9655 2.6757 0.3797 +v 9.9436 2.6757 0.6305 +v 10.1948 1.3380 0.5581 +v 10.2479 0.0002 0.4044 +v 9.9655 0.0002 0.3797 +v 10.0260 1.3380 0.5433 +v 10.1801 1.3380 0.7269 +v 10.2259 0.0002 0.6552 +v 10.0113 1.3380 0.7121 +v 9.9436 0.0002 0.6305 +v -2.5487 5.3313 -3.7528 +v -6.4595 7.4224 -4.0554 +v -6.4595 7.8989 -0.3361 +v -2.5487 5.4078 -0.1848 +v -6.4595 7.8989 -7.7747 +v -10.3703 5.1783 -7.3209 +v -10.3703 5.1783 -3.7528 +v -2.5487 5.0684 -0.1976 +v -2.5487 4.9919 -3.7784 +v -6.4595 8.5550 -11.4939 +v -6.4595 8.8943 -11.4939 +v -2.5487 5.1783 -10.8889 +v -2.5487 4.8389 -10.9401 +v -10.3703 5.1783 -10.8889 +v -10.3703 4.8389 -10.8889 +v -10.3703 4.8389 -7.3209 +v -10.3703 4.8389 -3.7528 +v -6.4595 8.5550 3.3832 +v -6.4595 8.8943 3.3832 +v -10.3703 5.1783 3.3832 +v -10.3703 4.8389 3.3832 +v -2.5487 5.4843 3.3832 +v -2.5487 5.1449 3.3832 +v -6.4595 7.5595 -0.3361 +v -6.4595 7.0830 -4.0554 +v -10.3703 4.8389 -0.1848 +v -2.5487 5.2548 -7.3209 +v -10.3703 5.1783 -0.1848 +v -2.5487 4.9154 -7.3592 +v -6.4595 7.5595 -7.7747 +v -6.8581 7.8263 -12.4808 +v -6.8581 8.6234 -12.4808 +v -6.0610 8.6234 -12.4808 +v -6.0610 7.8263 -12.4808 +v -6.1229 7.4442 -11.5026 +v -6.1229 8.1175 -11.5026 +v -6.1553 7.9193 -10.5120 +v -6.1553 7.3108 -10.5120 +v -6.7962 7.4442 -11.5026 +v -6.7638 7.3108 -10.5120 +v -6.7638 7.9193 -10.5120 +v -6.7962 8.1175 -11.5026 +v -6.4595 0.0002 -10.1354 +v -6.4595 8.2940 -10.6813 +v -2.8857 5.2975 -10.1354 +v -2.8857 0.0002 -10.1354 +v -10.0333 5.2975 2.7784 +v -10.0333 5.2975 -10.1354 +v -10.0333 0.0002 -10.1354 +v -10.0333 0.0002 2.7784 +v -2.8857 5.2975 2.7784 +v -2.8857 0.0002 2.7784 +v -6.4595 0.0002 2.7784 +v -6.4595 8.2940 2.7784 +v -6.8605 5.0137 -10.5121 +v -6.4595 5.3049 -10.5121 +v -6.4595 4.0799 -10.4446 +v -6.8605 4.1037 -10.4446 +v -7.1742 4.1256 -10.4781 +v -7.1742 3.9945 -10.4781 +v -7.1742 3.9945 -10.3860 +v -7.1742 4.1256 -10.3860 +v -6.4595 5.5197 -10.5456 +v -7.0706 5.0963 -10.5456 +v -7.0706 5.0963 -10.4535 +v -6.4595 5.5197 -10.4535 +v -5.7449 3.9945 -10.4781 +v -5.7449 4.1256 -10.4781 +v -5.7449 4.1256 -10.3860 +v -5.7449 3.9945 -10.3860 +v -6.4595 3.9489 -10.4781 +v -5.8484 3.9945 -10.4781 +v -5.8484 3.9945 -10.3860 +v -6.4595 3.9489 -10.3860 +v -7.0706 4.1256 -10.5790 +v -6.8605 4.1037 -10.5790 +v -7.0706 3.9945 -10.5790 +v -6.4595 5.3049 -10.5456 +v -6.8605 5.0137 -10.5456 +v -5.8484 3.9945 -10.5790 +v -6.0585 4.1122 -10.5790 +v -5.8484 4.1256 -10.5790 +v -6.4595 3.9489 -10.5790 +v -6.4595 4.0799 -10.5790 +v -6.0585 5.0137 -10.5121 +v -6.0585 4.1122 -10.4446 +v -5.8484 5.0963 -10.5456 +v -5.8484 5.0963 -10.4535 +v -7.0706 3.9945 -10.4781 +v -7.0706 3.9945 -10.3860 +v -6.0585 5.0137 -10.5456 +v -6.8605 4.1037 -10.4781 +v -6.0585 4.1122 -10.4781 +v -6.4595 4.0799 -10.4781 +v -5.8484 4.1256 -10.4781 +v -5.8484 4.1256 -10.3860 +v -7.0706 4.1256 -10.4781 +v -7.0706 4.1256 -10.3860 +v -7.1742 4.1256 -10.5790 +v -7.1742 3.9945 -10.5790 +v -5.7449 3.9945 -10.5790 +v -5.7449 4.1256 -10.5790 +v -4.8366 2.9155 -11.3065 +v -4.8366 2.9155 -9.8475 +v -5.1698 0.0002 -9.8475 +v -5.1698 0.0002 -11.3065 +v -7.8178 2.9295 -10.3475 +v -5.1012 2.9295 -10.3475 +v -5.3801 0.0002 -10.3475 +v -7.5389 0.0002 -10.3475 +v -8.0825 2.9295 -9.8475 +v -8.0825 2.9154 -11.3065 +v -7.7492 0.0002 -11.3065 +v -7.7492 0.0002 -9.8475 +v -7.8178 2.9155 -11.3065 +v -7.5389 0.0002 -11.3065 +v -5.3801 0.0002 -11.3065 +v -5.1012 2.9155 -11.3065 +v -4.9724 1.3976 -11.3539 +v -4.9724 1.3976 -11.0656 +v -5.1101 0.0002 -11.1185 +v -5.1101 0.0002 -11.5366 +v -5.2488 1.3976 -11.3539 +v -5.4726 0.0002 -11.5366 +v -5.4726 0.0002 -11.1185 +v -5.2488 1.3976 -11.0656 +v -4.8038 2.9493 -11.1125 +v -4.8038 2.9493 -11.5426 +v -5.1768 2.9493 -11.5426 +v -5.1768 2.9493 -11.1125 +v -4.9146 0.0002 -10.3720 +v -4.7725 1.3976 -10.2190 +v -5.0597 1.3976 -10.1939 +v -5.3311 0.0002 -10.3356 +v -4.7966 1.3976 -10.4942 +v -4.9462 0.0002 -10.7332 +v -5.0838 1.3976 -10.4691 +v -5.3627 0.0002 -10.6968 +v -4.5534 2.8021 -10.2285 +v -4.9819 2.9493 -10.1910 +v -4.5859 2.8021 -10.6000 +v -5.0144 2.9493 -10.5625 +v -7.9466 1.3976 -11.3539 +v -7.8090 0.0002 -11.5366 +v -7.8090 0.0002 -11.1185 +v -7.9466 1.3976 -11.0656 +v -7.6703 1.3976 -11.3539 +v -7.4464 0.0002 -11.5366 +v -7.6703 1.3976 -11.0656 +v -7.4464 0.0002 -11.1185 +v -8.1152 2.9493 -11.1125 +v -8.1152 2.9493 -11.5426 +v -7.7423 2.9493 -11.5426 +v -7.7423 2.9493 -11.1125 +v -7.8593 1.3976 -10.1939 +v -8.1465 1.3976 -10.2190 +v -8.0045 0.0002 -10.3720 +v -7.5880 0.0002 -10.3356 +v -8.1224 1.3976 -10.4942 +v -7.9729 0.0002 -10.7332 +v -7.8353 1.3976 -10.4691 +v -7.5564 0.0002 -10.6968 +v -7.9372 2.9493 -10.1910 +v -8.3656 2.8021 -10.2285 +v -8.3331 2.8021 -10.6000 +v -7.9047 2.9493 -10.5625 +v -6.4595 2.8457 -10.1867 +v -6.4595 3.2124 -11.6295 +v -4.5275 2.6373 -11.6295 +v -4.5275 2.6373 -10.1867 +v -6.4595 3.4690 -11.6295 +v -6.4595 3.4690 -10.1867 +v -4.5275 2.8939 -10.1867 +v -4.5275 2.8939 -11.6295 +v -8.3915 2.8939 -10.1867 +v -8.3915 2.8939 -11.6295 +v -8.3915 2.6373 -11.6295 +v -8.3915 2.6373 -10.1867 +v -10.1121 2.4684 -10.3295 +v -10.3137 0.0002 -10.5615 +v -10.3137 0.0002 -9.7906 +v -10.1121 2.4684 -9.8940 +v -10.3137 4.9367 -9.7906 +v -10.3137 4.9367 -10.5615 +v -9.6716 2.4684 -10.3295 +v -9.5338 0.0002 -10.5615 +v -9.5338 5.4628 -10.5615 +v -9.6716 2.4684 -9.8940 +v -9.5338 0.0002 -9.7906 +v -9.5338 5.4628 -9.7906 +v -11.8271 0.0002 -7.0338 +v -10.6584 1.3390 -7.2308 +v -10.6584 1.3390 -6.7139 +v -11.8271 0.0002 -6.5169 +v -11.1508 1.6838 -7.2308 +v -12.4282 0.0002 -7.0338 +v -11.1508 1.6838 -6.7139 +v -12.4282 0.0002 -6.5169 +v -10.0210 2.4484 -7.0338 +v -10.0210 2.4484 -6.5169 +v -9.9166 3.3186 -7.0338 +v -9.9166 3.3186 -6.5169 +v -10.6584 1.3390 -0.3375 +v -10.6584 1.3390 0.1794 +v -11.8271 0.0002 -0.0176 +v -11.8271 0.0002 -0.5345 +v -11.1508 1.6838 0.1794 +v -12.4282 0.0002 -0.0176 +v -11.1508 1.6838 -0.3375 +v -12.4282 0.0002 -0.5345 +v -10.0210 2.4484 -0.5345 +v -10.0210 2.4484 -0.0176 +v -9.9166 3.3186 -0.0176 +v -9.9166 3.3186 -0.5345 +v -10.1121 2.4684 2.8671 +v -10.1121 2.4684 2.4316 +v -10.3137 0.0002 2.3281 +v -10.3137 0.0002 3.0991 +v -10.3137 4.9367 3.0991 +v -10.3137 4.9367 2.3281 +v -9.5338 0.0002 3.0991 +v -9.6716 2.4684 2.8671 +v -9.5338 5.4628 3.0991 +v -9.5338 0.0002 2.3281 +v -9.6716 2.4684 2.4316 +v -9.5338 5.4628 2.3281 +v -2.8142 2.4684 -10.1938 +v -2.8142 2.4684 -9.7583 +v -2.6125 0.0002 -9.6549 +v -2.6125 0.0002 -10.4258 +v -2.6125 4.9367 -10.4258 +v -2.6125 4.9367 -9.6549 +v -3.3925 0.0002 -10.4258 +v -3.2547 2.4684 -10.1938 +v -3.3925 5.4628 -10.4258 +v -3.3925 0.0002 -9.6549 +v -3.2547 2.4684 -9.7583 +v -3.3925 5.4628 -9.6549 +v -7.0328 8.4497 -10.4019 +v -7.0328 8.6617 -11.4049 +v -7.0328 8.4889 -11.4414 +v -7.0328 8.2769 -10.4384 +v -6.5612 8.6330 -10.3631 +v -6.5612 8.8059 -10.3266 +v -6.5612 9.0178 -11.3296 +v -6.5612 8.8450 -11.3661 +v -6.4595 8.6447 -10.3607 +v -6.4595 8.8175 -10.3241 +v -6.4595 9.0295 -11.3272 +v -6.4595 8.8567 -11.3637 +v -5.8863 8.4497 -10.4019 +v -5.8863 8.2769 -10.4384 +v -5.8863 8.4889 -11.4414 +v -5.8863 8.6617 -11.4049 +v -6.3578 8.6330 -10.3631 +v -6.3578 8.8059 -10.3266 +v -6.3578 9.0178 -11.3296 +v -6.3578 8.8450 -11.3661 +v -7.0328 8.3601 -10.5036 +v -7.0328 8.1873 -10.5401 +v -7.0328 7.9753 -9.5371 +v -7.0328 8.1481 -9.5005 +v -6.5612 8.5043 -9.4253 +v -6.5613 8.7162 -10.4283 +v -6.5612 8.3315 -9.4618 +v -6.4595 8.5159 -9.4228 +v -6.4595 8.7279 -10.4258 +v -6.4595 8.3431 -9.4594 +v -5.8863 8.3601 -10.5036 +v -5.8863 8.1481 -9.5005 +v -5.8863 7.9753 -9.5371 +v -5.8863 8.1873 -10.5401 +v -6.3578 8.7162 -10.4283 +v -6.3578 8.5043 -9.4253 +v -6.3578 8.3315 -9.4618 +v -7.0328 8.1098 -9.7108 +v -7.0328 7.9358 -9.7412 +v -7.0328 7.7594 -8.7313 +v -7.0328 7.9334 -8.7009 +v -6.5612 8.2919 -8.6383 +v -6.5612 8.4684 -9.6482 +v -6.5612 8.1179 -8.6687 +v -6.4595 8.3037 -8.6362 +v -6.4595 8.4801 -9.6461 +v -6.4595 8.1297 -8.6666 +v -5.8863 8.1098 -9.7108 +v -5.8863 7.9334 -8.7009 +v -5.8863 7.7594 -8.7313 +v -5.8863 7.9358 -9.7412 +v -6.3578 8.4684 -9.6482 +v -6.3578 8.2919 -8.6383 +v -6.3578 8.1179 -8.6687 +v -7.0328 7.8694 -8.8215 +v -7.0328 7.6941 -8.8428 +v -7.0328 7.5703 -7.8251 +v -7.0328 7.7457 -7.8038 +v -6.5613 8.1070 -7.7599 +v -6.5612 8.2307 -8.7775 +v -6.5613 7.9316 -7.7812 +v -6.4595 8.1188 -7.7584 +v -6.4595 8.2425 -8.7761 +v -6.4595 7.9434 -7.7798 +v -5.8863 7.8694 -8.8215 +v -5.8863 7.7457 -7.8038 +v -5.8863 7.5703 -7.8251 +v -5.8863 7.6941 -8.8428 +v -6.3578 8.2307 -8.7775 +v -6.3578 8.1070 -7.7599 +v -6.3578 7.9316 -7.7812 +v -7.0328 7.6652 -7.9060 +v -7.0328 7.4898 -7.9273 +v -7.0328 7.3661 -6.9097 +v -7.0328 7.5414 -6.8883 +v -6.5612 7.9027 -6.8444 +v -6.5613 8.0265 -7.8621 +v -6.5612 7.7274 -6.8657 +v -6.4595 7.9145 -6.8430 +v -6.4595 8.0383 -7.8606 +v -6.4595 7.7392 -6.8643 +v -5.8863 7.6652 -7.9060 +v -5.8863 7.5414 -6.8883 +v -5.8863 7.3661 -6.9097 +v -5.8863 7.4898 -7.9273 +v -6.3578 8.0265 -7.8621 +v -6.3578 7.9027 -6.8444 +v -6.3578 7.7274 -6.8657 +v -7.0328 7.4996 -6.9305 +v -7.0328 7.3243 -6.9519 +v -7.0328 7.2005 -5.9342 +v -7.0328 7.3759 -5.9129 +v -6.5612 7.7372 -5.8689 +v -6.5613 7.8610 -6.8866 +v -6.5612 7.5619 -5.8902 +v -6.4595 7.7490 -5.8675 +v -6.4595 7.8728 -6.8852 +v -6.4595 7.5737 -5.8888 +v -5.8863 7.4996 -6.9305 +v -5.8863 7.3759 -5.9129 +v -5.8863 7.2005 -5.9342 +v -5.8863 7.3243 -6.9519 +v -6.3578 7.8610 -6.8866 +v -6.3578 7.7372 -5.8689 +v -6.3578 7.5619 -5.8902 +v -7.0328 7.3800 -6.2166 +v -7.0328 7.2037 -6.2260 +v -7.0328 7.1488 -5.2023 +v -7.0328 7.3252 -5.1929 +v -6.5612 7.6887 -5.1734 +v -6.5612 7.7435 -6.1971 +v -6.5612 7.5123 -5.1828 +v -6.4595 7.7006 -5.1728 +v -6.4595 7.7554 -6.1965 +v -6.4595 7.5242 -5.1822 +v -5.8863 7.3800 -6.2166 +v -5.8863 7.3252 -5.1929 +v -5.8863 7.1488 -5.2023 +v -5.8863 7.2037 -6.2260 +v -6.3578 7.7435 -6.1971 +v -6.3578 7.6887 -5.1734 +v -6.3578 7.5123 -5.1828 +v -7.0328 8.0466 0.2463 +v -7.0328 7.8713 0.2676 +v -7.0328 7.9950 1.2853 +v -7.0328 8.1704 1.2639 +v -6.5612 8.4080 0.2023 +v -6.5612 8.2326 0.2237 +v -6.5612 8.5317 1.2200 +v -6.5612 8.3564 1.2413 +v -6.4595 8.4198 0.2009 +v -6.4595 8.2444 0.2222 +v -6.4595 8.5435 1.2186 +v -6.4595 8.3682 1.2399 +v -5.8863 8.0466 0.2463 +v -5.8863 8.1704 1.2639 +v -5.8863 7.9950 1.2853 +v -5.8863 7.8713 0.2676 +v -6.3578 8.2326 0.2237 +v -6.3578 8.4080 0.2023 +v -6.3578 8.5317 1.2200 +v -6.3578 8.3564 1.2413 +v -7.0328 7.9614 0.3570 +v -7.0328 7.9268 -0.6676 +v -7.0328 7.7502 -0.6617 +v -7.0328 7.7848 0.3629 +v -6.5612 8.3251 0.3447 +v -6.5612 8.2906 -0.6799 +v -6.5612 8.1140 -0.6740 +v -6.4595 8.3370 0.3443 +v -6.4595 8.3025 -0.6803 +v -6.4595 8.1259 -0.6744 +v -5.8863 7.9614 0.3570 +v -5.8863 7.7848 0.3629 +v -5.8863 7.7502 -0.6617 +v -5.8863 7.9268 -0.6676 +v -6.3578 8.3251 0.3447 +v -6.3578 8.2906 -0.6799 +v -6.3578 8.1140 -0.6740 +v -7.0328 7.8315 -0.6424 +v -7.0328 7.7437 -1.6638 +v -7.0328 7.5677 -1.6487 +v -7.0328 7.6555 -0.6273 +v -6.5612 8.1941 -0.6736 +v -6.5612 8.1064 -1.6950 +v -6.5612 7.9304 -1.6799 +v -6.4595 8.2060 -0.6746 +v -6.4595 8.1182 -1.6960 +v -6.4595 7.9422 -1.6809 +v -5.8863 7.8315 -0.6424 +v -5.8863 7.6555 -0.6273 +v -5.8863 7.5677 -1.6487 +v -5.8863 7.7437 -1.6638 +v -6.3578 8.1941 -0.6736 +v -6.3578 8.1064 -1.6950 +v -6.3578 7.9304 -1.6799 +v -7.0328 7.6668 -1.5253 +v -7.0328 7.5431 -2.5430 +v -7.0328 7.3677 -2.5216 +v -7.0328 7.4915 -1.5040 +v -6.5612 8.0282 -1.5692 +v -6.5612 7.9044 -2.5869 +v -6.5612 7.7291 -2.5656 +v -6.4595 8.0400 -1.5707 +v -6.4595 7.9162 -2.5883 +v -6.4595 7.7409 -2.5670 +v -5.8863 7.6668 -1.5253 +v -5.8863 7.4915 -1.5040 +v -5.8863 7.3677 -2.5216 +v -5.8863 7.5431 -2.5430 +v -6.3578 8.0282 -1.5692 +v -6.3578 7.9044 -2.5869 +v -6.3578 7.7291 -2.5656 +v -7.0328 7.4696 -2.4408 +v -7.0328 7.3458 -3.4585 +v -7.0328 7.1705 -3.4371 +v -7.0328 7.2943 -2.4195 +v -6.5612 7.8309 -2.4847 +v -6.5612 7.7072 -3.5024 +v -6.5613 7.5318 -3.4811 +v -6.4595 7.8427 -2.4862 +v -6.4595 7.7190 -3.5038 +v -6.4595 7.5436 -3.4825 +v -5.8863 7.4696 -2.4408 +v -5.8863 7.2943 -2.4195 +v -5.8863 7.1705 -3.4371 +v -5.8863 7.3459 -3.4585 +v -6.3578 7.8309 -2.4847 +v -6.3578 7.7072 -3.5024 +v -6.3578 7.5318 -3.4811 +v -7.0328 7.2372 -3.4260 +v -7.0328 7.2026 -4.4506 +v -7.0328 7.0261 -4.4446 +v -7.0328 7.0606 -3.4200 +v -6.5612 7.6010 -3.4383 +v -6.5612 7.5664 -4.4629 +v -6.5612 7.3898 -4.4569 +v -6.4595 7.6129 -3.4387 +v -6.4595 7.5783 -4.4633 +v -6.4595 7.4017 -4.4573 +v -5.8863 7.2372 -3.4260 +v -5.8863 7.0606 -3.4200 +v -5.8863 7.0261 -4.4446 +v -5.8863 7.2026 -4.4506 +v -6.3578 7.6010 -3.4383 +v -6.3578 7.5664 -4.4629 +v -6.3578 7.3898 -4.4569 +v -7.0328 7.1416 -4.2258 +v -7.0328 7.2654 -5.2435 +v -7.0328 7.0900 -5.2648 +v -7.0328 6.9662 -4.2471 +v -6.5612 7.5029 -4.1819 +v -6.5612 7.6267 -5.1995 +v -6.5612 7.4513 -5.2209 +v -6.4595 7.5147 -4.1804 +v -6.4595 7.6385 -5.1981 +v -6.4595 7.4631 -5.2194 +v -5.8863 7.1416 -4.2258 +v -5.8863 6.9662 -4.2471 +v -5.8863 7.0900 -5.2648 +v -5.8863 7.2654 -5.2435 +v -6.3578 7.5029 -4.1819 +v -6.3578 7.6267 -5.1995 +v -6.3578 7.4513 -5.2209 +v -7.0328 8.2934 1.2567 +v -7.0328 8.1180 1.2780 +v -7.0328 8.2418 2.2957 +v -7.0328 8.4171 2.2744 +v -6.5612 8.6547 1.2127 +v -6.5612 8.4794 1.2341 +v -6.5612 8.7784 2.2304 +v -6.5612 8.6031 2.2517 +v -6.4595 8.6665 1.2113 +v -6.4595 8.4912 1.2326 +v -6.4595 8.7903 2.2290 +v -6.4595 8.6149 2.2503 +v -5.8863 8.2934 1.2567 +v -5.8863 8.4171 2.2744 +v -5.8863 8.2418 2.2957 +v -5.8863 8.1180 1.2780 +v -6.3578 8.4794 1.2341 +v -6.3578 8.6547 1.2127 +v -6.3578 8.7784 2.2304 +v -6.3578 8.6031 2.2517 +v -7.0328 8.5448 2.0888 +v -7.0328 8.3694 2.1101 +v -7.0328 8.4932 3.1278 +v -7.0328 8.6685 3.1065 +v -6.5612 8.9061 2.0448 +v -6.5612 8.7308 2.0662 +v -6.5612 9.0299 3.0625 +v -6.5612 8.8545 3.0838 +v -6.4595 8.9179 2.0434 +v -6.4595 8.7426 2.0647 +v -6.4595 9.0417 3.0611 +v -6.4595 8.8663 3.0824 +v -5.8863 8.5448 2.0888 +v -5.8863 8.6685 3.1065 +v -5.8863 8.4932 3.1278 +v -5.8863 8.3695 2.1101 +v -6.3578 8.7308 2.0662 +v -6.3578 8.9061 2.0448 +v -6.3578 9.0299 3.0625 +v -6.3578 8.8545 3.0838 +v -10.0333 0.3779 -9.7364 +v -10.1350 0.3779 -9.7364 +v -10.1350 0.3779 2.5266 +v -10.0333 0.3779 2.5266 +v -10.1350 0.0002 -9.7364 +v -10.1350 0.0002 2.5266 +v -7.5634 0.3779 2.7526 +v -9.7086 0.3779 2.7526 +v -9.7086 0.3779 2.8543 +v -7.5634 0.3779 2.8543 +v -9.7086 0.0002 2.8543 +v -7.5634 0.0002 2.8543 +v -10.0175 0.3779 -10.1929 +v -2.9336 0.3779 -10.1929 +v -2.9336 0.3779 -10.2946 +v -10.0175 0.3779 -10.2946 +v -2.9336 0.0002 -10.2946 +v -10.0175 0.0002 -10.2946 +v -2.8857 0.3779 -9.7364 +v -2.8857 0.3779 2.5266 +v -2.7840 0.3779 2.5266 +v -2.7840 0.3779 -9.7364 +v -2.7840 0.0002 2.5266 +v -2.7840 0.0002 -9.7364 +v 0.5342 2.4385 -0.3182 +v 0.8185 2.3300 -2.9858 +v -0.1417 2.5780 -2.9858 +v -0.1417 2.5666 -0.2707 +v 0.8185 2.3106 -6.4648 +v -0.1417 2.5586 -6.4648 +v 0.3978 2.4607 -9.4895 +v -0.1417 2.5751 -9.4895 +v -1.1020 2.7080 -2.9858 +v -1.1020 2.7701 -0.1725 +v -1.1020 2.6886 -6.4648 +v -1.1020 2.7851 -9.4895 +v -2.0622 3.0185 -2.9858 +v -2.0622 3.1325 -0.0938 +v -2.0622 2.9991 -6.4648 +v -2.0622 3.1163 -9.4895 +v -3.0224 3.4794 -2.9858 +v -3.0224 3.5551 0.0010 +v -3.0224 3.4600 -6.4648 +v -3.0224 3.4639 -9.4895 +v -1.2297 2.8239 -9.6496 +v -1.2297 2.8239 -9.4801 +v 0.5598 2.4497 -9.4323 +v 0.5598 2.4497 -9.6623 +v 0.4705 2.2594 -9.6623 +v -1.3037 2.6661 -9.6496 +v -1.3037 2.6661 -9.4801 +v 0.4705 2.2594 -9.4323 +v -2.8918 3.4698 -9.4056 +v -2.8918 3.4698 -9.6890 +v -3.0018 3.2353 -9.6890 +v -3.0018 3.2353 -9.4056 +v 0.3893 2.6757 -9.6890 +v 0.3893 2.6757 -9.4056 +v 0.6411 2.6757 -9.4056 +v 0.6411 2.6757 -9.6890 +v 0.4834 1.3380 -9.6496 +v 0.4834 1.3380 -9.4801 +v 0.6411 0.0002 -9.4056 +v 0.6411 0.0002 -9.6890 +v 0.3893 0.0002 -9.6890 +v 0.3139 1.3380 -9.6496 +v 0.3139 1.3380 -9.4801 +v 0.3893 0.0002 -9.4056 +v 0.2950 7.8989 5.9442 +v 4.0001 7.4224 6.2684 +v 4.0396 5.3313 2.3461 +v 0.4851 5.4078 2.0351 +v 3.3579 5.1783 10.1379 +v 6.9123 5.1783 10.4489 +v 7.7052 7.8989 6.5925 +v 4.0651 4.9919 2.3483 +v 0.4979 5.0684 2.0362 +v 11.1484 5.1783 2.9680 +v 11.4104 8.8943 6.9167 +v 11.4104 8.5550 6.9167 +v 11.1994 4.8389 2.9725 +v 10.4667 5.1783 10.7598 +v 10.4667 4.8389 10.7598 +v 3.3579 4.8389 10.1379 +v 6.9123 4.8389 10.4489 +v -3.7510 5.1783 9.5159 +v -3.4102 8.8943 5.6200 +v -3.4102 8.5550 5.6200 +v -3.7510 4.8389 9.5159 +v -3.0693 5.4843 1.7241 +v -3.0693 5.1449 1.7241 +v 4.0001 7.0830 6.2684 +v 0.2950 7.5595 5.9442 +v -0.1966 4.8389 9.8269 +v 7.5940 5.2548 2.6571 +v -0.1966 5.1783 9.8269 +v 7.6322 4.9154 2.6604 +v 7.7052 7.5595 6.5925 +v 12.3587 7.8263 7.3997 +v 12.4282 7.8263 6.6057 +v 12.4282 8.6234 6.6057 +v 12.3587 8.6234 7.3997 +v 11.4483 7.4442 6.5821 +v 10.4587 7.3108 6.5280 +v 10.4587 7.9194 6.5280 +v 11.4483 8.1175 6.5821 +v 11.3896 7.4442 7.2528 +v 10.4056 7.3108 7.1342 +v 11.3896 8.1175 7.2528 +v 10.4056 7.9194 7.1342 +v 10.3684 5.2975 3.2381 +v 10.6008 8.2940 6.8458 +v 10.0570 0.0002 6.7983 +v 10.3684 0.0002 3.2381 +v -3.1191 5.2975 9.2330 +v -3.1191 0.0002 9.2330 +v 9.7455 0.0002 10.3585 +v 9.7455 5.2975 10.3585 +v -2.4962 0.0002 2.1125 +v -2.4962 5.2975 2.1125 +v -2.8077 0.0002 5.6727 +v -2.8077 8.2940 5.6728 +v 10.3650 4.0799 6.8252 +v 10.4322 5.3049 6.8311 +v 10.3973 5.0138 7.2306 +v 10.3300 4.1037 7.2247 +v 10.3361 4.1256 7.5401 +v 10.2444 4.1256 7.5321 +v 10.2444 3.9945 7.5321 +v 10.3361 3.9945 7.5401 +v 10.4656 5.5197 6.8340 +v 10.3739 5.5197 6.8260 +v 10.3206 5.0963 7.4347 +v 10.4124 5.0963 7.4428 +v 10.4606 3.9945 6.1162 +v 10.3689 3.9945 6.1082 +v 10.3689 4.1256 6.1082 +v 10.4606 4.1256 6.1162 +v 10.3984 3.9489 6.8281 +v 10.3066 3.9489 6.8201 +v 10.3599 3.9945 6.2113 +v 10.4516 3.9945 6.2194 +v 10.4640 4.1037 7.2364 +v 10.4457 4.1256 7.4457 +v 10.4457 3.9945 7.4457 +v 10.4656 5.3049 6.8340 +v 10.4307 5.0138 7.2335 +v 10.5339 4.1122 6.4374 +v 10.5522 3.9945 6.2282 +v 10.5522 4.1256 6.2282 +v 10.4989 4.0799 6.8369 +v 10.4989 3.9489 6.8369 +v 10.3999 4.1122 6.4257 +v 10.4672 5.0138 6.4316 +v 10.5189 5.0963 6.2253 +v 10.4272 5.0963 6.2172 +v 10.3451 3.9945 7.4369 +v 10.2534 3.9945 7.4289 +v 10.5006 5.0138 6.4345 +v 10.3634 4.1037 7.2276 +v 10.4333 4.1122 6.4286 +v 10.3984 4.0799 6.8281 +v 10.4516 4.1256 6.2194 +v 10.3599 4.1256 6.2113 +v 10.3451 4.1256 7.4369 +v 10.2534 4.1256 7.4289 +v 10.4367 4.1256 7.5489 +v 10.4367 3.9945 7.5489 +v 10.5612 3.9945 6.1250 +v 10.5612 4.1256 6.1250 +v 11.3651 2.9155 5.2836 +v 11.3361 0.0002 5.6155 +v 9.8826 0.0002 5.4884 +v 9.9117 2.9155 5.1564 +v 10.1499 2.9295 8.1699 +v 10.1742 0.0002 7.8920 +v 10.3624 0.0002 5.7415 +v 10.3867 2.9295 5.4636 +v 9.6288 2.9295 8.3900 +v 9.6578 0.0002 8.0580 +v 11.1113 0.0002 8.1851 +v 11.0822 2.9155 8.5171 +v 11.1053 2.9155 8.2535 +v 11.1296 0.0002 7.9756 +v 11.3420 2.9155 5.5472 +v 11.3177 0.0002 5.8250 +v 11.4004 1.3976 5.4230 +v 11.5704 0.0002 5.5761 +v 11.1539 0.0002 5.5396 +v 11.1133 1.3976 5.3979 +v 11.3763 1.3976 5.6983 +v 11.5388 0.0002 5.9373 +v 11.0892 1.3976 5.6732 +v 11.1223 0.0002 5.9008 +v 11.1747 2.9493 5.2340 +v 11.6031 2.9493 5.2715 +v 11.5706 2.9493 5.6430 +v 11.1421 2.9493 5.6055 +v 10.2372 1.3976 5.4089 +v 10.2873 1.3976 5.1250 +v 10.4274 0.0002 5.2798 +v 10.3548 0.0002 5.6916 +v 10.5594 1.3976 5.1730 +v 10.7844 0.0002 5.3428 +v 10.5093 1.3976 5.4568 +v 10.7118 0.0002 5.7545 +v 10.2411 2.9493 5.3311 +v 10.3158 2.8021 4.9075 +v 10.6831 2.8021 4.9723 +v 10.6084 2.9493 5.3958 +v 11.1412 1.3976 8.3859 +v 10.8540 1.3976 8.3608 +v 10.9187 0.0002 8.2282 +v 11.3352 0.0002 8.2647 +v 11.1653 1.3976 8.1106 +v 11.3668 0.0002 7.9035 +v 10.9503 0.0002 7.8671 +v 10.8781 1.3976 8.0855 +v 10.8860 2.9493 8.5328 +v 11.3145 2.9493 8.5703 +v 11.3470 2.9493 8.1988 +v 10.9185 2.9493 8.1613 +v 10.1581 0.0002 8.3580 +v 9.9932 1.3976 8.4861 +v 9.9932 1.3976 8.1978 +v 10.1581 0.0002 7.9399 +v 10.2695 1.3976 8.4861 +v 10.5206 0.0002 8.3580 +v 10.2695 1.3976 8.1978 +v 10.5206 0.0002 7.9399 +v 9.9836 2.8021 8.7052 +v 9.9836 2.9493 8.2751 +v 10.3565 2.8021 8.7052 +v 10.3565 2.9493 8.2751 +v 11.7138 2.6373 5.0039 +v 11.5454 3.2124 6.9285 +v 10.1081 2.8457 6.8027 +v 10.2765 2.6373 4.8781 +v 11.5454 3.4690 6.9285 +v 11.7138 2.8940 5.0039 +v 10.2765 2.8940 4.8781 +v 10.1081 3.4690 6.8027 +v 9.9397 2.8940 8.7274 +v 9.9397 2.6373 8.7274 +v 11.3770 2.6373 8.8531 +v 11.3770 2.8940 8.8531 +v 9.9320 2.4684 10.4539 +v 9.4982 2.4684 10.4159 +v 9.3776 0.0002 10.6078 +v 10.1455 0.0002 10.6750 +v 10.1455 4.9367 10.6750 +v 9.3776 4.9367 10.6078 +v 10.2135 0.0002 9.8980 +v 9.9704 2.4684 10.0150 +v 10.2135 5.4628 9.8980 +v 9.4455 0.0002 9.8308 +v 9.5366 2.4684 9.9770 +v 9.4455 5.4628 9.8308 +v -3.2143 2.4684 9.3037 +v -3.4630 0.0002 9.4844 +v -2.6950 0.0002 9.5515 +v -2.7805 2.4684 9.3417 +v -2.6950 4.9367 9.5515 +v -3.4630 4.9367 9.4844 +v -3.1759 2.4684 8.8648 +v -3.3950 0.0002 8.7074 +v -3.3950 5.4628 8.7074 +v -2.7421 2.4684 8.9028 +v -2.6270 0.0002 8.7746 +v -2.6270 5.4628 8.7746 +v 10.4329 2.4684 3.1719 +v 10.6816 0.0002 2.9912 +v 9.9136 0.0002 2.9240 +v 9.9991 2.4684 3.1339 +v 9.9136 4.9367 2.9240 +v 10.6816 4.9367 2.9912 +v 10.3945 2.4684 3.6107 +v 10.6136 0.0002 3.7682 +v 10.6136 5.4628 3.7682 +v 9.9607 2.4684 3.5728 +v 9.8456 0.0002 3.7010 +v 9.8456 5.4628 3.7010 +v 10.2725 8.4537 7.3926 +v 10.3089 8.2809 7.3957 +v 11.3081 8.4928 7.4832 +v 11.2717 8.6657 7.4800 +v 10.2386 8.8098 6.9163 +v 10.2750 8.6370 6.9194 +v 11.2378 9.0218 7.0037 +v 11.2742 8.8490 7.0069 +v 10.2450 8.8214 6.8147 +v 10.2814 8.6486 6.8179 +v 11.2442 9.0334 6.9021 +v 11.2806 8.8606 6.9053 +v 10.3724 8.4537 6.2504 +v 11.3716 8.6657 6.3378 +v 11.4080 8.4928 6.3410 +v 10.4088 8.2809 6.2536 +v 10.2927 8.6370 6.7168 +v 10.2563 8.8098 6.7136 +v 11.2555 9.0218 6.8010 +v 11.2919 8.8490 6.8042 +v 10.3738 8.3641 7.4014 +v 9.3746 8.1521 7.3140 +v 9.4110 7.9793 7.3172 +v 10.4102 8.1912 7.4046 +v 10.3399 8.7202 6.9251 +v 9.3407 8.5082 6.8377 +v 9.3771 8.3354 6.8409 +v 10.3463 8.7318 6.8236 +v 9.3471 8.5198 6.7362 +v 9.3835 8.3470 6.7393 +v 10.4737 8.3641 6.2593 +v 10.5101 8.1912 6.2625 +v 9.5109 7.9793 6.1751 +v 9.4745 8.1521 6.1719 +v 10.3576 8.7202 6.7225 +v 9.3584 8.5082 6.6350 +v 9.3948 8.3354 6.6382 +v 9.5841 8.1138 7.3323 +v 8.5780 7.9373 7.2443 +v 8.6083 7.7633 7.2470 +v 9.6143 7.9398 7.3350 +v 9.5627 8.4723 6.8571 +v 8.5567 8.2959 6.7691 +v 8.5870 8.1219 6.7718 +v 9.5696 8.4840 6.7556 +v 8.5635 8.3076 6.6676 +v 8.5938 8.1336 6.6703 +v 9.6840 8.1138 6.1902 +v 9.7143 7.9398 6.1928 +v 8.7082 7.7633 6.1048 +v 8.6779 7.9373 6.1022 +v 9.5805 8.4723 6.6545 +v 8.5744 8.2959 6.5664 +v 8.6047 8.1219 6.5691 +v 8.6981 7.8694 7.2548 +v 7.6843 7.7457 7.1661 +v 7.7055 7.5703 7.1680 +v 8.7194 7.6941 7.2567 +v 8.6954 8.2307 6.7813 +v 7.6816 8.1070 6.6926 +v 7.7029 7.9316 6.6944 +v 8.7029 8.2425 6.6798 +v 7.6891 8.1188 6.5911 +v 7.7103 7.9435 6.5930 +v 8.7980 7.8694 6.1127 +v 8.8193 7.6941 6.1145 +v 7.8055 7.5703 6.0258 +v 7.7842 7.7457 6.0240 +v 8.7132 8.2307 6.5786 +v 7.6994 8.1070 6.4899 +v 7.7206 7.9316 6.4917 +v 7.7861 7.6652 7.1750 +v 6.7723 7.5414 7.0863 +v 6.7936 7.3661 7.0882 +v 7.8074 7.4898 7.1769 +v 7.7834 8.0265 6.7015 +v 6.7696 7.9027 6.6128 +v 6.7909 7.7274 6.6146 +v 7.7909 8.0383 6.6000 +v 6.7771 7.9145 6.5113 +v 6.7983 7.7392 6.5132 +v 7.8860 7.6652 6.0329 +v 7.9073 7.4898 6.0348 +v 6.8935 7.3661 5.9461 +v 6.8722 7.5414 5.9442 +v 7.8012 8.0265 6.4988 +v 6.7874 7.9027 6.4101 +v 6.8086 7.7274 6.4120 +v 6.8144 7.4996 7.0900 +v 5.8006 7.3759 7.0013 +v 5.8218 7.2005 7.0032 +v 6.8356 7.3243 7.0919 +v 6.8117 7.8610 6.6164 +v 5.7979 7.7372 6.5277 +v 5.8191 7.5619 6.5296 +v 6.8191 7.8728 6.5150 +v 5.8053 7.7490 6.4263 +v 5.8266 7.5737 6.4281 +v 6.9143 7.4996 5.9479 +v 6.9355 7.3243 5.9497 +v 5.9217 7.2005 5.8610 +v 5.9005 7.3759 5.8592 +v 6.8294 7.8610 6.4138 +v 5.8156 7.7372 6.3251 +v 5.8369 7.5619 6.3269 +v 6.1031 7.3800 7.0278 +v 5.0833 7.3252 6.9386 +v 5.0927 7.1488 6.9394 +v 6.1125 7.2037 7.0286 +v 6.1248 7.7435 6.5564 +v 5.1050 7.6887 6.4671 +v 5.1144 7.5123 6.4680 +v 6.1330 7.7554 6.4550 +v 5.1132 7.7006 6.3657 +v 5.1226 7.5242 6.3666 +v 6.2030 7.3800 5.8856 +v 6.2124 7.2037 5.8865 +v 5.1926 7.1488 5.7972 +v 5.1832 7.3252 5.7964 +v 6.1425 7.7435 6.3537 +v 5.1227 7.6887 6.2645 +v 5.1321 7.5123 6.2653 +v -0.3351 8.0506 6.4645 +v -1.3489 8.1743 6.3758 +v -1.3702 7.9990 6.3739 +v -0.3564 7.8752 6.4626 +v -0.2715 8.2366 5.9967 +v -0.2503 8.4119 5.9986 +v -1.2641 8.5356 5.9099 +v -1.2853 8.3603 5.9080 +v -0.2612 8.2484 5.8955 +v -0.2400 8.4237 5.8974 +v -1.2538 8.5475 5.8087 +v -1.2750 8.3721 5.8068 +v -0.2352 8.0506 5.3224 +v -0.2564 7.8752 5.3205 +v -1.2703 7.9990 5.2318 +v -1.2490 8.1743 5.2337 +v -0.2538 8.2366 5.7941 +v -0.2325 8.4119 5.7959 +v -1.2463 8.5356 5.7072 +v -1.2676 8.3603 5.7054 +v -0.4454 7.9614 6.4549 +v -0.4513 7.7848 6.4543 +v 0.5694 7.7502 6.5436 +v 0.5753 7.9268 6.5442 +v 0.6286 8.2906 6.0755 +v -0.3921 8.3251 5.9862 +v 0.6227 8.1140 6.0750 +v 0.6379 8.3025 5.9742 +v -0.3828 8.3370 5.8849 +v 0.6320 8.1259 5.9737 +v -0.3455 7.9614 5.3127 +v 0.6752 7.9268 5.4020 +v 0.6693 7.7502 5.4015 +v -0.3514 7.7848 5.3122 +v -0.3743 8.3251 5.7835 +v 0.6464 8.2906 5.8728 +v 0.6404 8.1140 5.8723 +v 0.5502 7.8315 6.5420 +v 0.5351 7.6555 6.5406 +v 1.5526 7.5677 6.6297 +v 1.5677 7.7437 6.6310 +v 1.6398 8.1064 6.1640 +v 0.6223 8.1941 6.0749 +v 1.6248 7.9304 6.1626 +v 1.6497 8.1182 6.0627 +v 0.6322 8.2060 5.9737 +v 1.6346 7.9422 6.0614 +v 0.6501 7.8315 5.3998 +v 1.6676 7.7437 5.4889 +v 1.6525 7.5677 5.4875 +v 0.6350 7.6555 5.3985 +v 0.6400 8.1941 5.8723 +v 1.6576 8.1064 5.9613 +v 1.6425 7.9304 5.9600 +v 1.4297 7.6668 6.6189 +v 1.4084 7.4915 6.6170 +v 2.4223 7.3677 6.7057 +v 2.4435 7.5431 6.7076 +v 2.5284 7.9044 6.2417 +v 1.5146 8.0282 6.1530 +v 2.5071 7.7291 6.2398 +v 2.5387 7.9162 6.1405 +v 1.5249 8.0400 6.0518 +v 2.5174 7.7409 6.1386 +v 1.5296 7.6668 5.4768 +v 2.5434 7.5431 5.5655 +v 2.5222 7.3677 5.5636 +v 1.5084 7.4915 5.4749 +v 1.5323 8.0282 5.9503 +v 2.5461 7.9044 6.0390 +v 2.5249 7.7291 6.0372 +v 2.3417 7.4696 6.6987 +v 2.3204 7.2943 6.6968 +v 3.3342 7.1705 6.7855 +v 3.3555 7.3458 6.7874 +v 3.4404 7.7072 6.3215 +v 2.4266 7.8309 6.2328 +v 3.4191 7.5318 6.3196 +v 3.4507 7.7190 6.2203 +v 2.4369 7.8427 6.1316 +v 3.4294 7.5436 6.2184 +v 2.4416 7.4696 5.5566 +v 3.4554 7.3459 5.6453 +v 3.4342 7.1705 5.6434 +v 2.4204 7.2943 5.5547 +v 2.4443 7.8309 6.0301 +v 3.4581 7.7072 6.1188 +v 3.4368 7.5318 6.1170 +v 3.3231 7.2372 6.7846 +v 3.3172 7.0606 6.7840 +v 4.3379 7.0261 6.8733 +v 4.3438 7.2026 6.8739 +v 4.3972 7.5664 6.4052 +v 3.3765 7.6010 6.3159 +v 4.3912 7.3898 6.4047 +v 4.4064 7.5783 6.3039 +v 3.3857 7.6129 6.2146 +v 4.4005 7.4017 6.3034 +v 3.4231 7.2372 5.6424 +v 4.4438 7.2026 5.7317 +v 4.4378 7.0261 5.7312 +v 3.4171 7.0606 5.6419 +v 3.3942 7.6010 6.1132 +v 4.4149 7.5664 6.2025 +v 4.4090 7.3898 6.2020 +v 4.1199 7.1416 6.8543 +v 4.1412 6.9662 6.8561 +v 5.1550 7.0900 6.9448 +v 5.1337 7.2654 6.9430 +v 5.1310 7.6267 6.4694 +v 4.1172 7.5029 6.3807 +v 5.1523 7.4513 6.4713 +v 5.1385 7.6385 6.3679 +v 4.1247 7.5147 6.2793 +v 5.1597 7.4632 6.3698 +v 4.2198 7.1416 5.7121 +v 5.2336 7.2654 5.8008 +v 5.2549 7.0900 5.8027 +v 4.2411 6.9662 5.7140 +v 4.1350 7.5029 6.1780 +v 5.1488 7.6267 6.2667 +v 5.1700 7.4513 6.2686 +v -1.3417 8.2934 6.3764 +v -2.3555 8.4171 6.2877 +v -2.3767 8.2418 6.2859 +v -1.3629 8.1180 6.3746 +v -1.2781 8.4794 5.9087 +v -1.2568 8.6547 5.9105 +v -2.2706 8.7785 5.8218 +v -2.2919 8.6031 5.8200 +v -1.2678 8.4912 5.8075 +v -1.2465 8.6665 5.8093 +v -2.2603 8.7903 5.7206 +v -2.2816 8.6149 5.7188 +v -1.2418 8.2934 5.2343 +v -1.2630 8.1180 5.2325 +v -2.2768 8.2418 5.1438 +v -2.2556 8.4171 5.1456 +v -1.2603 8.4794 5.7060 +v -1.2391 8.6547 5.7079 +v -2.2529 8.7785 5.6192 +v -2.2741 8.6031 5.6173 +v -2.1706 8.5487 6.3039 +v -3.1844 8.6725 6.2152 +v -3.2057 8.4971 6.2134 +v -2.1919 8.3734 6.3021 +v -2.1070 8.7347 5.8362 +v -2.0858 8.9101 5.8380 +v -3.0996 9.0338 5.7493 +v -3.1208 8.8585 5.7475 +v -2.0967 8.7465 5.7349 +v -2.0755 8.9219 5.7368 +v -3.0893 9.0456 5.6481 +v -3.1105 8.8703 5.6463 +v -2.0707 8.5487 5.1618 +v -2.0919 8.3734 5.1599 +v -3.1058 8.4971 5.0712 +v -3.0845 8.6725 5.0731 +v -2.0893 8.7347 5.6335 +v -2.0680 8.9101 5.6353 +v -3.0818 9.0338 5.5466 +v -3.1031 8.8585 5.5448 +v 9.3480 0.3779 10.3237 +v -2.8683 0.3779 9.2549 +v -2.8772 0.3779 9.3562 +v 9.3392 0.3779 10.4250 +v -2.8772 0.0002 9.3562 +v 9.3392 0.0002 10.4250 +v -2.8782 0.3779 6.7747 +v -2.9795 0.3779 6.7658 +v -3.1664 0.3779 8.9028 +v -3.0651 0.3779 8.9117 +v -2.9795 0.0002 6.7658 +v -3.1664 0.0002 8.9028 +v 9.8042 0.3779 10.3477 +v 9.9055 0.3779 10.3566 +v 10.5229 0.3779 3.2996 +v 10.4216 0.3779 3.2907 +v 9.9055 0.0002 10.3566 +v 10.5229 0.0002 3.2996 +v 9.9710 0.3779 3.2033 +v 9.9798 0.3779 3.1020 +v -2.2365 0.3779 2.0332 +v -2.2454 0.3779 2.1345 +v 9.9798 0.0002 3.1020 +v -2.2365 0.0002 2.0332 +v 6.2825 1.3390 10.6899 +v 6.7975 1.3390 10.7349 +v 6.4994 0.0002 11.8820 +v 5.9844 0.0002 11.8370 +v 6.7546 1.6838 11.2254 +v 6.4470 0.0002 12.4808 +v 6.2396 1.6838 11.1803 +v 5.9321 0.0002 12.4357 +v 6.1419 2.4485 10.0377 +v 6.6568 2.4485 10.0827 +v 6.6659 3.3186 9.9788 +v 6.1510 3.3186 9.9337 +v -0.4901 0.0002 11.2705 +v -0.5845 1.3390 10.0891 +v -0.0696 1.3390 10.1341 +v 0.0248 0.0002 11.3156 +v -0.6274 1.6838 10.5795 +v -0.5425 0.0002 11.8693 +v -0.1125 1.6838 10.6246 +v -0.0276 0.0002 11.9143 +v -0.3327 2.4485 9.4712 +v 0.1822 2.4485 9.5163 +v -0.3236 3.3186 9.3673 +v 0.1913 3.3186 9.4123 +v 0.4752 3.2250 2.8977 +v 0.5226 2.5917 0.6116 +v -1.1298 2.5281 1.2709 +v -0.6899 3.2157 2.9125 +v 0.6472 2.3846 -0.1240 +v -1.5696 2.8885 0.0197 +v -3.1039 3.3135 1.9302 +v -2.6769 3.1809 2.7944 +v -2.8102 3.4446 0.1425 +v -1.2386 2.9112 -0.2054 +v -1.2238 2.9112 -0.0365 +v 0.5631 2.5370 -0.1449 +v 0.5430 2.5370 -0.3740 +v 0.4541 2.3467 -0.3662 +v -1.3123 2.7534 -0.1989 +v -1.2976 2.7534 -0.0301 +v 0.4741 2.3467 -0.1371 +v -2.8731 3.5571 0.1826 +v -2.8978 3.5571 -0.0998 +v -3.0074 3.3226 -0.0902 +v -2.9827 3.3226 0.1921 +v 0.6848 2.9267 1.5054 +v 0.8535 2.5525 -0.2762 +v 0.6244 2.5525 -0.2962 +v 0.5160 2.9267 1.4906 +v 0.6784 2.7689 1.5792 +v 0.8457 2.3622 -0.1873 +v 0.5096 2.7689 1.5644 +v 0.6166 2.3622 -0.2073 +v 0.2969 3.5726 3.1399 +v 0.5793 3.5726 3.1646 +v 0.5697 3.3381 3.2742 +v 0.2873 3.3381 3.2495 +v 0.3963 2.6757 -0.1902 +v 0.8470 2.6757 -0.0261 +v 0.9928 2.6757 -0.4266 +v 0.5420 2.6757 -0.5906 +v 0.5420 0.0002 -0.5906 +v 0.5134 1.3380 -0.3170 +v 0.7829 1.3380 -0.2189 +v 0.9928 0.0002 -0.4266 +v 0.3963 0.0002 -0.1902 +v 0.4154 1.3380 -0.0475 +v 0.6848 1.3380 0.0506 +v 0.8470 0.0002 -0.0261 +v -6.7958 5.4344 6.3699 +v -6.7911 8.0770 6.3442 +v -6.7911 8.0770 6.8626 +v -6.7958 5.4344 7.0678 +v -6.7958 10.7195 6.3699 +v -6.7958 10.7195 7.0678 +v -7.3095 8.0770 6.3442 +v -7.4937 5.4344 6.3699 +v -7.4937 10.7195 6.3699 +v -7.3095 8.0770 6.8626 +v -7.4937 5.4344 7.0678 +v -7.4937 10.7195 7.0678 +v -6.7763 11.1923 3.0462 +v -6.7763 11.1923 6.3332 +v -2.9784 11.1924 6.3332 +v -2.9784 11.1923 3.0462 +v -2.6969 11.1924 2.7017 +v -2.6969 11.1924 6.6778 +v -2.6969 0.0002 6.6777 +v -2.6969 0.0002 2.7017 +v -7.0579 11.1923 2.7017 +v -7.0579 0.0002 2.7017 +v -7.0579 11.1924 6.6777 +v -7.0579 0.0002 6.6777 +v -2.9784 11.6198 3.0462 +v -2.9784 11.6355 6.3332 +v -2.6969 11.6355 6.6778 +v -2.6969 11.6198 2.7017 +v -6.7763 11.6198 3.0462 +v -7.0579 11.6198 2.7017 +v -6.7763 11.6355 6.3332 +v -7.0579 11.6355 6.6777 +v -2.7270 0.0002 6.5128 +v -2.7223 2.6427 6.4871 +v -2.7223 2.6427 7.0055 +v -2.7270 0.0002 7.2107 +v -2.7270 5.2853 6.5128 +v -2.7270 5.2853 7.2107 +v -3.2407 2.6427 6.4871 +v -3.4249 0.0002 6.5128 +v -3.4249 5.2853 6.5128 +v -3.2407 2.6427 7.0055 +v -3.4249 0.0002 7.2107 +v -3.4249 5.2853 7.2107 +v -6.7958 0.0002 6.3699 +v -6.7911 2.6427 6.3442 +v -6.7911 2.6427 6.8626 +v -6.7958 0.0002 7.0678 +v -6.7958 5.2853 6.3699 +v -6.7958 5.2853 7.0678 +v -7.3095 2.6427 6.3442 +v -7.4937 0.0002 6.3699 +v -7.4937 5.2853 6.3699 +v -7.3095 2.6427 6.8626 +v -7.4937 0.0002 7.0678 +v -7.4937 5.2853 7.0678 +v -6.9779 0.0002 2.5398 +v -6.9732 2.6427 2.5141 +v -6.9732 2.6427 3.0325 +v -6.9779 0.0002 3.2377 +v -6.9779 5.2853 2.5398 +v -6.9779 5.2853 3.2377 +v -7.4916 2.6427 2.5141 +v -7.6758 0.0002 2.5398 +v -7.6758 5.2853 2.5398 +v -7.4916 2.6427 3.0325 +v -7.6758 0.0002 3.2377 +v -7.6758 5.2853 3.2377 +v -6.9779 5.4344 2.5398 +v -6.9732 8.0770 2.5141 +v -6.9732 8.0770 3.0325 +v -6.9779 5.4344 3.2377 +v -6.9779 10.7195 2.5398 +v -6.9779 10.7195 3.2377 +v -7.4916 8.0770 2.5141 +v -7.6758 5.4344 2.5398 +v -7.6758 10.7195 2.5398 +v -7.4916 8.0770 3.0325 +v -7.6758 5.4344 3.2377 +v -7.6758 10.7195 3.2377 +v -2.0520 11.1446 4.6897 +v -2.0520 11.1446 7.2398 +v -2.0520 10.4007 7.2398 +v -2.0520 10.2636 4.6897 +v -4.8774 11.1446 2.1397 +v -2.0520 11.1446 2.1397 +v -2.0520 10.4007 2.1397 +v -4.8774 10.2636 2.1397 +v -7.7027 11.1446 4.6897 +v -7.7027 11.1446 2.1397 +v -7.7027 10.4007 2.1397 +v -7.7027 10.2636 4.6897 +v -4.8774 11.1446 7.2398 +v -7.7027 11.1446 7.2398 +v -7.7027 10.4007 7.2398 +v -4.8774 10.2636 7.2398 +v -4.8774 10.2636 6.6777 +v -2.6969 10.4007 6.6777 +v -7.0579 10.2636 4.6897 +v -7.0579 10.4007 6.6777 +v -4.8774 10.2636 2.7017 +v -7.0579 10.4007 2.7017 +v -2.6969 10.2636 4.6897 +v -2.6969 10.4007 2.7017 +v -2.6969 11.1446 4.6897 +v -2.6969 11.1446 6.6777 +v -4.8774 11.1446 2.7017 +v -2.6969 11.1446 2.7017 +v -7.0579 11.1446 4.6897 +v -7.0579 11.1446 2.7017 +v -4.8774 11.1446 6.6777 +v -7.0579 11.1446 6.6777 +v -2.0520 5.7104 4.6897 +v -2.0520 5.7104 7.2398 +v -2.0520 4.9664 7.2398 +v -2.0520 4.8293 4.6897 +v -4.8774 5.7104 2.1397 +v -2.0520 5.7104 2.1397 +v -2.0520 4.9664 2.1397 +v -4.8774 4.8293 2.1397 +v -7.7027 5.7104 4.6897 +v -7.7027 5.7104 2.1397 +v -7.7027 4.9664 2.1397 +v -7.7027 4.8293 4.6897 +v -4.8774 5.7104 7.2398 +v -7.7027 5.7104 7.2398 +v -7.7027 4.9664 7.2398 +v -4.8774 4.8293 7.2398 +v -4.8774 4.8293 6.6777 +v -2.6969 4.9664 6.6777 +v -7.0579 4.8293 4.6897 +v -7.0579 4.9664 6.6777 +v -4.8774 4.8293 2.7017 +v -7.0579 4.9664 2.7017 +v -2.6969 4.8293 4.6897 +v -2.6969 4.9664 2.7017 +v -2.6969 5.7104 4.6897 +v -2.6969 5.7104 6.6777 +v -4.8774 5.7104 2.7017 +v -2.6969 5.7104 2.7017 +v -7.0579 5.7104 4.6897 +v -7.0579 5.7104 2.7017 +v -4.8774 5.7104 6.6777 +v -7.0579 5.7104 6.6777 +v -2.9788 5.4344 3.1190 +v -2.9812 8.0770 3.1450 +v -3.0264 8.0770 2.6286 +v -3.0396 5.4344 2.4238 +v -2.9788 10.7195 3.1190 +v -3.0396 10.7195 2.4238 +v -2.4648 8.0770 3.0998 +v -2.2836 5.4344 3.0582 +v -2.2836 10.7195 3.0582 +v -2.5100 8.0770 2.5834 +v -2.3444 5.4344 2.3629 +v -2.3444 10.7195 2.3629 +v -6.5153 13.0097 3.5380 +v -6.4668 13.0097 3.7033 +v -6.2096 12.6417 3.5380 +v -6.3366 13.0097 3.8161 +v -6.1661 13.0155 3.8406 +v -6.0094 13.0155 3.7691 +v -5.9163 13.0097 3.6241 +v -5.9163 13.0097 3.4519 +v -6.0094 13.0097 3.3070 +v -6.1661 13.0097 3.2354 +v -6.3366 13.0097 3.2599 +v -6.4668 13.0097 3.3727 +v -6.6423 11.7965 3.8161 +v -6.4316 12.1656 3.6807 +v -6.4735 12.1656 3.5380 +v -6.7239 11.7965 3.5380 +v -6.4233 11.7965 4.0059 +v -6.3192 12.1656 3.7781 +v -6.1364 11.7965 4.0471 +v -6.1720 12.1656 3.7992 +v -5.8728 11.7965 3.9267 +v -6.0368 12.1656 3.7375 +v -5.7161 11.7965 3.6829 +v -5.9564 12.1656 3.6124 +v -5.7161 11.7965 3.3931 +v -5.9564 12.1656 3.4637 +v -5.8728 11.7965 3.1493 +v -6.0368 12.1656 3.3386 +v -6.1364 11.7965 3.0289 +v -6.1720 12.1656 3.2768 +v -6.4233 11.7965 3.0702 +v -6.3192 12.1656 3.2980 +v -6.6423 11.7965 3.2599 +v -6.4316 12.1656 3.3954 +v -6.6804 11.4811 3.8406 +v -6.7693 11.4811 3.5380 +v -6.4421 11.4811 4.0471 +v -6.1299 11.4811 4.0920 +v -5.8431 11.4811 3.9610 +v -5.6726 11.4811 3.6957 +v -5.6726 11.4811 3.3803 +v -5.8431 11.4811 3.1150 +v -6.1299 11.4811 2.9840 +v -6.4421 11.4811 3.0289 +v -6.6804 11.4811 3.2354 +v -6.5691 11.1913 3.7691 +v -6.6369 11.1913 3.5380 +v -6.3871 11.1913 3.9267 +v -6.1488 11.1913 3.9610 +v -5.9298 11.1913 3.8610 +v -5.7996 11.1913 3.6584 +v -5.7996 11.1913 3.4176 +v -5.9298 11.1913 3.2151 +v -6.1488 11.1913 3.1150 +v -6.3871 11.1913 3.1493 +v -6.5691 11.1913 3.3070 +v -5.6312 12.2475 5.0831 +v -5.6312 12.2475 6.1931 +v -4.5212 12.2475 6.1931 +v -4.5212 12.2475 5.0831 +v -4.5629 11.7199 5.1248 +v -4.5629 11.7199 6.1513 +v -4.5212 11.1924 6.1931 +v -4.5212 11.1924 5.0831 +v -5.5895 11.7199 5.1248 +v -5.6312 11.1924 5.0831 +v -5.5895 11.7199 6.1513 +v -5.6312 11.1924 6.1931 +v -4.9724 13.3027 5.0831 +v -4.9724 13.3027 6.1931 +v -3.8624 13.3027 6.1931 +v -3.8624 13.3027 5.0831 +v -3.9042 12.7751 5.1248 +v -3.9042 12.7751 6.1513 +v -3.8624 12.2475 6.1931 +v -3.8624 12.2475 5.0831 +v -4.9307 12.7751 5.1248 +v -4.9724 12.2475 5.0831 +v -4.9307 12.7751 6.1513 +v -4.9724 12.2475 6.1931 +v -4.3095 12.2475 5.0831 +v -4.3095 12.2475 6.1931 +v -3.1995 12.2475 6.1931 +v -3.1995 12.2475 5.0831 +v -3.2412 11.7199 5.1248 +v -3.2412 11.7199 6.1513 +v -3.1995 11.1924 6.1931 +v -3.1995 11.1924 5.0831 +v -4.2677 11.7199 5.1248 +v -4.3095 11.1924 5.0831 +v -4.2677 11.7199 6.1513 +v -4.3095 11.1924 6.1931 +v -2.1016 1.0554 -10.4453 +v -2.1016 1.0554 -9.3353 +v -0.9916 1.0554 -9.3353 +v -0.9916 1.0554 -10.4453 +v -1.0333 0.5278 -10.4035 +v -1.0333 0.5278 -9.3770 +v -0.9916 0.0002 -9.3353 +v -0.9916 0.0002 -10.4453 +v -2.0599 0.5278 -10.4035 +v -2.1016 0.0002 -10.4453 +v -2.0599 0.5278 -9.3770 +v -2.1016 0.0002 -9.3353 +v -0.4238 9.0911 1.0076 +v -0.7481 9.1307 1.2453 +v -0.7462 8.2490 1.2440 +v -0.4209 8.1698 1.0056 +v 0.8136 8.7366 0.1412 +v 0.8501 9.3745 0.1156 +v 0.5590 9.2199 0.3088 +v 0.5648 8.4275 0.3048 +v 0.2346 8.2590 0.5361 +v 0.2298 9.1357 0.5394 +v -0.0995 9.0515 0.7700 +v -0.0957 8.0906 0.7673 +v -1.0298 9.2376 1.4426 +v -0.7500 10.0124 1.2467 +v -1.0784 10.0124 1.4766 +v -0.4267 10.0124 1.0097 +v -0.4392 10.5501 0.9784 +v -0.7754 10.5323 1.2333 +v 0.8866 10.0124 0.0901 +v 0.9081 11.0342 -0.0655 +v 0.5695 10.8552 0.1951 +v 0.5533 10.0124 0.3129 +v 0.2250 10.0124 0.5428 +v 0.2333 10.7115 0.4593 +v -0.1030 10.5679 0.7235 +v -0.1033 10.0124 0.7727 +v -1.1141 10.6391 1.4846 +v -0.8008 11.0523 1.2199 +v -1.1499 11.2658 1.4927 +v 1.1412 9.5290 -0.0776 +v 1.2199 10.0124 -0.1327 +v -1.2163 8.6765 1.5731 +v -0.9812 8.4627 1.4086 +v -1.3115 9.3444 1.6398 +v -0.4517 11.0878 0.9471 +v -0.1026 11.1234 0.6743 +v 0.9297 12.0560 -0.2212 +v 1.2468 11.2131 -0.3262 +v 1.2737 12.4139 -0.5197 +v 0.2415 11.4107 0.3758 +v 0.5856 11.6980 0.0773 +v -1.4067 10.0124 1.7065 +v -1.4529 10.7459 1.7360 +v 1.0625 9.0457 -0.0225 +v -1.4990 11.4794 1.7655 +v 1.2550 12.4098 -0.5440 +v -2.8087 10.9913 2.8559 +v -2.8274 10.9872 2.8316 +v 1.2409 12.4366 -0.5498 +v -2.8415 11.0140 2.8258 +v 1.2508 12.4573 -0.5291 +v -2.8316 11.0347 2.8465 +v 1.2711 12.4433 -0.5105 +v -2.8113 11.0207 2.8651 +v -9.3037 6.0183 6.5129 +v -9.2221 5.9964 6.4478 +v -10.8287 0.0002 6.1684 +v -10.9648 0.0221 6.2770 +v -9.2725 6.0099 6.6182 +v -10.9128 0.0137 6.4526 +v -9.1716 5.9829 6.6182 +v -10.7447 -0.0133 6.4526 +v -9.1405 5.9745 6.5129 +v -10.6927 -0.0217 6.2770 +v -7.6658 12.0061 6.4018 +v -7.5650 11.9791 6.4018 +v -7.5338 11.9708 6.2964 +v -7.6970 12.0145 6.2964 +v -7.6154 11.9926 6.2313 +v -8.4187 8.9945 6.3155 +v -8.5003 9.0164 6.3806 +v -8.4692 9.0080 6.4860 +v -8.3683 8.9810 6.4860 +v -8.3371 8.9727 6.3806 +v -7.7049 11.7782 4.9479 +v -7.6811 11.7472 4.9479 +v -7.6812 11.7472 6.3000 +v -7.7049 11.7782 6.3000 +v -7.6835 11.8125 4.9479 +v -7.6835 11.8125 6.3000 +v -7.6465 11.8026 4.9479 +v -7.6465 11.8026 6.3000 +v -7.6451 11.7622 4.9479 +v -7.6451 11.7622 6.3000 +v -9.3037 6.0183 5.0900 +v -9.2221 5.9964 5.0249 +v -10.8287 0.0002 4.7556 +v -10.9560 0.0221 4.8572 +v -9.2725 6.0099 5.1954 +v -10.9074 0.0137 5.0216 +v -9.1716 5.9829 5.1954 +v -10.7501 -0.0133 5.0216 +v -9.1405 5.9745 5.0900 +v -10.7014 -0.0217 4.8572 +v -7.6658 12.0061 4.9789 +v -7.5650 11.9791 4.9789 +v -7.5338 11.9708 4.8735 +v -7.6970 12.0145 4.8735 +v -7.6154 11.9926 4.8084 +v -8.4187 8.9945 4.8926 +v -8.5003 9.0164 4.9577 +v -8.4692 9.0080 5.0631 +v -8.3683 8.9810 5.0631 +v -8.3371 8.9727 4.9577 +v -7.8916 11.0814 4.9479 +v -7.8679 11.0503 4.9479 +v -7.8679 11.0503 6.3000 +v -7.8916 11.0814 6.3000 +v -7.8702 11.1156 4.9479 +v -7.8702 11.1156 6.3000 +v -7.8332 11.1057 4.9479 +v -7.8332 11.1057 6.3000 +v -7.8318 11.0654 4.9479 +v -7.8318 11.0654 6.3000 +v -2.9837 8.0770 6.8093 +v -2.9837 8.0770 6.2910 +v -2.9790 5.4344 6.3166 +v -2.9790 5.4344 7.0145 +v -2.9790 10.7195 6.3166 +v -2.9790 10.7195 7.0145 +v -2.4653 8.0770 6.2910 +v -2.2811 5.4344 6.3166 +v -2.2811 10.7195 6.3166 +v -2.4653 8.0770 6.8093 +v -2.2811 5.4344 7.0145 +v -2.2811 10.7195 7.0145 +v -8.2650 9.6877 4.9479 +v -8.2413 9.6567 4.9479 +v -8.2413 9.6567 6.3000 +v -8.2650 9.6877 6.3000 +v -8.2436 9.7220 4.9479 +v -8.2436 9.7220 6.3000 +v -8.2067 9.7121 4.9479 +v -8.2067 9.7121 6.3000 +v -8.2052 9.6717 4.9479 +v -8.2052 9.6717 6.3000 +v -8.4517 8.9909 5.0144 +v -8.4280 8.9599 5.0144 +v -8.4280 8.9599 6.3665 +v -8.4517 8.9909 6.3665 +v -8.4303 9.0251 5.0144 +v -8.4303 9.0251 6.3665 +v -8.3934 9.0152 5.0144 +v -8.3934 9.0152 6.3665 +v -8.3919 8.9749 5.0144 +v -8.3919 8.9749 6.3665 +v -8.6384 8.2941 5.0875 +v -8.6147 8.2630 5.0875 +v -8.6147 8.2630 6.4396 +v -8.6384 8.2941 6.4396 +v -8.6170 8.3283 5.0875 +v -8.6170 8.3283 6.4396 +v -8.5801 8.3184 5.0875 +v -8.5801 8.3184 6.4396 +v -8.5787 8.2781 5.0875 +v -8.5787 8.2781 6.4396 +v -8.8252 7.5972 5.0440 +v -8.8014 7.5662 5.0440 +v -8.8014 7.5662 6.3961 +v -8.8252 7.5972 6.3961 +v -8.8038 7.6315 5.0440 +v -8.8038 7.6315 6.3961 +v -8.7668 7.6216 5.0440 +v -8.7668 7.6216 6.3961 +v -8.7654 7.5812 5.0440 +v -8.7654 7.5812 6.3961 +v -9.1986 6.2036 5.1576 +v -9.1749 6.1725 5.1576 +v -9.1749 6.1725 6.5097 +v -9.1986 6.2036 6.5097 +v -9.1772 6.2378 5.1576 +v -9.1772 6.2378 6.5097 +v -9.1402 6.2279 5.1576 +v -9.1402 6.2279 6.5097 +v -9.1388 6.1876 5.1576 +v -9.1388 6.1876 6.5097 +v -9.5720 4.8099 5.1447 +v -9.5483 4.7789 5.1447 +v -9.5483 4.7789 6.4968 +v -9.5720 4.8099 6.4968 +v -9.5506 4.8442 5.1447 +v -9.5506 4.8442 6.4968 +v -9.5137 4.8343 5.1447 +v -9.5137 4.8343 6.4968 +v -9.5122 4.7939 5.1447 +v -9.5122 4.7939 6.4968 +v -9.3853 5.5068 5.1362 +v -9.3616 5.4757 5.1362 +v -9.3616 5.4757 6.4883 +v -9.3853 5.5068 6.4883 +v -9.3639 5.5410 5.1362 +v -9.3639 5.5410 6.4883 +v -9.3269 5.5311 5.1362 +v -9.3269 5.5311 6.4883 +v -9.3255 5.4907 5.1362 +v -9.3255 5.4907 6.4883 +v -9.0119 6.9004 5.0881 +v -8.9882 6.8694 5.0881 +v -8.9882 6.8694 6.4401 +v -9.0119 6.9004 6.4401 +v -8.9905 6.9346 5.0881 +v -8.9905 6.9346 6.4401 +v -8.9535 6.9247 5.0881 +v -8.9535 6.9247 6.4401 +v -8.9521 6.8844 5.0881 +v -8.9521 6.8844 6.4401 +v -9.7587 4.1131 5.1029 +v -9.7350 4.0820 5.1029 +v -9.7350 4.0820 6.4550 +v -9.7587 4.1131 6.4550 +v -9.7373 4.1473 5.1029 +v -9.7373 4.1473 6.4550 +v -9.7004 4.1374 5.1029 +v -9.7004 4.1374 6.4550 +v -9.6989 4.0971 5.1029 +v -9.6989 4.0971 6.4550 +v -9.9455 3.4163 5.0642 +v -9.9217 3.3852 5.0642 +v -9.9217 3.3852 6.4163 +v -9.9455 3.4163 6.4163 +v -9.9240 3.4505 5.0642 +v -9.9240 3.4505 6.4163 +v -9.8871 3.4406 5.0642 +v -9.8871 3.4406 6.4163 +v -9.8857 3.4002 5.0642 +v -9.8857 3.4002 6.4163 +v -10.1322 2.7194 5.1111 +v -10.1084 2.6884 5.1111 +v -10.1084 2.6884 6.4632 +v -10.1322 2.7194 6.4632 +v -10.1108 2.7537 5.1111 +v -10.1108 2.7537 6.4632 +v -10.0738 2.7438 5.1111 +v -10.0738 2.7438 6.4632 +v -10.0724 2.7034 5.1111 +v -10.0724 2.7034 6.4632 +v -10.3189 2.0226 5.0244 +v -10.2952 1.9915 5.0244 +v -10.2952 1.9915 6.3764 +v -10.3189 2.0226 6.3764 +v -10.2975 2.0568 5.0244 +v -10.2975 2.0568 6.3764 +v -10.2605 2.0469 5.0244 +v -10.2605 2.0469 6.3764 +v -10.2591 2.0066 5.0244 +v -10.2591 2.0066 6.3764 +v -10.5056 1.3258 4.9479 +v -10.4819 1.2947 4.9479 +v -10.4819 1.2947 6.3000 +v -10.5056 1.3258 6.3000 +v -10.4842 1.3600 4.9479 +v -10.4842 1.3600 6.3000 +v -10.4472 1.3501 4.9479 +v -10.4472 1.3501 6.3000 +v -10.4458 1.3098 4.9479 +v -10.4458 1.3098 6.3000 +v -10.6923 0.6289 4.9479 +v -10.6686 0.5979 4.9479 +v -10.6686 0.5979 6.3000 +v -10.6923 0.6289 6.3000 +v -10.6709 0.6632 4.9479 +v -10.6709 0.6632 6.3000 +v -10.6340 0.6533 4.9479 +v -10.6340 0.6533 6.3000 +v -10.6325 0.6129 4.9479 +v -10.6325 0.6129 6.3000 +v -2.5116 2.8029 2.1331 +v -2.2308 0.5479 2.1282 +v -2.7703 0.5479 1.6755 +v -2.8164 2.8029 1.8774 +v -2.7703 5.0580 1.6755 +v -2.2308 5.0580 2.1282 +v -2.7703 2.8029 2.4415 +v -2.6888 0.5479 2.6741 +v -2.6888 5.5387 2.6741 +v -3.0751 2.8029 2.1857 +v -3.2284 0.5479 2.2214 +v -3.2284 5.5387 2.2214 +v -8.0783 10.3846 4.9479 +v -8.0546 10.3535 4.9479 +v -8.0546 10.3535 6.3000 +v -8.0783 10.3846 6.3000 +v -8.0569 10.4188 4.9479 +v -8.0569 10.4188 6.3000 +v -8.0199 10.4089 4.9479 +v -8.0199 10.4089 6.3000 +v -8.0185 10.3685 4.9479 +v -8.0185 10.3685 6.3000 +v -0.4624 0.6639 -8.4482 +v -0.4624 1.1792 -8.4482 +v 0.9419 0.5798 -8.4482 +v 0.9419 0.4156 -8.4482 +v -0.4624 1.0343 -6.6030 +v -0.4624 0.5190 -6.6030 +v -0.3985 1.2576 -8.3389 +v 0.8795 0.6805 -8.3389 +v 0.9426 0.6693 -8.4482 +v -0.4617 1.2687 -8.4482 +v -0.4617 1.1238 -6.6030 +v -0.3985 1.1127 -6.6030 +v 0.8795 0.5356 -6.6030 +v 0.8787 0.5909 -8.3389 +v 0.8787 0.4585 -6.6030 +v -0.3993 1.1680 -8.3389 +v 0.7683 0.5204 -6.4465 +v -0.2351 1.0678 -6.4465 +v -0.2351 1.0443 -5.0016 +v 0.7683 0.4970 -5.0016 +v 0.9419 0.4348 -6.6030 +v 0.9419 0.4067 -4.8671 +v 0.9419 0.2426 -4.8671 +v 0.9419 0.2707 -6.6030 +v 0.8795 0.5074 -4.8671 +v 0.9426 0.4962 -4.8671 +v 0.9426 0.5244 -6.6030 +v -0.3985 1.0845 -4.8671 +v -0.3993 1.0195 -4.8671 +v -0.3993 1.0195 -6.6030 +v -0.4624 1.0061 -4.8671 +v -0.4624 0.4908 -4.8671 +v -0.4617 1.0957 -4.8671 +v 0.8787 0.4351 -4.8671 +v 0.7657 0.6533 -8.1839 +v -0.2352 1.2001 -8.1839 +v -0.2352 1.0782 -6.7233 +v 0.7657 0.5313 -6.7233 +v 0.7414 0.4585 -6.4575 +v 0.7414 0.4351 -5.0126 +v 0.7517 0.4351 -4.8671 +v -0.2607 1.1414 -8.2012 +v 0.7402 0.5946 -8.2012 +v -0.2607 1.0195 -6.7406 +v 0.7402 0.4726 -6.7406 +v 0.7402 0.4585 -6.6030 +v -0.2620 1.0059 -6.4575 +v -0.2620 0.9525 -5.0065 +v -0.2607 1.0059 -6.6030 +v 0.9419 0.5798 -1.2860 +v -0.4624 1.1792 -1.2860 +v -0.4624 0.6639 -1.2860 +v 0.9419 0.4156 -1.2860 +v -0.4624 1.0343 -3.1312 +v -0.4624 0.5190 -3.1312 +v -0.3985 1.2576 -1.3954 +v -0.4617 1.2688 -1.2860 +v 0.9426 0.6693 -1.2860 +v 0.8795 0.6805 -1.3954 +v -0.3985 1.1127 -3.1312 +v -0.4617 1.1238 -3.1312 +v 0.8795 0.5356 -3.1312 +v 0.8787 0.4585 -3.1312 +v 0.8787 0.5909 -1.3954 +v -0.3993 1.1680 -1.3954 +v -0.2351 1.0443 -4.7326 +v -0.2351 1.0678 -3.2877 +v 0.7683 0.5204 -3.2877 +v 0.7683 0.4970 -4.7326 +v 0.9419 0.4348 -3.1312 +v 0.9419 0.2707 -3.1312 +v 0.9426 0.5244 -3.1312 +v -0.3993 1.0195 -3.1312 +v -0.2352 1.0782 -3.0109 +v -0.2352 1.2001 -1.5503 +v 0.7657 0.6533 -1.5503 +v 0.7657 0.5313 -3.0109 +v 0.7414 0.4585 -3.2767 +v 0.7414 0.4351 -4.7216 +v -0.2607 1.1414 -1.5330 +v 0.7402 0.5946 -1.5330 +v -0.2607 1.0195 -2.9936 +v 0.7402 0.4726 -2.9936 +v 0.7402 0.4585 -3.1312 +v -0.2620 1.0059 -3.2767 +v -0.2620 0.9525 -4.7277 +v -0.2607 1.0059 -3.1312 +v 0.3667 0.9579 -7.4260 +v 0.4136 0.8449 -7.4260 +v 0.5265 0.9579 -7.3598 +v 0.5265 0.7981 -7.4260 +v 0.6395 0.8449 -7.4260 +v 0.6863 0.9579 -7.4260 +v 0.6395 1.0709 -7.4260 +v 0.5265 1.1177 -7.4260 +v 0.4136 1.0709 -7.4260 +v 0.3667 0.7981 -7.5858 +v 0.3006 0.9579 -7.5858 +v 0.6863 0.7981 -7.5858 +v 0.5265 0.7319 -7.5858 +v 0.7525 0.9579 -7.5858 +v 0.6863 1.1177 -7.5858 +v 0.5265 1.1839 -7.5858 +v 0.3667 1.1177 -7.5858 +v 0.4136 0.8449 -7.7456 +v 0.3667 0.9579 -7.7456 +v 0.6395 0.8449 -7.7456 +v 0.5265 0.7981 -7.7456 +v 0.6863 0.9579 -7.7456 +v 0.6395 1.0709 -7.7456 +v 0.5265 1.1177 -7.7456 +v 0.4136 1.0709 -7.7456 +v 0.5265 0.9579 -7.8118 +v 0.0422 1.0581 -7.1382 +v 0.0890 0.9451 -7.1382 +v 0.2020 1.0581 -7.0720 +v 0.2020 0.8983 -7.1382 +v 0.3150 0.9451 -7.1382 +v 0.3618 1.0581 -7.1382 +v 0.3150 1.1711 -7.1382 +v 0.2020 1.2179 -7.1382 +v 0.0890 1.1711 -7.1382 +v 0.0422 0.8983 -7.2980 +v -0.0240 1.0581 -7.2980 +v 0.3618 0.8983 -7.2980 +v 0.2020 0.8322 -7.2980 +v 0.4280 1.0581 -7.2980 +v 0.3618 1.2179 -7.2980 +v 0.2020 1.2841 -7.2980 +v 0.0422 1.2179 -7.2980 +v 0.0890 0.9451 -7.4578 +v 0.0422 1.0581 -7.4578 +v 0.3150 0.9451 -7.4578 +v 0.2020 0.8983 -7.4578 +v 0.3618 1.0581 -7.4578 +v 0.3150 1.1711 -7.4578 +v 0.2020 1.2179 -7.4578 +v 0.0890 1.1711 -7.4578 +v 0.2020 1.0581 -7.5240 +v 0.3667 0.9579 -6.8213 +v 0.4136 0.8449 -6.8213 +v 0.5265 0.9579 -6.7551 +v 0.5265 0.7981 -6.8213 +v 0.6395 0.8449 -6.8213 +v 0.6863 0.9579 -6.8213 +v 0.6395 1.0709 -6.8213 +v 0.5265 1.1177 -6.8213 +v 0.4136 1.0709 -6.8213 +v 0.3667 0.7981 -6.9811 +v 0.3006 0.9579 -6.9811 +v 0.6863 0.7981 -6.9811 +v 0.5265 0.7319 -6.9811 +v 0.7525 0.9579 -6.9811 +v 0.6863 1.1177 -6.9811 +v 0.5265 1.1839 -6.9811 +v 0.3667 1.1177 -6.9811 +v 0.4136 0.8449 -7.1409 +v 0.3667 0.9579 -7.1409 +v 0.6395 0.8449 -7.1409 +v 0.5265 0.7981 -7.1409 +v 0.6863 0.9579 -7.1409 +v 0.6395 1.0709 -7.1409 +v 0.5265 1.1177 -7.1409 +v 0.4136 1.0709 -7.1409 +v 0.5265 0.9579 -7.2071 +v 1.1147 -0.1222 -7.2632 +v 1.1615 -0.1949 -7.3498 +v 1.2745 -0.1729 -7.2207 +v 1.2745 -0.2249 -7.3856 +v 1.3875 -0.1949 -7.3498 +v 1.4343 -0.1222 -7.2632 +v 1.3875 -0.0496 -7.1766 +v 1.2745 -0.0195 -7.1408 +v 1.1615 -0.0496 -7.1766 +v 1.1147 -0.1025 -7.4883 +v 1.0485 0.0002 -7.3659 +v 1.2745 -0.1451 -7.5390 +v 1.4343 -0.1025 -7.4883 +v 1.5005 0.0002 -7.3659 +v 1.4343 0.1029 -7.2435 +v 1.2745 0.1455 -7.1928 +v 1.1147 0.1029 -7.2435 +v 0.9039 0.2883 -8.3941 +v 0.9039 0.2883 -8.3135 +v 0.9392 0.0002 -8.3242 +v 0.9392 0.0002 -8.4305 +v 0.8329 0.0002 -8.4305 +v 0.8232 0.2883 -8.3941 +v 0.8329 0.0002 -8.3242 +v 0.8232 0.2883 -8.3135 +v 0.9392 0.5764 -8.3242 +v 0.9392 0.5764 -8.4305 +v 0.8329 0.5764 -8.4305 +v 0.8329 0.5764 -8.3242 +v -0.2959 0.3757 -8.3941 +v -0.2959 0.3757 -8.3135 +v -0.2606 0.0002 -8.3242 +v -0.2606 0.0002 -8.4305 +v -0.3668 0.0002 -8.4305 +v -0.3766 0.3757 -8.3941 +v -0.3668 0.0002 -8.3242 +v -0.3766 0.3757 -8.3135 +v -0.2606 0.7511 -8.3242 +v -0.2606 0.7511 -8.4305 +v -0.3668 0.7511 -8.4305 +v -0.3668 0.7511 -8.3242 +v 0.9039 0.2883 -1.3718 +v 0.9392 0.0002 -1.3355 +v 0.9392 0.0002 -1.4417 +v 0.9039 0.2883 -1.4525 +v 0.8232 0.2883 -1.3718 +v 0.8329 0.0002 -1.3355 +v 0.8232 0.2883 -1.4525 +v 0.8329 0.0002 -1.4417 +v 0.9392 0.5764 -1.4417 +v 0.9392 0.5764 -1.3355 +v 0.8329 0.5764 -1.3355 +v 0.8329 0.5764 -1.4417 +v 1.4770 0.6639 0.6729 +v 1.4770 1.1792 0.6729 +v 1.4770 0.5798 -0.7314 +v 1.4770 0.4156 -0.7314 +v 3.3223 1.0343 0.6729 +v 3.3223 0.5190 0.6729 +v 1.5864 1.2576 0.6090 +v 1.5864 0.6805 -0.6690 +v 1.4770 0.6693 -0.7321 +v 1.4770 1.2688 0.6721 +v 3.3223 1.1238 0.6721 +v 3.3223 1.1127 0.6090 +v 3.3223 0.5356 -0.6690 +v 1.5864 0.5909 -0.6683 +v 3.3223 0.4585 -0.6683 +v 1.5864 1.1680 0.6097 +v 3.4787 0.5204 -0.5578 +v 3.4787 1.0678 0.4456 +v 4.9236 1.0443 0.4456 +v 4.9236 0.4970 -0.5578 +v 3.3223 0.4348 -0.7314 +v 5.0581 0.4067 -0.7314 +v 5.0581 0.2426 -0.7314 +v 3.3223 0.2707 -0.7314 +v 5.0581 0.5074 -0.6690 +v 5.0581 0.4962 -0.7321 +v 3.3223 0.5244 -0.7321 +v 5.0581 1.0845 0.6090 +v 5.0581 1.0195 0.6097 +v 3.3223 1.0195 0.6097 +v 5.0581 1.0061 0.6729 +v 5.0581 0.4908 0.6729 +v 5.0581 1.0957 0.6721 +v 5.0581 0.4351 -0.6683 +v 1.7413 0.6533 -0.5552 +v 1.7413 1.2001 0.4457 +v 3.2019 1.0782 0.4457 +v 3.2019 0.5313 -0.5552 +v 3.4678 0.4585 -0.5310 +v 4.9126 0.4351 -0.5310 +v 5.0581 0.4351 -0.5413 +v 1.7240 1.1414 0.4712 +v 1.7240 0.5946 -0.5297 +v 3.1846 1.0195 0.4712 +v 3.1846 0.4726 -0.5297 +v 3.3223 0.4585 -0.5297 +v 3.4678 1.0059 0.4724 +v 4.9188 0.9525 0.4724 +v 3.3223 1.0059 0.4712 +v 8.6393 0.5798 -0.7314 +v 8.6393 1.1792 0.6729 +v 8.6393 0.6639 0.6729 +v 8.6393 0.4156 -0.7314 +v 6.7940 1.0343 0.6729 +v 6.7940 0.5190 0.6729 +v 8.5299 1.2576 0.6090 +v 8.6393 1.2688 0.6721 +v 8.6393 0.6693 -0.7321 +v 8.5299 0.6805 -0.6690 +v 6.7940 1.1127 0.6090 +v 6.7940 1.1238 0.6721 +v 6.7940 0.5356 -0.6690 +v 6.7940 0.4585 -0.6683 +v 8.5299 0.5909 -0.6683 +v 8.5299 1.1680 0.6097 +v 5.1927 1.0443 0.4456 +v 6.6376 1.0678 0.4456 +v 6.6376 0.5204 -0.5578 +v 5.1927 0.4970 -0.5578 +v 6.7940 0.4348 -0.7314 +v 6.7940 0.2707 -0.7314 +v 6.7940 0.5244 -0.7321 +v 6.7940 1.0195 0.6097 +v 6.9144 1.0782 0.4457 +v 8.3750 1.2001 0.4457 +v 8.3750 0.6533 -0.5552 +v 6.9144 0.5313 -0.5552 +v 6.6485 0.4585 -0.5310 +v 5.2036 0.4351 -0.5310 +v 8.3922 1.1414 0.4712 +v 8.3922 0.5946 -0.5297 +v 6.9316 1.0195 0.4712 +v 6.9316 0.4726 -0.5297 +v 6.7940 0.4585 -0.5297 +v 6.6485 1.0059 0.4724 +v 5.1975 0.9525 0.4724 +v 6.7940 1.0059 0.4712 +v 1.5311 0.2883 -0.6934 +v 1.6118 0.2883 -0.6934 +v 1.6010 0.0002 -0.7287 +v 1.4947 0.0002 -0.7287 +v 1.4947 0.0002 -0.6225 +v 1.5311 0.2883 -0.6127 +v 1.6010 0.0002 -0.6225 +v 1.6118 0.2883 -0.6127 +v 1.6010 0.5764 -0.7287 +v 1.4947 0.5764 -0.7287 +v 1.4947 0.5764 -0.6225 +v 1.6010 0.5764 -0.6225 +v 8.5534 0.2883 -0.6934 +v 8.5898 0.0002 -0.7287 +v 8.4835 0.0002 -0.7287 +v 8.4727 0.2883 -0.6934 +v 8.5534 0.2883 -0.6127 +v 8.5898 0.0002 -0.6225 +v 8.4727 0.2883 -0.6127 +v 8.4835 0.0002 -0.6225 +v 8.4835 0.5764 -0.7287 +v 8.5898 0.5764 -0.7287 +v 8.5898 0.5764 -0.6225 +v 8.4835 0.5764 -0.6225 +v 8.5309 0.3757 0.5064 +v 8.6116 0.3757 0.5064 +v 8.6008 0.0002 0.4710 +v 8.4946 0.0002 0.4710 +v 8.4946 0.0002 0.5773 +v 8.5309 0.3757 0.5870 +v 8.6008 0.0002 0.5773 +v 8.6116 0.3757 0.5870 +v 8.6008 0.7511 0.4710 +v 8.4946 0.7511 0.4710 +v 8.4946 0.7511 0.5773 +v 8.6008 0.7511 0.5773 +# 2114 vertices + +vn 0.0135 0.9890 -0.1472 +vn 0.0265 0.9811 -0.1915 +vn 0.0343 0.9897 -0.1389 +vn 0.0088 0.9885 -0.1511 +vn 0.0132 0.9813 -0.1923 +vn 0.0130 0.9890 -0.1472 +vn -0.0074 0.9871 -0.1602 +vn 0.0084 0.9868 -0.1617 +vn 0.0296 0.9851 -0.1694 +vn 0.0423 0.9755 -0.2159 +vn 0.0010 0.9852 -0.1717 +vn -0.0153 0.9773 -0.2113 +vn 0.0486 0.9565 -0.2876 +vn 0.0664 0.9545 -0.2906 +vn 0.0082 0.9566 -0.2914 +vn -0.0177 0.9650 -0.2617 +vn 0.0456 0.9392 -0.3403 +vn 0.0534 0.9486 -0.3121 +vn 0.0320 0.9392 -0.3418 +vn 0.0217 0.9641 -0.2647 +vn 0.7309 0.6762 -0.0923 +vn 0.6082 0.7906 -0.0702 +vn -0.5892 0.7907 -0.1663 +vn -0.7004 0.6803 -0.2159 +vn 0.6800 -0.7039 0.2052 +vn 0.7681 -0.6150 0.1785 +vn -0.7015 -0.7078 0.0832 +vn -0.7927 -0.6074 0.0519 +vn -0.7481 0.6065 -0.2693 +vn 0.7787 0.6144 -0.1266 +vn 0.6121 -0.7546 0.2365 +vn -0.6447 -0.7553 0.1175 +vn 0.5398 0.5886 0.6019 +vn 0.6298 0.5285 -0.5693 +vn -0.5283 0.5227 -0.6691 +vn -0.6435 0.5818 0.4974 +vn 0.7933 0.0000 -0.6089 +vn 0.7351 0.1309 -0.6652 +vn -0.6128 0.1464 -0.7765 +vn -0.6699 -0.0000 -0.7425 +vn 0.6184 0.0000 0.7859 +vn 0.6674 -0.0308 0.7441 +vn -0.7403 -0.0000 0.6723 +vn -0.7914 -0.0125 0.6112 +vn 0.8663 0.4993 0.0145 +vn -0.0156 0.9999 0.0053 +vn -0.0237 0.9882 -0.1511 +vn 0.8851 0.4651 0.0153 +vn -0.0042 0.9878 0.1556 +vn -0.8945 0.4464 -0.0229 +vn -0.8736 0.4860 -0.0229 +vn 0.4646 -0.8851 0.0267 +vn 0.4990 -0.8662 0.0267 +vn -0.0504 -0.3407 -0.9388 +vn 0.0031 0.8403 -0.5420 +vn 0.8256 0.3438 -0.4475 +vn 0.3418 -0.7581 -0.5554 +vn -0.7897 0.2845 -0.5436 +vn -0.3254 -0.8004 -0.5035 +vn -0.4463 -0.8948 -0.0114 +vn -0.4860 -0.8739 -0.0130 +vn 0.0504 -0.3664 0.9291 +vn -0.0195 0.8638 0.5035 +vn -0.7132 0.2945 0.6361 +vn -0.3239 -0.7703 0.5493 +vn 0.7201 0.3096 0.6209 +vn 0.3250 -0.7693 0.5500 +vn 0.0237 -0.9882 0.1511 +vn 0.0156 -0.9999 -0.0053 +vn 0.8919 0.4520 0.0160 +vn 0.4516 -0.8918 0.0259 +vn 0.0034 -0.9878 -0.1556 +vn -0.6115 -0.4809 -0.6283 +vn -0.5722 0.6865 -0.4486 +vn 0.5707 0.6755 -0.4669 +vn 0.6072 -0.4795 -0.6336 +vn 0.6848 -0.7208 -0.1072 +vn 0.7274 0.6486 0.2239 +vn 0.7192 0.6808 0.1389 +vn 0.6627 -0.7476 -0.0443 +vn -0.6873 -0.7135 -0.1362 +vn -0.6935 -0.7165 -0.0755 +vn -0.7458 0.6588 0.0984 +vn -0.7268 0.6617 0.1843 +vn -0.0366 -0.0859 -0.9956 +vn -0.0359 -0.0858 -0.9957 +vn 0.6649 0.0000 -0.7469 +vn 0.7033 0.0000 -0.7109 +vn -0.5485 -0.0000 0.8361 +vn -0.6858 -0.0000 -0.7278 +vn -0.7107 -0.0000 -0.7035 +vn -0.7033 -0.0000 0.7109 +vn 0.9997 0.0000 0.0259 +vn 0.0370 0.0000 0.9993 +vn 0.7225 -0.3788 -0.5783 +vn -0.0019 -0.8215 -0.5703 +vn -0.0320 0.6989 -0.7145 +vn 0.5859 0.5261 -0.6164 +vn -0.7068 0.7071 -0.0183 +vn -0.7068 -0.7071 -0.0183 +vn -0.7213 -0.6923 -0.0187 +vn -0.7210 0.6927 -0.0187 +vn -0.0027 0.8048 -0.5936 +vn -0.7086 0.3271 -0.6252 +vn -0.9038 0.4273 -0.0236 +vn -0.0240 0.9997 -0.0008 +vn 0.7068 -0.7071 0.0183 +vn 0.7068 0.7071 0.0183 +vn 0.6928 0.7209 0.0179 +vn 0.6928 -0.7209 0.0179 +vn 0.0000 -1.0000 -0.0000 +vn 0.0404 -0.9992 0.0011 +vn 0.0420 -0.9991 0.0011 +vn -0.0031 -1.0000 0.0000 +vn 0.0164 0.7193 -0.6945 +vn 0.0351 0.7011 -0.7122 +vn -0.0557 -0.6963 -0.7156 +vn -0.0443 -0.4832 -0.8744 +vn 0.4696 -0.3061 -0.8281 +vn 0.0008 -0.6981 -0.7160 +vn -0.0805 0.7054 -0.7042 +vn -0.0492 0.7136 -0.6989 +vn -0.0229 -0.7244 -0.6890 +vn -0.0366 0.6888 -0.7240 +vn -0.7321 -0.3736 -0.5696 +vn -0.5955 0.5250 -0.6081 +vn 0.6985 0.3294 -0.6352 +vn 0.8969 0.4417 0.0233 +vn -0.0404 -0.9992 -0.0011 +vn -0.0389 -0.9992 -0.0011 +vn -0.4967 -0.2784 -0.8221 +vn 0.3800 0.8850 -0.2689 +vn -0.4028 0.8657 -0.2972 +vn -0.0114 0.9999 -0.0004 +vn 0.2930 0.9038 -0.3120 +vn 0.7000 0.7139 0.0183 +vn -0.3109 0.8885 -0.3376 +vn -0.6710 0.7412 -0.0175 +vn -0.5787 0.5808 -0.5726 +vn -0.5787 -0.5808 -0.5726 +vn 0.5757 -0.5742 -0.5821 +vn 0.5757 0.5742 -0.5821 +vn 0.7234 -0.0792 -0.6859 +vn 0.9941 -0.1050 0.0259 +vn 0.6760 -0.0743 -0.7332 +vn 0.7175 0.0654 -0.6935 +vn -0.7255 0.0617 -0.6855 +vn -0.6889 0.0583 -0.7225 +vn 0.6809 0.0623 -0.7297 +vn -0.9942 -0.1045 -0.0252 +vn -0.7328 -0.0749 -0.6763 +vn -0.6843 -0.0695 -0.7259 +vn -0.9942 -0.1046 -0.0259 +vn 0.6832 0.0628 -0.7275 +vn 0.7205 0.0660 -0.6903 +vn -0.7283 0.0622 -0.6825 +vn -0.6908 0.0588 -0.7206 +vn 0.7373 -0.0758 -0.6714 +vn 0.6969 -0.0659 0.7141 +vn 0.6977 -0.0956 0.7099 +vn 0.6433 0.0724 -0.7622 +vn -0.7342 0.0777 -0.6744 +vn -0.6902 0.2141 -0.6912 +vn -0.7418 0.0796 0.6659 +vn -0.6779 0.0615 0.7326 +vn 0.7397 -0.0461 0.6714 +vn 0.6794 -0.1869 -0.7095 +vn -0.6646 -0.0883 -0.7420 +vn -0.7012 0.0601 0.7104 +vn 0.7777 -0.1556 0.6090 +vn 0.7449 -0.1260 0.6552 +vn -0.6013 0.0107 0.7990 +vn -0.7084 0.0357 0.7049 +vn 0.6653 -0.0423 -0.7454 +vn 0.5569 0.1291 -0.8205 +vn -0.7843 0.1316 -0.6062 +vn -0.7358 0.2610 -0.6248 +vn 0.7308 -0.0961 0.6758 +vn -0.7232 0.0330 0.6899 +vn 0.5284 -0.1613 -0.8336 +vn -0.8211 -0.0103 -0.5707 +vn -0.7446 -0.0717 -0.6637 +vn -0.6516 0.0699 -0.7554 +vn -0.6896 -0.1018 0.7170 +vn -0.6890 -0.0703 0.7214 +vn 0.7266 0.0827 -0.6820 +vn 0.6806 0.2272 -0.6966 +vn 0.6862 0.0572 0.7251 +vn 0.7495 0.0758 0.6576 +vn -0.7323 -0.0485 0.6793 +vn -0.6882 -0.1760 -0.7039 +vn 0.6566 -0.0928 -0.7485 +vn 0.7090 0.0565 0.7029 +vn 0.6096 0.0072 0.7927 +vn -0.7373 -0.1337 0.6622 +vn -0.7709 -0.1659 0.6149 +vn 0.7160 0.0337 0.6973 +vn -0.6736 -0.0394 -0.7381 +vn -0.5646 0.1268 -0.8156 +vn 0.7780 0.1403 -0.6124 +vn 0.7255 0.2768 -0.6301 +vn 0.7206 0.0306 0.6927 +vn -0.7134 -0.1004 0.6935 +vn -0.5485 -0.1517 -0.8222 +vn 0.8246 -0.0113 -0.5656 +vn -0.0023 -0.9818 -0.1900 +vn -0.0370 -0.5484 -0.8354 +vn 0.4890 -0.6629 -0.5669 +vn 0.6481 -0.7614 0.0168 +vn -0.0145 0.7649 -0.6439 +vn -0.0122 0.9999 0.0000 +vn 0.7999 0.5998 0.0206 +vn 0.6452 0.4725 -0.6004 +vn -0.8163 0.5772 -0.0214 +vn -0.6531 0.4740 -0.5906 +vn -0.4845 -0.6734 -0.5585 +vn -0.6813 -0.7318 -0.0175 +vn -0.7224 -0.0000 -0.6915 +vn -0.6947 0.1354 -0.7065 +vn -0.7045 0.0948 0.7033 +vn -0.6985 -0.0000 0.7156 +vn -0.5433 -0.0900 0.8347 +vn -0.5257 -0.1391 -0.8392 +vn 0.7189 0.0115 -0.6950 +vn 0.6828 0.1275 -0.7194 +vn 0.8659 -0.0899 -0.4921 +vn 0.7115 0.0066 0.7027 +vn 0.7085 0.0729 0.7020 +vn 0.8598 -0.0578 0.5073 +vn 0.4360 -0.5183 -0.7357 +vn 0.5749 -0.3782 -0.7256 +vn 0.6416 -0.4248 0.6386 +vn 0.4532 -0.1733 0.8744 +vn -0.5657 0.3819 -0.7309 +vn -0.7454 0.4359 -0.5043 +vn -0.5947 0.4293 0.6798 +vn -0.6462 0.5506 0.5285 +vn 0.7385 -0.2551 -0.6241 +vn -0.0122 -0.2025 0.9792 +vn -0.7576 0.5683 -0.3212 +vn -0.8054 0.5220 0.2807 +vn 0.6245 -0.4408 -0.6448 +vn 0.5934 -0.3613 0.7193 +vn 0.4612 -0.4908 0.7392 +vn 0.4295 -0.2011 -0.8804 +vn -0.5432 0.4033 0.7364 +vn -0.7339 0.4466 0.5117 +vn -0.6155 0.4102 -0.6730 +vn -0.6641 0.5308 -0.5265 +vn -0.0748 -0.2061 -0.9757 +vn 0.7536 -0.2519 0.6072 +vn -0.7618 0.5860 0.2762 +vn -0.8011 0.5032 -0.3242 +vn -0.7151 -0.0000 0.6991 +vn -0.7061 -0.0000 -0.7081 +vn -0.7126 0.0892 -0.6959 +vn -0.6861 0.1439 0.7132 +vn -0.4959 -0.1470 0.8558 +vn -0.5711 -0.0850 -0.8165 +vn 0.6910 0.1200 0.7128 +vn 0.7263 0.0107 0.6873 +vn 0.8561 -0.0852 0.5097 +vn 0.7004 0.0775 -0.7095 +vn 0.7038 0.0070 -0.7103 +vn 0.8696 -0.0610 -0.4900 +vn 0.7151 0.0000 -0.6991 +vn 0.7062 0.0000 0.7080 +vn 0.7127 0.0892 0.6958 +vn 0.6863 0.1440 -0.7130 +vn 0.4959 -0.1470 -0.8559 +vn 0.5710 -0.0850 0.8165 +vn -0.6908 0.1200 -0.7130 +vn -0.7262 0.0107 -0.6874 +vn -0.8559 -0.0852 -0.5100 +vn -0.7004 0.0775 0.7095 +vn -0.7038 0.0070 0.7103 +vn -0.8696 -0.0610 0.4900 +vn -0.7095 0.1789 0.6816 +vn -0.7115 0.4588 -0.5322 +vn -0.8524 0.1339 -0.5055 +vn -0.8921 -0.1267 0.4337 +vn 0.0355 -0.2669 0.9631 +vn -0.2980 0.5435 0.7848 +vn -0.3090 0.8198 -0.4822 +vn -0.0355 0.2669 -0.9631 +vn 0.0263 0.5715 0.8202 +vn -0.0153 0.8618 -0.5070 +vn 0.7172 0.1799 0.6733 +vn 0.8851 -0.1185 0.4502 +vn 0.8669 0.1389 -0.4788 +vn 0.6997 0.4689 -0.5391 +vn 0.3300 0.5331 0.7790 +vn 0.2891 0.8257 -0.4844 +vn -0.9151 0.4011 0.0408 +vn -0.9997 -0.0000 -0.0259 +vn -0.8923 -0.1267 0.4334 +vn -0.7097 0.1787 0.6815 +vn -0.2979 0.5432 0.7849 +vn -0.3967 0.9078 0.1358 +vn 0.0107 0.9872 0.1594 +vn 0.9197 0.3832 0.0854 +vn 0.7173 0.1799 0.6731 +vn 0.4216 0.8935 0.1549 +vn -0.9130 0.4068 0.0305 +vn -0.8900 -0.1068 0.4433 +vn -0.7084 0.2058 0.6752 +vn -0.2964 0.5722 0.7647 +vn -0.3952 0.9118 0.1114 +vn 0.0359 -0.2232 0.9741 +vn 0.0256 0.6008 0.7990 +vn 0.0095 0.9912 0.1320 +vn 0.9179 0.3895 0.0755 +vn 0.7167 0.2060 0.6663 +vn 0.8823 -0.1001 0.4600 +vn 0.4192 0.8985 0.1305 +vn 0.3277 0.5623 0.7593 +vn -0.9099 0.4147 0.0145 +vn -0.8866 -0.0765 0.4562 +vn -0.7065 0.2453 0.6638 +vn -0.2941 0.6132 0.7332 +vn -0.3933 0.9164 0.0748 +vn 0.0362 -0.1574 0.9869 +vn 0.0244 0.6426 0.7658 +vn 0.0084 0.9957 0.0923 +vn 0.9152 0.3985 0.0610 +vn 0.7155 0.2441 0.6545 +vn 0.8781 -0.0717 0.4730 +vn 0.4158 0.9045 0.0946 +vn 0.3243 0.6035 0.7284 +vn 0.8781 -0.0719 0.4730 +vn 0.0362 -0.1572 0.9869 +vn -0.9057 0.4238 -0.0061 +vn -0.8824 -0.0345 0.4692 +vn -0.7045 0.2952 0.6453 +vn -0.2914 0.6638 0.6888 +vn -0.3910 0.9200 0.0275 +vn 0.0366 -0.0700 0.9969 +vn 0.0229 0.6943 0.7193 +vn 0.0065 0.9991 0.0412 +vn 0.9115 0.4093 0.0404 +vn 0.7145 0.2924 0.6356 +vn 0.8725 -0.0326 0.4876 +vn 0.4116 0.9101 0.0481 +vn 0.3201 0.6550 0.6845 +vn -0.7156 0.2441 -0.6544 +vn -0.8781 -0.0719 -0.4730 +vn -0.8715 0.0807 0.4837 +vn -0.7008 0.4154 0.5800 +vn -0.3243 0.6035 -0.7285 +vn -0.0362 -0.1574 -0.9869 +vn -0.2888 0.7788 0.5569 +vn 0.0362 0.1574 0.9869 +vn -0.0244 0.6426 -0.7658 +vn -0.0362 -0.1572 -0.9869 +vn 0.0179 0.8129 0.5821 +vn 0.7065 0.2453 -0.6639 +vn 0.7122 0.4076 0.5715 +vn 0.8587 0.0772 0.5066 +vn 0.8865 -0.0765 -0.4563 +vn 0.2937 0.6132 -0.7333 +vn 0.3120 0.7715 0.5544 +vn -0.9105 0.4121 -0.0343 +vn -0.7141 0.3063 -0.6295 +vn -0.8711 -0.0208 -0.4907 +vn -0.4108 0.9111 -0.0343 +vn -0.3189 0.6697 -0.6707 +vn -0.0366 -0.0443 -0.9983 +vn -0.0061 0.9996 -0.0259 +vn -0.0221 0.7090 -0.7049 +vn -0.0366 -0.0441 -0.9984 +vn 0.9046 0.4261 0.0122 +vn 0.8812 -0.0219 -0.4723 +vn 0.7040 0.3096 -0.6392 +vn 0.3906 0.9205 -0.0137 +vn 0.2911 0.6781 -0.6749 +vn -0.0370 -0.0443 -0.9983 +vn -0.9133 0.4042 -0.0504 +vn -0.7147 0.2697 -0.6453 +vn -0.8753 -0.0517 -0.4808 +vn -0.4135 0.9078 -0.0702 +vn -0.3220 0.6310 -0.7059 +vn -0.0366 -0.1118 -0.9931 +vn -0.0072 0.9978 -0.0656 +vn -0.0237 0.6702 -0.7418 +vn 0.9077 0.4196 -0.0038 +vn 0.8846 -0.0547 -0.4631 +vn 0.7055 0.2716 -0.6546 +vn 0.3921 0.9185 -0.0504 +vn 0.2926 0.6401 -0.7104 +vn -0.9152 0.3984 -0.0610 +vn -0.4158 0.9045 -0.0946 +vn -0.0084 0.9957 -0.0923 +vn 0.9099 0.4147 -0.0145 +vn 0.8866 -0.0765 -0.4562 +vn 0.3933 0.9164 -0.0748 +vn 0.2941 0.6132 -0.7331 +vn -0.7156 0.2441 -0.6545 +vn -0.3243 0.6035 -0.7284 +vn -0.0244 0.6426 -0.7659 +vn 0.2941 0.6132 -0.7332 +vn -0.7141 0.3063 -0.6294 +vn -0.4105 0.9112 -0.0343 +vn 0.2911 0.6784 -0.6745 +vn -0.9022 0.4309 0.0168 +vn -0.7122 0.4078 -0.5714 +vn -0.8587 0.0772 -0.5066 +vn -0.4032 0.9121 0.0740 +vn -0.3120 0.7715 -0.5545 +vn -0.0362 0.1574 -0.9869 +vn -0.0019 0.9957 0.0923 +vn -0.0179 0.8129 -0.5822 +vn 0.8957 0.4400 0.0641 +vn 0.8715 0.0807 -0.4836 +vn 0.7008 0.4155 -0.5799 +vn 0.3884 0.9166 0.0954 +vn 0.2888 0.7786 -0.5571 +vn -0.7008 0.4154 0.5799 +vn -0.2888 0.7787 0.5569 +vn 0.0179 0.8129 0.5822 +vn 0.3117 0.7716 0.5546 +vn -0.8715 0.0807 0.4836 +vn -0.7008 0.4155 0.5799 +vn 0.3120 0.7715 0.5545 +vn -0.0000 1.0000 0.0000 +vn -0.6928 0.7209 -0.0183 +vn -0.7210 0.6927 -0.0191 +vn 0.0267 0.6925 0.7209 +vn 0.0256 0.7208 0.6927 +vn -0.0267 0.6924 -0.7210 +vn -0.0256 0.7207 -0.6927 +vn -0.0369 -0.0000 -0.9993 +vn 0.6928 0.7209 0.0183 +vn 0.7211 0.6926 0.0191 +vn 0.1987 0.9800 -0.0099 +vn 0.2689 0.9632 -0.0000 +vn 0.2073 0.9783 0.0046 +vn 0.2140 0.9768 0.0084 +vn 0.2691 0.9631 0.0099 +vn 0.2075 0.9782 0.0053 +vn 0.2241 0.9743 0.0206 +vn 0.2270 0.9738 0.0099 +vn 0.2382 0.9712 -0.0038 +vn 0.3086 0.9512 -0.0076 +vn 0.2388 0.9709 0.0160 +vn 0.2892 0.9568 0.0305 +vn 0.3959 0.9183 -0.0053 +vn 0.4034 0.9149 -0.0168 +vn 0.3965 0.9177 0.0221 +vn 0.3576 0.9331 0.0366 +vn 0.4604 0.8877 0.0015 +vn 0.4276 0.9039 -0.0061 +vn 0.4608 0.8874 0.0107 +vn 0.3647 0.9311 0.0107 +vn 0.1907 0.6629 -0.7240 +vn 0.2444 0.6550 0.7151 +vn 0.1665 0.7388 0.6531 +vn 0.1318 0.7242 -0.6769 +vn -0.1907 -0.6270 -0.7553 +vn -0.2251 -0.6890 -0.6889 +vn -0.1814 -0.7064 0.6842 +vn -0.1629 -0.6523 0.7402 +vn 0.3247 0.5993 0.7317 +vn 0.2728 0.6545 -0.7051 +vn -0.2506 -0.6841 -0.6850 +vn -0.1732 -0.6751 0.7171 +vn -0.5606 0.5834 -0.5877 +vn -0.5557 0.5670 0.6081 +vn 0.6070 0.5343 0.5882 +vn 0.6068 0.5339 -0.5888 +vn 0.6859 0.0000 -0.7277 +vn 0.7024 0.0000 0.7118 +vn 0.7127 0.1240 0.6905 +vn 0.7138 0.1081 -0.6920 +vn -0.6903 -0.0073 -0.7235 +vn -0.7306 -0.0000 -0.6828 +vn -0.7311 -0.0000 0.6823 +vn -0.6748 0.0186 0.7378 +vn 0.2096 0.9771 0.0359 +vn -0.0057 0.9999 0.0130 +vn 0.0853 0.5578 -0.8256 +vn 0.0862 0.5307 -0.8431 +vn -0.0729 0.5479 0.8334 +vn -0.0746 0.5157 0.8535 +vn -0.2161 0.9763 -0.0130 +vn 0.0295 -0.8296 -0.5576 +vn 0.0267 -0.8474 -0.5303 +vn 0.5819 0.3933 -0.7118 +vn 0.5131 0.8572 0.0450 +vn 0.9162 -0.3916 0.0847 +vn 0.5894 -0.7327 -0.3403 +vn 0.5106 0.3556 0.7828 +vn 0.4916 -0.7532 0.4372 +vn -0.0477 -0.8368 0.5455 +vn -0.0450 -0.8565 0.5142 +vn -0.6762 0.3579 0.6439 +vn -0.4914 0.8706 -0.0267 +vn -0.9075 -0.4109 -0.0870 +vn -0.5824 -0.7427 0.3304 +vn -0.5474 0.3789 -0.7462 +vn -0.5233 -0.7274 -0.4440 +vn 0.0055 -0.9999 -0.0130 +vn -0.2096 -0.9771 -0.0366 +vn 0.0866 0.5201 -0.8497 +vn 0.0256 -0.8536 -0.5203 +vn 0.2159 -0.9763 0.0137 +vn 0.5787 -0.4414 0.6857 +vn 0.6890 -0.4416 -0.5747 +vn 0.4547 0.7093 -0.5386 +vn 0.3547 0.7091 0.6094 +vn 0.2192 -0.7156 -0.6632 +vn 0.1354 -0.7445 -0.6537 +vn -0.1110 0.6529 -0.7492 +vn -0.2283 0.6210 -0.7498 +vn 0.1007 -0.7155 0.6913 +vn 0.0198 -0.7444 0.6674 +vn -0.3550 0.6211 0.6987 +vn -0.2395 0.6528 0.7186 +vn 0.8165 0.0000 -0.5773 +vn 0.9944 -0.0607 0.0870 +vn 0.7658 0.0000 -0.6431 +vn -0.8544 -0.0000 0.5195 +vn -0.7659 -0.0000 0.6430 +vn 0.6428 0.0000 0.7660 +vn 0.7040 0.0000 0.7102 +vn 0.0870 0.0000 -0.9962 +vn -0.9962 -0.0000 -0.0870 +vn 0.7096 0.7014 0.0679 +vn 0.5953 -0.8018 0.0519 +vn 0.6383 -0.4253 -0.6416 +vn 0.6501 0.5443 -0.5303 +vn -0.0616 0.7071 0.7044 +vn -0.0616 -0.7073 0.7042 +vn 0.6132 0.7881 0.0534 +vn -0.0752 0.5062 0.8591 +vn 0.5560 0.3933 0.7322 +vn 0.0616 -0.7073 -0.7042 +vn 0.0616 0.7072 -0.7043 +vn 0.0025 -0.9996 -0.0282 +vn 0.7120 0.7019 0.0183 +vn 0.6981 0.7153 0.0328 +vn 0.7091 -0.7003 0.0816 +vn 0.8304 -0.5524 0.0725 +vn 0.8785 -0.3013 -0.3708 +vn 0.6996 0.7075 0.0999 +vn 0.7126 -0.7003 0.0427 +vn 0.6975 0.7122 0.0786 +vn 0.7160 0.6948 0.0679 +vn 0.6920 -0.7194 0.0603 +vn 0.5489 0.5385 0.6393 +vn 0.5171 -0.4257 0.7425 +vn 0.6745 0.3934 -0.6247 +vn 0.0752 0.5062 -0.8591 +vn -0.0025 -0.9996 0.0282 +vn 0.8009 -0.3015 0.5173 +vn 0.3172 0.8858 -0.3388 +vn 0.2588 0.8838 0.3899 +vn -0.0008 1.0000 0.0076 +vn 0.3405 0.8988 -0.2762 +vn 0.0603 0.7216 -0.6897 +vn 0.2945 0.8992 0.3235 +vn -0.0603 0.7216 0.6897 +vn 0.5247 0.5773 0.6256 +vn 0.5247 -0.5773 0.6256 +vn 0.6254 -0.5774 -0.5249 +vn 0.6254 0.5774 -0.5249 +vn 0.7322 -0.1102 -0.6721 +vn 0.7939 -0.1002 -0.5998 +vn 0.0862 -0.1487 -0.9851 +vn 0.7425 0.0909 -0.6637 +vn 0.7894 0.0844 -0.6080 +vn 0.6721 0.0844 0.7356 +vn 0.6159 0.0909 0.7826 +vn -0.0875 -0.1479 0.9851 +vn -0.0862 -0.1480 0.9852 +vn 0.6775 -0.1003 0.7286 +vn 0.6014 -0.1106 0.7912 +vn 0.7870 0.0852 -0.6110 +vn 0.7382 0.0918 -0.6683 +vn 0.6689 0.0852 0.7384 +vn 0.6108 0.0918 0.7865 +vn 0.7414 -0.1027 -0.6632 +vn 0.8144 0.0076 -0.5803 +vn -0.6630 -0.1133 -0.7400 +vn -0.6521 -0.0949 -0.7522 +vn 0.6316 0.1055 0.7681 +vn 0.6075 0.2294 0.7605 +vn -0.7872 0.0869 0.6106 +vn -0.7122 0.1350 0.6889 +vn -0.6004 -0.0871 -0.7949 +vn 0.7481 -0.1777 -0.6394 +vn 0.6821 -0.0426 0.7300 +vn -0.7715 0.0625 0.6331 +vn -0.8473 0.0519 0.5286 +vn -0.5909 -0.1532 -0.7921 +vn -0.5646 -0.1650 -0.8087 +vn -0.7549 0.1160 0.6455 +vn 0.8093 -0.0832 -0.5815 +vn 0.8678 0.0495 -0.4945 +vn 0.5600 0.1604 0.8128 +vn 0.5301 0.2864 0.7981 +vn -0.7879 0.0437 0.6142 +vn -0.5917 -0.1473 -0.7926 +vn 0.8352 -0.1717 -0.5225 +vn 0.5196 0.0145 0.8543 +vn 0.6149 -0.1027 0.7819 +vn -0.7730 -0.0949 0.6273 +vn -0.7816 -0.1133 0.6134 +vn 0.7010 0.0076 0.7132 +vn 0.7552 0.1055 -0.6469 +vn 0.7303 0.2295 -0.6434 +vn -0.5818 0.1351 -0.8021 +vn -0.6693 0.0869 -0.7379 +vn -0.7295 -0.0871 0.6784 +vn 0.6260 -0.1777 0.7593 +vn 0.7985 -0.0426 -0.6005 +vn -0.6498 0.0625 -0.7575 +vn -0.6965 -0.1651 0.6983 +vn -0.7194 -0.1532 0.6775 +vn -0.7427 0.0519 -0.6676 +vn -0.6311 0.1160 -0.7669 +vn 0.6960 -0.0832 0.7132 +vn 0.7686 0.0495 0.6378 +vn 0.6925 0.1603 -0.7034 +vn 0.6605 0.2861 -0.6942 +vn -0.7204 -0.1473 0.6777 +vn -0.6693 0.0437 -0.7417 +vn 0.7316 -0.1716 0.6597 +vn 0.6604 0.0145 -0.7508 +vn 0.6092 -0.6437 -0.4631 +vn 0.8347 -0.5459 0.0732 +vn 0.2647 -0.9640 0.0229 +vn 0.0591 -0.7354 -0.6751 +vn 0.6581 0.7508 0.0572 +vn 0.6428 0.5040 -0.5769 +vn 0.0681 0.6242 -0.7783 +vn -0.0681 0.6241 0.7783 +vn -0.0589 -0.7354 0.6750 +vn 0.5196 -0.6440 0.5615 +vn 0.5328 0.5040 0.6798 +vn 0.6483 0.0000 0.7614 +vn -0.7808 -0.0000 0.6248 +vn -0.7488 0.1037 0.6546 +vn 0.6321 0.1361 0.7628 +vn 0.7496 -0.1320 0.6487 +vn -0.8390 -0.0957 0.5356 +vn 0.7638 0.1125 -0.6356 +vn 0.7633 0.0103 -0.6460 +vn 0.6262 -0.0897 -0.7745 +vn -0.6325 0.0792 -0.7705 +vn -0.6508 0.0071 -0.7592 +vn -0.4791 -0.0678 -0.8751 +vn -0.7707 -0.0000 0.6372 +vn -0.7549 0.1360 0.6416 +vn 0.6235 0.1036 0.7749 +vn 0.6604 0.0000 0.7509 +vn 0.7335 -0.0957 0.6729 +vn -0.8507 -0.1320 0.5089 +vn -0.6398 0.0103 -0.7685 +vn -0.6418 0.1125 -0.7586 +vn -0.4822 -0.0897 -0.8714 +vn 0.7727 0.0071 -0.6348 +vn 0.7569 0.0792 -0.6487 +vn 0.6236 -0.0678 -0.7788 +vn 0.7708 0.0000 -0.6371 +vn 0.7549 0.1360 -0.6415 +vn -0.6235 0.1036 -0.7749 +vn -0.6606 -0.0000 -0.7508 +vn -0.7335 -0.0956 -0.6729 +vn 0.8507 -0.1320 -0.5089 +vn 0.6399 0.0103 0.7684 +vn 0.6418 0.1125 0.7586 +vn 0.4822 -0.0897 0.8715 +vn -0.7727 0.0071 0.6348 +vn -0.7570 0.0792 0.6486 +vn -0.6235 -0.0678 0.7789 +vn -0.7361 0.2604 0.6249 +vn -0.6206 -0.1072 0.7768 +vn 0.4593 0.1041 0.8822 +vn 0.4541 0.5106 0.7301 +vn -0.8117 0.5630 0.1556 +vn -0.9778 -0.1913 -0.0854 +vn 0.4768 0.8355 0.2731 +vn 0.9778 0.1913 0.0855 +vn -0.8202 0.5676 -0.0717 +vn 0.5203 0.8528 0.0458 +vn -0.6163 0.2604 -0.7432 +vn 0.5739 0.5108 -0.6401 +vn 0.6056 0.1041 -0.7889 +vn -0.4761 -0.1072 -0.8728 +vn -0.7722 0.5630 -0.2945 +vn 0.5169 0.8356 -0.1862 +vn -0.1877 0.4927 0.8497 +vn -0.6205 -0.1072 0.7769 +vn -0.0872 -0.0000 0.9962 +vn -0.2384 0.9290 0.2830 +vn -0.8116 0.5631 0.1556 +vn -0.9778 -0.1913 -0.0855 +vn -0.2224 0.9747 -0.0198 +vn -0.0374 0.4925 -0.8695 +vn 0.0872 0.0000 -0.9962 +vn -0.6165 0.2604 -0.7431 +vn -0.1858 0.9291 -0.3197 +vn -0.1688 0.4952 0.8522 +vn -0.7266 0.2838 0.6257 +vn -0.6224 -0.0889 0.7776 +vn -0.2031 0.9362 0.2869 +vn -0.7913 0.5907 0.1579 +vn -0.9835 -0.1591 -0.0862 +vn -0.1854 0.9825 -0.0160 +vn -0.7996 0.5964 -0.0702 +vn -0.0181 0.4949 -0.8687 +vn -0.4774 -0.0889 -0.8742 +vn -0.6067 0.2838 -0.7425 +vn -0.1503 0.9363 -0.3174 +vn -0.7518 0.5907 -0.2930 +vn -0.1408 0.4974 0.8560 +vn -0.7111 0.3178 0.6272 +vn -0.6238 -0.0620 0.7791 +vn -0.1505 0.9447 0.2914 +vn -0.7596 0.6299 0.1617 +vn -0.9900 -0.1114 -0.0870 +vn -0.1303 0.9914 -0.0114 +vn -0.7676 0.6374 -0.0671 +vn 0.0101 0.4974 -0.8674 +vn -0.4789 -0.0620 -0.8757 +vn -0.5911 0.3178 -0.7414 +vn -0.0975 0.9445 -0.3136 +vn -0.7198 0.6300 -0.2914 +vn -0.7110 0.3177 0.6273 +vn -0.6239 -0.0620 0.7790 +vn -0.1507 0.9447 0.2914 +vn -0.1301 0.9914 -0.0114 +vn -0.0977 0.9445 -0.3136 +vn -0.7675 0.6375 -0.0671 +vn -0.1043 0.4982 0.8608 +vn -0.6883 0.3607 0.6294 +vn -0.6239 -0.0273 0.7810 +vn -0.0816 0.9510 0.2983 +vn -0.7156 0.6785 0.1663 +vn -0.9950 -0.0494 -0.0870 +vn -0.0580 0.9983 -0.0053 +vn -0.7228 0.6882 -0.0633 +vn 0.0467 0.4982 -0.8658 +vn -0.4789 -0.0273 -0.8775 +vn -0.5685 0.3607 -0.7394 +vn -0.0284 0.9509 -0.3082 +vn -0.6757 0.6784 -0.2884 +vn 0.5911 0.3178 0.7414 +vn -0.6164 0.4639 0.6363 +vn -0.6147 0.0610 0.7864 +vn 0.4789 -0.0620 0.8757 +vn 0.9899 -0.1116 0.0870 +vn 0.7198 0.6300 0.2914 +vn -0.5875 0.7891 0.1793 +vn -0.9900 0.1114 -0.0870 +vn 0.9900 -0.1114 0.0870 +vn 0.7676 0.6374 0.0671 +vn -0.5924 0.8040 -0.0519 +vn 0.7111 0.3178 -0.6272 +vn 0.6238 -0.0620 -0.7791 +vn -0.4690 0.0610 -0.8811 +vn -0.4963 0.4639 -0.7338 +vn 0.7596 0.6300 -0.1617 +vn -0.5475 0.7891 -0.2785 +vn -0.0574 0.4978 0.8654 +vn 0.4784 -0.0172 0.8780 +vn 0.5610 0.3729 0.7391 +vn 0.6623 0.6922 0.2869 +vn 0.0082 0.9518 0.3067 +vn 0.9957 -0.0311 0.0870 +vn 0.7092 0.7023 0.0618 +vn 0.0364 0.9993 0.0031 +vn 0.0937 0.4978 -0.8622 +vn 0.6810 0.3729 -0.6303 +vn 0.6237 -0.0172 -0.7814 +vn 0.0871 0.0000 -0.9962 +vn 0.0612 0.9518 -0.3006 +vn 0.7021 0.6920 -0.1678 +vn -0.0292 0.4982 0.8666 +vn 0.4791 -0.0439 0.8766 +vn 0.5798 0.3403 0.7403 +vn 0.6973 0.6556 0.2899 +vn 0.0616 0.9486 0.3105 +vn 0.9931 -0.0790 0.0870 +vn 0.7446 0.6643 0.0648 +vn 0.0925 0.9957 0.0084 +vn 0.1217 0.4982 -0.8585 +vn 0.6994 0.3403 -0.6286 +vn 0.6243 -0.0439 -0.7800 +vn 0.1146 0.9485 -0.2953 +vn 0.7369 0.6557 -0.1640 +vn -0.0101 0.4974 0.8674 +vn 0.7199 0.6300 0.2914 +vn 0.0977 0.9445 0.3136 +vn 0.1303 0.9914 0.0114 +vn 0.1408 0.4974 -0.8560 +vn 0.1505 0.9447 -0.2914 +vn 0.4783 -0.0172 0.8780 +vn 0.6622 0.6922 0.2869 +vn 0.6238 -0.0172 -0.7814 +vn 0.7020 0.6921 -0.1678 +vn -0.1400 0.4883 0.8614 +vn 0.4689 0.0610 0.8811 +vn 0.4965 0.4637 0.7338 +vn 0.5475 0.7891 0.2785 +vn -0.1507 0.9442 0.2930 +vn 0.9900 0.1114 0.0870 +vn 0.5925 0.8039 0.0519 +vn 0.0117 0.4883 -0.8726 +vn 0.6164 0.4639 -0.6363 +vn 0.6147 0.0610 -0.7864 +vn -0.0975 0.9441 -0.3151 +vn 0.5876 0.7891 -0.1793 +vn -0.4691 0.0610 -0.8810 +vn -0.4965 0.4637 -0.7338 +vn 0.4790 -0.0620 0.8756 +vn -0.4966 0.4637 -0.7338 +vn -0.7045 0.7070 -0.0618 +vn 0.7044 0.7071 0.0618 +vn 0.9962 0.0000 0.0870 +vn -0.6045 -0.5330 -0.5921 +vn 0.7548 -0.4607 -0.4669 +vn 0.8091 -0.5137 -0.2853 +vn -0.8513 -0.2926 -0.4356 +vn 0.6794 0.4787 0.5562 +vn 0.3839 0.6087 0.6943 +vn -0.7292 0.5187 0.4463 +vn -0.5018 0.6546 0.5653 +vn -0.9262 -0.2822 -0.2502 +vn 0.7838 -0.3283 -0.5272 +vn 0.3097 0.6756 0.6691 +vn -0.4288 0.6329 0.6447 +vn -0.7472 -0.5135 -0.4219 +vn -0.6621 -0.4605 -0.5913 +vn 0.6980 -0.5328 -0.4784 +vn 0.9141 -0.2926 -0.2808 +vn -0.7657 0.4787 0.4295 +vn -0.4986 0.6086 0.6172 +vn 0.6408 0.5186 0.5661 +vn 0.3959 0.6547 0.6439 +vn -0.6802 -0.3283 -0.6554 +vn 0.9555 -0.2821 -0.0862 +vn -0.4212 0.6757 0.6050 +vn 0.3105 0.6332 0.7089 +vn -0.0198 0.9780 -0.2075 +vn -0.1722 0.9594 -0.2236 +vn 0.1265 0.9884 -0.0847 +vn -0.0153 0.9527 -0.3037 +vn 0.2132 0.9613 -0.1747 +vn 0.3605 0.9244 0.1243 +vn 0.4048 0.9138 0.0328 +vn -0.0248 0.9917 0.1259 +vn 0.4482 0.8868 0.1129 +vn 0.0996 0.6702 -0.7354 +vn 0.3283 0.6486 0.6867 +vn 0.2445 0.7467 0.6186 +vn 0.0437 0.7171 -0.6956 +vn -0.2775 -0.6071 -0.7446 +vn -0.3035 -0.6842 -0.6632 +vn -0.0984 -0.7122 0.6951 +vn -0.0755 -0.6694 0.7391 +vn 0.4027 0.5785 0.7093 +vn 0.1919 0.6731 -0.7142 +vn -0.3319 -0.6902 -0.6431 +vn -0.0797 -0.6712 0.7370 +vn -0.7004 0.6803 -0.2160 +vn 0.7679 -0.6151 0.1785 +vn -0.7927 -0.6073 0.0519 +vn -0.7481 0.6064 -0.2693 +vn 0.6120 -0.7546 0.2365 +vn -0.6449 -0.7552 0.1175 +vn -0.7446 0.6024 0.2876 +vn 0.3855 0.5740 0.7224 +vn 0.7714 0.5030 -0.3899 +vn -0.3155 0.4810 -0.8180 +vn -0.3497 0.2346 -0.9070 +vn -0.4784 -0.0000 -0.8782 +vn 0.9344 0.0000 -0.3563 +vn 0.8702 0.2228 -0.4395 +vn -0.9323 -0.0413 0.3594 +vn -0.8895 -0.0000 0.4570 +vn 0.3501 0.0000 0.9367 +vn 0.4708 -0.0163 0.8821 +vn 0.7055 -0.0105 -0.7086 +vn 0.7008 0.0000 -0.7134 +vn 0.7348 0.0000 0.6783 +vn 0.6868 0.0708 0.7234 +vn 0.7055 0.0105 -0.7086 +vn 0.6868 -0.0708 0.7234 +vn -0.6929 -0.0000 -0.7210 +vn -0.7269 0.0367 -0.6857 +vn -0.7269 -0.0368 -0.6857 +vn -0.7122 -0.0000 0.7019 +vn -0.6904 0.1207 0.7133 +vn -0.6904 -0.1207 0.7133 +vn 0.5788 0.5809 0.5723 +vn 0.5757 0.5742 -0.5822 +vn -0.5787 0.5809 -0.5723 +vn -0.5759 0.5741 0.5820 +vn 0.7031 0.0000 -0.7111 +vn 0.7109 0.0000 0.7033 +vn -0.7109 -0.0000 -0.7033 +vn -0.2926 0.9112 0.2899 +vn -0.3105 0.8976 -0.3128 +vn 0.5789 0.5810 0.5722 +vn 0.5757 0.5741 -0.5822 +vn 0.3178 0.8964 0.3090 +vn -0.5787 0.5806 -0.5728 +vn 0.2849 0.9124 -0.2937 +vn -0.5759 0.5742 0.5820 +vn 0.7347 0.0000 0.6784 +vn -0.6931 -0.0000 -0.7208 +vn 0.7069 0.7071 0.0183 +vn 0.5788 0.5808 0.5724 +vn 0.5868 -0.5689 0.5762 +vn 0.6977 -0.7162 0.0168 +vn -0.0259 0.7072 -0.7066 +vn 0.5758 0.5741 -0.5821 +vn 0.5835 -0.5623 -0.5860 +vn -0.0240 -0.7186 -0.6951 +vn -0.7069 0.7071 -0.0183 +vn -0.5789 0.5808 -0.5723 +vn -0.5869 -0.5689 -0.5761 +vn -0.6977 -0.7162 -0.0168 +vn 0.0259 0.7073 0.7065 +vn -0.5757 0.5742 0.5822 +vn -0.5833 -0.5625 0.5860 +vn 0.0240 -0.7186 0.6951 +vn 0.0027 -1.0000 -0.0000 +vn -0.0015 -1.0000 0.0015 +vn 0.0000 -1.0000 -0.0023 +vn 0.0011 -1.0000 0.0008 +vn -0.0027 -1.0000 0.0000 +vn 0.0015 -1.0000 -0.0015 +vn 0.0000 -1.0000 0.0023 +vn -0.0011 -1.0000 -0.0008 +vn -0.6376 -0.0107 0.7703 +vn -0.6326 -0.0000 0.7745 +vn -0.7934 -0.0000 -0.6087 +vn -0.7508 0.0682 -0.6570 +vn -0.6376 0.0107 0.7703 +vn -0.7508 -0.0683 -0.6570 +vn 0.7566 0.0000 0.6539 +vn 0.7871 0.0362 0.6158 +vn 0.7871 -0.0362 0.6158 +vn 0.6444 0.0000 -0.7647 +vn 0.6222 0.1241 -0.7729 +vn 0.6222 -0.1242 -0.7729 +vn -0.4426 0.8966 -0.0153 +vn -0.4547 0.8724 0.1793 +vn -0.0008 1.0000 -0.0023 +vn -0.3155 0.8195 0.4785 +vn 0.1209 0.8231 0.5548 +vn 0.4017 0.8668 0.2953 +vn 0.4432 0.8926 0.0824 +vn 0.4524 0.8892 -0.0687 +vn 0.4181 0.8485 -0.3244 +vn 0.0965 0.8110 -0.5770 +vn -0.3109 0.8384 -0.4477 +vn -0.4300 0.8837 -0.1847 +vn -0.8452 0.3597 0.3953 +vn -0.8767 0.2880 0.3853 +vn -0.9641 0.2643 -0.0252 +vn -0.9435 0.3307 -0.0214 +vn -0.4566 0.4067 0.7913 +vn -0.4883 0.3422 0.8028 +vn 0.1900 0.4124 0.8910 +vn 0.2110 0.3513 0.9122 +vn 0.7010 0.3693 0.6102 +vn 0.7366 0.2976 0.6073 +vn 0.9169 0.3330 0.2198 +vn 0.9392 0.2659 0.2174 +vn 0.9223 0.3403 -0.1831 +vn 0.9466 0.2716 -0.1739 +vn 0.6946 0.3845 -0.6080 +vn 0.7320 0.3135 -0.6049 +vn 0.1446 0.4173 -0.8972 +vn 0.1526 0.3586 -0.9209 +vn -0.4841 0.3941 -0.7813 +vn -0.5207 0.3250 -0.7895 +vn -0.8400 0.3468 -0.4173 +vn -0.8684 0.2769 -0.4113 +vn -0.8938 -0.1408 0.4257 +vn -0.9914 -0.1289 -0.0214 +vn -0.4862 -0.1589 0.8593 +vn 0.1995 -0.1608 0.9666 +vn 0.7412 -0.1446 0.6555 +vn 0.9637 -0.1299 0.2335 +vn 0.9714 -0.1329 -0.1968 +vn 0.7379 -0.1507 -0.6578 +vn 0.1553 -0.1625 -0.9744 +vn -0.5125 -0.1543 -0.8447 +vn -0.8853 -0.1356 -0.4448 +vn -0.8320 -0.4234 0.3586 +vn -0.9210 -0.3887 -0.0244 +vn -0.4574 -0.4944 0.7392 +vn 0.1995 -0.5049 0.8398 +vn 0.6989 -0.4361 0.5669 +vn 0.8969 -0.3914 0.2060 +vn 0.9022 -0.3996 -0.1625 +vn 0.6903 -0.4583 -0.5599 +vn 0.1415 -0.5142 -0.8459 +vn -0.4917 -0.4731 -0.7310 +vn -0.8273 -0.4074 -0.3868 +vn -0.5952 0.5356 -0.5990 +vn -0.5926 0.5265 0.6096 +vn 0.5952 0.5356 0.5991 +vn 0.5925 0.5264 -0.6097 +vn 0.7107 0.0000 -0.7035 +vn 0.7183 0.0000 0.6958 +vn 0.6997 0.1206 0.7042 +vn 0.6913 0.1282 -0.7111 +vn -0.7183 -0.0000 -0.6958 +vn -0.6997 0.1206 -0.7042 +vn -0.7107 -0.0000 0.7035 +vn -0.6913 0.1282 0.7111 +vn -0.5949 0.5356 -0.5993 +vn -0.5925 0.5266 0.6096 +vn 0.5950 0.5358 0.5991 +vn 0.5925 0.5266 -0.6096 +vn 0.7108 0.0000 -0.7034 +vn 0.7182 0.0000 0.6958 +vn 0.6995 0.1205 0.7044 +vn -0.6995 0.1205 -0.7044 +vn -0.7107 -0.0000 0.7034 +vn 0.7234 0.0000 0.6904 +vn 0.7160 0.0000 0.6981 +vn 0.6857 0.0025 0.7279 +vn 0.6898 0.0019 0.7240 +vn 0.6994 -0.0002 0.7147 +vn 0.7023 0.0000 0.7119 +vn 0.7084 0.0000 0.7058 +vn 0.7166 0.0000 0.6975 +vn 0.7157 0.0271 0.6979 +vn 0.7084 0.0122 0.7057 +vn 0.7232 0.0332 0.6898 +vn 0.7311 0.0656 0.6791 +vn 0.7335 0.0542 0.6776 +vn 0.6915 0.0643 0.7195 +vn 0.7015 0.1234 0.7019 +vn 0.7119 0.1116 0.6934 +vn 0.7000 0.0574 0.7118 +vn 0.7076 0.0500 0.7049 +vn 0.7226 0.0967 0.6845 +vn 0.7288 0.0763 0.6804 +vn 0.7157 0.0391 0.6974 +vn 0.7314 0.0261 0.6814 +vn 0.7500 0.0544 0.6592 +vn 0.7515 0.0277 0.6592 +vn 0.6888 0.0061 0.7249 +vn 0.6909 0.0772 0.7188 +vn 0.7390 0.0650 0.6705 +vn 0.7434 0.0744 0.6647 +vn 0.7147 0.1205 0.6890 +vn 0.6987 0.1308 0.7033 +vn 0.7104 0.1282 0.6921 +vn 0.7380 0.0938 0.6682 +vn 0.7239 0.1091 0.6812 +vn 0.7084 0.0019 0.7058 +vn 0.7283 0.0057 0.6852 +vn 0.6817 0.0082 0.7316 +vn 0.7459 0.0078 0.6660 +vn 0.3522 -0.5390 -0.7651 +vn 0.9098 -0.4135 -0.0366 +vn 0.6909 -0.6014 0.4013 +vn -0.1072 -0.9197 -0.3777 +vn -0.0796 0.3017 -0.9501 +vn -0.7758 0.1783 -0.6052 +vn 0.2146 0.9219 -0.3225 +vn -0.2037 0.9705 0.1289 +vn 0.8262 0.4990 0.2617 +vn 0.6217 0.4208 0.6606 +vn -0.9376 0.2333 -0.2579 +vn -0.0053 -0.0067 -1.0000 +vn -0.0240 0.0578 -0.9980 +vn -0.9300 0.2485 -0.2708 +vn -0.5910 0.1646 0.7897 +vn -0.6324 0.1389 0.7621 +vn 0.6093 -0.1348 0.7814 +vn 0.6033 -0.1670 0.7799 +vn 0.9433 -0.2321 -0.2373 +vn 0.9410 -0.2129 -0.2632 +vn -0.3342 0.7081 0.6220 +vn 0.6496 0.4493 0.6133 +vn 0.8970 0.3906 -0.2068 +vn -0.5706 0.7909 -0.2213 +vn 0.1400 0.5421 -0.8286 +vn -0.0164 -0.0521 -0.9985 +vn -0.9368 0.2178 -0.2739 +vn -0.5951 0.1923 0.7803 +vn 0.6266 -0.1124 0.7712 +vn 0.9346 -0.2476 -0.2556 +vn -0.9986 -0.0462 -0.0259 +vn -0.2396 -0.9709 -0.0061 +vn -0.2869 -0.9579 -0.0076 +vn -0.9987 -0.0443 -0.0259 +vn -0.3517 0.9361 -0.0092 +vn -0.3941 0.9190 -0.0099 +vn 0.7982 0.6020 0.0206 +vn 0.7805 0.6248 0.0206 +vn 0.8549 -0.5184 0.0221 +vn 0.8423 -0.5386 0.0221 +vn -0.9378 0.2325 -0.2578 +vn -0.0053 -0.0076 -1.0000 +vn -0.0191 0.0543 -0.9983 +vn -0.9299 0.2472 -0.2724 +vn -0.5911 0.1637 0.7898 +vn -0.6300 0.1363 0.7645 +vn 0.6090 -0.1358 0.7814 +vn 0.6046 -0.1693 0.7783 +vn 0.9429 -0.2329 -0.2380 +vn 0.9409 -0.2143 -0.2624 +vn -0.3342 0.7080 0.6221 +vn 0.6266 -0.1123 0.7712 +vn 0.7806 0.6247 0.0206 +vn 0.8547 -0.5186 0.0221 +vn -0.7272 -0.0000 0.6865 +vn -0.7085 -0.0000 -0.7057 +vn -0.7135 -0.0098 -0.7006 +vn -0.6791 0.0751 0.7302 +vn -0.7135 0.0099 -0.7006 +vn -0.6791 -0.0750 0.7302 +vn 0.6850 0.0000 -0.7286 +vn 0.7194 0.0390 -0.6935 +vn 0.7194 -0.0389 -0.6935 +vn 0.7197 0.0000 0.6943 +vn 0.6986 0.1135 0.7065 +vn 0.6986 -0.1135 0.7065 +vn 0.8423 -0.5385 0.0221 +vn 0.7984 0.6018 0.0206 +vn -0.3940 0.9190 -0.0099 +vn 0.8548 -0.5185 0.0221 +vn 0.8548 -0.5186 0.0221 +vn -0.9987 -0.0442 -0.0259 +vn 0.9969 0.0000 -0.0786 +vn 0.9905 0.1147 -0.0763 +vn -0.0626 0.1158 -0.9913 +vn -0.0950 -0.0000 -0.9955 +vn -0.2796 -0.1066 -0.9542 +vn 0.9918 -0.1139 0.0572 +vn 0.0675 0.0125 0.9976 +vn 0.0858 0.1349 0.9871 +vn -0.2052 -0.1025 0.9733 +vn -0.9975 0.0058 0.0710 +vn -0.9944 0.0650 0.0839 +vn -0.9715 -0.0552 0.2304 +vn -0.6855 -0.0000 -0.7280 +vn -0.7117 0.0026 -0.7025 +vn 0.7023 -0.0028 -0.7118 +vn 0.7627 0.0000 -0.6468 +vn -0.9997 0.0036 -0.0259 +vn 0.4753 0.8514 0.2220 +vn 0.0696 0.8741 0.4806 +vn 0.6676 0.4555 -0.5890 +vn -0.4571 0.6835 -0.5692 +vn -0.6398 0.7685 0.0107 +vn 0.7779 0.6269 0.0443 +vn -0.6398 0.7685 0.0122 +vn -0.4795 0.6298 0.6111 +vn -0.6954 0.7186 0.0092 +vn 0.6698 0.4569 0.5854 +vn 0.7990 0.3105 -0.5150 +vn -0.2519 0.8301 -0.4974 +vn -0.3190 0.7414 0.5904 +vn 0.7329 0.2053 0.6486 +vn 0.9997 -0.0036 0.0259 +vn 0.9997 -0.0037 0.0259 +vn -0.6548 0.7558 -0.0076 +vn 0.7651 0.6433 0.0275 +vn 0.7776 0.6272 0.0435 +vn 0.7660 0.6422 0.0282 +vn 0.8665 0.4984 0.0267 +vn 0.7381 0.6733 0.0427 +vn -0.6555 0.7551 -0.0076 +vn -0.6893 0.7243 -0.0153 +vn 0.8177 0.3500 -0.4570 +vn -0.2476 0.8669 -0.4326 +vn -0.2987 0.6636 0.6859 +vn 0.7069 0.1493 0.6914 +vn 0.4515 0.8535 -0.2602 +vn 0.5074 0.7968 0.3281 +vn 0.2501 0.9682 -0.0061 +vn 0.0654 0.9367 -0.3441 +vn 0.5489 0.8311 -0.0893 +vn -0.1656 0.9075 0.3861 +vn 0.5310 0.7600 0.3746 +vn 0.2636 0.9637 0.0435 +vn -0.0326 0.9558 -0.2922 +vn 0.1663 0.9031 0.3960 +vn 0.3174 0.9472 0.0450 +vn 0.7101 -0.0026 0.7041 +vn -0.7040 0.0028 0.7101 +vn -0.6740 -0.0000 0.7387 +vn 0.7631 0.0000 0.6462 +vn 0.4643 0.8641 -0.1946 +vn -0.4633 0.6740 0.5753 +vn 0.6767 0.4566 0.5775 +vn 0.0267 0.8740 -0.4853 +vn 0.7777 0.6287 -0.0031 +vn -0.6401 0.7670 -0.0450 +vn -0.6401 0.7669 -0.0465 +vn -0.6958 0.7169 -0.0435 +vn -0.4748 0.6371 -0.6072 +vn 0.6614 0.4545 -0.5967 +vn -0.3107 0.7496 -0.5844 +vn -0.2569 0.8267 0.5005 +vn 0.8059 0.3091 0.5050 +vn 0.7241 0.2003 -0.6600 +vn 0.7774 0.6290 -0.0015 +vn 0.7856 0.6186 0.0130 +vn -0.6184 0.7855 -0.0259 +vn 0.7377 0.6751 -0.0061 +vn 0.8560 0.5167 0.0175 +vn 0.7864 0.6176 0.0130 +vn -0.6191 0.7849 -0.0259 +vn -0.7177 0.6960 -0.0214 +vn -0.2913 0.6731 -0.6798 +vn -0.2523 0.8636 0.4364 +vn 0.8233 0.3467 0.4494 +vn 0.6989 0.1445 -0.7005 +vn 0.4549 0.8433 0.2861 +vn 0.5026 0.8103 -0.3014 +vn 0.2321 0.9725 0.0175 +vn 0.0992 0.9370 0.3349 +vn 0.5483 0.8273 0.1221 +vn -0.2085 0.9002 -0.3822 +vn 0.5234 0.7768 -0.3502 +vn 0.2615 0.9647 -0.0298 +vn 0.0050 0.9600 0.2800 +vn 0.1246 0.9101 -0.3953 +vn 0.3153 0.9486 -0.0282 +vn -0.8169 -0.0000 0.5768 +vn -0.6258 -0.3861 0.6777 +vn 0.0195 0.0000 0.9998 +vn 0.2014 -0.6946 0.6906 +vn 0.5961 -0.5506 0.5844 +vn 0.8169 0.0000 0.5768 +vn 0.5961 0.5506 0.5844 +vn 0.0128 0.8059 0.5918 +vn -0.5834 0.5641 0.5844 +vn -0.9336 -0.3574 -0.0244 +vn -0.9998 -0.0000 -0.0175 +vn 0.7233 -0.6904 0.0122 +vn 0.4091 -0.9123 0.0198 +vn 0.9998 0.0000 0.0175 +vn 0.7233 0.6904 0.0122 +vn -0.7233 0.6904 -0.0122 +vn -0.6408 -0.3639 -0.6760 +vn -0.8169 -0.0000 -0.5768 +vn 0.5834 -0.5641 -0.5844 +vn 0.1585 -0.7154 -0.6805 +vn 0.8169 0.0000 -0.5768 +vn 0.5834 0.5641 -0.5844 +vn -0.0128 0.8059 -0.5918 +vn -0.5961 0.5506 -0.5844 +vn -0.0195 -0.0000 -0.9998 +vn -0.7818 -0.5180 0.3471 +vn -0.5596 -0.8286 0.0130 +vn 0.0134 -0.8211 0.5707 +vn -0.0069 -0.9903 -0.1389 +vn 0.5627 -0.8261 0.0298 +vn 0.7819 -0.5022 0.3693 +vn 0.6193 -0.1894 0.7620 +vn 0.0208 -0.0265 0.9994 +vn -0.6067 -0.1945 0.7707 +vn -0.6661 0.0305 -0.7452 +vn -0.8609 0.3989 -0.3159 +vn -0.0139 -0.1853 -0.9826 +vn 0.6618 0.0254 -0.7492 +vn 0.8571 0.4195 -0.2991 +vn 0.6506 0.7470 0.1366 +vn 0.0113 0.9122 0.4097 +vn -0.6614 0.7353 0.1480 +vn 0.7166 0.0000 -0.6975 +vn 0.6728 0.0000 0.7399 +vn 0.7442 0.0499 0.6660 +vn 0.6789 0.1998 -0.7065 +vn -0.6653 0.0996 -0.7399 +vn -0.7553 -0.0000 -0.6554 +vn -0.7063 -0.0584 0.7055 +vn -0.6993 -0.0000 0.7149 +vn 0.7442 -0.0499 0.6660 +vn 0.6789 -0.1999 -0.7065 +vn -0.6653 -0.0996 -0.7399 +vn -0.7063 0.0584 0.7055 +vn 0.7130 0.0000 -0.7011 +vn 0.6819 0.0000 0.7315 +vn 0.7372 0.0373 0.6746 +vn 0.6867 0.1546 -0.7103 +vn -0.6761 0.0753 -0.7330 +vn -0.7451 -0.0000 -0.6670 +vn -0.7055 -0.0449 0.7072 +vn -0.7000 -0.0000 0.7141 +vn 0.7372 -0.0373 0.6746 +vn 0.6867 -0.1545 -0.7103 +vn -0.6761 -0.0752 -0.7330 +vn -0.7055 0.0449 0.7072 +vn 0.7240 0.0000 0.6898 +vn 0.6883 0.1882 0.7005 +vn 0.7366 0.0524 -0.6743 +vn 0.6648 0.0000 -0.7470 +vn -0.7486 -0.0000 0.6630 +vn -0.6573 0.1050 0.7462 +vn -0.7070 -0.0000 -0.7072 +vn -0.7139 -0.0549 -0.6981 +vn 0.7366 -0.0524 -0.6743 +vn 0.6883 -0.1883 0.7005 +vn -0.6573 -0.1050 0.7462 +vn -0.7139 0.0549 -0.6981 +vn -0.7144 -0.0000 0.6997 +vn -0.7018 0.0040 0.7124 +vn -0.7122 -0.0038 -0.7019 +vn -0.6630 -0.0000 -0.7486 +vn 0.0370 0.0051 0.9993 +vn 0.0368 0.0000 0.9993 +vn 0.1970 0.8805 -0.4311 +vn 0.4866 0.8721 0.0511 +vn -0.5691 0.5103 -0.6448 +vn -0.5652 0.6469 0.5119 +vn 0.0637 0.7472 0.6615 +vn 0.0055 0.6457 -0.7636 +vn 0.0658 0.7470 0.6615 +vn 0.6125 0.5972 0.5179 +vn 0.0610 0.7200 0.6913 +vn 0.5926 0.4910 -0.6386 +vn -0.5277 0.2999 -0.7947 +vn -0.5278 0.8091 0.2586 +vn 0.5964 0.7372 0.3174 +vn 0.6129 0.2264 -0.7570 +vn -0.0370 -0.0051 -0.9993 +vn -0.0369 -0.0052 -0.9993 +vn -0.0368 -0.0000 -0.9993 +vn 0.0370 0.7675 0.6400 +vn -0.0173 0.6369 -0.7708 +vn 0.0040 0.6464 -0.7630 +vn -0.0174 0.6352 -0.7721 +vn -0.0256 0.5730 -0.8192 +vn 0.0086 0.6883 -0.7254 +vn 0.0369 0.0052 0.9993 +vn 0.0371 0.7667 0.6409 +vn 0.0324 0.6979 0.7155 +vn -0.4877 0.3418 -0.8033 +vn -0.4669 0.8470 0.2540 +vn 0.6844 0.6729 0.2808 +vn 0.6434 0.1783 -0.7444 +vn -0.3576 0.8403 -0.4074 +vn 0.3627 0.8148 -0.4524 +vn -0.0227 0.9859 -0.1656 +vn -0.3447 0.9387 -0.0099 +vn -0.1041 0.8438 -0.5265 +vn 0.3559 0.9189 0.1701 +vn 0.4420 0.7767 -0.4487 +vn 0.0456 0.9798 -0.1945 +vn -0.2251 0.9725 0.0603 +vn 0.3389 0.9403 -0.0298 +vn 0.0446 0.9713 -0.2334 +vn 0.7046 -0.0040 -0.7096 +vn 0.7093 0.0038 0.7049 +vn 0.7206 0.0000 0.6934 +vn 0.6479 0.0000 -0.7617 +vn 0.0364 0.0051 0.9993 +vn -0.2314 0.8668 -0.4417 +vn 0.5686 0.6552 0.4974 +vn 0.5669 0.5062 -0.6499 +vn -0.4793 0.8774 0.0198 +vn -0.0635 0.6433 -0.7630 +vn -0.0130 0.7493 0.6621 +vn -0.0151 0.7492 0.6621 +vn -0.0124 0.7219 0.6919 +vn -0.6067 0.5916 0.5309 +vn -0.5964 0.4954 -0.6316 +vn -0.5948 0.7318 0.3327 +vn 0.5299 0.8110 0.2480 +vn 0.5228 0.2972 -0.7990 +vn -0.6162 0.2332 -0.7523 +vn -0.0366 -0.0051 -0.9993 +vn -0.0367 -0.0052 -0.9993 +vn -0.0618 0.6437 -0.7628 +vn -0.0392 0.6622 -0.7483 +vn 0.0119 0.7383 0.6743 +vn -0.0591 0.6863 -0.7249 +vn -0.0352 0.5516 -0.8334 +vn -0.0392 0.6609 -0.7494 +vn 0.0367 0.0052 0.9993 +vn 0.0119 0.7376 0.6752 +vn 0.0190 0.7262 0.6873 +vn -0.6832 0.6682 0.2945 +vn 0.4686 0.8490 0.2441 +vn 0.4822 0.3392 -0.8077 +vn -0.6481 0.1849 -0.7388 +vn 0.3254 0.8529 -0.4082 +vn -0.3965 0.7992 -0.4517 +vn 0.0114 0.9837 -0.1793 +vn 0.3544 0.9349 0.0183 +vn 0.0637 0.8450 -0.5310 +vn -0.3515 0.9262 0.1366 +vn -0.4719 0.7568 -0.4523 +vn -0.0595 0.9786 -0.1968 +vn 0.2373 0.9673 0.0900 +vn -0.3380 0.9391 -0.0618 +vn -0.0622 0.9698 -0.2357 +vn -0.7219 -0.0000 -0.6920 +vn 0.7481 0.0000 -0.6636 +vn 0.6577 0.0992 -0.7467 +vn -0.6897 0.1871 -0.6995 +vn -0.7360 0.0580 0.6744 +vn -0.6648 -0.0000 0.7470 +vn 0.7123 -0.0540 0.6997 +vn 0.7086 0.0000 0.7056 +vn 0.6577 -0.0992 -0.7467 +vn -0.6897 -0.1871 -0.6995 +vn -0.7360 -0.0580 0.6744 +vn 0.7123 0.0540 0.6997 +vn 0.7145 0.0000 -0.6996 +vn 0.6807 0.1988 -0.7050 +vn -0.6659 0.0942 -0.7401 +vn 0.6733 0.0000 0.7394 +vn 0.7439 0.0552 0.6661 +vn -0.7010 -0.0000 0.7132 +vn -0.7046 -0.0575 0.7073 +vn -0.6659 -0.0942 -0.7401 +vn 0.6807 -0.1988 -0.7050 +vn 0.7439 -0.0552 0.6661 +vn -0.7046 0.0575 0.7073 +vn -0.7191 -0.0000 -0.6949 +vn 0.7378 0.0000 -0.6751 +vn 0.6685 0.0750 -0.7399 +vn -0.6966 0.1446 -0.7028 +vn -0.7292 0.0437 0.6829 +vn -0.6741 -0.0000 0.7387 +vn 0.7118 -0.0415 0.7011 +vn 0.7092 0.0000 0.7051 +vn 0.6685 -0.0750 -0.7399 +vn -0.6966 -0.1446 -0.7028 +vn -0.7292 -0.0437 0.6829 +vn 0.7118 0.0415 0.7011 +# 1436 vertex normals + +vt 0.5543 0.3819 0.0000 +vt 0.5766 0.3819 0.0000 +vt 0.5699 0.3290 0.0000 +vt 0.5544 0.3281 0.0000 +vt 0.5766 0.4508 0.0000 +vt 0.5543 0.4508 0.0000 +vt 0.5668 0.5107 0.0000 +vt 0.5544 0.5107 0.0000 +vt 0.5323 0.3819 0.0000 +vt 0.5323 0.3262 0.0000 +vt 0.5323 0.4508 0.0000 +vt 0.5322 0.5107 0.0000 +vt 0.5099 0.3818 0.0000 +vt 0.5098 0.3244 0.0000 +vt 0.5099 0.4508 0.0000 +vt 0.5097 0.5109 0.0000 +vt 0.4869 0.3816 0.0000 +vt 0.4870 0.3221 0.0000 +vt 0.4870 0.4509 0.0000 +vt 0.4872 0.5110 0.0000 +vt 0.9115 0.1697 0.0000 +vt 0.9096 0.0208 0.0000 +vt 0.9278 0.0207 0.0000 +vt 0.9249 0.1696 0.0000 +vt 0.9657 0.1761 0.0000 +vt 0.9500 0.1783 0.0000 +vt 0.9522 0.0253 0.0000 +vt 0.9711 0.0226 0.0000 +vt 0.9317 0.3184 0.0000 +vt 0.9092 0.3185 0.0000 +vt 0.9871 0.3257 0.0000 +vt 0.9639 0.3290 0.0000 +vt 0.3011 0.1842 0.0000 +vt 0.3011 0.1683 0.0000 +vt 0.2824 0.1683 0.0000 +vt 0.2824 0.1842 0.0000 +vt 0.2731 0.1015 0.0000 +vt 0.2757 0.0096 0.0000 +vt 0.2570 0.0096 0.0000 +vt 0.2619 0.1015 0.0000 +vt 0.2914 0.0825 0.0000 +vt 0.2817 0.0825 0.0000 +vt 0.2860 0.0077 0.0000 +vt 0.3004 0.0077 0.0000 +vt 0.2570 0.1933 0.0000 +vt 0.2757 0.1933 0.0000 +vt 0.3004 0.1573 0.0000 +vt 0.2860 0.1573 0.0000 +vt 0.2831 0.5415 0.0000 +vt 0.2876 0.7272 0.0000 +vt 0.1570 0.7301 0.0000 +vt 0.1588 0.5391 0.0000 +vt 0.1600 0.5278 0.0000 +vt 0.2845 0.5302 0.0000 +vt 0.5593 0.7492 0.0000 +vt 0.5495 0.7564 0.0000 +vt 0.5310 0.5442 0.0000 +vt 0.5411 0.5368 0.0000 +vt 0.0350 0.5359 0.0000 +vt 0.0236 0.7419 0.0000 +vt 0.0133 0.7352 0.0000 +vt 0.0247 0.5291 0.0000 +vt 0.3718 0.4361 0.0000 +vt 0.4116 0.4372 0.0000 +vt 0.4148 0.5077 0.0000 +vt 0.3731 0.5041 0.0000 +vt 0.3312 0.5052 0.0000 +vt 0.3320 0.4348 0.0000 +vt 0.4175 0.7369 0.0000 +vt 0.4073 0.5435 0.0000 +vt 0.4090 0.5322 0.0000 +vt 0.5335 0.5329 0.0000 +vt 0.0354 0.5246 0.0000 +vt 0.2925 0.4331 0.0000 +vt 0.2885 0.5097 0.0000 +vt 0.4511 0.4380 0.0000 +vt 0.4572 0.5147 0.0000 +vt 0.4798 0.4212 0.0000 +vt 0.3807 0.4212 0.0000 +vt 0.3807 0.3221 0.0000 +vt 0.4798 0.3221 0.0000 +vt 0.2850 0.3118 0.0000 +vt 0.2850 0.3380 0.0000 +vt 0.2499 0.3303 0.0000 +vt 0.2499 0.3066 0.0000 +vt 0.3086 0.4106 0.0000 +vt 0.3086 0.3690 0.0000 +vt 0.2423 0.3710 0.0000 +vt 0.2423 0.4086 0.0000 +vt 0.3196 0.3267 0.0000 +vt 0.3196 0.3576 0.0000 +vt 0.3742 0.3652 0.0000 +vt 0.3742 0.4144 0.0000 +vt 0.4938 0.7770 0.0000 +vt 0.4938 0.9928 0.0000 +vt 0.5823 0.9148 0.0000 +vt 0.5823 0.7770 0.0000 +vt 0.0099 0.8916 0.0000 +vt 0.2078 0.8916 0.0000 +vt 0.2078 0.8042 0.0000 +vt 0.0099 0.8042 0.0000 +vt 0.1904 0.9949 0.0000 +vt 0.0053 0.9949 0.0000 +vt 0.0053 0.9131 0.0000 +vt 0.1904 0.9131 0.0000 +vt 0.4053 0.9148 0.0000 +vt 0.4053 0.7770 0.0000 +vt 0.2678 0.8611 0.0000 +vt 0.2678 0.7781 0.0000 +vt 0.3211 0.7781 0.0000 +vt 0.3211 0.9081 0.0000 +vt 0.8981 0.4255 0.0000 +vt 0.8858 0.4345 0.0000 +vt 0.8856 0.3969 0.0000 +vt 0.8979 0.3976 0.0000 +vt 0.9296 0.3584 0.0000 +vt 0.9296 0.3243 0.0000 +vt 0.9534 0.3243 0.0000 +vt 0.9534 0.3584 0.0000 +vt 0.9376 0.5171 0.0000 +vt 0.9376 0.4718 0.0000 +vt 0.9427 0.4718 0.0000 +vt 0.9427 0.5171 0.0000 +vt 0.9079 0.3584 0.0000 +vt 0.9079 0.3243 0.0000 +vt 0.9341 0.3999 0.0000 +vt 0.9546 0.4002 0.0000 +vt 0.9546 0.4032 0.0000 +vt 0.9341 0.4029 0.0000 +vt 0.9308 0.3930 0.0000 +vt 0.9175 0.3916 0.0000 +vt 0.9308 0.3847 0.0000 +vt 0.8856 0.4425 0.0000 +vt 0.8991 0.4326 0.0000 +vt 0.9062 0.4354 0.0000 +vt 0.8856 0.4497 0.0000 +vt 0.8535 0.3847 0.0000 +vt 0.8668 0.3922 0.0000 +vt 0.8535 0.3930 0.0000 +vt 0.8922 0.3818 0.0000 +vt 0.8922 0.3901 0.0000 +vt 0.8734 0.4256 0.0000 +vt 0.8733 0.3979 0.0000 +vt 0.9376 0.5625 0.0000 +vt 0.9427 0.5625 0.0000 +vt 0.9137 0.3997 0.0000 +vt 0.9136 0.4026 0.0000 +vt 0.8720 0.4326 0.0000 +vt 0.8649 0.4354 0.0000 +vt 0.9497 0.4833 0.0000 +vt 0.9497 0.4152 0.0000 +vt 0.9542 0.4152 0.0000 +vt 0.9542 0.4833 0.0000 +vt 0.9497 0.5204 0.0000 +vt 0.9542 0.5204 0.0000 +vt 0.9497 0.5575 0.0000 +vt 0.9542 0.5575 0.0000 +vt 0.9542 0.6250 0.0000 +vt 0.9497 0.6250 0.0000 +vt 0.8866 0.3751 0.0000 +vt 0.8570 0.3757 0.0000 +vt 0.8570 0.3729 0.0000 +vt 0.8866 0.3723 0.0000 +vt 0.9161 0.3745 0.0000 +vt 0.9161 0.3717 0.0000 +vt 0.8649 0.4026 0.0000 +vt 0.8720 0.4022 0.0000 +vt 0.9427 0.6217 0.0000 +vt 0.9376 0.6217 0.0000 +vt 0.9376 0.4126 0.0000 +vt 0.9427 0.4126 0.0000 +vt 0.8991 0.4019 0.0000 +vt 0.9062 0.4026 0.0000 +vt 0.9160 0.3675 0.0000 +vt 0.9315 0.3672 0.0000 +vt 0.9316 0.3714 0.0000 +vt 0.8865 0.3681 0.0000 +vt 0.8569 0.3687 0.0000 +vt 0.8414 0.3690 0.0000 +vt 0.8415 0.3732 0.0000 +vt 0.9341 0.3967 0.0000 +vt 0.9546 0.3970 0.0000 +vt 0.9137 0.3964 0.0000 +vt 0.9392 0.3712 0.0000 +vt 0.9393 0.3751 0.0000 +vt 0.9317 0.3752 0.0000 +vt 0.9391 0.3670 0.0000 +vt 0.9374 0.3847 0.0000 +vt 0.9374 0.3930 0.0000 +vt 0.9102 0.3996 0.0000 +vt 0.9102 0.3963 0.0000 +vt 0.9102 0.4026 0.0000 +vt 0.9581 0.4003 0.0000 +vt 0.9580 0.4033 0.0000 +vt 0.9581 0.3970 0.0000 +vt 0.8469 0.3930 0.0000 +vt 0.8469 0.3847 0.0000 +vt 0.8339 0.3733 0.0000 +vt 0.8338 0.3691 0.0000 +vt 0.8339 0.3771 0.0000 +vt 0.8416 0.3770 0.0000 +vt 0.6537 0.7500 0.0000 +vt 0.5717 0.7500 0.0000 +vt 0.5717 0.5730 0.0000 +vt 0.6537 0.5730 0.0000 +vt 0.6192 0.8707 0.0000 +vt 0.7028 0.8707 0.0000 +vt 0.6942 0.7769 0.0000 +vt 0.6278 0.7769 0.0000 +vt 0.5717 0.7509 0.0000 +vt 0.6192 0.8702 0.0000 +vt 0.6213 0.7769 0.0000 +vt 0.6111 0.8702 0.0000 +vt 0.7007 0.7769 0.0000 +vt 0.7028 0.8702 0.0000 +vt 0.7110 0.8702 0.0000 +vt 0.5998 0.7509 0.0000 +vt 0.5998 0.5730 0.0000 +vt 0.7566 0.8777 0.0000 +vt 0.7430 0.8777 0.0000 +vt 0.7455 0.8046 0.0000 +vt 0.7653 0.8046 0.0000 +vt 0.7197 0.8767 0.0000 +vt 0.7332 0.8767 0.0000 +vt 0.7265 0.8006 0.0000 +vt 0.7088 0.8006 0.0000 +vt 0.7452 0.9590 0.0000 +vt 0.7656 0.9590 0.0000 +vt 0.7232 0.9613 0.0000 +vt 0.7414 0.9613 0.0000 +vt 0.8245 0.8198 0.0000 +vt 0.8176 0.8887 0.0000 +vt 0.8307 0.8887 0.0000 +vt 0.8434 0.8198 0.0000 +vt 0.7950 0.8927 0.0000 +vt 0.7777 0.8923 0.0000 +vt 0.7895 0.8025 0.0000 +vt 0.8121 0.8029 0.0000 +vt 0.8080 0.9580 0.0000 +vt 0.8276 0.9653 0.0000 +vt 0.7767 0.9897 0.0000 +vt 0.8000 0.9901 0.0000 +vt 0.6832 0.7109 0.0000 +vt 0.6832 0.6133 0.0000 +vt 0.8256 0.6133 0.0000 +vt 0.8256 0.7109 0.0000 +vt 0.8172 0.6055 0.0000 +vt 0.6847 0.6055 0.0000 +vt 0.6847 0.5792 0.0000 +vt 0.8172 0.5792 0.0000 +vt 0.6843 0.7193 0.0000 +vt 0.6793 0.7379 0.0000 +vt 0.8273 0.7329 0.0000 +vt 0.8323 0.7143 0.0000 +vt 0.7770 0.1495 0.0000 +vt 0.7887 0.0175 0.0000 +vt 0.7500 0.0175 0.0000 +vt 0.7552 0.1495 0.0000 +vt 0.7500 0.2815 0.0000 +vt 0.7887 0.2815 0.0000 +vt 0.6720 0.1497 0.0000 +vt 0.6501 0.1497 0.0000 +vt 0.6432 0.0228 0.0000 +vt 0.6820 0.0228 0.0000 +vt 0.6820 0.2766 0.0000 +vt 0.6432 0.3036 0.0000 +vt 0.7224 0.1415 0.0000 +vt 0.7006 0.1415 0.0000 +vt 0.6960 0.0189 0.0000 +vt 0.7348 0.0189 0.0000 +vt 0.6954 0.2903 0.0000 +vt 0.7341 0.2903 0.0000 +vt 0.2296 0.2265 0.0000 +vt 0.2377 0.3163 0.0000 +vt 0.2165 0.3163 0.0000 +vt 0.2085 0.2265 0.0000 +vt 0.1711 0.3177 0.0000 +vt 0.1936 0.3147 0.0000 +vt 0.1836 0.2466 0.0000 +vt 0.1646 0.2356 0.0000 +vt 0.2296 0.4035 0.0000 +vt 0.2085 0.4035 0.0000 +vt 0.1915 0.3650 0.0000 +vt 0.1772 0.3973 0.0000 +vt 0.3399 0.3448 0.0000 +vt 0.3399 0.2955 0.0000 +vt 0.3315 0.2955 0.0000 +vt 0.3315 0.3447 0.0000 +vt 0.3349 0.3516 0.0000 +vt 0.3638 0.3512 0.0000 +vt 0.3684 0.3444 0.0000 +vt 0.3684 0.2958 0.0000 +vt 0.3638 0.2890 0.0000 +vt 0.3349 0.2886 0.0000 +vt 0.3687 0.3532 0.0000 +vt 0.3730 0.3452 0.0000 +vt 0.3730 0.2950 0.0000 +vt 0.3687 0.2871 0.0000 +vt 0.3420 0.2223 0.0000 +vt 0.3325 0.2223 0.0000 +vt 0.3326 0.2774 0.0000 +vt 0.3421 0.2774 0.0000 +vt 0.3741 0.2774 0.0000 +vt 0.3740 0.2222 0.0000 +vt 0.3362 0.2850 0.0000 +vt 0.3683 0.2849 0.0000 +vt 0.3795 0.2772 0.0000 +vt 0.3795 0.2222 0.0000 +vt 0.3740 0.2871 0.0000 +vt 0.3795 0.2865 0.0000 +vt 0.3281 0.7749 0.0000 +vt 0.3281 0.7711 0.0000 +vt 0.0089 0.7656 0.0000 +vt 0.0088 0.7694 0.0000 +vt 0.3283 0.7604 0.0000 +vt 0.0091 0.7549 0.0000 +vt 0.0711 0.7886 0.0000 +vt 0.0084 0.7886 0.0000 +vt 0.0084 0.7858 0.0000 +vt 0.0711 0.7858 0.0000 +vt 0.0084 0.7747 0.0000 +vt 0.0711 0.7747 0.0000 +vt 0.2599 0.7974 0.0000 +vt 0.0814 0.7941 0.0000 +vt 0.0814 0.7923 0.0000 +vt 0.2599 0.7956 0.0000 +vt 0.0815 0.7850 0.0000 +vt 0.2601 0.7883 0.0000 +vt 0.3904 0.9914 0.0000 +vt 0.3904 0.9117 0.0000 +vt 0.2102 0.9117 0.0000 +vt 0.2102 0.9914 0.0000 +vt 0.4064 0.1943 0.0000 +vt 0.3356 0.2009 0.0000 +vt 0.3508 0.1509 0.0000 +vt 0.4040 0.1592 0.0000 +vt 0.3141 0.2067 0.0000 +vt 0.3128 0.1381 0.0000 +vt 0.3695 0.0881 0.0000 +vt 0.3952 0.1005 0.0000 +vt 0.3151 0.0965 0.0000 +vt 0.5998 0.0056 0.0000 +vt 0.5984 0.1602 0.0000 +vt 0.6271 0.1602 0.0000 +vt 0.6385 0.0056 0.0000 +vt 0.5998 0.3148 0.0000 +vt 0.6385 0.3148 0.0000 +vt 0.5792 0.1625 0.0000 +vt 0.5495 0.1625 0.0000 +vt 0.5498 0.0090 0.0000 +vt 0.5897 0.0090 0.0000 +vt 0.5897 0.3161 0.0000 +vt 0.5498 0.3161 0.0000 +vt 0.1025 0.5132 0.0000 +vt 0.0149 0.5132 0.0000 +vt 0.0149 0.4236 0.0000 +vt 0.1025 0.4236 0.0000 +vt 0.1578 0.3962 0.0000 +vt 0.0854 0.3962 0.0000 +vt 0.0854 0.1884 0.0000 +vt 0.1578 0.1884 0.0000 +vt 0.0058 0.1784 0.0000 +vt 0.0667 0.1784 0.0000 +vt 0.0667 0.0037 0.0000 +vt 0.0058 0.0037 0.0000 +vt 0.0800 0.1790 0.0000 +vt 0.1409 0.1790 0.0000 +vt 0.1409 0.0042 0.0000 +vt 0.0800 0.0042 0.0000 +vt 0.0787 0.4021 0.0000 +vt 0.0041 0.4021 0.0000 +vt 0.0041 0.1881 0.0000 +vt 0.0787 0.1881 0.0000 +vt 0.0057 0.4170 0.0000 +vt 0.1117 0.4170 0.0000 +vt 0.1117 0.5198 0.0000 +vt 0.0057 0.5198 0.0000 +vt 0.1578 0.4044 0.0000 +vt 0.0854 0.4044 0.0000 +vt 0.0058 0.1853 0.0000 +vt 0.0667 0.1853 0.0000 +vt 0.0800 0.1859 0.0000 +vt 0.1409 0.1859 0.0000 +vt 0.0787 0.4106 0.0000 +vt 0.0041 0.4106 0.0000 +vt 0.1234 0.5153 0.0000 +vt 0.2286 0.5153 0.0000 +vt 0.2286 0.5003 0.0000 +vt 0.1234 0.5003 0.0000 +vt 0.1981 0.4483 0.0000 +vt 0.1195 0.4483 0.0000 +vt 0.1195 0.4224 0.0000 +vt 0.1981 0.4177 0.0000 +vt 0.2025 0.4850 0.0000 +vt 0.2869 0.4850 0.0000 +vt 0.2869 0.4598 0.0000 +vt 0.2025 0.4551 0.0000 +vt 0.2767 0.4483 0.0000 +vt 0.2767 0.4224 0.0000 +vt 0.1182 0.4850 0.0000 +vt 0.1182 0.4598 0.0000 +vt 0.2519 0.2562 0.0000 +vt 0.2598 0.2562 0.0000 +vt 0.2598 0.2285 0.0000 +vt 0.2519 0.2203 0.0000 +vt 0.2878 0.2921 0.0000 +vt 0.2878 0.2839 0.0000 +vt 0.2598 0.2839 0.0000 +vt 0.2519 0.2921 0.0000 +vt 0.3237 0.2562 0.0000 +vt 0.3157 0.2562 0.0000 +vt 0.3157 0.2839 0.0000 +vt 0.3237 0.2921 0.0000 +vt 0.2878 0.2203 0.0000 +vt 0.2878 0.2285 0.0000 +vt 0.3157 0.2285 0.0000 +vt 0.3237 0.2203 0.0000 +vt 0.4345 0.1722 0.0000 +vt 0.4256 0.1733 0.0000 +vt 0.4270 0.1485 0.0000 +vt 0.4169 0.1712 0.0000 +vt 0.4170 0.1257 0.0000 +vt 0.4257 0.1234 0.0000 +vt 0.4346 0.1245 0.0000 +vt 0.4424 0.1289 0.0000 +vt 0.4483 0.1356 0.0000 +vt 0.4515 0.1440 0.0000 +vt 0.4515 0.1530 0.0000 +vt 0.4483 0.1613 0.0000 +vt 0.4424 0.1680 0.0000 +vt 0.4148 0.0240 0.0000 +vt 0.4045 0.0414 0.0000 +vt 0.3976 0.0383 0.0000 +vt 0.4037 0.0190 0.0000 +vt 0.4245 0.0314 0.0000 +vt 0.4105 0.0459 0.0000 +vt 0.4324 0.0410 0.0000 +vt 0.4152 0.0515 0.0000 +vt 0.4382 0.0525 0.0000 +vt 0.4182 0.0578 0.0000 +vt 0.3409 0.0445 0.0000 +vt 0.3589 0.0536 0.0000 +vt 0.3564 0.0601 0.0000 +vt 0.3361 0.0564 0.0000 +vt 0.3480 0.0344 0.0000 +vt 0.3632 0.0477 0.0000 +vt 0.3571 0.0262 0.0000 +vt 0.3688 0.0427 0.0000 +vt 0.3678 0.0204 0.0000 +vt 0.3754 0.0391 0.0000 +vt 0.3796 0.0172 0.0000 +vt 0.3827 0.0371 0.0000 +vt 0.3917 0.0167 0.0000 +vt 0.3902 0.0369 0.0000 +vt 0.4221 0.0116 0.0000 +vt 0.4080 0.0053 0.0000 +vt 0.4344 0.0210 0.0000 +vt 0.4441 0.0327 0.0000 +vt 0.4513 0.0455 0.0000 +vt 0.3286 0.0372 0.0000 +vt 0.3224 0.0505 0.0000 +vt 0.3374 0.0247 0.0000 +vt 0.3489 0.0144 0.0000 +vt 0.3625 0.0070 0.0000 +vt 0.3774 0.0029 0.0000 +vt 0.3928 0.0023 0.0000 +vt 0.4102 0.2721 0.0000 +vt 0.3951 0.2794 0.0000 +vt 0.3897 0.2637 0.0000 +vt 0.4061 0.2601 0.0000 +vt 0.4170 0.2828 0.0000 +vt 0.4040 0.2934 0.0000 +vt 0.4261 0.2917 0.0000 +vt 0.4159 0.3050 0.0000 +vt 0.4371 0.2981 0.0000 +vt 0.4302 0.3135 0.0000 +vt 0.4390 0.1981 0.0000 +vt 0.4328 0.1825 0.0000 +vt 0.4489 0.1782 0.0000 +vt 0.4513 0.1948 0.0000 +vt 0.4279 0.2041 0.0000 +vt 0.4182 0.1904 0.0000 +vt 0.4184 0.2126 0.0000 +vt 0.4058 0.2015 0.0000 +vt 0.4112 0.2231 0.0000 +vt 0.3964 0.2152 0.0000 +vt 0.4066 0.2349 0.0000 +vt 0.3903 0.2307 0.0000 +vt 0.4048 0.2475 0.0000 +vt 0.3880 0.2471 0.0000 +vt 0.7282 0.5246 0.0000 +vt 0.7378 0.5238 0.0000 +vt 0.7411 0.5710 0.0000 +vt 0.7328 0.5717 0.0000 +vt 0.7186 0.5257 0.0000 +vt 0.7245 0.5726 0.0000 +vt 0.7163 0.5737 0.0000 +vt 0.7090 0.5267 0.0000 +vt 0.6995 0.5283 0.0000 +vt 0.7081 0.5751 0.0000 +vt 0.7957 0.5247 0.0000 +vt 0.8053 0.5255 0.0000 +vt 0.7990 0.5727 0.0000 +vt 0.7908 0.5717 0.0000 +vt 0.7860 0.5239 0.0000 +vt 0.7826 0.5710 0.0000 +vt 0.7763 0.5233 0.0000 +vt 0.7743 0.5705 0.0000 +vt 0.7667 0.5230 0.0000 +vt 0.7660 0.5703 0.0000 +vt 0.7571 0.5230 0.0000 +vt 0.7577 0.5703 0.0000 +vt 0.7474 0.5233 0.0000 +vt 0.7494 0.5705 0.0000 +vt 0.2323 0.2005 0.0000 +vt 0.1605 0.2005 0.0000 +vt 0.1605 0.1287 0.0000 +vt 0.2323 0.1287 0.0000 +vt 0.2493 0.0649 0.0000 +vt 0.1549 0.0649 0.0000 +vt 0.1510 0.0139 0.0000 +vt 0.2531 0.0139 0.0000 +vt 0.1510 0.1160 0.0000 +vt 0.2531 0.1160 0.0000 +vt 0.8932 0.8530 0.0000 +vt 0.8784 0.8552 0.0000 +vt 0.8769 0.8224 0.0000 +vt 0.8917 0.8188 0.0000 +vt 0.9487 0.8371 0.0000 +vt 0.9515 0.8608 0.0000 +vt 0.9383 0.8557 0.0000 +vt 0.9371 0.8262 0.0000 +vt 0.9218 0.8207 0.0000 +vt 0.9232 0.8532 0.0000 +vt 0.9081 0.8508 0.0000 +vt 0.9066 0.8151 0.0000 +vt 0.8658 0.8597 0.0000 +vt 0.8798 0.8879 0.0000 +vt 0.8649 0.8886 0.0000 +vt 0.8947 0.8872 0.0000 +vt 0.8960 0.9072 0.0000 +vt 0.8803 0.9073 0.0000 +vt 0.9543 0.8844 0.0000 +vt 0.9601 0.9224 0.0000 +vt 0.9439 0.9164 0.0000 +vt 0.9394 0.8851 0.0000 +vt 0.9245 0.8858 0.0000 +vt 0.9278 0.9118 0.0000 +vt 0.9117 0.9072 0.0000 +vt 0.9096 0.8865 0.0000 +vt 0.8648 0.9120 0.0000 +vt 0.8807 0.9266 0.0000 +vt 0.8646 0.9353 0.0000 +vt 0.9648 0.8659 0.0000 +vt 0.9692 0.8836 0.0000 +vt 0.8564 0.8393 0.0000 +vt 0.8666 0.8309 0.0000 +vt 0.8532 0.8643 0.0000 +vt 0.8972 0.9272 0.0000 +vt 0.9137 0.9278 0.0000 +vt 0.9659 0.9604 0.0000 +vt 0.9763 0.9283 0.0000 +vt 0.9833 0.9730 0.0000 +vt 0.9311 0.9378 0.0000 +vt 0.9484 0.9478 0.0000 +vt 0.8501 0.8893 0.0000 +vt 0.8493 0.9166 0.0000 +vt 0.9603 0.8481 0.0000 +vt 0.8485 0.9440 0.0000 +vt 0.9897 0.8367 0.0000 +vt 0.9878 0.8367 0.0000 +vt 0.9878 0.5203 0.0000 +vt 0.9897 0.5203 0.0000 +vt 0.9916 0.8367 0.0000 +vt 0.9916 0.5203 0.0000 +vt 0.9839 0.8367 0.0000 +vt 0.9818 0.8367 0.0000 +vt 0.9818 0.5203 0.0000 +vt 0.9839 0.5203 0.0000 +vt 0.9859 0.8367 0.0000 +vt 0.9859 0.5203 0.0000 +vt 0.9958 0.8502 0.0000 +vt 0.9868 0.8563 0.0000 +vt 0.9783 0.8496 0.0000 +vt 0.9928 0.8397 0.0000 +vt 0.9820 0.8393 0.0000 +vt 0.9203 0.5099 0.0000 +vt 0.9177 0.5100 0.0000 +vt 0.9146 0.4105 0.0000 +vt 0.9189 0.4103 0.0000 +vt 0.9223 0.5099 0.0000 +vt 0.9221 0.4104 0.0000 +vt 0.9252 0.5099 0.0000 +vt 0.9269 0.4107 0.0000 +vt 0.9272 0.5099 0.0000 +vt 0.9301 0.4107 0.0000 +vt 0.9151 0.5100 0.0000 +vt 0.9104 0.4108 0.0000 +vt 0.9068 0.6461 0.0000 +vt 0.9068 0.6257 0.0000 +vt 0.9272 0.6194 0.0000 +vt 0.9272 0.6524 0.0000 +vt 0.9398 0.6359 0.0000 +vt 0.9182 0.5597 0.0000 +vt 0.9208 0.5597 0.0000 +vt 0.9228 0.5596 0.0000 +vt 0.9257 0.5596 0.0000 +vt 0.9277 0.5597 0.0000 +vt 0.9156 0.5597 0.0000 +vt 0.9188 0.6094 0.0000 +vt 0.9214 0.6094 0.0000 +vt 0.9234 0.6094 0.0000 +vt 0.9263 0.6093 0.0000 +vt 0.9283 0.6094 0.0000 +vt 0.9162 0.6094 0.0000 +vt 0.9909 0.4977 0.0000 +vt 0.9862 0.4977 0.0000 +vt 0.9862 0.3406 0.0000 +vt 0.9909 0.3406 0.0000 +vt 0.9718 0.4977 0.0000 +vt 0.9671 0.4977 0.0000 +vt 0.9671 0.3406 0.0000 +vt 0.9718 0.3406 0.0000 +vt 0.9766 0.4977 0.0000 +vt 0.9766 0.3406 0.0000 +vt 0.9814 0.4977 0.0000 +vt 0.9814 0.3406 0.0000 +vt 0.4627 0.1545 0.0000 +vt 0.4900 0.1545 0.0000 +vt 0.4886 0.0081 0.0000 +vt 0.4519 0.0081 0.0000 +vt 0.4886 0.3010 0.0000 +vt 0.4519 0.3010 0.0000 +vt 0.5082 0.1567 0.0000 +vt 0.4982 0.0112 0.0000 +vt 0.5360 0.0112 0.0000 +vt 0.5362 0.1567 0.0000 +vt 0.5360 0.3022 0.0000 +vt 0.4982 0.3022 0.0000 +vt 0.8396 0.7268 0.0000 +vt 0.8396 0.7694 0.0000 +vt 0.9436 0.7198 0.0000 +vt 0.9436 0.7062 0.0000 +vt 0.6527 0.5196 0.0000 +vt 0.5818 0.5262 0.0000 +vt 0.5823 0.5023 0.0000 +vt 0.6532 0.4957 0.0000 +vt 0.8263 0.3959 0.0000 +vt 0.8263 0.3521 0.0000 +vt 0.8299 0.3500 0.0000 +vt 0.8299 0.3981 0.0000 +vt 0.7694 0.3981 0.0000 +vt 0.7694 0.3959 0.0000 +vt 0.8397 0.7769 0.0000 +vt 0.9437 0.7272 0.0000 +vt 0.6526 0.5237 0.0000 +vt 0.5817 0.5303 0.0000 +vt 0.6942 0.3326 0.0000 +vt 0.7990 0.3325 0.0000 +vt 0.7985 0.3269 0.0000 +vt 0.6938 0.3278 0.0000 +vt 0.9750 0.7589 0.0000 +vt 0.8460 0.8162 0.0000 +vt 0.8459 0.8073 0.0000 +vt 0.9749 0.7500 0.0000 +vt 0.7029 0.3584 0.0000 +vt 0.7029 0.4454 0.0000 +vt 0.6025 0.4454 0.0000 +vt 0.6025 0.3584 0.0000 +vt 0.6885 0.4818 0.0000 +vt 0.5970 0.4799 0.0000 +vt 0.5977 0.4706 0.0000 +vt 0.6891 0.4725 0.0000 +vt 0.7694 0.3521 0.0000 +vt 0.7125 0.3521 0.0000 +vt 0.7125 0.3500 0.0000 +vt 0.7694 0.3500 0.0000 +vt 0.6881 0.4868 0.0000 +vt 0.5967 0.4849 0.0000 +vt 0.6961 0.3466 0.0000 +vt 0.5980 0.3534 0.0000 +vt 0.5976 0.3494 0.0000 +vt 0.6956 0.3408 0.0000 +vt 0.7235 0.5183 0.0000 +vt 0.7240 0.4945 0.0000 +vt 0.7125 0.3959 0.0000 +vt 0.7125 0.3981 0.0000 +vt 0.7234 0.5225 0.0000 +vt 0.5899 0.3399 0.0000 +vt 0.5896 0.3354 0.0000 +vt 0.7801 0.4810 0.0000 +vt 0.7795 0.4903 0.0000 +vt 0.7791 0.4953 0.0000 +vt 0.7943 0.3415 0.0000 +vt 0.7948 0.3470 0.0000 +vt 0.7756 0.4056 0.0000 +vt 0.7227 0.4056 0.0000 +vt 0.7174 0.4000 0.0000 +vt 0.7810 0.4000 0.0000 +vt 0.7174 0.4051 0.0000 +vt 0.8395 0.4464 0.0000 +vt 0.8395 0.4056 0.0000 +vt 0.8445 0.4000 0.0000 +vt 0.8445 0.4521 0.0000 +vt 0.7860 0.4464 0.0000 +vt 0.7810 0.4521 0.0000 +vt 0.7860 0.4056 0.0000 +vt 0.7810 0.4056 0.0000 +vt 0.7957 0.4563 0.0000 +vt 0.8479 0.4563 0.0000 +vt 0.8479 0.4601 0.0000 +vt 0.7957 0.4601 0.0000 +vt 0.7389 0.4601 0.0000 +vt 0.7389 0.4563 0.0000 +vt 0.7071 0.4601 0.0000 +vt 0.7071 0.4563 0.0000 +vt 0.6117 0.4563 0.0000 +vt 0.6117 0.4601 0.0000 +vt 0.7810 0.4464 0.0000 +vt 0.7756 0.4465 0.0000 +vt 0.7225 0.4465 0.0000 +vt 0.7174 0.4521 0.0000 +vt 0.8927 0.0885 0.0000 +vt 0.8969 0.0810 0.0000 +vt 0.9040 0.0969 0.0000 +vt 0.7896 0.0803 0.0000 +vt 0.8005 0.0831 0.0000 +vt 0.7899 0.0962 0.0000 +vt 0.8040 0.0926 0.0000 +vt 0.8032 0.1028 0.0000 +vt 0.7986 0.1119 0.0000 +vt 0.8969 0.1127 0.0000 +vt 0.8927 0.1052 0.0000 +vt 0.8917 0.0969 0.0000 +vt 0.8804 0.0738 0.0000 +vt 0.8804 0.0857 0.0000 +vt 0.8177 0.0918 0.0000 +vt 0.8187 0.0777 0.0000 +vt 0.8166 0.1056 0.0000 +vt 0.8156 0.1197 0.0000 +vt 0.8804 0.1080 0.0000 +vt 0.8804 0.1199 0.0000 +vt 0.8804 0.0969 0.0000 +vt 0.8639 0.0810 0.0000 +vt 0.8681 0.0885 0.0000 +vt 0.8311 0.0946 0.0000 +vt 0.8360 0.0857 0.0000 +vt 0.8303 0.1048 0.0000 +vt 0.8336 0.1146 0.0000 +vt 0.8681 0.1052 0.0000 +vt 0.8639 0.1127 0.0000 +vt 0.8691 0.0969 0.0000 +vt 0.8568 0.0969 0.0000 +vt 0.8472 0.0847 0.0000 +vt 0.8445 0.1003 0.0000 +vt 0.8552 0.1486 0.0000 +vt 0.8618 0.1328 0.0000 +vt 0.8776 0.1486 0.0000 +vt 0.8776 0.1262 0.0000 +vt 0.8933 0.1328 0.0000 +vt 0.8999 0.1486 0.0000 +vt 0.8933 0.1644 0.0000 +vt 0.8776 0.1709 0.0000 +vt 0.8618 0.1644 0.0000 +vt 0.8921 0.2853 0.0000 +vt 0.8780 0.2903 0.0000 +vt 0.8731 0.2809 0.0000 +vt 0.8852 0.2721 0.0000 +vt 0.8950 0.3000 0.0000 +vt 0.8800 0.3007 0.0000 +vt 0.8934 0.3149 0.0000 +vt 0.8789 0.3112 0.0000 +vt 0.8876 0.3287 0.0000 +vt 0.8748 0.3209 0.0000 +vt 0.8780 0.3402 0.0000 +vt 0.8680 0.3291 0.0000 +vt 0.8616 0.2542 0.0000 +vt 0.8564 0.2683 0.0000 +vt 0.8460 0.2661 0.0000 +vt 0.8469 0.2512 0.0000 +vt 0.8747 0.2614 0.0000 +vt 0.8657 0.2733 0.0000 +vt 0.8151 0.1246 0.0000 +vt 0.8347 0.1328 0.0000 +vt 0.7954 0.1328 0.0000 +vt 0.8151 0.1802 0.0000 +vt 0.7954 0.1721 0.0000 +vt 0.8347 0.1721 0.0000 +vt 0.7873 0.1524 0.0000 +vt 0.8429 0.1524 0.0000 +vt 0.8717 0.2132 0.0000 +vt 0.8609 0.2131 0.0000 +vt 0.8603 0.1878 0.0000 +vt 0.8719 0.1869 0.0000 +vt 0.8834 0.1879 0.0000 +vt 0.8825 0.2133 0.0000 +vt 0.8956 0.1897 0.0000 +vt 0.8925 0.2133 0.0000 +vt 0.8509 0.2131 0.0000 +vt 0.8481 0.1893 0.0000 +vt 0.8600 0.2384 0.0000 +vt 0.8715 0.2395 0.0000 +vt 0.8831 0.2386 0.0000 +vt 0.8953 0.2370 0.0000 +vt 0.8478 0.2367 0.0000 +vt 0.6535 0.9321 0.0000 +vt 0.6428 0.9320 0.0000 +vt 0.6438 0.8990 0.0000 +vt 0.6559 0.8983 0.0000 +vt 0.6680 0.9016 0.0000 +vt 0.6635 0.9322 0.0000 +vt 0.6314 0.9001 0.0000 +vt 0.6327 0.9319 0.0000 +vt 0.6228 0.9318 0.0000 +vt 0.6185 0.8998 0.0000 +vt 0.6434 0.9650 0.0000 +vt 0.6555 0.9660 0.0000 +vt 0.6676 0.9629 0.0000 +vt 0.6310 0.9636 0.0000 +vt 0.6181 0.9637 0.0000 +# 820 texture coords + +o market +g market +f 1/1/1 2/2/2 3/3/3 +f 3/3/3 4/4/4 1/1/1 +f 5/5/5 2/2/2 1/1/1 +f 1/1/1 6/6/6 5/5/5 +f 7/7/7 5/5/5 6/6/6 +f 6/6/6 8/8/8 7/7/7 +f 9/9/9 1/1/1 4/4/4 +f 4/4/4 10/10/10 9/9/9 +f 6/6/6 1/1/1 9/9/9 +f 9/9/9 11/11/11 6/6/6 +f 8/8/8 6/6/6 11/11/11 +f 11/11/11 12/12/12 8/8/8 +f 13/13/13 9/9/9 10/10/10 +f 10/10/10 14/14/14 13/13/13 +f 11/11/11 9/9/9 13/13/13 +f 13/13/13 15/15/15 11/11/11 +f 12/12/12 11/11/11 15/15/15 +f 15/15/15 16/16/16 12/12/12 +f 17/17/17 13/13/13 14/14/14 +f 14/14/14 18/18/18 17/17/17 +f 15/15/15 13/13/13 17/17/17 +f 17/17/17 19/19/19 15/15/15 +f 16/16/16 15/15/15 19/19/19 +f 19/19/19 20/20/20 16/16/16 +f 21/21/21 22/22/22 23/23/23 +f 23/23/23 24/24/24 21/21/21 +f 21/25/21 25/26/25 26/27/26 +f 26/27/26 22/28/22 21/25/21 +f 27/24/27 28/23/28 26/22/26 +f 26/22/26 25/21/25 27/24/27 +f 24/25/24 23/28/23 28/27/28 +f 28/27/28 27/26/27 24/25/24 +f 29/29/29 30/30/30 21/21/21 +f 21/21/21 24/24/24 29/29/29 +f 30/31/30 31/32/31 25/26/25 +f 25/26/25 21/25/21 30/31/30 +f 31/30/31 32/29/32 27/24/27 +f 27/24/27 25/21/25 31/30/31 +f 27/26/27 32/32/32 29/31/29 +f 29/31/29 24/25/24 27/26/27 +f 33/33/33 34/34/34 35/35/35 +f 35/35/35 36/36/36 33/33/33 +f 37/37/37 38/38/38 39/39/39 +f 39/39/39 40/40/40 37/37/37 +f 37/41/37 41/42/41 42/43/42 +f 42/43/42 38/44/38 37/41/37 +f 43/40/43 44/39/44 42/38/42 +f 42/38/42 41/37/41 43/40/43 +f 40/41/40 39/44/39 44/43/44 +f 44/43/44 43/42/43 40/41/40 +f 35/45/35 34/46/34 37/37/37 +f 37/37/37 40/40/40 35/45/35 +f 37/41/37 34/47/34 33/48/33 +f 33/48/33 41/42/41 37/41/37 +f 33/46/33 36/45/36 43/40/43 +f 43/40/43 41/37/41 33/46/33 +f 36/48/36 35/47/35 40/41/40 +f 40/41/40 43/42/43 36/48/36 +f 45/49/45 46/50/46 47/51/47 +f 47/51/47 48/52/48 45/49/45 +f 46/50/46 49/51/49 50/52/50 +f 50/52/50 51/49/51 46/50/46 +f 45/49/45 48/52/48 52/53/52 +f 52/53/52 53/54/53 45/49/45 +f 54/55/54 55/56/55 56/57/56 +f 56/57/56 57/58/57 54/55/54 +f 58/59/58 55/60/55 54/61/54 +f 54/61/54 59/62/59 58/59/58 +f 51/49/51 50/52/50 60/53/60 +f 60/53/60 61/54/61 51/49/51 +f 62/55/62 63/56/63 64/57/64 +f 64/57/64 65/58/65 62/55/62 +f 66/59/66 63/60/63 62/61/62 +f 62/61/62 67/62/67 66/59/66 +f 53/63/53 52/64/52 68/65/68 +f 68/65/68 69/66/69 53/63/53 +f 61/63/61 69/66/69 68/67/68 +f 68/67/68 70/68/60 61/63/61 +f 56/57/56 55/56/55 49/69/49 +f 49/69/49 71/70/70 56/57/56 +f 71/70/70 49/69/49 46/50/46 +f 46/50/46 45/49/45 71/70/70 +f 66/59/66 48/52/48 47/51/47 +f 47/51/47 63/60/63 66/59/66 +f 64/57/64 63/56/63 47/69/47 +f 47/69/47 72/70/50 64/57/64 +f 47/69/47 46/50/46 51/49/51 +f 51/49/51 72/70/50 47/69/47 +f 58/59/58 50/52/50 49/51/49 +f 49/51/49 55/60/55 58/59/58 +f 56/57/56 71/70/70 73/71/71 +f 73/71/71 57/72/57 56/57/56 +f 71/70/70 45/49/45 53/54/53 +f 53/54/53 73/71/71 71/70/70 +f 67/73/67 52/53/52 48/52/48 +f 48/52/48 66/59/66 67/73/67 +f 64/57/64 72/70/50 70/71/60 +f 70/71/60 65/72/65 64/57/64 +f 72/70/50 51/49/51 61/54/61 +f 61/54/61 70/71/60 72/70/50 +f 59/73/59 60/53/60 50/52/50 +f 50/52/50 58/59/58 59/73/59 +f 57/74/57 73/68/71 74/67/72 +f 74/67/72 54/75/54 57/74/57 +f 73/68/71 53/63/53 69/66/69 +f 69/66/69 74/67/72 73/68/71 +f 67/76/67 62/77/62 68/65/68 +f 68/65/68 52/64/52 67/76/67 +f 59/76/59 54/77/54 74/65/72 +f 74/65/72 60/64/60 59/76/59 +f 60/64/60 74/65/72 69/66/69 +f 69/66/69 61/63/61 60/64/60 +f 65/74/65 70/68/60 68/67/68 +f 68/67/68 62/75/62 65/74/65 +f 75/78/73 76/79/74 77/80/75 +f 77/80/75 78/81/76 75/78/73 +f 79/82/77 80/83/78 81/84/79 +f 81/84/79 82/85/80 79/82/77 +f 83/86/81 79/87/77 82/88/80 +f 82/88/80 84/89/82 83/86/81 +f 85/84/83 86/83/84 83/82/81 +f 83/82/81 84/85/82 85/84/83 +f 80/87/78 86/86/84 85/89/83 +f 85/89/83 81/88/79 80/87/78 +f 78/90/76 77/91/75 80/83/78 +f 80/83/78 79/82/77 78/90/76 +f 78/92/76 79/87/77 83/86/81 +f 83/86/81 75/93/73 78/92/76 +f 75/90/73 83/82/81 86/83/84 +f 86/83/84 76/91/74 75/90/73 +f 76/93/74 86/86/84 80/87/78 +f 80/87/78 77/92/75 76/93/74 +f 87/94/85 88/95/86 89/96/87 +f 89/96/87 90/97/88 87/94/85 +f 91/98/89 92/99/90 93/100/91 +f 93/100/91 94/101/92 91/98/89 +f 89/102/87 95/103/93 96/104/93 +f 96/104/93 90/105/88 89/102/87 +f 92/106/90 88/95/86 87/94/85 +f 87/94/85 93/107/91 92/106/90 +f 91/108/89 94/109/92 97/110/94 +f 97/110/94 98/111/94 91/108/89 +f 99/112/95 100/113/96 101/114/97 +f 101/114/97 102/115/98 99/112/95 +f 103/116/99 104/117/100 105/118/101 +f 105/118/101 106/119/102 103/116/99 +f 107/120/103 108/121/104 109/122/105 +f 109/122/105 110/123/106 107/120/103 +f 111/117/107 112/116/108 113/124/109 +f 113/124/109 114/125/110 111/117/107 +f 115/126/111 116/127/112 117/128/113 +f 117/128/113 118/129/114 115/126/111 +f 119/130/115 120/131/116 121/132/117 +f 122/133/118 123/134/119 108/135/104 +f 108/135/104 107/136/103 122/133/118 +f 124/137/120 125/138/121 126/139/122 +f 127/140/123 128/141/124 125/138/121 +f 125/138/121 124/137/120 127/140/123 +f 129/142/125 130/143/126 101/114/97 +f 101/114/97 100/113/96 129/142/125 +f 131/144/127 107/120/103 110/123/106 +f 110/123/106 132/145/128 131/144/127 +f 133/146/129 115/126/111 118/129/114 +f 118/129/114 134/147/130 133/146/129 +f 135/148/131 122/133/118 107/136/103 +f 107/136/103 131/149/127 135/148/131 +f 120/131/116 128/141/124 127/140/123 +f 127/140/123 121/132/117 120/131/116 +f 99/150/95 102/151/98 136/152/132 +f 136/152/132 123/153/119 99/150/95 +f 100/154/96 99/150/95 123/153/119 +f 123/153/119 122/155/118 100/154/96 +f 129/156/125 100/154/96 122/155/118 +f 122/155/118 135/157/131 129/156/125 +f 137/158/133 130/159/126 129/156/125 +f 129/156/125 135/157/131 137/158/133 +f 101/160/97 130/161/126 137/162/133 +f 137/162/133 138/163/134 101/160/97 +f 102/164/98 101/160/97 138/163/134 +f 138/163/134 136/165/132 102/164/98 +f 135/148/131 131/149/127 139/166/135 +f 139/166/135 137/167/133 135/148/131 +f 132/145/128 140/168/136 139/169/135 +f 139/169/135 131/144/127 132/145/128 +f 109/122/105 108/121/104 141/170/137 +f 141/170/137 142/171/138 109/122/105 +f 123/134/119 136/172/132 141/173/137 +f 141/173/137 108/135/104 123/134/119 +f 143/124/139 144/125/140 104/117/100 +f 104/117/100 103/116/99 143/124/139 +f 120/174/116 119/175/115 141/176/137 +f 141/176/137 136/165/132 120/174/116 +f 128/177/124 120/174/116 136/165/132 +f 136/165/132 138/163/134 128/177/124 +f 125/178/121 128/177/124 138/163/134 +f 138/163/134 137/162/133 125/178/121 +f 126/179/122 125/178/121 137/162/133 +f 137/162/133 139/180/135 126/179/122 +f 145/118/141 146/119/142 112/116/108 +f 112/116/108 111/117/107 145/118/141 +f 127/181/123 124/182/120 116/127/112 +f 116/127/112 115/126/111 127/181/123 +f 121/183/117 127/181/123 115/126/111 +f 115/126/111 133/146/129 121/183/117 +f 103/184/99 106/185/102 142/186/138 +f 142/186/138 141/176/137 103/184/99 +f 143/187/139 103/184/99 141/176/137 +f 141/176/137 119/175/115 143/187/139 +f 144/188/140 143/189/139 119/130/115 +f 119/130/115 121/132/117 144/188/140 +f 104/190/100 144/191/140 121/183/117 +f 121/183/117 133/146/129 104/190/100 +f 105/192/101 104/190/100 133/146/129 +f 133/146/129 134/147/130 105/192/101 +f 111/193/107 114/194/110 117/128/113 +f 117/128/113 116/127/112 111/193/107 +f 145/195/141 111/193/107 116/127/112 +f 116/127/112 124/182/120 145/195/141 +f 146/196/142 145/197/141 124/137/120 +f 124/137/120 126/139/122 146/196/142 +f 112/198/108 146/199/142 126/179/122 +f 126/179/122 139/180/135 112/198/108 +f 113/200/109 112/198/108 139/180/135 +f 139/180/135 140/201/136 113/200/109 +f 147/202/143 148/203/144 149/204/144 +f 149/204/144 150/205/145 147/202/143 +f 151/206/146 152/207/147 153/208/148 +f 153/208/148 154/209/149 151/206/146 +f 155/210/150 156/202/151 157/205/152 +f 157/205/152 158/204/153 155/210/150 +f 159/211/154 160/209/155 157/212/152 +f 157/212/152 156/213/151 159/211/154 +f 150/214/145 161/208/156 162/215/157 +f 162/215/157 147/216/143 150/214/145 +f 151/217/146 154/218/149 160/205/155 +f 160/205/155 159/202/154 151/217/146 +f 153/218/148 152/217/147 162/202/157 +f 162/202/157 161/205/156 153/218/148 +f 163/219/158 164/220/159 165/221/160 +f 165/221/160 166/222/161 163/219/158 +f 167/223/162 163/224/158 166/225/161 +f 166/225/161 168/226/163 167/223/162 +f 169/221/164 170/220/165 167/219/162 +f 167/219/162 168/222/163 169/221/164 +f 165/225/160 164/224/159 170/223/165 +f 170/223/165 169/226/164 165/225/160 +f 171/227/166 164/220/159 163/219/158 +f 163/219/158 172/228/167 171/227/166 +f 173/229/168 172/230/167 163/224/158 +f 163/224/158 167/223/162 173/229/168 +f 174/227/169 173/228/168 167/219/162 +f 167/219/162 170/220/165 174/227/169 +f 174/229/169 170/223/165 164/224/159 +f 164/224/159 171/230/166 174/229/169 +f 175/231/170 176/232/171 177/233/172 +f 177/233/172 178/234/173 175/231/170 +f 179/235/174 176/236/171 175/237/170 +f 175/237/170 180/238/175 179/235/174 +f 181/233/176 179/232/174 180/231/175 +f 180/231/175 182/234/177 181/233/176 +f 178/237/173 177/236/172 181/235/176 +f 181/235/176 182/238/177 178/237/173 +f 183/239/178 184/240/179 177/233/172 +f 177/233/172 176/232/171 183/239/178 +f 183/241/178 176/236/171 179/235/174 +f 179/235/174 185/242/180 183/241/178 +f 185/239/180 179/232/174 181/233/176 +f 181/233/176 186/240/181 185/239/180 +f 184/241/179 186/242/181 181/235/176 +f 181/235/176 177/236/172 184/241/179 +f 187/219/182 188/222/183 189/221/184 +f 189/221/184 190/220/185 187/219/182 +f 191/223/186 192/226/187 188/225/183 +f 188/225/183 187/224/182 191/223/186 +f 191/219/186 193/220/188 194/221/189 +f 194/221/189 192/222/187 191/219/186 +f 193/223/188 190/224/185 189/225/184 +f 189/225/184 194/226/189 193/223/188 +f 195/227/190 196/228/191 187/219/182 +f 187/219/182 190/220/185 195/227/190 +f 187/224/182 196/230/191 197/229/192 +f 197/229/192 191/223/186 187/224/182 +f 191/219/186 197/228/192 198/227/193 +f 198/227/193 193/220/188 191/219/186 +f 198/229/193 195/230/190 190/224/185 +f 190/224/185 193/223/188 198/229/193 +f 199/233/194 200/232/195 201/231/196 +f 201/231/196 202/234/197 199/233/194 +f 203/235/198 204/238/199 201/237/196 +f 201/237/196 200/236/195 203/235/198 +f 205/233/200 206/234/201 204/231/199 +f 204/231/199 203/232/198 205/233/200 +f 205/235/200 199/236/194 202/237/197 +f 202/237/197 206/238/201 205/235/200 +f 199/233/194 207/240/202 208/239/203 +f 208/239/203 200/232/195 199/233/194 +f 208/241/203 209/242/204 203/235/198 +f 203/235/198 200/236/195 208/241/203 +f 209/239/204 210/240/205 205/233/200 +f 205/233/200 203/232/198 209/239/204 +f 205/235/200 210/242/205 207/241/202 +f 207/241/202 199/236/194 205/235/200 +f 211/243/206 212/244/207 213/245/208 +f 213/245/208 214/246/209 211/243/206 +f 215/244/210 216/243/211 217/246/212 +f 217/246/212 218/245/213 215/244/210 +f 218/247/213 217/248/212 214/249/209 +f 214/249/209 213/250/208 218/247/213 +f 212/251/207 215/252/210 218/253/213 +f 218/253/213 213/254/208 212/251/207 +f 219/248/214 220/247/215 221/250/216 +f 221/250/216 222/249/217 219/248/214 +f 221/245/216 212/244/207 211/243/206 +f 211/243/206 222/246/217 221/245/216 +f 219/246/214 216/243/211 215/244/210 +f 215/244/210 220/245/215 219/246/214 +f 220/253/215 215/252/210 212/251/207 +f 212/251/207 221/254/216 220/253/215 +f 223/255/218 224/256/219 225/257/220 +f 225/257/220 226/258/221 223/255/218 +f 227/259/222 228/260/223 223/255/218 +f 223/255/218 226/258/221 227/259/222 +f 223/261/218 229/262/224 230/263/225 +f 230/263/225 224/264/219 223/261/218 +f 228/265/223 231/266/226 229/262/224 +f 229/262/224 223/261/218 228/265/223 +f 229/267/224 232/268/227 233/269/228 +f 233/269/228 230/270/225 229/267/224 +f 234/271/229 232/268/227 229/267/224 +f 229/267/224 231/272/226 234/271/229 +f 226/261/221 225/264/220 233/263/228 +f 233/263/228 232/262/227 226/261/221 +f 227/265/222 226/261/221 232/262/227 +f 232/262/227 234/266/229 227/265/222 +f 235/273/230 236/274/231 237/275/232 +f 237/275/232 238/276/233 235/273/230 +f 239/277/234 236/278/231 235/279/230 +f 235/279/230 240/280/235 239/277/234 +f 241/275/236 239/274/234 240/273/235 +f 240/273/235 242/276/237 241/275/236 +f 238/279/233 237/278/232 241/277/236 +f 241/277/236 242/280/237 238/279/233 +f 243/281/238 244/282/239 237/275/232 +f 237/275/232 236/274/231 243/281/238 +f 243/283/238 236/278/231 239/277/234 +f 239/277/234 245/284/240 243/283/238 +f 245/281/240 239/274/234 241/275/236 +f 241/275/236 246/282/241 245/281/240 +f 244/283/239 246/284/241 241/277/236 +f 241/277/236 237/278/232 244/283/239 +f 247/275/242 248/274/243 249/273/244 +f 249/273/244 250/276/245 247/275/242 +f 251/277/246 252/280/247 249/279/244 +f 249/279/244 248/278/243 251/277/246 +f 253/275/248 254/276/249 252/273/247 +f 252/273/247 251/274/246 253/275/248 +f 253/277/248 247/278/242 250/279/245 +f 250/279/245 254/280/249 253/277/248 +f 247/275/242 255/282/250 256/281/251 +f 256/281/251 248/274/243 247/275/242 +f 256/283/251 257/284/252 251/277/246 +f 251/277/246 248/278/243 256/283/251 +f 257/281/252 258/282/253 253/275/248 +f 253/275/248 251/274/246 257/281/252 +f 253/277/248 258/284/253 255/283/250 +f 255/283/250 247/278/242 253/277/248 +f 259/255/254 260/258/255 261/257/256 +f 261/257/256 262/256/257 259/255/254 +f 259/255/254 263/260/258 264/259/259 +f 264/259/259 260/258/255 259/255/254 +f 265/263/260 266/262/261 259/261/254 +f 259/261/254 262/264/257 265/263/260 +f 266/262/261 267/266/262 263/265/258 +f 263/265/258 259/261/254 266/262/261 +f 268/269/263 269/268/264 266/267/261 +f 266/267/261 265/270/260 268/269/263 +f 270/271/265 267/272/262 266/267/261 +f 266/267/261 269/268/264 270/271/265 +f 260/261/255 269/262/264 268/263/263 +f 268/263/263 261/264/256 260/261/255 +f 264/265/259 270/266/265 269/262/264 +f 269/262/264 260/261/255 264/265/259 +f 271/255/266 272/258/267 273/257/268 +f 273/257/268 274/256/269 271/255/266 +f 271/255/266 275/260/270 276/259/271 +f 276/259/271 272/258/267 271/255/266 +f 277/263/272 278/262/273 271/261/266 +f 271/261/266 274/264/269 277/263/272 +f 278/262/273 279/266/274 275/265/270 +f 275/265/270 271/261/266 278/262/273 +f 280/269/275 281/268/276 278/267/273 +f 278/267/273 277/270/272 280/269/275 +f 282/271/277 279/272/274 278/267/273 +f 278/267/273 281/268/276 282/271/277 +f 272/261/267 281/262/276 280/263/275 +f 280/263/275 273/264/268 272/261/267 +f 276/265/271 282/266/277 281/262/276 +f 281/262/276 272/261/267 276/265/271 +f 283/285/278 284/286/279 285/287/280 +f 285/287/280 286/288/281 283/285/278 +f 283/285/278 286/289/281 287/290/282 +f 287/290/282 288/291/283 283/285/278 +f 288/291/283 289/292/284 284/286/279 +f 284/286/279 283/285/278 288/291/283 +f 284/286/279 289/292/284 290/293/285 +f 290/293/285 285/294/280 284/286/279 +f 291/295/282 292/296/286 288/291/283 +f 288/291/283 287/290/282 291/295/282 +f 288/291/283 292/296/286 293/297/287 +f 293/297/287 289/292/284 288/291/283 +f 289/292/284 293/297/287 294/298/285 +f 294/298/285 290/293/285 289/292/284 +f 295/285/288 296/288/289 297/287/290 +f 297/287/290 298/286/291 295/285/288 +f 299/290/282 296/289/289 295/285/288 +f 295/285/288 300/291/292 299/290/282 +f 298/286/291 301/292/293 300/291/292 +f 300/291/292 295/285/288 298/286/291 +f 298/286/291 297/294/290 302/293/285 +f 302/293/285 301/292/293 298/286/291 +f 300/291/292 292/296/286 291/295/282 +f 291/295/282 299/290/282 300/291/292 +f 300/291/292 301/292/293 293/297/287 +f 293/297/287 292/296/286 300/291/292 +f 301/292/293 302/293/285 294/298/285 +f 294/298/285 293/297/287 301/292/293 +f 303/299/294 304/300/295 305/301/296 +f 305/301/296 306/302/297 303/299/294 +f 306/302/297 307/303/298 308/304/299 +f 308/304/299 303/299/294 306/302/297 +f 306/302/297 305/305/296 309/306/282 +f 309/306/282 307/303/298 306/302/297 +f 308/304/299 307/303/298 310/307/286 +f 310/307/286 311/308/300 308/304/299 +f 307/303/298 309/309/282 312/310/282 +f 312/310/282 310/307/286 307/303/298 +f 313/299/301 314/302/302 315/301/289 +f 315/301/289 316/300/93 313/299/301 +f 317/304/303 318/303/292 314/302/302 +f 314/302/302 313/299/301 317/304/303 +f 314/302/302 318/303/292 319/306/282 +f 319/306/282 315/305/289 314/302/302 +f 317/304/303 311/308/300 310/307/286 +f 310/307/286 318/303/292 317/304/303 +f 318/303/292 310/307/286 312/310/282 +f 312/310/282 319/309/282 318/303/292 +f 320/299/304 321/300/295 322/301/305 +f 322/301/305 323/302/306 320/299/304 +f 323/302/306 324/303/307 325/304/308 +f 325/304/308 320/299/304 323/302/306 +f 323/302/306 322/305/305 326/306/309 +f 326/306/309 324/303/307 323/302/306 +f 325/304/308 324/303/307 327/307/310 +f 327/307/310 328/308/311 325/304/308 +f 324/303/307 326/309/309 329/310/309 +f 329/310/309 327/307/310 324/303/307 +f 330/299/312 331/302/313 332/301/314 +f 332/301/314 333/300/93 330/299/312 +f 334/304/315 335/303/316 331/302/313 +f 331/302/313 330/299/312 334/304/315 +f 331/302/313 335/303/316 336/306/309 +f 336/306/309 332/305/314 331/302/313 +f 334/304/315 328/308/311 327/307/310 +f 327/307/310 335/303/316 334/304/315 +f 335/303/316 327/307/310 329/310/309 +f 329/310/309 336/309/309 335/303/316 +f 337/299/317 338/300/295 339/301/318 +f 339/301/318 340/302/319 337/299/317 +f 340/302/319 341/303/320 342/304/321 +f 342/304/321 337/299/317 340/302/319 +f 340/302/319 339/305/318 343/306/322 +f 343/306/322 341/303/320 340/302/319 +f 342/304/321 341/303/320 344/307/323 +f 344/307/323 345/308/324 342/304/321 +f 341/303/320 343/309/322 346/310/322 +f 346/310/322 344/307/323 341/303/320 +f 347/299/325 348/302/326 349/301/327 +f 349/301/327 350/300/93 347/299/325 +f 351/304/328 352/303/329 348/302/326 +f 348/302/326 347/299/325 351/304/328 +f 348/302/326 352/303/329 353/306/322 +f 353/306/322 349/305/327 348/302/326 +f 351/304/328 345/308/324 344/307/323 +f 344/307/323 352/303/329 351/304/328 +f 352/303/329 344/307/323 346/310/322 +f 346/310/322 353/309/322 352/303/329 +f 354/299/317 355/300/295 356/301/318 +f 356/301/318 357/302/319 354/299/317 +f 357/302/319 358/303/320 359/304/321 +f 359/304/321 354/299/317 357/302/319 +f 357/302/319 356/305/318 360/306/322 +f 360/306/322 358/303/320 357/302/319 +f 359/304/321 358/303/320 361/307/323 +f 361/307/323 362/308/324 359/304/321 +f 358/303/320 360/309/322 363/310/322 +f 363/310/322 361/307/323 358/303/320 +f 364/299/325 365/302/326 366/301/330 +f 366/301/330 367/300/93 364/299/325 +f 368/304/328 369/303/329 365/302/326 +f 365/302/326 364/299/325 368/304/328 +f 365/302/326 369/303/329 370/306/322 +f 370/306/322 366/305/330 365/302/326 +f 368/304/328 362/308/324 361/307/323 +f 361/307/323 369/303/329 368/304/328 +f 369/303/329 361/307/323 363/310/322 +f 363/310/322 370/309/322 369/303/329 +f 371/299/317 372/300/295 373/301/318 +f 373/301/318 374/302/319 371/299/317 +f 374/302/319 375/303/320 376/304/321 +f 376/304/321 371/299/317 374/302/319 +f 374/302/319 373/305/318 377/306/331 +f 377/306/331 375/303/320 374/302/319 +f 376/304/321 375/303/320 378/307/323 +f 378/307/323 379/308/324 376/304/321 +f 375/303/320 377/309/331 380/310/322 +f 380/310/322 378/307/323 375/303/320 +f 381/299/325 382/302/326 383/301/330 +f 383/301/330 384/300/93 381/299/325 +f 385/304/328 386/303/329 382/302/326 +f 382/302/326 381/299/325 385/304/328 +f 382/302/326 386/303/329 387/306/322 +f 387/306/322 383/305/330 382/302/326 +f 385/304/328 379/308/324 378/307/323 +f 378/307/323 386/303/329 385/304/328 +f 386/303/329 378/307/323 380/310/322 +f 380/310/322 387/309/322 386/303/329 +f 388/299/332 389/300/295 390/301/333 +f 390/301/333 391/302/334 388/299/332 +f 391/302/334 392/303/335 393/304/336 +f 393/304/336 388/299/332 391/302/334 +f 391/302/334 390/305/333 394/306/337 +f 394/306/337 392/303/335 391/302/334 +f 393/304/336 392/303/335 395/307/338 +f 395/307/338 396/308/339 393/304/336 +f 392/303/335 394/309/337 397/310/337 +f 397/310/337 395/307/338 392/303/335 +f 398/299/340 399/302/341 400/301/342 +f 400/301/342 401/300/93 398/299/340 +f 402/304/343 403/303/344 399/302/341 +f 399/302/341 398/299/340 402/304/343 +f 399/302/341 403/303/344 404/306/337 +f 404/306/337 400/305/342 399/302/341 +f 402/304/343 396/308/339 395/307/338 +f 395/307/338 403/303/344 402/304/343 +f 403/303/344 395/307/338 397/310/337 +f 397/310/337 404/309/337 403/303/344 +f 405/285/345 406/288/346 407/287/347 +f 407/287/347 408/286/348 405/285/345 +f 405/285/345 409/291/349 410/290/350 +f 410/290/350 406/289/346 405/285/345 +f 409/291/349 405/285/345 408/286/348 +f 408/286/348 411/292/351 409/291/349 +f 412/293/352 411/292/351 408/286/348 +f 408/286/348 407/294/347 412/293/352 +f 409/291/349 413/296/353 414/295/354 +f 414/295/354 410/290/350 409/291/349 +f 409/291/349 411/292/351 415/297/355 +f 415/297/355 413/296/353 409/291/349 +f 411/292/351 412/293/352 416/298/352 +f 416/298/352 415/297/355 411/292/351 +f 417/285/356 418/286/357 419/287/358 +f 419/287/358 420/288/359 417/285/356 +f 421/290/350 422/291/360 417/285/356 +f 417/285/356 420/289/359 421/290/350 +f 418/286/357 417/285/356 422/291/360 +f 422/291/360 423/292/361 418/286/357 +f 424/293/352 419/294/358 418/286/357 +f 418/286/357 423/292/361 424/293/352 +f 414/295/354 413/296/353 422/291/360 +f 422/291/360 421/290/350 414/295/354 +f 422/291/360 413/296/353 415/297/355 +f 415/297/355 423/292/361 422/291/360 +f 423/292/361 415/297/355 416/298/352 +f 416/298/352 424/293/352 423/292/361 +f 425/299/362 426/302/363 427/301/364 +f 427/301/364 428/300/295 425/299/362 +f 426/302/363 425/299/362 429/304/365 +f 429/304/365 430/303/366 426/302/363 +f 431/306/367 427/305/364 426/302/363 +f 426/302/363 430/303/366 431/306/367 +f 429/304/365 432/308/368 433/307/369 +f 433/307/369 430/303/366 429/304/365 +f 430/303/366 433/307/369 434/310/370 +f 434/310/370 431/309/367 430/303/366 +f 435/299/371 436/300/93 437/301/372 +f 437/301/372 438/302/373 435/299/371 +f 439/304/374 435/299/371 438/302/373 +f 438/302/373 440/303/375 439/304/374 +f 441/306/376 440/303/375 438/302/373 +f 438/302/373 437/305/372 441/306/376 +f 439/304/374 440/303/375 433/307/369 +f 433/307/369 432/308/368 439/304/374 +f 440/303/375 441/309/376 434/310/370 +f 434/310/370 433/307/369 440/303/375 +f 442/299/377 443/302/378 444/301/379 +f 444/301/379 445/300/295 442/299/377 +f 443/302/378 442/299/377 446/304/380 +f 446/304/380 447/303/381 443/302/378 +f 448/306/382 444/305/379 443/302/378 +f 443/302/378 447/303/381 448/306/382 +f 446/304/380 449/308/383 450/307/384 +f 450/307/384 447/303/381 446/304/380 +f 447/303/381 450/307/384 451/310/382 +f 451/310/382 448/309/382 447/303/381 +f 452/299/385 453/300/93 454/301/386 +f 454/301/386 455/302/387 452/299/385 +f 456/304/388 452/299/385 455/302/387 +f 455/302/387 457/303/389 456/304/388 +f 458/306/382 457/303/389 455/302/387 +f 455/302/387 454/305/386 458/306/382 +f 456/304/388 457/303/389 450/307/384 +f 450/307/384 449/308/383 456/304/388 +f 457/303/389 458/309/382 451/310/382 +f 451/310/382 450/307/384 457/303/389 +f 459/299/390 460/302/345 461/301/346 +f 461/301/346 462/300/295 459/299/390 +f 460/302/345 459/299/390 463/304/391 +f 463/304/391 464/303/349 460/302/345 +f 465/306/350 461/305/346 460/302/345 +f 460/302/345 464/303/349 465/306/350 +f 463/304/391 466/308/392 467/307/353 +f 467/307/353 464/303/349 463/304/391 +f 464/303/349 467/307/353 468/310/350 +f 468/310/350 465/309/350 464/303/349 +f 469/299/393 470/300/93 471/301/394 +f 471/301/394 472/302/356 469/299/393 +f 473/304/395 469/299/393 472/302/356 +f 472/302/356 474/303/396 473/304/395 +f 475/306/350 474/303/396 472/302/356 +f 472/302/356 471/305/394 475/306/350 +f 473/304/395 474/303/396 467/307/353 +f 467/307/353 466/308/392 473/304/395 +f 474/303/396 475/309/350 468/310/350 +f 468/310/350 467/307/353 474/303/396 +f 476/299/390 477/302/397 478/301/346 +f 478/301/346 479/300/295 476/299/390 +f 477/302/397 476/299/390 480/304/391 +f 480/304/391 481/303/398 477/302/397 +f 482/306/350 478/305/346 477/302/397 +f 477/302/397 481/303/398 482/306/350 +f 480/304/391 483/308/392 484/307/399 +f 484/307/399 481/303/398 480/304/391 +f 481/303/398 484/307/399 485/310/350 +f 485/310/350 482/309/350 481/303/398 +f 486/299/393 487/300/93 488/301/394 +f 488/301/394 489/302/356 486/299/393 +f 490/304/395 486/299/393 489/302/356 +f 489/302/356 491/303/400 490/304/395 +f 492/306/350 491/303/400 489/302/356 +f 489/302/356 488/305/394 492/306/350 +f 490/304/395 491/303/400 484/307/399 +f 484/307/399 483/308/392 490/304/395 +f 491/303/400 492/309/350 485/310/350 +f 485/310/350 484/307/399 491/303/400 +f 493/299/362 494/302/401 495/301/364 +f 495/301/364 496/300/295 493/299/362 +f 494/302/401 493/299/362 497/304/402 +f 497/304/402 498/303/366 494/302/401 +f 499/306/367 495/305/364 494/302/401 +f 494/302/401 498/303/366 499/306/367 +f 497/304/402 500/308/368 501/307/369 +f 501/307/369 498/303/366 497/304/402 +f 498/303/366 501/307/369 502/310/370 +f 502/310/370 499/309/367 498/303/366 +f 503/299/371 504/300/93 505/301/372 +f 505/301/372 506/302/373 503/299/371 +f 507/304/374 503/299/371 506/302/373 +f 506/302/373 508/303/403 507/304/374 +f 509/306/367 508/303/403 506/302/373 +f 506/302/373 505/305/372 509/306/367 +f 507/304/374 508/303/403 501/307/369 +f 501/307/369 500/308/368 507/304/374 +f 508/303/403 509/309/367 502/310/370 +f 502/310/370 501/307/369 508/303/403 +f 510/299/404 511/302/405 512/301/406 +f 512/301/406 513/300/295 510/299/404 +f 511/302/405 510/299/404 514/304/407 +f 514/304/407 515/303/408 511/302/405 +f 516/306/409 512/305/406 511/302/405 +f 511/302/405 515/303/408 516/306/409 +f 514/304/407 517/308/410 518/307/411 +f 518/307/411 515/303/408 514/304/407 +f 515/303/408 518/307/411 519/310/409 +f 519/310/409 516/309/409 515/303/408 +f 520/299/412 521/300/93 522/301/413 +f 522/301/413 523/302/414 520/299/412 +f 524/304/415 520/299/412 523/302/414 +f 523/302/414 525/303/416 524/304/415 +f 526/306/409 525/303/416 523/302/414 +f 523/302/414 522/305/413 526/306/409 +f 524/304/415 525/303/416 518/307/411 +f 518/307/411 517/308/410 524/304/415 +f 525/303/416 526/309/409 519/310/409 +f 519/310/409 518/307/411 525/303/416 +f 527/285/345 528/288/346 529/287/347 +f 529/287/347 530/286/417 527/285/345 +f 527/285/345 531/291/349 532/290/350 +f 532/290/350 528/289/346 527/285/345 +f 531/291/349 527/285/345 530/286/417 +f 530/286/417 533/292/418 531/291/349 +f 534/293/352 533/292/418 530/286/417 +f 530/286/417 529/294/347 534/293/352 +f 531/291/349 535/296/353 536/295/350 +f 536/295/350 532/290/350 531/291/349 +f 531/291/349 533/292/418 537/297/419 +f 537/297/419 535/296/353 531/291/349 +f 533/292/418 534/293/352 538/298/352 +f 538/298/352 537/297/419 533/292/418 +f 539/285/356 540/286/357 541/287/358 +f 541/287/358 542/288/394 539/285/356 +f 543/290/350 544/291/396 539/285/356 +f 539/285/356 542/289/394 543/290/350 +f 540/286/357 539/285/356 544/291/396 +f 544/291/396 545/292/420 540/286/357 +f 546/293/352 541/294/358 540/286/357 +f 540/286/357 545/292/420 546/293/352 +f 536/295/350 535/296/353 544/291/396 +f 544/291/396 543/290/350 536/295/350 +f 544/291/396 535/296/353 537/297/419 +f 537/297/419 545/292/420 544/291/396 +f 545/292/420 537/297/419 538/298/352 +f 538/298/352 546/293/352 545/292/420 +f 547/285/345 548/288/346 549/287/421 +f 549/287/421 550/286/422 547/285/345 +f 547/285/345 551/291/349 552/290/350 +f 552/290/350 548/289/346 547/285/345 +f 551/291/349 547/285/345 550/286/422 +f 550/286/422 553/292/418 551/291/349 +f 554/293/352 553/292/418 550/286/422 +f 550/286/422 549/294/421 554/293/352 +f 551/291/349 555/296/353 556/295/354 +f 556/295/354 552/290/350 551/291/349 +f 551/291/349 553/292/418 557/297/419 +f 557/297/419 555/296/353 551/291/349 +f 553/292/418 554/293/352 558/298/352 +f 558/298/352 557/297/419 553/292/418 +f 559/285/356 560/286/357 561/287/358 +f 561/287/358 562/288/394 559/285/356 +f 563/290/350 564/291/360 559/285/356 +f 559/285/356 562/289/394 563/290/350 +f 560/286/357 559/285/356 564/291/360 +f 564/291/360 565/292/423 560/286/357 +f 566/293/352 561/294/358 560/286/357 +f 560/286/357 565/292/423 566/293/352 +f 556/295/354 555/296/353 564/291/360 +f 564/291/360 563/290/350 556/295/354 +f 564/291/360 555/296/353 557/297/419 +f 557/297/419 565/292/423 564/291/360 +f 565/292/423 557/297/419 558/298/352 +f 558/298/352 566/293/352 565/292/423 +f 567/311/424 568/312/425 569/313/426 +f 569/313/426 570/314/424 567/311/424 +f 568/312/425 571/315/295 572/316/295 +f 572/316/295 569/313/426 568/312/425 +f 573/317/424 574/318/424 575/319/427 +f 575/319/427 576/320/428 573/317/424 +f 576/320/428 575/319/427 577/321/94 +f 577/321/94 578/322/94 576/320/428 +f 579/323/424 580/324/424 581/325/429 +f 581/325/429 582/326/430 579/323/424 +f 582/326/430 581/325/429 583/327/431 +f 583/327/431 584/328/431 582/326/430 +f 585/311/424 586/314/424 587/313/432 +f 587/313/432 588/312/433 585/311/424 +f 588/312/433 587/313/432 589/316/93 +f 589/316/93 590/315/93 588/312/433 +f 591/3/434 592/2/435 593/1/436 +f 593/1/436 594/4/437 591/3/434 +f 595/5/438 596/6/439 593/1/436 +f 593/1/436 592/2/435 595/5/438 +f 597/7/440 598/8/441 596/6/439 +f 596/6/439 595/5/438 597/7/440 +f 594/4/437 593/1/436 599/9/442 +f 599/9/442 600/10/443 594/4/437 +f 596/6/439 601/11/444 599/9/442 +f 599/9/442 593/1/436 596/6/439 +f 598/8/441 602/12/445 601/11/444 +f 601/11/444 596/6/439 598/8/441 +f 600/10/443 599/9/442 603/13/446 +f 603/13/446 604/14/447 600/10/443 +f 601/11/444 605/15/448 603/13/446 +f 603/13/446 599/9/442 601/11/444 +f 602/12/445 606/16/449 605/15/448 +f 605/15/448 601/11/444 602/12/445 +f 604/14/447 603/13/446 607/17/450 +f 607/17/450 608/18/451 604/14/447 +f 605/15/448 609/19/452 607/17/450 +f 607/17/450 603/13/446 605/15/448 +f 606/16/449 610/20/453 609/19/452 +f 609/19/452 605/15/448 606/16/449 +f 611/21/454 612/24/455 613/23/456 +f 613/23/456 614/22/457 611/21/454 +f 615/27/458 616/26/459 611/25/454 +f 611/25/454 614/28/457 615/27/458 +f 617/24/460 616/21/459 615/22/458 +f 615/22/458 618/23/461 617/24/460 +f 612/25/455 617/26/460 618/27/461 +f 618/27/461 613/28/456 612/25/455 +f 619/29/462 612/24/455 611/21/454 +f 611/21/454 620/30/463 619/29/462 +f 620/31/463 611/25/454 616/26/459 +f 616/26/459 621/32/464 620/31/463 +f 621/30/464 616/21/459 617/24/460 +f 617/24/460 622/29/465 621/30/464 +f 619/31/462 622/32/465 617/26/460 +f 617/26/460 612/25/455 619/31/462 +f 623/33/466 624/36/467 625/35/468 +f 625/35/468 626/34/469 623/33/466 +f 627/37/470 628/40/471 629/39/472 +f 629/39/472 630/38/473 627/37/470 +f 631/43/474 632/42/475 627/41/470 +f 627/41/470 630/44/473 631/43/474 +f 633/40/476 632/37/475 631/38/474 +f 631/38/474 634/39/477 633/40/476 +f 628/41/471 633/42/476 634/43/477 +f 634/43/477 629/44/472 628/41/471 +f 625/45/468 628/40/471 627/37/470 +f 627/37/470 626/46/469 625/45/468 +f 623/48/466 626/47/469 627/41/470 +f 627/41/470 632/42/475 623/48/466 +f 623/46/466 632/37/475 633/40/476 +f 633/40/476 624/45/467 623/46/466 +f 624/48/467 633/42/476 628/41/471 +f 628/41/471 625/47/468 624/48/467 +f 635/51/478 636/50/479 637/49/480 +f 637/49/480 638/52/481 635/51/478 +f 636/50/479 639/49/482 640/52/483 +f 640/52/483 641/51/484 636/50/479 +f 637/49/480 642/54/485 643/53/486 +f 643/53/486 638/52/481 637/49/480 +f 644/57/487 645/56/488 646/55/489 +f 646/55/489 647/58/490 644/57/487 +f 648/59/491 649/62/492 646/61/489 +f 646/61/489 645/60/488 648/59/491 +f 639/49/482 650/54/493 651/53/494 +f 651/53/494 640/52/483 639/49/482 +f 652/57/495 653/56/496 654/55/497 +f 654/55/497 655/58/498 652/57/495 +f 656/59/499 657/62/500 654/61/497 +f 654/61/497 653/60/496 656/59/499 +f 642/63/485 658/66/501 659/65/502 +f 659/65/502 643/64/486 642/63/485 +f 659/67/502 658/66/501 650/63/493 +f 650/63/493 660/68/494 659/67/502 +f 641/69/484 645/56/488 644/57/487 +f 644/57/487 661/70/503 641/69/484 +f 636/50/479 641/69/484 661/70/503 +f 661/70/503 637/49/480 636/50/479 +f 656/59/499 653/60/496 635/51/478 +f 635/51/478 638/52/481 656/59/499 +f 635/69/478 653/56/496 652/57/495 +f 652/57/495 662/70/483 635/69/478 +f 635/69/478 662/70/483 639/49/482 +f 639/49/482 636/50/479 635/69/478 +f 648/59/491 645/60/488 641/51/484 +f 641/51/484 640/52/483 648/59/491 +f 644/57/487 647/72/490 663/71/504 +f 663/71/504 661/70/503 644/57/487 +f 661/70/503 663/71/504 642/54/485 +f 642/54/485 637/49/480 661/70/503 +f 657/73/500 656/59/499 638/52/481 +f 638/52/481 643/53/486 657/73/500 +f 652/57/495 655/72/498 660/71/494 +f 660/71/494 662/70/483 652/57/495 +f 662/70/483 660/71/494 650/54/493 +f 650/54/493 639/49/482 662/70/483 +f 649/73/492 648/59/491 640/52/483 +f 640/52/483 651/53/494 649/73/492 +f 647/74/490 646/75/489 664/67/505 +f 664/67/505 663/68/504 647/74/490 +f 663/68/504 664/67/505 658/66/501 +f 658/66/501 642/63/485 663/68/504 +f 659/65/502 654/77/497 657/76/500 +f 657/76/500 643/64/486 659/65/502 +f 664/65/505 646/77/489 649/76/492 +f 649/76/492 651/64/494 664/65/505 +f 658/66/501 664/65/505 651/64/494 +f 651/64/494 650/63/493 658/66/501 +f 655/74/498 654/75/497 659/67/502 +f 659/67/502 660/68/494 655/74/498 +f 665/78/506 666/81/507 667/80/508 +f 667/80/508 668/79/509 665/78/506 +f 669/82/510 670/85/511 671/84/512 +f 671/84/512 672/83/513 669/82/510 +f 673/86/514 674/89/515 670/88/511 +f 670/88/511 669/87/510 673/86/514 +f 673/82/514 675/83/516 676/84/517 +f 676/84/517 674/85/515 673/82/514 +f 672/87/513 671/88/512 676/89/517 +f 676/89/517 675/86/516 672/87/513 +f 672/83/513 667/91/508 666/90/507 +f 666/90/507 669/82/510 672/83/513 +f 666/92/507 665/93/506 673/86/514 +f 673/86/514 669/87/510 666/92/507 +f 665/90/506 668/91/509 675/83/516 +f 675/83/516 673/82/514 665/90/506 +f 668/93/509 667/92/508 672/87/513 +f 672/87/513 675/86/516 668/93/509 +f 677/96/518 678/95/519 679/94/519 +f 679/94/519 680/97/520 677/96/518 +f 681/98/521 682/101/522 683/100/523 +f 683/100/523 684/99/524 681/98/521 +f 677/329/518 680/330/520 685/331/525 +f 685/331/525 686/332/525 677/329/518 +f 684/106/524 683/107/523 679/94/519 +f 679/94/519 678/95/519 684/106/524 +f 687/110/526 682/109/522 681/108/521 +f 681/108/521 688/111/526 687/110/526 +f 689/114/527 690/113/528 691/112/529 +f 691/112/529 692/115/530 689/114/527 +f 693/116/531 694/119/531 695/118/532 +f 695/118/532 696/117/532 693/116/531 +f 697/120/533 698/123/424 699/122/534 +f 699/122/534 700/121/535 697/120/533 +f 701/117/536 702/125/536 703/124/537 +f 703/124/537 704/116/537 701/117/536 +f 705/126/111 706/129/111 707/128/538 +f 707/128/538 708/127/538 705/126/111 +f 709/131/539 710/130/540 711/132/541 +f 712/133/542 697/136/533 700/135/535 +f 700/135/535 713/134/543 712/133/542 +f 714/138/544 715/137/545 716/139/546 +f 714/138/544 717/141/547 718/140/548 +f 718/140/548 715/137/545 714/138/544 +f 689/114/527 719/143/549 720/142/550 +f 720/142/550 690/113/528 689/114/527 +f 721/144/551 722/145/552 698/123/424 +f 698/123/424 697/120/533 721/144/551 +f 723/146/553 724/147/553 706/129/111 +f 706/129/111 705/126/111 723/146/553 +f 725/148/554 721/149/551 697/136/533 +f 697/136/533 712/133/542 725/148/554 +f 709/131/539 711/132/541 718/140/548 +f 718/140/548 717/141/547 709/131/539 +f 691/150/529 713/153/543 726/152/555 +f 726/152/555 692/151/530 691/150/529 +f 690/154/528 712/155/542 713/153/543 +f 713/153/543 691/150/529 690/154/528 +f 720/156/550 725/157/554 712/155/542 +f 712/155/542 690/154/528 720/156/550 +f 720/156/550 719/159/549 727/158/556 +f 727/158/556 725/157/554 720/156/550 +f 689/160/527 728/163/557 727/162/556 +f 727/162/556 719/161/549 689/160/527 +f 692/164/530 726/165/555 728/163/557 +f 728/163/557 689/160/527 692/164/530 +f 729/166/558 721/149/551 725/148/554 +f 725/148/554 727/167/556 729/166/558 +f 722/145/552 721/144/551 729/169/558 +f 729/169/558 730/168/559 722/145/552 +f 731/170/560 700/121/535 699/122/534 +f 699/122/534 732/171/561 731/170/560 +f 713/134/543 700/135/535 731/173/560 +f 731/173/560 726/172/555 713/134/543 +f 733/124/562 693/116/531 696/117/532 +f 696/117/532 734/125/563 733/124/562 +f 709/174/539 726/165/555 731/176/560 +f 731/176/560 710/175/540 709/174/539 +f 717/177/547 728/163/557 726/165/555 +f 726/165/555 709/174/539 717/177/547 +f 714/178/544 727/162/556 728/163/557 +f 728/163/557 717/177/547 714/178/544 +f 716/179/546 729/180/558 727/162/556 +f 727/162/556 714/178/544 716/179/546 +f 735/118/564 701/117/536 704/116/537 +f 704/116/537 736/119/565 735/118/564 +f 718/181/548 705/126/111 708/127/538 +f 708/127/538 715/182/545 718/181/548 +f 711/183/541 723/146/553 705/126/111 +f 705/126/111 718/181/548 711/183/541 +f 693/184/531 731/176/560 732/186/561 +f 732/186/561 694/185/531 693/184/531 +f 733/187/562 710/175/540 731/176/560 +f 731/176/560 693/184/531 733/187/562 +f 734/188/563 711/132/541 710/130/540 +f 710/130/540 733/189/562 734/188/563 +f 696/190/532 723/146/553 711/183/541 +f 711/183/541 734/191/563 696/190/532 +f 695/192/532 724/147/553 723/146/553 +f 723/146/553 696/190/532 695/192/532 +f 701/193/536 708/127/538 707/128/538 +f 707/128/538 702/194/536 701/193/536 +f 735/195/564 715/182/545 708/127/538 +f 708/127/538 701/193/536 735/195/564 +f 736/196/565 716/139/546 715/137/545 +f 715/137/545 735/197/564 736/196/565 +f 704/198/537 729/180/558 716/179/546 +f 716/179/546 736/199/565 704/198/537 +f 703/200/537 730/201/559 729/180/558 +f 729/180/558 704/198/537 703/200/537 +f 737/202/566 738/205/567 739/204/568 +f 739/204/568 740/203/568 737/202/566 +f 741/206/569 742/209/570 743/208/571 +f 743/208/571 744/207/572 741/206/569 +f 745/210/573 746/204/574 747/205/575 +f 747/205/575 748/202/576 745/210/573 +f 749/211/577 748/213/576 747/212/575 +f 747/212/575 750/209/578 749/211/577 +f 751/215/579 752/208/580 738/214/567 +f 738/214/567 737/216/566 751/215/579 +f 741/217/569 749/202/577 750/205/578 +f 750/205/578 742/218/570 741/217/569 +f 743/218/571 752/205/580 751/202/579 +f 751/202/579 744/217/572 743/218/571 +f 753/219/581 754/222/582 755/221/583 +f 755/221/583 756/220/584 753/219/581 +f 757/223/585 758/226/586 754/225/582 +f 754/225/582 753/224/581 757/223/585 +f 757/219/585 759/220/587 760/221/588 +f 760/221/588 758/222/586 757/219/585 +f 759/223/587 756/224/584 755/225/583 +f 755/225/583 760/226/588 759/223/587 +f 761/227/589 762/228/590 753/219/581 +f 753/219/581 756/220/584 761/227/589 +f 753/224/581 762/230/590 763/229/591 +f 763/229/591 757/223/585 753/224/581 +f 757/219/585 763/228/591 764/227/592 +f 764/227/592 759/220/587 757/219/585 +f 764/229/592 761/230/589 756/224/584 +f 756/224/584 759/223/587 764/229/592 +f 765/233/593 766/232/594 767/231/595 +f 767/231/595 768/234/596 765/233/593 +f 769/235/597 770/238/598 767/237/595 +f 767/237/595 766/236/594 769/235/597 +f 771/233/599 772/234/600 770/231/598 +f 770/231/598 769/232/597 771/233/599 +f 771/235/599 765/236/593 768/237/596 +f 768/237/596 772/238/600 771/235/599 +f 765/233/593 773/240/601 774/239/602 +f 774/239/602 766/232/594 765/233/593 +f 774/241/602 775/242/603 769/235/597 +f 769/235/597 766/236/594 774/241/602 +f 775/239/603 776/240/604 771/233/599 +f 771/233/599 769/232/597 775/239/603 +f 771/235/599 776/242/604 773/241/601 +f 773/241/601 765/236/593 771/235/599 +f 777/219/605 778/220/606 779/221/607 +f 779/221/607 780/222/608 777/219/605 +f 781/223/609 777/224/605 780/225/608 +f 780/225/608 782/226/610 781/223/609 +f 783/221/611 784/220/612 781/219/609 +f 781/219/609 782/222/610 783/221/611 +f 779/225/607 778/224/606 784/223/612 +f 784/223/612 783/226/611 779/225/607 +f 785/227/613 778/220/606 777/219/605 +f 777/219/605 786/228/614 785/227/613 +f 787/229/615 786/230/614 777/224/605 +f 777/224/605 781/223/609 787/229/615 +f 788/227/616 787/228/615 781/219/609 +f 781/219/609 784/220/612 788/227/616 +f 788/229/616 784/223/612 778/224/606 +f 778/224/606 785/230/613 788/229/616 +f 789/231/617 790/232/618 791/233/619 +f 791/233/619 792/234/620 789/231/617 +f 793/235/621 790/236/618 789/237/617 +f 789/237/617 794/238/622 793/235/621 +f 795/233/623 793/232/621 794/231/622 +f 794/231/622 796/234/624 795/233/623 +f 792/237/620 791/236/619 795/235/623 +f 795/235/623 796/238/624 792/237/620 +f 797/239/625 798/240/626 791/233/619 +f 791/233/619 790/232/618 797/239/625 +f 797/241/625 790/236/618 793/235/621 +f 793/235/621 799/242/627 797/241/625 +f 799/239/627 793/232/621 795/233/623 +f 795/233/623 800/240/628 799/239/627 +f 798/241/626 800/242/628 795/235/623 +f 795/235/623 791/236/619 798/241/626 +f 801/245/629 802/244/630 803/243/631 +f 803/243/631 804/246/632 801/245/629 +f 805/244/633 806/245/634 807/246/635 +f 807/246/635 808/243/424 805/244/633 +f 806/247/634 801/250/629 804/249/632 +f 804/249/632 807/248/635 806/247/634 +f 806/253/634 805/252/633 802/251/630 +f 802/251/630 801/254/629 806/253/634 +f 809/248/636 810/249/637 811/250/638 +f 811/250/638 812/247/639 809/248/636 +f 811/245/638 810/246/637 803/243/631 +f 803/243/631 802/244/630 811/245/638 +f 809/246/636 812/245/639 805/244/633 +f 805/244/633 808/243/424 809/246/636 +f 812/253/639 811/254/638 802/251/630 +f 802/251/630 805/252/633 812/253/639 +f 813/255/640 814/258/641 815/257/642 +f 815/257/642 816/256/643 813/255/640 +f 813/255/640 817/260/644 818/259/645 +f 818/259/645 814/258/641 813/255/640 +f 819/263/646 820/262/647 813/261/640 +f 813/261/640 816/264/643 819/263/646 +f 820/262/647 821/266/648 817/265/644 +f 817/265/644 813/261/640 820/262/647 +f 822/269/649 823/268/650 820/267/647 +f 820/267/647 819/270/646 822/269/649 +f 824/271/651 821/272/648 820/267/647 +f 820/267/647 823/268/650 824/271/651 +f 814/261/641 823/262/650 822/263/649 +f 822/263/649 815/264/642 814/261/641 +f 818/265/645 824/266/651 823/262/650 +f 823/262/650 814/261/641 818/265/645 +f 825/255/652 826/256/653 827/257/654 +f 827/257/654 828/258/655 825/255/652 +f 829/259/656 830/260/657 825/255/652 +f 825/255/652 828/258/655 829/259/656 +f 825/261/652 831/262/658 832/263/659 +f 832/263/659 826/264/653 825/261/652 +f 830/265/657 833/266/660 831/262/658 +f 831/262/658 825/261/652 830/265/657 +f 831/267/658 834/268/661 835/269/662 +f 835/269/662 832/270/659 831/267/658 +f 836/271/663 834/268/661 831/267/658 +f 831/267/658 833/272/660 836/271/663 +f 828/261/655 827/264/654 835/263/662 +f 835/263/662 834/262/661 828/261/655 +f 829/265/656 828/261/655 834/262/661 +f 834/262/661 836/266/663 829/265/656 +f 837/255/664 838/256/665 839/257/666 +f 839/257/666 840/258/667 837/255/664 +f 841/259/668 842/260/669 837/255/664 +f 837/255/664 840/258/667 841/259/668 +f 837/261/664 843/262/670 844/263/671 +f 844/263/671 838/264/665 837/261/664 +f 842/265/669 845/266/672 843/262/670 +f 843/262/670 837/261/664 842/265/669 +f 843/267/670 846/268/673 847/269/674 +f 847/269/674 844/270/671 843/267/670 +f 848/271/675 846/268/673 843/267/670 +f 843/267/670 845/272/672 848/271/675 +f 840/261/667 839/264/666 847/263/674 +f 847/263/674 846/262/673 840/261/667 +f 841/265/668 840/261/667 846/262/673 +f 846/262/673 848/266/675 841/265/668 +f 849/285/676 850/288/677 851/287/678 +f 851/287/678 852/286/679 849/285/676 +f 849/285/676 853/291/680 854/290/681 +f 854/290/681 850/289/677 849/285/676 +f 853/291/680 849/285/676 852/286/679 +f 852/286/679 855/292/682 853/291/680 +f 856/293/683 855/292/682 852/286/679 +f 852/286/679 851/294/678 856/293/683 +f 853/291/680 857/296/684 858/295/681 +f 858/295/681 854/290/681 853/291/680 +f 853/291/680 855/292/682 859/297/685 +f 859/297/685 857/296/684 853/291/680 +f 855/292/682 856/293/683 860/298/683 +f 860/298/683 859/297/685 855/292/682 +f 861/285/686 862/286/687 863/287/688 +f 863/287/688 864/288/689 861/285/686 +f 865/290/681 866/291/690 861/285/686 +f 861/285/686 864/289/689 865/290/681 +f 862/286/687 861/285/686 866/291/690 +f 866/291/690 867/292/691 862/286/687 +f 868/293/683 863/294/688 862/286/687 +f 862/286/687 867/292/691 868/293/683 +f 858/295/681 857/296/684 866/291/690 +f 866/291/690 865/290/681 858/295/681 +f 866/291/690 857/296/684 859/297/685 +f 859/297/685 867/292/691 866/291/690 +f 867/292/691 859/297/685 860/298/683 +f 860/298/683 868/293/683 867/292/691 +f 869/299/692 870/302/676 871/301/693 +f 871/301/693 872/300/694 869/299/692 +f 870/302/676 869/299/692 873/304/695 +f 873/304/695 874/303/696 870/302/676 +f 875/306/697 871/305/693 870/302/676 +f 870/302/676 874/303/696 875/306/697 +f 873/304/695 876/308/698 877/307/684 +f 877/307/684 874/303/696 873/304/695 +f 874/303/696 877/307/684 878/310/697 +f 878/310/697 875/309/697 874/303/696 +f 879/299/699 880/300/700 881/301/689 +f 881/301/689 882/302/701 879/299/699 +f 883/304/702 879/299/699 882/302/701 +f 882/302/701 884/303/690 883/304/702 +f 885/306/697 884/303/690 882/302/701 +f 882/302/701 881/305/689 885/306/697 +f 883/304/702 884/303/690 877/307/684 +f 877/307/684 876/308/698 883/304/702 +f 884/303/690 885/309/697 878/310/697 +f 878/310/697 877/307/684 884/303/690 +f 886/299/703 887/302/704 888/301/705 +f 888/301/705 889/300/694 886/299/703 +f 887/302/704 886/299/703 890/304/706 +f 890/304/706 891/303/707 887/302/704 +f 892/306/708 888/305/705 887/302/704 +f 887/302/704 891/303/707 892/306/708 +f 890/304/706 893/308/709 894/307/710 +f 894/307/710 891/303/707 890/304/706 +f 891/303/707 894/307/710 895/310/708 +f 895/310/708 892/309/708 891/303/707 +f 896/299/711 897/300/525 898/301/712 +f 898/301/712 899/302/713 896/299/711 +f 900/304/714 896/299/711 899/302/713 +f 899/302/713 901/303/715 900/304/714 +f 902/306/708 901/303/715 899/302/713 +f 899/302/713 898/305/712 902/306/708 +f 900/304/714 901/303/715 894/307/710 +f 894/307/710 893/308/709 900/304/714 +f 901/303/715 902/309/708 895/310/708 +f 895/310/708 894/307/710 901/303/715 +f 903/299/716 904/302/717 905/301/718 +f 905/301/718 906/300/694 903/299/716 +f 904/302/717 903/299/716 907/304/719 +f 907/304/719 908/303/720 904/302/717 +f 909/306/721 905/305/718 904/302/717 +f 904/302/717 908/303/720 909/306/721 +f 907/304/719 910/308/722 911/307/723 +f 911/307/723 908/303/720 907/304/719 +f 908/303/720 911/307/723 912/310/721 +f 912/310/721 909/309/721 908/303/720 +f 913/299/724 914/300/525 915/301/725 +f 915/301/725 916/302/726 913/299/724 +f 917/304/727 913/299/724 916/302/726 +f 916/302/726 918/303/728 917/304/727 +f 919/306/721 918/303/728 916/302/726 +f 916/302/726 915/305/725 919/306/721 +f 917/304/727 918/303/728 911/307/723 +f 911/307/723 910/308/722 917/304/727 +f 918/303/728 919/309/721 912/310/721 +f 912/310/721 911/307/723 918/303/728 +f 920/299/716 921/302/729 922/301/730 +f 922/301/730 923/300/694 920/299/716 +f 921/302/729 920/299/716 924/304/731 +f 924/304/731 925/303/720 921/302/729 +f 926/306/721 922/305/730 921/302/729 +f 921/302/729 925/303/720 926/306/721 +f 924/304/731 927/308/732 928/307/723 +f 928/307/723 925/303/720 924/304/731 +f 925/303/720 928/307/723 929/310/721 +f 929/310/721 926/309/721 925/303/720 +f 930/299/724 931/300/525 932/301/725 +f 932/301/725 933/302/726 930/299/724 +f 934/304/733 930/299/724 933/302/726 +f 933/302/726 935/303/728 934/304/733 +f 936/306/721 935/303/728 933/302/726 +f 933/302/726 932/305/725 936/306/721 +f 934/304/733 935/303/728 928/307/723 +f 928/307/723 927/308/732 934/304/733 +f 935/303/728 936/309/721 929/310/721 +f 929/310/721 928/307/723 935/303/728 +f 937/299/716 938/302/717 939/301/730 +f 939/301/730 940/300/694 937/299/716 +f 938/302/717 937/299/716 941/304/731 +f 941/304/731 942/303/720 938/302/717 +f 943/306/721 939/305/730 938/302/717 +f 938/302/717 942/303/720 943/306/721 +f 941/304/731 944/308/722 945/307/734 +f 945/307/734 942/303/720 941/304/731 +f 942/303/720 945/307/734 946/310/721 +f 946/310/721 943/309/721 942/303/720 +f 947/299/724 948/300/700 949/301/725 +f 949/301/725 950/302/726 947/299/724 +f 951/304/733 947/299/724 950/302/726 +f 950/302/726 952/303/728 951/304/733 +f 953/306/721 952/303/728 950/302/726 +f 950/302/726 949/305/725 953/306/721 +f 951/304/733 952/303/728 945/307/734 +f 945/307/734 944/308/722 951/304/733 +f 952/303/728 953/309/721 946/310/721 +f 946/310/721 945/307/734 952/303/728 +f 954/299/735 955/302/736 956/301/737 +f 956/301/737 957/300/694 954/299/735 +f 955/302/736 954/299/735 958/304/738 +f 958/304/738 959/303/739 955/302/736 +f 960/306/740 956/305/737 955/302/736 +f 955/302/736 959/303/739 960/306/740 +f 958/304/738 961/308/741 962/307/742 +f 962/307/742 959/303/739 958/304/738 +f 959/303/739 962/307/742 963/310/740 +f 963/310/740 960/309/740 959/303/739 +f 964/299/743 965/300/525 966/301/744 +f 966/301/744 967/302/745 964/299/743 +f 968/304/746 964/299/743 967/302/745 +f 967/302/745 969/303/747 968/304/746 +f 970/306/740 969/303/747 967/302/745 +f 967/302/745 966/305/744 970/306/740 +f 968/304/746 969/303/747 962/307/742 +f 962/307/742 961/308/741 968/304/746 +f 969/303/747 970/309/740 963/310/740 +f 963/310/740 962/307/742 969/303/747 +f 971/285/748 972/286/749 973/287/750 +f 973/287/750 974/288/751 971/285/748 +f 971/285/748 974/289/751 975/290/752 +f 975/290/752 976/291/753 971/285/748 +f 976/291/753 977/292/754 972/286/749 +f 972/286/749 971/285/748 976/291/753 +f 972/286/749 977/292/754 978/293/755 +f 978/293/755 973/294/750 972/286/749 +f 979/295/756 980/296/757 976/291/753 +f 976/291/753 975/290/752 979/295/756 +f 976/291/753 980/296/757 981/297/758 +f 981/297/758 977/292/754 976/291/753 +f 977/292/754 981/297/758 982/298/755 +f 982/298/755 978/293/755 977/292/754 +f 983/285/759 984/288/760 985/287/761 +f 985/287/761 986/286/762 983/285/759 +f 987/290/752 984/289/760 983/285/759 +f 983/285/759 988/291/763 987/290/752 +f 986/286/762 989/292/764 988/291/763 +f 988/291/763 983/285/759 986/286/762 +f 986/286/762 985/294/761 990/293/755 +f 990/293/755 989/292/764 986/286/762 +f 988/291/763 980/296/757 979/295/756 +f 979/295/756 987/290/752 988/291/763 +f 988/291/763 989/292/764 981/297/758 +f 981/297/758 980/296/757 988/291/763 +f 989/292/764 990/293/755 982/298/755 +f 982/298/755 981/297/758 989/292/764 +f 991/299/765 992/300/694 993/301/766 +f 993/301/766 994/302/767 991/299/765 +f 994/302/767 995/303/768 996/304/769 +f 996/304/769 991/299/765 994/302/767 +f 994/302/767 993/305/766 997/306/770 +f 997/306/770 995/303/768 994/302/767 +f 996/304/769 995/303/768 998/307/771 +f 998/307/771 999/308/772 996/304/769 +f 995/303/768 997/309/770 1000/310/770 +f 1000/310/770 998/307/771 995/303/768 +f 1001/299/773 1002/302/774 1003/301/775 +f 1003/301/775 1004/300/776 1001/299/773 +f 1005/304/777 1006/303/778 1002/302/774 +f 1002/302/774 1001/299/773 1005/304/777 +f 1002/302/774 1006/303/778 1007/306/770 +f 1007/306/770 1003/305/775 1002/302/774 +f 1005/304/777 999/308/772 998/307/771 +f 998/307/771 1006/303/778 1005/304/777 +f 1006/303/778 998/307/771 1000/310/770 +f 1000/310/770 1007/309/770 1006/303/778 +f 1008/299/779 1009/300/694 1010/301/780 +f 1010/301/780 1011/302/781 1008/299/779 +f 1011/302/781 1012/303/782 1013/304/783 +f 1013/304/783 1008/299/779 1011/302/781 +f 1011/302/781 1010/305/780 1014/306/784 +f 1014/306/784 1012/303/782 1011/302/781 +f 1013/304/783 1012/303/782 1015/307/785 +f 1015/307/785 1016/308/786 1013/304/783 +f 1012/303/782 1014/309/784 1017/310/784 +f 1017/310/784 1015/307/785 1012/303/782 +f 1018/299/787 1019/302/788 1020/301/789 +f 1020/301/789 1021/300/525 1018/299/787 +f 1022/304/790 1023/303/791 1019/302/788 +f 1019/302/788 1018/299/787 1022/304/790 +f 1019/302/788 1023/303/791 1024/306/784 +f 1024/306/784 1020/305/789 1019/302/788 +f 1022/304/790 1016/308/786 1015/307/785 +f 1015/307/785 1023/303/791 1022/304/790 +f 1023/303/791 1015/307/785 1017/310/784 +f 1017/310/784 1024/309/784 1023/303/791 +f 1025/299/792 1026/300/694 1027/301/751 +f 1027/301/751 1028/302/748 1025/299/792 +f 1028/302/748 1029/303/793 1030/304/794 +f 1030/304/794 1025/299/792 1028/302/748 +f 1028/302/748 1027/305/751 1031/306/756 +f 1031/306/756 1029/303/793 1028/302/748 +f 1030/304/794 1029/303/793 1032/307/757 +f 1032/307/757 1033/308/795 1030/304/794 +f 1029/303/793 1031/309/756 1034/310/756 +f 1034/310/756 1032/307/757 1029/303/793 +f 1035/299/796 1036/302/759 1037/301/760 +f 1037/301/760 1038/300/700 1035/299/796 +f 1039/304/797 1040/303/763 1036/302/759 +f 1036/302/759 1035/299/796 1039/304/797 +f 1036/302/759 1040/303/763 1041/306/756 +f 1041/306/756 1037/305/760 1036/302/759 +f 1039/304/797 1033/308/795 1032/307/757 +f 1032/307/757 1040/303/763 1039/304/797 +f 1040/303/763 1032/307/757 1034/310/756 +f 1034/310/756 1041/309/756 1040/303/763 +f 1042/299/792 1043/300/694 1044/301/751 +f 1044/301/751 1045/302/748 1042/299/792 +f 1045/302/748 1046/303/753 1047/304/794 +f 1047/304/794 1042/299/792 1045/302/748 +f 1045/302/748 1044/305/751 1048/306/756 +f 1048/306/756 1046/303/753 1045/302/748 +f 1047/304/794 1046/303/753 1049/307/757 +f 1049/307/757 1050/308/795 1047/304/794 +f 1046/303/753 1048/309/756 1051/310/756 +f 1051/310/756 1049/307/757 1046/303/753 +f 1052/299/796 1053/302/759 1054/301/760 +f 1054/301/760 1055/300/700 1052/299/796 +f 1056/304/797 1057/303/763 1053/302/759 +f 1053/302/759 1052/299/796 1056/304/797 +f 1053/302/759 1057/303/763 1058/306/756 +f 1058/306/756 1054/305/760 1053/302/759 +f 1056/304/797 1050/308/795 1049/307/757 +f 1049/307/757 1057/303/763 1056/304/797 +f 1057/303/763 1049/307/757 1051/310/756 +f 1051/310/756 1058/309/756 1057/303/763 +f 1059/299/765 1060/300/694 1061/301/798 +f 1061/301/798 1062/302/767 1059/299/765 +f 1062/302/767 1063/303/799 1064/304/769 +f 1064/304/769 1059/299/765 1062/302/767 +f 1062/302/767 1061/305/798 1065/306/770 +f 1065/306/770 1063/303/799 1062/302/767 +f 1064/304/769 1063/303/799 1066/307/771 +f 1066/307/771 1067/308/772 1064/304/769 +f 1063/303/799 1065/309/770 1068/310/770 +f 1068/310/770 1066/307/771 1063/303/799 +f 1069/299/773 1070/302/774 1071/301/800 +f 1071/301/800 1072/300/525 1069/299/773 +f 1073/304/777 1074/303/801 1070/302/774 +f 1070/302/774 1069/299/773 1073/304/777 +f 1070/302/774 1074/303/801 1075/306/770 +f 1075/306/770 1071/305/800 1070/302/774 +f 1073/304/777 1067/308/772 1066/307/771 +f 1066/307/771 1074/303/801 1073/304/777 +f 1074/303/801 1066/307/771 1068/310/770 +f 1068/310/770 1075/309/770 1074/303/801 +f 1076/299/802 1077/300/694 1078/301/803 +f 1078/301/803 1079/302/804 1076/299/802 +f 1079/302/804 1080/303/805 1081/304/806 +f 1081/304/806 1076/299/802 1079/302/804 +f 1079/302/804 1078/305/803 1082/306/807 +f 1082/306/807 1080/303/805 1079/302/804 +f 1081/304/806 1080/303/805 1083/307/808 +f 1083/307/808 1084/308/722 1081/304/806 +f 1080/303/805 1082/309/807 1085/310/807 +f 1085/310/807 1083/307/808 1080/303/805 +f 1086/299/809 1087/302/810 1088/301/811 +f 1088/301/811 1089/300/700 1086/299/809 +f 1090/304/812 1091/303/813 1087/302/810 +f 1087/302/810 1086/299/809 1090/304/812 +f 1087/302/810 1091/303/813 1092/306/807 +f 1092/306/807 1088/305/811 1087/302/810 +f 1090/304/812 1084/308/722 1083/307/808 +f 1083/307/808 1091/303/813 1090/304/812 +f 1091/303/813 1083/307/808 1085/310/807 +f 1085/310/807 1092/309/807 1091/303/813 +f 1093/285/748 1094/286/749 1095/287/750 +f 1095/287/750 1096/288/751 1093/285/748 +f 1093/285/748 1096/289/751 1097/290/752 +f 1097/290/752 1098/291/753 1093/285/748 +f 1098/291/753 1099/292/754 1094/286/749 +f 1094/286/749 1093/285/748 1098/291/753 +f 1094/286/749 1099/292/754 1100/293/755 +f 1100/293/755 1095/294/750 1094/286/749 +f 1101/295/756 1102/296/757 1098/291/753 +f 1098/291/753 1097/290/752 1101/295/756 +f 1098/291/753 1102/296/757 1103/297/758 +f 1103/297/758 1099/292/754 1098/291/753 +f 1099/292/754 1103/297/758 1104/298/755 +f 1104/298/755 1100/293/755 1099/292/754 +f 1105/285/759 1106/288/760 1107/287/814 +f 1107/287/814 1108/286/815 1105/285/759 +f 1109/290/752 1106/289/760 1105/285/759 +f 1105/285/759 1110/291/763 1109/290/752 +f 1108/286/815 1111/292/764 1110/291/763 +f 1110/291/763 1105/285/759 1108/286/815 +f 1108/286/815 1107/294/814 1112/293/755 +f 1112/293/755 1111/292/764 1108/286/815 +f 1110/291/763 1102/296/757 1101/295/756 +f 1101/295/756 1109/290/752 1110/291/763 +f 1110/291/763 1111/292/764 1103/297/758 +f 1103/297/758 1102/296/757 1110/291/763 +f 1111/292/764 1112/293/755 1104/298/755 +f 1104/298/755 1103/297/758 1111/292/764 +f 1113/285/748 1114/286/749 1115/287/750 +f 1115/287/750 1116/288/816 1113/285/748 +f 1113/285/748 1116/289/816 1117/290/752 +f 1117/290/752 1118/291/793 1113/285/748 +f 1118/291/793 1119/292/754 1114/286/749 +f 1114/286/749 1113/285/748 1118/291/793 +f 1114/286/749 1119/292/754 1120/293/755 +f 1120/293/755 1115/294/750 1114/286/749 +f 1121/295/756 1122/296/757 1118/291/793 +f 1118/291/793 1117/290/752 1121/295/756 +f 1118/291/793 1122/296/757 1123/297/758 +f 1123/297/758 1119/292/754 1118/291/793 +f 1119/292/754 1123/297/758 1124/298/755 +f 1124/298/755 1120/293/755 1119/292/754 +f 1125/285/759 1126/288/760 1127/287/814 +f 1127/287/814 1128/286/817 1125/285/759 +f 1129/290/752 1126/289/760 1125/285/759 +f 1125/285/759 1130/291/763 1129/290/752 +f 1128/286/817 1131/292/764 1130/291/763 +f 1130/291/763 1125/285/759 1128/286/817 +f 1128/286/817 1127/294/814 1132/293/755 +f 1132/293/755 1131/292/764 1128/286/817 +f 1130/291/763 1122/296/757 1121/295/756 +f 1121/295/756 1129/290/752 1130/291/763 +f 1130/291/763 1131/292/764 1123/297/758 +f 1123/297/758 1122/296/757 1130/291/763 +f 1131/292/764 1132/293/755 1124/298/755 +f 1124/298/755 1123/297/758 1131/292/764 +f 1133/311/424 1134/314/424 1135/313/531 +f 1135/313/531 1136/312/531 1133/311/424 +f 1136/312/531 1135/313/531 1137/316/694 +f 1137/316/694 1138/315/694 1136/312/531 +f 1139/317/424 1140/320/818 1141/319/818 +f 1141/319/818 1142/318/424 1139/317/424 +f 1140/320/818 1143/322/526 1144/321/526 +f 1144/321/526 1141/319/818 1140/320/818 +f 1145/323/424 1146/326/819 1147/325/819 +f 1147/325/819 1148/324/424 1145/323/424 +f 1146/326/819 1149/328/820 1150/327/820 +f 1150/327/820 1147/325/819 1146/326/819 +f 1151/311/424 1152/312/537 1153/313/537 +f 1153/313/537 1154/314/424 1151/311/424 +f 1152/312/537 1155/315/525 1156/316/525 +f 1156/316/525 1153/313/537 1152/312/537 +f 1157/275/821 1158/274/822 1159/273/823 +f 1159/273/823 1160/276/824 1157/275/821 +f 1161/277/825 1162/280/826 1159/279/823 +f 1159/279/823 1158/278/822 1161/277/825 +f 1163/275/827 1164/276/828 1162/273/826 +f 1162/273/826 1161/274/825 1163/275/827 +f 1163/277/827 1157/278/821 1160/279/824 +f 1160/279/824 1164/280/828 1163/277/827 +f 1157/275/821 1165/282/829 1166/281/830 +f 1166/281/830 1158/274/822 1157/275/821 +f 1166/283/830 1167/284/831 1161/277/825 +f 1161/277/825 1158/278/822 1166/283/830 +f 1167/281/831 1168/282/832 1163/275/827 +f 1163/275/827 1161/274/825 1167/281/831 +f 1163/277/827 1168/284/832 1165/283/829 +f 1165/283/829 1157/278/821 1163/277/827 +f 1169/273/833 1170/274/834 1171/275/835 +f 1171/275/835 1172/276/836 1169/273/833 +f 1173/277/837 1170/278/834 1169/279/833 +f 1169/279/833 1174/280/838 1173/277/837 +f 1175/275/839 1173/274/837 1174/273/838 +f 1174/273/838 1176/276/840 1175/275/839 +f 1172/279/836 1171/278/835 1175/277/839 +f 1175/277/839 1176/280/840 1172/279/836 +f 1177/281/841 1178/282/842 1171/275/835 +f 1171/275/835 1170/274/834 1177/281/841 +f 1177/283/841 1170/278/834 1173/277/837 +f 1173/277/837 1179/284/843 1177/283/841 +f 1179/281/843 1173/274/837 1175/275/839 +f 1175/275/839 1180/282/844 1179/281/843 +f 1178/283/842 1180/284/844 1175/277/839 +f 1175/277/839 1171/278/835 1178/283/842 +f 1181/333/845 1182/334/846 1183/335/847 +f 1183/335/847 1184/336/848 1181/333/845 +f 1182/334/846 1185/337/849 1186/338/850 +f 1186/338/850 1183/335/847 1182/334/846 +f 1183/335/847 1187/339/851 1188/340/852 +f 1188/340/852 1184/336/848 1183/335/847 +f 1183/335/847 1186/338/850 1189/341/853 +f 1189/341/853 1187/339/851 1183/335/847 +f 1190/21/854 1191/24/855 1192/23/856 +f 1192/23/856 1193/22/857 1190/21/854 +f 1194/27/858 1195/26/859 1190/25/854 +f 1190/25/854 1193/28/857 1194/27/858 +f 1196/24/860 1195/21/859 1194/22/858 +f 1194/22/858 1197/23/861 1196/24/860 +f 1191/25/855 1196/26/860 1197/27/861 +f 1197/27/861 1192/28/856 1191/25/855 +f 1198/29/862 1191/24/855 1190/21/854 +f 1190/21/854 1199/30/863 1198/29/862 +f 1199/31/863 1190/25/854 1195/26/859 +f 1195/26/859 1200/32/864 1199/31/863 +f 1200/30/864 1195/21/859 1196/24/860 +f 1196/24/860 1201/29/865 1200/30/864 +f 1198/31/862 1201/32/865 1196/26/860 +f 1196/26/860 1191/25/855 1198/31/862 +f 1202/21/21 1203/22/22 1204/23/23 +f 1204/23/23 1205/24/866 1202/21/21 +f 1202/25/21 1206/26/25 1207/27/867 +f 1207/27/867 1203/28/22 1202/25/21 +f 1208/24/27 1209/23/868 1207/22/867 +f 1207/22/867 1206/21/25 1208/24/27 +f 1205/25/866 1204/28/23 1209/27/868 +f 1209/27/868 1208/26/27 1205/25/866 +f 1210/29/869 1211/30/30 1202/21/21 +f 1202/21/21 1205/24/866 1210/29/869 +f 1211/31/30 1212/32/870 1206/26/25 +f 1206/26/25 1202/25/21 1211/31/30 +f 1212/30/870 1213/29/871 1208/24/27 +f 1208/24/27 1206/21/25 1212/30/870 +f 1208/26/27 1213/32/871 1210/31/869 +f 1210/31/869 1205/25/866 1208/26/27 +f 1214/33/872 1215/36/873 1216/35/874 +f 1216/35/874 1217/34/875 1214/33/872 +f 1218/38/876 1219/37/877 1220/40/878 +f 1220/40/878 1221/39/879 1218/38/876 +f 1222/43/880 1223/42/881 1219/41/877 +f 1219/41/877 1218/44/876 1222/43/880 +f 1224/40/882 1223/37/881 1222/38/880 +f 1222/38/880 1225/39/883 1224/40/882 +f 1220/41/878 1224/42/882 1225/43/883 +f 1225/43/883 1221/44/879 1220/41/878 +f 1217/46/875 1216/45/874 1220/40/878 +f 1220/40/878 1219/37/877 1217/46/875 +f 1214/48/872 1217/47/875 1219/41/877 +f 1219/41/877 1223/42/881 1214/48/872 +f 1214/46/872 1223/37/881 1224/40/882 +f 1224/40/882 1215/45/873 1214/46/872 +f 1215/48/873 1224/42/882 1220/41/878 +f 1220/41/878 1216/47/874 1215/48/873 +f 1226/342/884 1227/343/885 1228/344/886 +f 1228/344/886 1229/345/887 1226/342/884 +f 1230/346/888 1231/347/889 1228/344/886 +f 1228/344/886 1227/343/885 1230/346/888 +f 1232/348/890 1227/349/885 1226/350/884 +f 1226/350/884 1233/351/891 1232/348/890 +f 1232/348/890 1234/352/892 1230/353/888 +f 1230/353/888 1227/349/885 1232/348/890 +f 1235/344/893 1232/343/890 1233/342/891 +f 1233/342/891 1236/345/894 1235/344/893 +f 1235/344/893 1237/347/895 1234/346/892 +f 1234/346/892 1232/343/890 1235/344/893 +f 1229/350/887 1228/349/886 1235/348/893 +f 1235/348/893 1236/351/894 1229/350/887 +f 1231/353/889 1237/352/895 1235/348/893 +f 1235/348/893 1228/349/886 1231/353/889 +f 1238/354/896 1239/355/897 1240/356/898 +f 1240/356/898 1241/357/899 1238/354/896 +f 1242/358/900 1243/359/901 1244/360/901 +f 1244/360/901 1245/361/88 1242/358/900 +f 1246/362/902 1242/363/900 1245/364/88 +f 1245/364/88 1247/365/902 1246/362/902 +f 1248/366/92 1246/367/902 1247/368/902 +f 1247/368/902 1249/369/92 1248/366/92 +f 1243/370/901 1248/371/92 1249/372/92 +f 1249/372/92 1244/373/901 1243/370/901 +f 1250/357/903 1251/356/904 1252/374/905 +f 1252/374/905 1253/375/906 1250/357/903 +f 1254/354/907 1250/357/903 1253/375/906 +f 1253/375/906 1255/376/908 1254/354/907 +f 1256/355/909 1254/354/907 1255/376/908 +f 1255/376/908 1257/377/910 1256/355/909 +f 1251/356/904 1256/355/909 1257/377/910 +f 1257/377/910 1252/374/905 1251/356/904 +f 1253/378/906 1252/379/905 1243/359/901 +f 1243/359/901 1242/358/900 1253/378/906 +f 1255/380/908 1253/381/906 1242/363/900 +f 1242/363/900 1246/362/902 1255/380/908 +f 1257/382/910 1255/383/908 1246/367/902 +f 1246/367/902 1248/366/92 1257/382/910 +f 1252/384/905 1257/385/910 1248/371/92 +f 1248/371/92 1243/370/901 1252/384/905 +f 1251/386/904 1250/387/903 1241/388/899 +f 1241/388/899 1240/389/898 1251/386/904 +f 1256/386/909 1251/387/904 1240/388/898 +f 1240/388/898 1239/389/897 1256/386/909 +f 1254/386/907 1256/387/909 1239/388/897 +f 1239/388/897 1238/389/896 1254/386/907 +f 1250/387/903 1254/386/907 1238/389/896 +f 1238/389/896 1241/388/899 1250/387/903 +f 1258/342/884 1259/343/885 1260/344/886 +f 1260/344/886 1261/345/887 1258/342/884 +f 1262/346/888 1263/347/889 1260/344/886 +f 1260/344/886 1259/343/885 1262/346/888 +f 1264/348/890 1259/349/885 1258/350/884 +f 1258/350/884 1265/351/891 1264/348/890 +f 1264/348/890 1266/352/892 1262/353/888 +f 1262/353/888 1259/349/885 1264/348/890 +f 1267/344/893 1264/343/890 1265/342/891 +f 1265/342/891 1268/345/894 1267/344/893 +f 1267/344/893 1269/347/895 1266/346/892 +f 1266/346/892 1264/343/890 1267/344/893 +f 1261/350/887 1260/349/886 1267/348/893 +f 1267/348/893 1268/351/894 1261/350/887 +f 1263/353/889 1269/352/895 1267/348/893 +f 1267/348/893 1260/349/886 1263/353/889 +f 1270/342/884 1271/343/885 1272/344/886 +f 1272/344/886 1273/345/887 1270/342/884 +f 1274/346/888 1275/347/889 1272/344/886 +f 1272/344/886 1271/343/885 1274/346/888 +f 1276/348/890 1271/349/885 1270/350/884 +f 1270/350/884 1277/351/891 1276/348/890 +f 1276/348/890 1278/352/892 1274/353/888 +f 1274/353/888 1271/349/885 1276/348/890 +f 1279/344/893 1276/343/890 1277/342/891 +f 1277/342/891 1280/345/894 1279/344/893 +f 1279/344/893 1281/347/895 1278/346/892 +f 1278/346/892 1276/343/890 1279/344/893 +f 1273/350/887 1272/349/886 1279/348/893 +f 1279/348/893 1280/351/894 1273/350/887 +f 1275/353/889 1281/352/895 1279/348/893 +f 1279/348/893 1272/349/886 1275/353/889 +f 1282/342/884 1283/343/885 1284/344/911 +f 1284/344/911 1285/345/887 1282/342/884 +f 1286/346/888 1287/347/889 1284/344/911 +f 1284/344/911 1283/343/885 1286/346/888 +f 1288/348/912 1283/349/885 1282/350/884 +f 1282/350/884 1289/351/891 1288/348/912 +f 1288/348/912 1290/352/892 1286/353/888 +f 1286/353/888 1283/349/885 1288/348/912 +f 1291/344/893 1288/343/912 1289/342/891 +f 1289/342/891 1292/345/894 1291/344/893 +f 1291/344/893 1293/347/895 1290/346/892 +f 1290/346/892 1288/343/912 1291/344/893 +f 1285/350/887 1284/349/911 1291/348/893 +f 1291/348/893 1292/351/894 1285/350/887 +f 1287/353/889 1293/352/895 1291/348/893 +f 1291/348/893 1284/349/911 1287/353/889 +f 1294/342/884 1295/343/885 1296/344/911 +f 1296/344/911 1297/345/887 1294/342/884 +f 1298/346/888 1299/347/889 1296/344/911 +f 1296/344/911 1295/343/885 1298/346/888 +f 1300/348/912 1295/349/885 1294/350/884 +f 1294/350/884 1301/351/891 1300/348/912 +f 1300/348/912 1302/352/892 1298/353/888 +f 1298/353/888 1295/349/885 1300/348/912 +f 1303/344/893 1300/343/912 1301/342/891 +f 1301/342/891 1304/345/894 1303/344/893 +f 1303/344/893 1305/347/895 1302/346/892 +f 1302/346/892 1300/343/912 1303/344/893 +f 1297/350/887 1296/349/911 1303/348/893 +f 1303/348/893 1304/351/894 1297/350/887 +f 1299/353/889 1305/352/895 1303/348/893 +f 1303/348/893 1296/349/911 1299/353/889 +f 1306/390/913 1307/391/914 1308/392/915 +f 1308/392/915 1309/393/916 1306/390/913 +f 1310/394/917 1311/395/918 1312/396/919 +f 1312/396/919 1313/397/920 1310/394/917 +f 1314/390/921 1315/398/922 1316/399/923 +f 1316/399/923 1317/393/924 1314/390/921 +f 1318/394/925 1319/400/926 1320/401/927 +f 1320/401/927 1321/397/928 1318/394/925 +f 1321/402/928 1322/403/929 1323/404/930 +f 1323/404/930 1308/405/915 1321/402/928 +f 1317/406/924 1324/407/931 1325/408/932 +f 1325/408/932 1320/409/927 1317/406/924 +f 1313/410/920 1326/411/933 1327/412/934 +f 1327/412/934 1316/413/923 1313/410/920 +f 1309/414/916 1328/415/935 1329/416/936 +f 1329/416/936 1312/417/919 1309/414/916 +f 1306/414/913 1330/415/424 1331/404/424 +f 1331/404/424 1307/405/914 1306/414/913 +f 1310/410/917 1332/411/424 1333/416/424 +f 1333/416/424 1311/417/918 1310/410/917 +f 1314/406/921 1334/407/424 1335/412/424 +f 1335/412/424 1315/413/922 1314/406/921 +f 1318/402/925 1336/403/424 1337/408/424 +f 1337/408/424 1319/409/926 1318/402/925 +f 1320/392/927 1319/391/926 1314/390/921 +f 1314/390/921 1317/393/924 1320/392/927 +f 1308/396/915 1307/395/914 1318/394/925 +f 1318/394/925 1321/397/928 1308/396/915 +f 1325/408/932 1322/403/929 1321/402/928 +f 1321/402/928 1320/409/927 1325/408/932 +f 1327/412/934 1324/407/931 1317/406/924 +f 1317/406/924 1316/413/923 1327/412/934 +f 1329/416/936 1326/411/933 1313/410/920 +f 1313/410/920 1312/417/919 1329/416/936 +f 1337/408/424 1334/407/424 1314/406/921 +f 1314/406/921 1319/409/926 1337/408/424 +f 1331/404/424 1336/403/424 1318/402/925 +f 1318/402/925 1307/405/914 1331/404/424 +f 1312/399/919 1311/398/918 1306/390/913 +f 1306/390/913 1309/393/916 1312/399/919 +f 1316/401/923 1315/400/922 1310/394/917 +f 1310/394/917 1313/397/920 1316/401/923 +f 1323/404/930 1328/415/935 1309/414/916 +f 1309/414/916 1308/405/915 1323/404/930 +f 1333/416/424 1330/415/424 1306/414/913 +f 1306/414/913 1311/417/918 1333/416/424 +f 1335/412/424 1332/411/424 1310/410/917 +f 1310/410/917 1315/413/922 1335/412/424 +f 1338/390/913 1339/391/914 1340/392/915 +f 1340/392/915 1341/393/916 1338/390/913 +f 1342/394/917 1343/395/918 1344/396/919 +f 1344/396/919 1345/397/920 1342/394/917 +f 1346/390/921 1347/398/922 1348/399/923 +f 1348/399/923 1349/393/924 1346/390/921 +f 1350/394/925 1351/400/926 1352/401/927 +f 1352/401/927 1353/397/928 1350/394/925 +f 1353/402/928 1354/403/929 1355/404/930 +f 1355/404/930 1340/405/915 1353/402/928 +f 1349/406/924 1356/407/931 1357/408/932 +f 1357/408/932 1352/409/927 1349/406/924 +f 1345/410/920 1358/411/933 1359/412/934 +f 1359/412/934 1348/413/923 1345/410/920 +f 1341/414/916 1360/415/935 1361/416/936 +f 1361/416/936 1344/417/919 1341/414/916 +f 1338/414/913 1362/415/424 1363/404/424 +f 1363/404/424 1339/405/914 1338/414/913 +f 1342/410/917 1364/411/424 1365/416/424 +f 1365/416/424 1343/417/918 1342/410/917 +f 1346/406/921 1366/407/424 1367/412/424 +f 1367/412/424 1347/413/922 1346/406/921 +f 1350/402/925 1368/403/424 1369/408/424 +f 1369/408/424 1351/409/926 1350/402/925 +f 1352/392/927 1351/391/926 1346/390/921 +f 1346/390/921 1349/393/924 1352/392/927 +f 1340/396/915 1339/395/914 1350/394/925 +f 1350/394/925 1353/397/928 1340/396/915 +f 1357/408/932 1354/403/929 1353/402/928 +f 1353/402/928 1352/409/927 1357/408/932 +f 1359/412/934 1356/407/931 1349/406/924 +f 1349/406/924 1348/413/923 1359/412/934 +f 1361/416/936 1358/411/933 1345/410/920 +f 1345/410/920 1344/417/919 1361/416/936 +f 1369/408/424 1366/407/424 1346/406/921 +f 1346/406/921 1351/409/926 1369/408/424 +f 1363/404/424 1368/403/424 1350/402/925 +f 1350/402/925 1339/405/914 1363/404/424 +f 1344/399/919 1343/398/918 1338/390/913 +f 1338/390/913 1341/393/916 1344/399/919 +f 1348/401/923 1347/400/922 1342/394/917 +f 1342/394/917 1345/397/920 1348/401/923 +f 1355/404/930 1360/415/935 1341/414/916 +f 1341/414/916 1340/405/915 1355/404/930 +f 1365/416/424 1362/415/424 1338/414/913 +f 1338/414/913 1343/417/918 1365/416/424 +f 1367/412/424 1364/411/424 1342/410/917 +f 1342/410/917 1347/413/922 1367/412/424 +f 1370/342/937 1371/343/938 1372/344/939 +f 1372/344/939 1373/345/940 1370/342/937 +f 1374/346/941 1375/347/942 1372/344/939 +f 1372/344/939 1371/343/938 1374/346/941 +f 1376/348/943 1371/349/938 1370/350/937 +f 1370/350/937 1377/351/944 1376/348/943 +f 1376/348/943 1378/352/945 1374/353/941 +f 1374/353/941 1371/349/938 1376/348/943 +f 1379/344/946 1376/343/943 1377/342/944 +f 1377/342/944 1380/345/947 1379/344/946 +f 1379/344/946 1381/347/948 1378/346/945 +f 1378/346/945 1376/343/943 1379/344/946 +f 1373/350/940 1372/349/939 1379/348/946 +f 1379/348/946 1380/351/947 1373/350/940 +f 1375/353/942 1381/352/948 1379/348/946 +f 1379/348/946 1372/349/939 1375/353/942 +f 1382/418/949 1383/419/950 1384/420/951 +f 1383/419/950 1385/421/952 1384/420/951 +f 1385/422/952 1386/423/953 1384/420/951 +f 1386/423/953 1387/424/954 1384/420/951 +f 1387/424/954 1388/425/955 1384/420/951 +f 1388/425/955 1389/426/956 1384/420/951 +f 1389/426/956 1390/427/957 1384/420/951 +f 1390/427/957 1391/428/958 1384/420/951 +f 1391/428/958 1392/429/959 1384/420/951 +f 1392/429/959 1393/430/960 1384/420/951 +f 1393/430/960 1382/418/949 1384/420/951 +f 1394/431/961 1395/432/962 1396/433/963 +f 1396/433/963 1397/434/964 1394/431/961 +f 1398/435/965 1399/436/966 1395/432/962 +f 1395/432/962 1394/431/961 1398/435/965 +f 1400/437/967 1401/438/968 1399/436/966 +f 1399/436/966 1398/435/965 1400/437/967 +f 1402/439/969 1403/440/970 1401/438/968 +f 1401/438/968 1400/437/967 1402/439/969 +f 1404/441/971 1405/442/972 1403/443/970 +f 1403/443/970 1402/444/969 1404/441/971 +f 1406/445/973 1407/446/974 1405/442/972 +f 1405/442/972 1404/441/971 1406/445/973 +f 1408/447/975 1409/448/976 1407/446/974 +f 1407/446/974 1406/445/973 1408/447/975 +f 1410/449/977 1411/450/978 1409/448/976 +f 1409/448/976 1408/447/975 1410/449/977 +f 1412/451/979 1413/452/980 1411/450/978 +f 1411/450/978 1410/449/977 1412/451/979 +f 1414/453/981 1415/454/982 1413/452/980 +f 1413/452/980 1412/451/979 1414/453/981 +f 1397/434/964 1396/433/963 1415/454/982 +f 1415/454/982 1414/453/981 1397/434/964 +f 1416/455/983 1394/431/961 1397/434/964 +f 1397/434/964 1417/456/984 1416/455/983 +f 1418/457/985 1398/435/965 1394/431/961 +f 1394/431/961 1416/455/983 1418/457/985 +f 1419/458/986 1400/437/967 1398/435/965 +f 1398/435/965 1418/457/985 1419/458/986 +f 1420/459/987 1402/439/969 1400/437/967 +f 1400/437/967 1419/458/986 1420/459/987 +f 1421/460/988 1404/441/971 1402/444/969 +f 1402/444/969 1420/461/987 1421/460/988 +f 1422/462/989 1406/445/973 1404/441/971 +f 1404/441/971 1421/460/988 1422/462/989 +f 1423/463/990 1408/447/975 1406/445/973 +f 1406/445/973 1422/462/989 1423/463/990 +f 1424/464/991 1410/449/977 1408/447/975 +f 1408/447/975 1423/463/990 1424/464/991 +f 1425/465/992 1412/451/979 1410/449/977 +f 1410/449/977 1424/464/991 1425/465/992 +f 1426/466/993 1414/453/981 1412/451/979 +f 1412/451/979 1425/465/992 1426/466/993 +f 1417/456/984 1397/434/964 1414/453/981 +f 1414/453/981 1426/466/993 1417/456/984 +f 1427/467/994 1416/468/983 1417/469/984 +f 1417/469/984 1428/470/995 1427/467/994 +f 1429/471/996 1418/472/985 1416/468/983 +f 1416/468/983 1427/467/994 1429/471/996 +f 1430/473/997 1419/474/986 1418/472/985 +f 1418/472/985 1429/471/996 1430/473/997 +f 1431/475/998 1420/476/987 1419/474/986 +f 1419/474/986 1430/473/997 1431/475/998 +f 1432/477/999 1421/478/988 1420/479/987 +f 1420/479/987 1431/480/998 1432/477/999 +f 1433/481/1000 1422/482/989 1421/478/988 +f 1421/478/988 1432/477/999 1433/481/1000 +f 1434/483/1001 1423/484/990 1422/482/989 +f 1422/482/989 1433/481/1000 1434/483/1001 +f 1435/485/1002 1424/486/991 1423/484/990 +f 1423/484/990 1434/483/1001 1435/485/1002 +f 1436/487/1003 1425/488/992 1424/486/991 +f 1424/486/991 1435/485/1002 1436/487/1003 +f 1437/489/1004 1426/490/993 1425/488/992 +f 1425/488/992 1436/487/1003 1437/489/1004 +f 1428/470/995 1417/469/984 1426/490/993 +f 1426/490/993 1437/489/1004 1428/470/995 +f 1383/491/950 1382/492/949 1396/493/963 +f 1396/493/963 1395/494/962 1383/491/950 +f 1385/495/952 1383/491/950 1395/494/962 +f 1395/494/962 1399/496/966 1385/495/952 +f 1401/497/968 1386/498/953 1385/495/952 +f 1385/495/952 1399/496/966 1401/497/968 +f 1387/499/954 1386/498/953 1401/497/968 +f 1401/497/968 1403/500/970 1387/499/954 +f 1388/501/955 1387/502/954 1403/503/970 +f 1403/503/970 1405/504/972 1388/501/955 +f 1389/505/956 1388/501/955 1405/504/972 +f 1405/504/972 1407/506/974 1389/505/956 +f 1390/507/957 1389/505/956 1407/506/974 +f 1407/506/974 1409/508/976 1390/507/957 +f 1391/509/958 1390/507/957 1409/508/976 +f 1409/508/976 1411/510/978 1391/509/958 +f 1392/511/959 1391/509/958 1411/510/978 +f 1411/510/978 1413/512/980 1392/511/959 +f 1393/513/960 1392/511/959 1413/512/980 +f 1413/512/980 1415/514/982 1393/513/960 +f 1382/492/949 1393/513/960 1415/514/982 +f 1415/514/982 1396/493/963 1382/492/949 +f 1438/515/1005 1439/516/1006 1440/517/1007 +f 1440/517/1007 1441/518/1008 1438/515/1005 +f 1442/519/1009 1443/520/1010 1444/521/1011 +f 1444/521/1011 1445/522/1012 1442/519/1009 +f 1446/520/1013 1442/519/1009 1445/522/1012 +f 1445/522/1012 1447/521/1014 1446/520/1013 +f 1448/520/1015 1446/519/1013 1447/522/1014 +f 1447/522/1014 1449/521/1016 1448/520/1015 +f 1443/519/1010 1448/520/1015 1449/521/1016 +f 1449/521/1016 1444/522/1011 1443/519/1010 +f 1440/523/1007 1443/520/1010 1442/519/1009 +f 1442/519/1009 1441/524/1008 1440/523/1007 +f 1441/524/1008 1442/519/1009 1446/520/1013 +f 1446/520/1013 1438/523/1005 1441/524/1008 +f 1438/524/1005 1446/519/1013 1448/520/1015 +f 1448/520/1015 1439/523/1006 1438/524/1005 +f 1439/523/1006 1448/520/1015 1443/519/1010 +f 1443/519/1010 1440/524/1007 1439/523/1006 +f 1450/515/1005 1451/516/1006 1452/517/1007 +f 1452/517/1007 1453/518/1008 1450/515/1005 +f 1454/519/1009 1455/520/1010 1456/521/1011 +f 1456/521/1011 1457/522/1012 1454/519/1009 +f 1458/520/1013 1454/519/1009 1457/522/1012 +f 1457/522/1012 1459/521/1014 1458/520/1013 +f 1460/520/1015 1458/519/1013 1459/522/1014 +f 1459/522/1014 1461/521/1016 1460/520/1015 +f 1455/519/1010 1460/520/1015 1461/521/1016 +f 1461/521/1016 1456/522/1011 1455/519/1010 +f 1452/523/1007 1455/520/1010 1454/519/1009 +f 1454/519/1009 1453/524/1008 1452/523/1007 +f 1453/524/1008 1454/519/1009 1458/520/1013 +f 1458/520/1013 1450/523/1005 1453/524/1008 +f 1450/524/1005 1458/519/1013 1460/520/1015 +f 1460/520/1015 1451/523/1006 1450/524/1005 +f 1451/523/1006 1460/520/1015 1455/519/1010 +f 1455/519/1010 1452/524/1007 1451/523/1006 +f 1462/515/1005 1463/516/1006 1464/517/1007 +f 1464/517/1007 1465/518/1008 1462/515/1005 +f 1466/519/1009 1467/520/1010 1468/521/1011 +f 1468/521/1011 1469/522/1012 1466/519/1009 +f 1470/520/1013 1466/519/1009 1469/522/1012 +f 1469/522/1012 1471/521/1014 1470/520/1013 +f 1472/520/1015 1470/519/1013 1471/522/1014 +f 1471/522/1014 1473/521/1016 1472/520/1015 +f 1467/519/1010 1472/520/1015 1473/521/1016 +f 1473/521/1016 1468/522/1011 1467/519/1010 +f 1464/523/1007 1467/520/1010 1466/519/1009 +f 1466/519/1009 1465/524/1008 1464/523/1007 +f 1465/524/1008 1466/519/1009 1470/520/1013 +f 1470/520/1013 1462/523/1005 1465/524/1008 +f 1462/524/1005 1470/519/1013 1472/520/1015 +f 1472/520/1015 1463/523/1006 1462/524/1005 +f 1463/523/1006 1472/520/1015 1467/519/1010 +f 1467/519/1010 1464/524/1007 1463/523/1006 +f 1474/515/1017 1475/516/1018 1476/517/1019 +f 1476/517/1019 1477/518/1020 1474/515/1017 +f 1478/519/1021 1479/520/1022 1480/521/1023 +f 1480/521/1023 1481/522/1012 1478/519/1021 +f 1482/520/1013 1478/519/1021 1481/522/1012 +f 1481/522/1012 1483/521/1024 1482/520/1013 +f 1484/520/1025 1482/519/1013 1483/522/1024 +f 1483/522/1024 1485/521/1016 1484/520/1025 +f 1479/519/1022 1484/520/1025 1485/521/1016 +f 1485/521/1016 1480/522/1023 1479/519/1022 +f 1476/523/1019 1479/520/1022 1478/519/1021 +f 1478/519/1021 1477/524/1020 1476/523/1019 +f 1477/524/1020 1478/519/1021 1482/520/1013 +f 1482/520/1013 1474/523/1017 1477/524/1020 +f 1474/524/1017 1482/519/1013 1484/520/1025 +f 1484/520/1025 1475/523/1018 1474/524/1017 +f 1475/523/1018 1484/520/1025 1479/519/1022 +f 1479/519/1022 1476/524/1019 1475/523/1018 +f 1486/525/1026 1487/526/1027 1488/527/1022 +f 1488/527/1022 1489/528/1026 1486/525/1026 +f 1490/529/1028 1491/530/1029 1492/531/1030 +f 1492/531/1030 1493/532/1031 1490/529/1028 +f 1494/533/1032 1495/534/1032 1496/535/1027 +f 1496/535/1027 1497/536/1033 1494/533/1032 +f 1498/537/1032 1487/526/1027 1499/538/1034 +f 1499/538/1034 1500/539/1035 1498/537/1032 +f 1501/540/1036 1502/541/1037 1503/542/1038 +f 1503/542/1038 1499/538/1034 1501/540/1036 +f 1504/543/1039 1505/544/1040 1506/545/1041 +f 1506/545/1041 1507/546/1042 1504/543/1039 +f 1508/547/1043 1509/548/1044 1510/549/1045 +f 1510/549/1045 1511/550/1046 1508/547/1043 +f 1512/551/1047 1503/542/1038 1513/552/1048 +f 1513/552/1048 1514/553/1049 1512/551/1047 +f 1511/550/1046 1501/540/1036 1486/525/1026 +f 1486/525/1026 1496/535/1027 1511/550/1046 +f 1504/543/1039 1491/530/1029 1515/554/1050 +f 1515/554/1050 1516/555/1051 1504/543/1039 +f 1508/547/1043 1495/534/1032 1492/531/1030 +f 1492/531/1030 1507/546/1042 1508/547/1043 +f 1517/556/1032 1518/557/1032 1498/537/1032 +f 1498/537/1032 1519/558/1032 1517/556/1032 +f 1520/559/1052 1502/541/1037 1510/549/1045 +f 1510/549/1045 1521/560/1053 1520/559/1052 +f 1522/561/1054 1505/544/1040 1523/562/1055 +f 1523/562/1055 1524/563/1056 1522/561/1054 +f 1525/564/1057 1509/548/1044 1506/545/1041 +f 1506/545/1041 1526/565/1058 1525/564/1057 +f 1527/566/1059 1500/539/1035 1512/551/1047 +f 1512/551/1047 1528/567/1060 1527/566/1059 +f 1496/535/1027 1486/525/1026 1489/528/1026 +f 1489/528/1026 1497/536/1033 1496/535/1027 +f 1529/568/1061 1515/554/1050 1491/530/1029 +f 1491/530/1029 1490/529/1028 1529/568/1061 +f 1493/532/1031 1492/531/1030 1495/534/1032 +f 1495/534/1032 1494/533/1032 1493/532/1031 +f 1519/558/1032 1498/537/1032 1500/539/1035 +f 1500/539/1035 1527/566/1059 1519/558/1032 +f 1511/550/1046 1510/549/1045 1502/541/1037 +f 1502/541/1037 1501/540/1036 1511/550/1046 +f 1516/555/1051 1523/562/1055 1505/544/1040 +f 1505/544/1040 1504/543/1039 1516/555/1051 +f 1507/546/1042 1506/545/1041 1509/548/1044 +f 1509/548/1044 1508/547/1043 1507/546/1042 +f 1528/567/1060 1512/551/1047 1514/553/1049 +f 1514/553/1049 1530/569/1062 1528/567/1060 +f 1487/526/1027 1486/525/1026 1501/540/1036 +f 1501/540/1036 1499/538/1034 1487/526/1027 +f 1507/546/1042 1492/531/1030 1491/530/1029 +f 1491/530/1029 1504/543/1039 1507/546/1042 +f 1511/550/1046 1496/535/1027 1495/534/1032 +f 1495/534/1032 1508/547/1043 1511/550/1046 +f 1487/526/1027 1498/537/1032 1518/557/1032 +f 1518/557/1032 1488/527/1022 1487/526/1027 +f 1513/552/1048 1503/542/1038 1502/541/1037 +f 1502/541/1037 1520/559/1052 1513/552/1048 +f 1526/565/1058 1506/545/1041 1505/544/1040 +f 1505/544/1040 1522/561/1054 1526/565/1058 +f 1521/560/1053 1510/549/1045 1509/548/1044 +f 1509/548/1044 1525/564/1057 1521/560/1053 +f 1503/542/1038 1512/551/1047 1500/539/1035 +f 1500/539/1035 1499/538/1034 1503/542/1038 +f 1531/570/1063 1524/571/1064 1532/572/1065 +f 1532/572/1065 1533/573/1066 1531/570/1063 +f 1534/574/1067 1531/570/1063 1533/573/1066 +f 1533/573/1066 1535/575/1068 1534/574/1067 +f 1536/576/1069 1534/577/1067 1535/578/1068 +f 1535/578/1068 1537/579/1070 1536/576/1069 +f 1538/580/1071 1536/576/1069 1537/579/1070 +f 1537/579/1070 1539/581/1072 1538/580/1071 +f 1524/571/1064 1538/580/1071 1539/581/1072 +f 1539/581/1072 1532/572/1065 1524/571/1064 +f 1534/582/1067 1536/583/1069 1538/584/1071 +f 1531/585/1063 1534/582/1067 1538/584/1071 +f 1524/586/1064 1531/585/1063 1538/584/1071 +f 1540/587/1073 1541/588/1074 1542/589/1075 +f 1542/589/1075 1543/590/1076 1540/587/1073 +f 1544/591/1077 1540/587/1073 1543/590/1076 +f 1543/590/1076 1545/592/1078 1544/591/1077 +f 1546/593/1079 1544/591/1077 1545/592/1078 +f 1545/592/1078 1547/594/1080 1546/593/1079 +f 1548/595/1081 1546/593/1079 1547/594/1080 +f 1547/594/1080 1549/596/1082 1548/595/1081 +f 1541/588/1074 1548/597/1081 1549/598/1082 +f 1549/598/1082 1542/589/1075 1541/588/1074 +f 1550/599/1083 1551/600/1084 1552/601/1085 +f 1553/602/1086 1550/599/1083 1552/601/1085 +f 1554/603/1087 1553/602/1086 1552/601/1085 +f 1555/604/1088 1541/588/1074 1540/587/1073 +f 1540/587/1073 1556/605/1089 1555/604/1088 +f 1556/605/1089 1540/587/1073 1544/591/1077 +f 1544/591/1077 1557/606/1090 1556/605/1089 +f 1557/606/1090 1544/591/1077 1546/593/1079 +f 1546/593/1079 1558/607/1091 1557/606/1090 +f 1558/607/1091 1546/593/1079 1548/595/1081 +f 1548/595/1081 1559/608/1092 1558/607/1091 +f 1559/609/1092 1548/597/1081 1541/588/1074 +f 1541/588/1074 1555/604/1088 1559/609/1092 +f 1554/610/1087 1555/604/1088 1556/605/1089 +f 1556/605/1089 1553/611/1086 1554/610/1087 +f 1553/611/1086 1556/605/1089 1557/606/1090 +f 1557/606/1090 1550/612/1083 1553/611/1086 +f 1550/612/1083 1557/606/1090 1558/607/1091 +f 1558/607/1091 1551/613/1084 1550/612/1083 +f 1551/613/1084 1558/607/1091 1559/608/1092 +f 1559/608/1092 1552/614/1085 1551/613/1084 +f 1552/615/1085 1559/609/1092 1555/604/1088 +f 1555/604/1088 1554/610/1087 1552/615/1085 +f 1560/616/1093 1561/617/1094 1562/618/1095 +f 1562/618/1095 1563/619/1096 1560/616/1093 +f 1564/620/1097 1560/621/1093 1563/622/1096 +f 1563/622/1096 1565/623/1098 1564/620/1097 +f 1566/624/1099 1564/620/1097 1565/623/1098 +f 1565/623/1098 1567/625/1100 1566/624/1099 +f 1568/626/1101 1566/624/1099 1567/625/1100 +f 1567/625/1100 1569/627/1102 1568/626/1101 +f 1561/617/1094 1568/626/1101 1569/627/1102 +f 1569/627/1102 1562/618/1095 1561/617/1094 +f 1570/587/1103 1571/588/1104 1572/589/1105 +f 1572/589/1105 1573/590/1106 1570/587/1103 +f 1574/591/1107 1570/587/1103 1573/590/1106 +f 1573/590/1106 1575/592/1108 1574/591/1107 +f 1576/593/1109 1574/591/1107 1575/592/1108 +f 1575/592/1108 1577/594/1110 1576/593/1109 +f 1578/595/1111 1576/593/1109 1577/594/1110 +f 1577/594/1110 1579/596/1112 1578/595/1111 +f 1571/588/1104 1578/597/1111 1579/598/1112 +f 1579/598/1112 1572/589/1105 1571/588/1104 +f 1580/599/1113 1581/600/1084 1582/601/1085 +f 1583/602/1086 1580/599/1113 1582/601/1085 +f 1584/603/1087 1583/602/1086 1582/601/1085 +f 1585/604/1088 1571/588/1104 1570/587/1103 +f 1570/587/1103 1586/605/1089 1585/604/1088 +f 1586/605/1089 1570/587/1103 1574/591/1107 +f 1574/591/1107 1587/606/1090 1586/605/1089 +f 1587/606/1090 1574/591/1107 1576/593/1109 +f 1576/593/1109 1588/607/1114 1587/606/1090 +f 1588/607/1114 1576/593/1109 1578/595/1111 +f 1578/595/1111 1589/608/1092 1588/607/1114 +f 1589/609/1092 1578/597/1111 1571/588/1104 +f 1571/588/1104 1585/604/1088 1589/609/1092 +f 1584/610/1087 1585/604/1088 1586/605/1089 +f 1586/605/1089 1583/611/1086 1584/610/1087 +f 1583/611/1086 1586/605/1089 1587/606/1090 +f 1587/606/1090 1580/612/1113 1583/611/1086 +f 1580/612/1113 1587/606/1090 1588/607/1114 +f 1588/607/1114 1581/613/1084 1580/612/1113 +f 1581/613/1084 1588/607/1114 1589/608/1092 +f 1589/608/1092 1582/614/1085 1581/613/1084 +f 1582/615/1085 1589/609/1092 1585/604/1088 +f 1585/604/1088 1584/610/1087 1582/615/1085 +f 1590/616/1093 1591/617/1094 1592/618/1095 +f 1592/618/1095 1593/619/1096 1590/616/1093 +f 1594/620/1097 1590/621/1093 1593/622/1096 +f 1593/622/1096 1595/623/1098 1594/620/1097 +f 1596/624/1099 1594/620/1097 1595/623/1098 +f 1595/623/1098 1597/625/1115 1596/624/1099 +f 1598/626/1116 1596/624/1099 1597/625/1115 +f 1597/625/1115 1599/627/1102 1598/626/1116 +f 1591/617/1094 1598/626/1116 1599/627/1102 +f 1599/627/1102 1592/618/1095 1591/617/1094 +f 1600/628/1117 1601/629/1118 1602/630/1119 +f 1602/630/1119 1603/631/1120 1600/628/1117 +f 1604/632/1121 1601/629/1118 1600/628/1117 +f 1600/628/1117 1605/633/1122 1604/632/1121 +f 1606/634/1123 1607/635/1124 1602/636/1119 +f 1602/636/1119 1601/637/1118 1606/634/1123 +f 1604/638/1121 1608/639/1125 1606/634/1123 +f 1606/634/1123 1601/637/1118 1604/638/1121 +f 1609/628/1126 1610/631/1127 1607/630/1124 +f 1607/630/1124 1606/629/1123 1609/628/1126 +f 1608/632/1125 1611/633/1128 1609/628/1126 +f 1609/628/1126 1606/629/1123 1608/632/1125 +f 1609/634/1126 1600/637/1117 1603/636/1120 +f 1603/636/1120 1610/635/1127 1609/634/1126 +f 1605/638/1122 1600/637/1117 1609/634/1126 +f 1609/634/1126 1611/639/1128 1605/638/1122 +f 1612/616/1093 1613/617/1094 1614/618/1095 +f 1614/618/1095 1615/619/1096 1612/616/1093 +f 1616/620/1097 1612/621/1093 1615/622/1096 +f 1615/622/1096 1617/623/1098 1616/620/1097 +f 1618/624/1099 1616/620/1097 1617/623/1098 +f 1617/623/1098 1619/625/1115 1618/624/1099 +f 1620/626/1116 1618/624/1099 1619/625/1115 +f 1619/625/1115 1621/627/1129 1620/626/1116 +f 1613/617/1094 1620/626/1116 1621/627/1129 +f 1621/627/1129 1614/618/1095 1613/617/1094 +f 1622/616/1093 1623/617/1094 1624/618/1095 +f 1624/618/1095 1625/619/1096 1622/616/1093 +f 1626/620/1097 1622/621/1093 1625/622/1096 +f 1625/622/1096 1627/623/1098 1626/620/1097 +f 1628/624/1099 1626/620/1097 1627/623/1098 +f 1627/623/1098 1629/625/1115 1628/624/1099 +f 1630/626/1101 1628/624/1099 1629/625/1115 +f 1629/625/1115 1631/627/1129 1630/626/1101 +f 1623/617/1094 1630/626/1101 1631/627/1129 +f 1631/627/1129 1624/618/1095 1623/617/1094 +f 1632/616/1093 1633/617/1094 1634/618/1095 +f 1634/618/1095 1635/619/1096 1632/616/1093 +f 1636/620/1097 1632/621/1093 1635/622/1096 +f 1635/622/1096 1637/623/1098 1636/620/1097 +f 1638/624/1130 1636/620/1097 1637/623/1098 +f 1637/623/1098 1639/625/1100 1638/624/1130 +f 1640/626/1101 1638/624/1130 1639/625/1100 +f 1639/625/1100 1641/627/1102 1640/626/1101 +f 1633/617/1094 1640/626/1101 1641/627/1102 +f 1641/627/1102 1634/618/1095 1633/617/1094 +f 1642/616/1093 1643/617/1094 1644/618/1095 +f 1644/618/1095 1645/619/1096 1642/616/1093 +f 1646/620/1097 1642/621/1093 1645/622/1096 +f 1645/622/1096 1647/623/1098 1646/620/1097 +f 1648/624/1099 1646/620/1097 1647/623/1098 +f 1647/623/1098 1649/625/1115 1648/624/1099 +f 1650/626/1116 1648/624/1099 1649/625/1115 +f 1649/625/1115 1651/627/1102 1650/626/1116 +f 1643/617/1094 1650/626/1116 1651/627/1102 +f 1651/627/1102 1644/618/1095 1643/617/1094 +f 1652/616/1093 1653/617/1094 1654/618/1095 +f 1654/618/1095 1655/619/1096 1652/616/1093 +f 1656/620/1097 1652/621/1093 1655/622/1096 +f 1655/622/1096 1657/623/1098 1656/620/1097 +f 1658/624/1099 1656/620/1097 1657/623/1098 +f 1657/623/1098 1659/625/1115 1658/624/1099 +f 1660/626/1101 1658/624/1099 1659/625/1115 +f 1659/625/1115 1661/627/1102 1660/626/1101 +f 1653/617/1094 1660/626/1101 1661/627/1102 +f 1661/627/1102 1654/618/1095 1653/617/1094 +f 1662/616/1093 1663/617/1094 1664/618/1095 +f 1664/618/1095 1665/619/1096 1662/616/1093 +f 1666/620/1097 1662/621/1093 1665/622/1096 +f 1665/622/1096 1667/623/1098 1666/620/1097 +f 1668/624/1099 1666/620/1097 1667/623/1098 +f 1667/623/1098 1669/625/1100 1668/624/1099 +f 1670/626/1101 1668/624/1099 1669/625/1100 +f 1669/625/1100 1671/627/1102 1670/626/1101 +f 1663/617/1094 1670/626/1101 1671/627/1102 +f 1671/627/1102 1664/618/1095 1663/617/1094 +f 1672/616/1093 1673/617/1094 1674/618/1095 +f 1674/618/1095 1675/619/1096 1672/616/1093 +f 1676/620/1097 1672/621/1093 1675/622/1096 +f 1675/622/1096 1677/623/1131 1676/620/1097 +f 1678/624/1099 1676/620/1097 1677/623/1131 +f 1677/623/1131 1679/625/1100 1678/624/1099 +f 1680/626/1132 1678/624/1099 1679/625/1100 +f 1679/625/1100 1681/627/1102 1680/626/1132 +f 1673/617/1094 1680/626/1132 1681/627/1102 +f 1681/627/1102 1674/618/1095 1673/617/1094 +f 1682/616/1093 1683/617/1094 1684/618/1095 +f 1684/618/1095 1685/619/1096 1682/616/1093 +f 1686/620/1097 1682/621/1093 1685/622/1096 +f 1685/622/1096 1687/623/1098 1686/620/1097 +f 1688/624/1099 1686/620/1097 1687/623/1098 +f 1687/623/1098 1689/625/1115 1688/624/1099 +f 1690/626/1116 1688/624/1099 1689/625/1115 +f 1689/625/1115 1691/627/1102 1690/626/1116 +f 1683/617/1094 1690/626/1116 1691/627/1102 +f 1691/627/1102 1684/618/1095 1683/617/1094 +f 1692/616/1093 1693/617/1094 1694/618/1095 +f 1694/618/1095 1695/619/1096 1692/616/1093 +f 1696/620/1097 1692/621/1093 1695/622/1096 +f 1695/622/1096 1697/623/1098 1696/620/1097 +f 1698/624/1130 1696/620/1097 1697/623/1098 +f 1697/623/1098 1699/625/1100 1698/624/1130 +f 1700/626/1133 1698/624/1130 1699/625/1100 +f 1699/625/1100 1701/627/1102 1700/626/1133 +f 1693/617/1094 1700/626/1133 1701/627/1102 +f 1701/627/1102 1694/618/1095 1693/617/1094 +f 1702/616/1093 1703/617/1094 1704/618/1095 +f 1704/618/1095 1705/619/1096 1702/616/1093 +f 1706/620/1097 1702/621/1093 1705/622/1096 +f 1705/622/1096 1707/623/1131 1706/620/1097 +f 1708/624/1099 1706/620/1097 1707/623/1131 +f 1707/623/1131 1709/625/1100 1708/624/1099 +f 1710/626/1101 1708/624/1099 1709/625/1100 +f 1709/625/1100 1711/627/1102 1710/626/1101 +f 1703/617/1094 1710/626/1101 1711/627/1102 +f 1711/627/1102 1704/618/1095 1703/617/1094 +f 1712/616/1093 1713/617/1094 1714/618/1095 +f 1714/618/1095 1715/619/1096 1712/616/1093 +f 1716/620/1097 1712/621/1093 1715/622/1096 +f 1715/622/1096 1717/623/1098 1716/620/1097 +f 1718/624/1130 1716/620/1097 1717/623/1098 +f 1717/623/1098 1719/625/1100 1718/624/1130 +f 1720/626/1101 1718/624/1130 1719/625/1100 +f 1719/625/1100 1721/627/1102 1720/626/1101 +f 1713/617/1094 1720/626/1101 1721/627/1102 +f 1721/627/1102 1714/618/1095 1713/617/1094 +f 1722/616/1093 1723/617/1094 1724/618/1095 +f 1724/618/1095 1725/619/1096 1722/616/1093 +f 1726/620/1097 1722/621/1093 1725/622/1096 +f 1725/622/1096 1727/623/1098 1726/620/1097 +f 1728/624/1130 1726/620/1097 1727/623/1098 +f 1727/623/1098 1729/625/1100 1728/624/1130 +f 1730/626/1101 1728/624/1130 1729/625/1100 +f 1729/625/1100 1731/627/1102 1730/626/1101 +f 1723/617/1094 1730/626/1101 1731/627/1102 +f 1731/627/1102 1724/618/1095 1723/617/1094 +f 1732/616/1093 1733/617/1094 1734/618/1095 +f 1734/618/1095 1735/619/1134 1732/616/1093 +f 1736/620/1097 1732/621/1093 1735/622/1134 +f 1735/622/1134 1737/623/1098 1736/620/1097 +f 1738/624/1130 1736/620/1097 1737/623/1098 +f 1737/623/1098 1739/625/1100 1738/624/1130 +f 1740/626/1101 1738/624/1130 1739/625/1100 +f 1739/625/1100 1741/627/1102 1740/626/1101 +f 1733/617/1094 1740/626/1101 1741/627/1102 +f 1741/627/1102 1734/618/1095 1733/617/1094 +f 1742/616/1093 1743/617/1094 1744/618/1095 +f 1744/618/1095 1745/619/1134 1742/616/1093 +f 1746/620/1097 1742/621/1093 1745/622/1134 +f 1745/622/1134 1747/623/1098 1746/620/1097 +f 1748/624/1130 1746/620/1097 1747/623/1098 +f 1747/623/1098 1749/625/1100 1748/624/1130 +f 1750/626/1101 1748/624/1130 1749/625/1100 +f 1749/625/1100 1751/627/1102 1750/626/1101 +f 1743/617/1094 1750/626/1101 1751/627/1102 +f 1751/627/1102 1744/618/1095 1743/617/1094 +f 1752/255/1135 1753/256/1136 1754/257/1137 +f 1754/257/1137 1755/258/1138 1752/255/1135 +f 1756/259/1139 1757/260/1140 1752/255/1135 +f 1752/255/1135 1755/258/1138 1756/259/1139 +f 1752/261/1135 1758/262/1141 1759/263/1142 +f 1759/263/1142 1753/264/1136 1752/261/1135 +f 1757/265/1140 1760/266/1143 1758/262/1141 +f 1758/262/1141 1752/261/1135 1757/265/1140 +f 1758/267/1141 1761/268/1144 1762/269/1145 +f 1762/269/1145 1759/270/1142 1758/267/1141 +f 1763/271/1146 1761/268/1144 1758/267/1141 +f 1758/267/1141 1760/272/1143 1763/271/1146 +f 1755/261/1138 1754/264/1137 1762/263/1145 +f 1762/263/1145 1761/262/1144 1755/261/1138 +f 1756/265/1139 1755/261/1138 1761/262/1144 +f 1761/262/1144 1763/266/1146 1756/265/1139 +f 1764/616/1093 1765/617/1094 1766/618/1095 +f 1766/618/1095 1767/619/1096 1764/616/1093 +f 1768/620/1097 1764/621/1093 1767/622/1096 +f 1767/622/1096 1769/623/1098 1768/620/1097 +f 1770/624/1099 1768/620/1097 1769/623/1098 +f 1769/623/1098 1771/625/1115 1770/624/1099 +f 1772/626/1116 1770/624/1099 1771/625/1115 +f 1771/625/1115 1773/627/1129 1772/626/1116 +f 1765/617/1094 1772/626/1116 1773/627/1129 +f 1773/627/1129 1766/618/1095 1765/617/1094 +f 1774/640/1147 1775/641/1148 1776/642/1149 +f 1776/642/1149 1777/643/1150 1774/640/1147 +f 1778/644/1151 1775/645/1148 1774/646/1147 +f 1774/646/1147 1779/647/295 1778/644/1151 +f 1780/648/1152 1781/649/1153 1782/650/1154 +f 1782/650/1154 1783/651/1155 1780/648/1152 +f 1784/652/1156 1785/653/1157 1780/648/1152 +f 1780/648/1152 1783/651/1155 1784/652/1156 +f 1775/641/1148 1783/654/1155 1782/655/1154 +f 1782/655/1154 1776/642/1149 1775/641/1148 +f 1784/656/1156 1783/657/1155 1775/645/1148 +f 1775/645/1148 1778/644/1151 1784/656/1156 +f 1786/658/1158 1781/659/1153 1787/660/1159 +f 1787/660/1159 1788/661/1160 1786/658/1158 +f 1781/662/1153 1780/663/1152 1789/664/1161 +f 1789/664/1161 1787/665/1159 1781/662/1153 +f 1790/666/1162 1791/667/1163 1792/668/1164 +f 1792/668/1164 1793/669/1165 1790/666/1162 +f 1794/670/1166 1795/671/1167 1796/672/93 +f 1796/672/93 1797/673/93 1794/670/1166 +f 1786/674/1158 1798/675/1168 1799/676/1169 +f 1799/676/1169 1800/677/1170 1786/674/1158 +f 1800/678/1170 1799/679/1169 1795/671/1167 +f 1795/671/1167 1794/670/1166 1800/678/1170 +f 1785/680/1157 1801/681/1171 1802/682/1172 +f 1802/682/1172 1803/683/1173 1785/680/1157 +f 1804/684/1151 1778/644/1151 1779/647/295 +f 1779/647/295 1805/685/295 1804/684/1151 +f 1801/686/1171 1785/653/1157 1784/652/1156 +f 1784/652/1156 1806/687/1174 1801/686/1171 +f 1806/688/1174 1784/656/1156 1778/644/1151 +f 1778/644/1151 1804/684/1151 1806/688/1174 +f 1798/689/1168 1786/658/1158 1788/661/1160 +f 1788/661/1160 1807/690/1175 1798/689/1168 +f 1808/666/1176 1809/667/1177 1810/668/1178 +f 1810/668/1178 1811/669/1179 1808/666/1176 +f 1777/691/1150 1776/692/1149 1794/670/1166 +f 1794/670/1166 1797/673/93 1777/691/1150 +f 1781/649/1153 1786/674/1158 1800/677/1170 +f 1800/677/1170 1782/650/1154 1781/649/1153 +f 1776/692/1149 1782/693/1154 1800/678/1170 +f 1800/678/1170 1794/670/1166 1776/692/1149 +f 1789/694/1161 1780/695/1152 1785/680/1157 +f 1785/680/1157 1803/683/1173 1789/694/1161 +f 1812/696/1180 1813/697/1181 1807/698/1175 +f 1807/698/1175 1788/699/1160 1812/696/1180 +f 1807/698/1175 1813/697/1181 1814/700/1182 +f 1815/701/1183 1816/702/1184 1787/703/1159 +f 1787/703/1159 1789/704/1161 1815/701/1183 +f 1817/705/1185 1815/701/1183 1789/704/1161 +f 1789/704/1161 1803/706/1173 1817/705/1185 +f 1788/699/1160 1818/707/1186 1819/708/1187 +f 1790/709/1162 1793/710/1165 1813/711/1181 +f 1813/711/1181 1812/712/1180 1790/709/1162 +f 1820/713/1188 1791/714/1163 1790/709/1162 +f 1790/709/1162 1812/712/1180 1820/713/1188 +f 1821/715/1189 1792/716/1164 1791/714/1163 +f 1791/714/1163 1820/713/1188 1821/715/1189 +f 1793/717/1165 1792/716/1164 1821/715/1189 +f 1821/715/1189 1813/718/1181 1793/717/1165 +f 1808/713/1176 1811/715/1179 1818/716/1186 +f 1818/716/1186 1816/714/1184 1808/713/1176 +f 1815/709/1183 1809/712/1177 1808/713/1176 +f 1808/713/1176 1816/714/1184 1815/709/1183 +f 1817/710/1185 1810/711/1178 1809/712/1177 +f 1809/712/1177 1815/709/1183 1817/710/1185 +f 1811/715/1179 1810/718/1178 1817/717/1185 +f 1817/717/1185 1818/716/1186 1811/715/1179 +f 1822/719/1190 1819/708/1187 1818/707/1186 +f 1818/707/1186 1817/705/1185 1822/719/1190 +f 1820/720/1188 1812/696/1180 1819/708/1187 +f 1819/708/1187 1822/719/1190 1820/720/1188 +f 1821/721/1189 1802/722/1172 1814/700/1182 +f 1814/700/1182 1813/697/1181 1821/721/1189 +f 1803/706/1173 1820/720/1188 1822/719/1190 +f 1816/702/1184 1818/707/1186 1788/699/1160 +f 1788/699/1160 1787/703/1159 1816/702/1184 +f 1819/708/1187 1812/696/1180 1788/699/1160 +f 1821/721/1189 1820/720/1188 1803/706/1173 +f 1803/706/1173 1802/722/1172 1821/721/1189 +f 1822/719/1190 1817/705/1185 1803/706/1173 +f 1823/642/1191 1824/641/1192 1825/640/1193 +f 1825/640/1193 1826/643/1194 1823/642/1191 +f 1827/644/1151 1828/647/295 1825/646/1193 +f 1825/646/1193 1824/645/1192 1827/644/1151 +f 1829/648/1195 1830/651/1196 1831/650/1197 +f 1831/650/1197 1832/649/1198 1829/648/1195 +f 1829/648/1195 1833/653/1199 1834/652/1200 +f 1834/652/1200 1830/651/1196 1829/648/1195 +f 1831/655/1197 1830/654/1196 1824/641/1192 +f 1824/641/1192 1823/642/1191 1831/655/1197 +f 1834/656/1200 1827/644/1151 1824/645/1192 +f 1824/645/1192 1830/657/1196 1834/656/1200 +f 1835/658/1201 1836/661/1202 1837/660/1203 +f 1837/660/1203 1832/659/1198 1835/658/1201 +f 1832/662/1198 1837/665/1203 1838/664/1204 +f 1838/664/1204 1829/663/1195 1832/662/1198 +f 1839/668/1205 1840/667/1206 1841/666/1207 +f 1841/666/1207 1842/669/1208 1839/668/1205 +f 1843/670/1166 1844/673/93 1796/672/93 +f 1796/672/93 1795/671/1167 1843/670/1166 +f 1835/674/1201 1845/677/1209 1799/676/1210 +f 1799/676/1210 1798/675/1211 1835/674/1201 +f 1845/678/1209 1843/670/1166 1795/671/1167 +f 1795/671/1167 1799/679/1210 1845/678/1209 +f 1833/680/1199 1846/683/1212 1802/682/1213 +f 1802/682/1213 1801/681/1214 1833/680/1199 +f 1804/684/1151 1805/685/295 1828/647/295 +f 1828/647/295 1827/644/1151 1804/684/1151 +f 1801/686/1214 1806/687/1215 1834/652/1200 +f 1834/652/1200 1833/653/1199 1801/686/1214 +f 1806/688/1215 1804/684/1151 1827/644/1151 +f 1827/644/1151 1834/656/1200 1806/688/1215 +f 1798/689/1211 1807/690/1216 1836/661/1202 +f 1836/661/1202 1835/658/1201 1798/689/1211 +f 1847/668/1217 1848/667/1218 1849/666/1219 +f 1849/666/1219 1850/669/1220 1847/668/1217 +f 1843/670/1166 1823/692/1191 1826/691/1194 +f 1826/691/1194 1844/673/93 1843/670/1166 +f 1832/649/1198 1831/650/1197 1845/677/1209 +f 1845/677/1209 1835/674/1201 1832/649/1198 +f 1845/678/1209 1831/693/1197 1823/692/1191 +f 1823/692/1191 1843/670/1166 1845/678/1209 +f 1833/680/1199 1829/695/1195 1838/694/1204 +f 1838/694/1204 1846/683/1212 1833/680/1199 +f 1851/696/1221 1836/699/1202 1807/698/1216 +f 1807/698/1216 1852/697/1222 1851/696/1221 +f 1852/697/1222 1807/698/1216 1814/700/1223 +f 1853/701/1224 1838/704/1204 1837/703/1203 +f 1837/703/1203 1854/702/1225 1853/701/1224 +f 1855/705/1226 1846/706/1212 1838/704/1204 +f 1838/704/1204 1853/701/1224 1855/705/1226 +f 1856/707/1227 1836/699/1202 1857/708/1228 +f 1841/709/1207 1851/712/1221 1852/711/1222 +f 1852/711/1222 1842/710/1208 1841/709/1207 +f 1841/709/1207 1840/714/1206 1858/713/1229 +f 1858/713/1229 1851/712/1221 1841/709/1207 +f 1840/714/1206 1839/716/1205 1859/715/1230 +f 1859/715/1230 1858/713/1229 1840/714/1206 +f 1842/717/1208 1852/718/1222 1859/715/1230 +f 1859/715/1230 1839/716/1205 1842/717/1208 +f 1849/713/1219 1854/714/1225 1856/716/1227 +f 1856/716/1227 1850/715/1220 1849/713/1219 +f 1849/713/1219 1848/712/1218 1853/709/1224 +f 1853/709/1224 1854/714/1225 1849/713/1219 +f 1848/712/1218 1847/711/1217 1855/710/1226 +f 1855/710/1226 1853/709/1224 1848/712/1218 +f 1850/715/1220 1856/716/1227 1855/717/1226 +f 1855/717/1226 1847/718/1217 1850/715/1220 +f 1860/719/1231 1855/705/1226 1856/707/1227 +f 1856/707/1227 1857/708/1228 1860/719/1231 +f 1858/720/1229 1860/719/1231 1857/708/1228 +f 1857/708/1228 1851/696/1221 1858/720/1229 +f 1814/700/1223 1802/722/1213 1859/721/1230 +f 1859/721/1230 1852/697/1222 1814/700/1223 +f 1858/720/1229 1846/706/1212 1860/719/1231 +f 1854/702/1225 1837/703/1203 1836/699/1202 +f 1836/699/1202 1856/707/1227 1854/702/1225 +f 1851/696/1221 1857/708/1228 1836/699/1202 +f 1859/721/1230 1802/722/1213 1846/706/1212 +f 1846/706/1212 1858/720/1229 1859/721/1230 +f 1855/705/1226 1860/719/1231 1846/706/1212 +f 1861/723/1232 1862/724/1233 1863/725/1234 +f 1862/726/1233 1864/727/1235 1863/728/1234 +f 1864/727/1235 1865/729/1236 1863/728/1234 +f 1865/729/1236 1866/730/1237 1863/728/1234 +f 1866/730/1237 1867/731/1238 1863/728/1234 +f 1867/732/1238 1868/733/1239 1863/725/1234 +f 1868/733/1239 1869/734/1240 1863/725/1234 +f 1869/734/1240 1861/723/1232 1863/725/1234 +f 1870/735/1241 1862/724/1233 1861/723/1232 +f 1861/723/1232 1871/736/1242 1870/735/1241 +f 1872/737/1243 1865/729/1236 1864/727/1235 +f 1864/727/1235 1873/738/1244 1872/737/1243 +f 1874/739/1245 1866/730/1237 1865/729/1236 +f 1865/729/1236 1872/737/1243 1874/739/1245 +f 1875/740/1246 1867/731/1238 1866/730/1237 +f 1866/730/1237 1874/739/1245 1875/740/1246 +f 1876/741/424 1868/733/1239 1867/732/1238 +f 1867/732/1238 1875/742/1246 1876/741/424 +f 1877/743/1247 1869/734/1240 1868/733/1239 +f 1868/733/1239 1876/741/424 1877/743/1247 +f 1871/736/1242 1861/723/1232 1869/734/1240 +f 1869/734/1240 1877/743/1247 1871/736/1242 +f 1878/744/1248 1870/735/1241 1871/736/1242 +f 1871/736/1242 1879/745/1249 1878/744/1248 +f 1880/746/1250 1872/737/1243 1873/738/1244 +f 1873/738/1244 1881/747/1251 1880/746/1250 +f 1882/748/1252 1874/739/1245 1872/737/1243 +f 1872/737/1243 1880/746/1250 1882/748/1252 +f 1883/749/1253 1875/740/1246 1874/739/1245 +f 1874/739/1245 1882/748/1252 1883/749/1253 +f 1884/750/1254 1876/741/424 1875/742/1246 +f 1875/742/1246 1883/751/1253 1884/750/1254 +f 1885/752/1255 1877/743/1247 1876/741/424 +f 1876/741/424 1884/750/1254 1885/752/1255 +f 1879/745/1249 1871/736/1242 1877/743/1247 +f 1877/743/1247 1885/752/1255 1879/745/1249 +f 1878/744/1248 1879/745/1249 1886/753/1256 +f 1881/747/1251 1878/754/1248 1886/755/1256 +f 1880/746/1250 1881/747/1251 1886/755/1256 +f 1882/748/1252 1880/746/1250 1886/755/1256 +f 1883/749/1253 1882/748/1252 1886/755/1256 +f 1884/750/1254 1883/751/1253 1886/753/1256 +f 1885/752/1255 1884/750/1254 1886/753/1256 +f 1879/745/1249 1885/752/1255 1886/753/1256 +f 1887/723/1232 1888/724/1233 1889/725/1234 +f 1888/726/1233 1890/727/1235 1889/728/1234 +f 1890/727/1235 1891/729/1236 1889/728/1234 +f 1891/729/1236 1892/730/1237 1889/728/1234 +f 1892/730/1237 1893/731/1238 1889/728/1234 +f 1893/732/1238 1894/733/1239 1889/725/1234 +f 1894/733/1239 1895/734/1240 1889/725/1234 +f 1895/734/1240 1887/723/1232 1889/725/1234 +f 1896/735/1241 1888/724/1233 1887/723/1232 +f 1887/723/1232 1897/736/1242 1896/735/1241 +f 1898/737/1243 1891/729/1236 1890/727/1235 +f 1890/727/1235 1899/738/1244 1898/737/1243 +f 1900/739/1245 1892/730/1237 1891/729/1236 +f 1891/729/1236 1898/737/1243 1900/739/1245 +f 1901/740/1246 1893/731/1238 1892/730/1237 +f 1892/730/1237 1900/739/1245 1901/740/1246 +f 1902/741/424 1894/733/1239 1893/732/1238 +f 1893/732/1238 1901/742/1246 1902/741/424 +f 1903/743/1247 1895/734/1240 1894/733/1239 +f 1894/733/1239 1902/741/424 1903/743/1247 +f 1897/736/1242 1887/723/1232 1895/734/1240 +f 1895/734/1240 1903/743/1247 1897/736/1242 +f 1904/744/1248 1896/735/1241 1897/736/1242 +f 1897/736/1242 1905/745/1249 1904/744/1248 +f 1906/746/1250 1898/737/1243 1899/738/1244 +f 1899/738/1244 1907/747/1251 1906/746/1250 +f 1908/748/1252 1900/739/1245 1898/737/1243 +f 1898/737/1243 1906/746/1250 1908/748/1252 +f 1909/749/1253 1901/740/1246 1900/739/1245 +f 1900/739/1245 1908/748/1252 1909/749/1253 +f 1910/750/1254 1902/741/424 1901/742/1246 +f 1901/742/1246 1909/751/1253 1910/750/1254 +f 1911/752/1255 1903/743/1247 1902/741/424 +f 1902/741/424 1910/750/1254 1911/752/1255 +f 1905/745/1249 1897/736/1242 1903/743/1247 +f 1903/743/1247 1911/752/1255 1905/745/1249 +f 1904/744/1248 1905/745/1249 1912/753/1256 +f 1907/747/1251 1904/754/1248 1912/755/1256 +f 1906/746/1250 1907/747/1251 1912/755/1256 +f 1908/748/1252 1906/746/1250 1912/755/1256 +f 1909/749/1253 1908/748/1252 1912/755/1256 +f 1910/750/1254 1909/751/1253 1912/753/1256 +f 1911/752/1255 1910/750/1254 1912/753/1256 +f 1905/745/1249 1911/752/1255 1912/753/1256 +f 1913/723/1232 1914/724/1233 1915/725/1234 +f 1914/726/1233 1916/727/1235 1915/728/1234 +f 1916/727/1235 1917/729/1236 1915/728/1234 +f 1917/729/1236 1918/730/1237 1915/728/1234 +f 1918/730/1237 1919/731/1238 1915/728/1234 +f 1919/732/1238 1920/733/1239 1915/725/1234 +f 1920/733/1239 1921/734/1240 1915/725/1234 +f 1921/734/1240 1913/723/1232 1915/725/1234 +f 1922/735/1241 1914/724/1233 1913/723/1232 +f 1913/723/1232 1923/736/1242 1922/735/1241 +f 1924/737/1243 1917/729/1236 1916/727/1235 +f 1916/727/1235 1925/738/1244 1924/737/1243 +f 1926/739/1245 1918/730/1237 1917/729/1236 +f 1917/729/1236 1924/737/1243 1926/739/1245 +f 1927/740/1246 1919/731/1238 1918/730/1237 +f 1918/730/1237 1926/739/1245 1927/740/1246 +f 1928/741/424 1920/733/1239 1919/732/1238 +f 1919/732/1238 1927/742/1246 1928/741/424 +f 1929/743/1247 1921/734/1240 1920/733/1239 +f 1920/733/1239 1928/741/424 1929/743/1247 +f 1923/736/1242 1913/723/1232 1921/734/1240 +f 1921/734/1240 1929/743/1247 1923/736/1242 +f 1930/744/1248 1922/735/1241 1923/736/1242 +f 1923/736/1242 1931/745/1249 1930/744/1248 +f 1932/746/1250 1924/737/1243 1925/738/1244 +f 1925/738/1244 1933/747/1251 1932/746/1250 +f 1934/748/1252 1926/739/1245 1924/737/1243 +f 1924/737/1243 1932/746/1250 1934/748/1252 +f 1935/749/1253 1927/740/1246 1926/739/1245 +f 1926/739/1245 1934/748/1252 1935/749/1253 +f 1936/750/1254 1928/741/424 1927/742/1246 +f 1927/742/1246 1935/751/1253 1936/750/1254 +f 1937/752/1255 1929/743/1247 1928/741/424 +f 1928/741/424 1936/750/1254 1937/752/1255 +f 1931/745/1249 1923/736/1242 1929/743/1247 +f 1929/743/1247 1937/752/1255 1931/745/1249 +f 1930/744/1248 1931/745/1249 1938/753/1256 +f 1933/747/1251 1930/754/1248 1938/755/1256 +f 1932/746/1250 1933/747/1251 1938/755/1256 +f 1934/748/1252 1932/746/1250 1938/755/1256 +f 1935/749/1253 1934/748/1252 1938/755/1256 +f 1936/750/1254 1935/751/1253 1938/753/1256 +f 1937/752/1255 1936/750/1254 1938/753/1256 +f 1931/745/1249 1937/752/1255 1938/753/1256 +f 1939/756/1257 1940/757/1258 1941/758/1259 +f 1940/757/1258 1942/759/1260 1941/758/1259 +f 1942/759/1260 1943/760/1261 1941/758/1259 +f 1943/760/1261 1944/761/1262 1941/758/1259 +f 1944/761/1262 1945/762/1263 1941/758/1259 +f 1945/762/1263 1946/763/1264 1941/758/1259 +f 1946/763/1264 1947/764/1265 1941/758/1259 +f 1947/764/1265 1939/756/1257 1941/758/1259 +f 1948/765/1266 1940/766/1258 1939/767/1257 +f 1939/767/1257 1949/768/1267 1948/765/1266 +f 1950/769/1268 1942/770/1260 1940/766/1258 +f 1940/766/1258 1948/765/1266 1950/769/1268 +f 1951/771/1269 1943/772/1261 1942/770/1260 +f 1942/770/1260 1950/769/1268 1951/771/1269 +f 1952/773/1270 1944/774/1262 1943/772/1261 +f 1943/772/1261 1951/771/1269 1952/773/1270 +f 1953/775/1271 1945/776/1263 1944/774/1262 +f 1944/774/1262 1952/773/1270 1953/775/1271 +f 1954/777/1272 1946/778/1264 1945/779/1263 +f 1945/779/1263 1953/780/1271 1954/777/1272 +f 1955/781/1273 1947/782/1265 1946/778/1264 +f 1946/778/1264 1954/777/1272 1955/781/1273 +f 1949/768/1267 1939/767/1257 1947/782/1265 +f 1947/782/1265 1955/781/1273 1949/768/1267 +f 1950/783/1268 1948/784/1266 1951/785/1269 +f 1954/786/1272 1953/787/1271 1955/788/1273 +f 1953/787/1271 1952/789/1270 1949/790/1267 +f 1949/790/1267 1955/788/1273 1953/787/1271 +f 1952/789/1270 1951/785/1269 1948/784/1266 +f 1948/784/1266 1949/790/1267 1952/789/1270 +f 1956/791/1274 1957/792/1275 1958/793/1276 +f 1958/793/1276 1959/794/1277 1956/791/1274 +f 1960/795/1278 1961/796/1279 1956/791/1274 +f 1956/791/1274 1959/794/1277 1960/795/1278 +f 1962/797/1280 1963/798/1281 1961/796/1279 +f 1961/796/1279 1960/795/1278 1962/797/1280 +f 1957/792/1275 1963/799/1281 1962/800/1280 +f 1962/800/1280 1958/793/1276 1957/792/1275 +f 1964/801/1282 1957/792/1275 1956/791/1274 +f 1956/791/1274 1965/802/1283 1964/801/1282 +f 1966/803/1284 1965/802/1283 1956/791/1274 +f 1956/791/1274 1961/796/1279 1966/803/1284 +f 1967/804/1285 1966/803/1284 1961/796/1279 +f 1961/796/1279 1963/798/1281 1967/804/1285 +f 1967/805/1285 1963/799/1281 1957/792/1275 +f 1957/792/1275 1964/801/1282 1967/805/1285 +f 1968/806/1286 1969/807/1287 1970/808/1288 +f 1970/808/1288 1971/809/1289 1968/806/1286 +f 1972/810/1290 1973/811/1291 1968/806/1286 +f 1968/806/1286 1971/809/1289 1972/810/1290 +f 1974/812/1292 1975/813/1293 1973/814/1291 +f 1973/814/1291 1972/815/1290 1974/812/1292 +f 1969/807/1287 1975/813/1293 1974/812/1292 +f 1974/812/1292 1970/808/1288 1969/807/1287 +f 1976/816/1294 1969/807/1287 1968/806/1286 +f 1968/806/1286 1977/817/1295 1976/816/1294 +f 1978/818/1296 1977/817/1295 1968/806/1286 +f 1968/806/1286 1973/811/1291 1978/818/1296 +f 1979/819/1297 1978/820/1296 1973/814/1291 +f 1973/814/1291 1975/813/1293 1979/819/1297 +f 1979/819/1297 1975/813/1293 1969/807/1287 +f 1969/807/1287 1976/816/1294 1979/819/1297 +f 1980/791/1298 1981/794/1299 1982/793/1300 +f 1982/793/1300 1983/792/1301 1980/791/1298 +f 1980/791/1298 1984/796/1302 1985/795/1303 +f 1985/795/1303 1981/794/1299 1980/791/1298 +f 1984/796/1302 1986/798/1304 1987/797/1305 +f 1987/797/1305 1985/795/1303 1984/796/1302 +f 1983/792/1301 1982/793/1300 1987/800/1305 +f 1987/800/1305 1986/799/1304 1983/792/1301 +f 1988/801/1306 1989/802/1307 1980/791/1298 +f 1980/791/1298 1983/792/1301 1988/801/1306 +f 1980/791/1298 1989/802/1307 1990/803/1308 +f 1990/803/1308 1984/796/1302 1980/791/1298 +f 1984/796/1302 1990/803/1308 1991/804/1309 +f 1991/804/1309 1986/798/1304 1984/796/1302 +f 1991/805/1309 1988/801/1306 1983/792/1301 +f 1983/792/1301 1986/799/1304 1991/805/1309 +f 1992/640/1310 1993/641/1311 1994/642/1312 +f 1994/642/1312 1995/643/1313 1992/640/1310 +f 1996/644/1314 1993/645/1311 1992/646/1310 +f 1992/646/1310 1997/647/1315 1996/644/1314 +f 1998/648/1316 1999/649/1317 2000/650/1318 +f 2000/650/1318 2001/651/1319 1998/648/1316 +f 2002/652/1320 2003/653/1321 1998/648/1316 +f 1998/648/1316 2001/651/1319 2002/652/1320 +f 1993/641/1311 2001/654/1319 2000/655/1318 +f 2000/655/1318 1994/642/1312 1993/641/1311 +f 2002/656/1320 2001/657/1319 1993/645/1311 +f 1993/645/1311 1996/644/1314 2002/656/1320 +f 2004/658/1322 1999/659/1317 2005/660/1323 +f 2005/660/1323 2006/661/1324 2004/658/1322 +f 1999/662/1317 1998/663/1316 2007/664/1325 +f 2007/664/1325 2005/665/1323 1999/662/1317 +f 2008/666/1326 2009/667/1327 2010/668/1328 +f 2010/668/1328 2011/669/1329 2008/666/1326 +f 2012/670/1330 2013/671/1331 2014/672/1332 +f 2014/672/1332 2015/673/431 2012/670/1330 +f 2004/674/1322 2016/675/1333 2017/676/1334 +f 2017/676/1334 2018/677/1335 2004/674/1322 +f 2018/678/1335 2017/679/1334 2013/671/1331 +f 2013/671/1331 2012/670/1330 2018/678/1335 +f 2003/680/1321 2019/681/1336 2020/682/1337 +f 2020/682/1337 2021/683/1338 2003/680/1321 +f 2022/684/1339 1996/644/1314 1997/647/1315 +f 1997/647/1315 2023/685/1315 2022/684/1339 +f 2019/686/1336 2003/653/1321 2002/652/1320 +f 2002/652/1320 2024/687/1340 2019/686/1336 +f 2024/688/1340 2002/656/1320 1996/644/1314 +f 1996/644/1314 2022/684/1339 2024/688/1340 +f 2016/689/1333 2004/658/1322 2006/661/1324 +f 2006/661/1324 2025/690/1341 2016/689/1333 +f 2026/666/1342 2027/667/1343 2028/668/1344 +f 2028/668/1344 2029/669/1345 2026/666/1342 +f 1995/691/1313 1994/692/1312 2012/670/1330 +f 2012/670/1330 2015/673/431 1995/691/1313 +f 1999/649/1317 2004/674/1322 2018/677/1335 +f 2018/677/1335 2000/650/1318 1999/649/1317 +f 1994/692/1312 2000/693/1318 2018/678/1335 +f 2018/678/1335 2012/670/1330 1994/692/1312 +f 2007/694/1325 1998/695/1316 2003/680/1321 +f 2003/680/1321 2021/683/1338 2007/694/1325 +f 2030/696/1346 2031/697/1347 2025/698/1341 +f 2025/698/1341 2006/699/1324 2030/696/1346 +f 2025/698/1341 2031/697/1347 2032/700/1348 +f 2033/701/1349 2034/702/1350 2005/703/1323 +f 2005/703/1323 2007/704/1325 2033/701/1349 +f 2035/705/1351 2033/701/1349 2007/704/1325 +f 2007/704/1325 2021/706/1338 2035/705/1351 +f 2006/699/1324 2036/707/1352 2037/708/1353 +f 2008/709/1326 2011/710/1329 2031/711/1347 +f 2031/711/1347 2030/712/1346 2008/709/1326 +f 2038/713/1354 2009/714/1327 2008/709/1326 +f 2008/709/1326 2030/712/1346 2038/713/1354 +f 2039/715/1355 2010/716/1328 2009/714/1327 +f 2009/714/1327 2038/713/1354 2039/715/1355 +f 2011/717/1329 2010/716/1328 2039/715/1355 +f 2039/715/1355 2031/718/1347 2011/717/1329 +f 2026/713/1342 2029/715/1345 2036/716/1352 +f 2036/716/1352 2034/714/1350 2026/713/1342 +f 2033/709/1349 2027/712/1343 2026/713/1342 +f 2026/713/1342 2034/714/1350 2033/709/1349 +f 2035/710/1351 2028/711/1344 2027/712/1343 +f 2027/712/1343 2033/709/1349 2035/710/1351 +f 2029/715/1345 2028/718/1344 2035/717/1351 +f 2035/717/1351 2036/716/1352 2029/715/1345 +f 2040/719/1356 2037/708/1353 2036/707/1352 +f 2036/707/1352 2035/705/1351 2040/719/1356 +f 2038/720/1354 2030/696/1346 2037/708/1353 +f 2037/708/1353 2040/719/1356 2038/720/1354 +f 2039/721/1355 2020/722/1337 2032/700/1348 +f 2032/700/1348 2031/697/1347 2039/721/1355 +f 2021/706/1338 2038/720/1354 2040/719/1356 +f 2034/702/1350 2036/707/1352 2006/699/1324 +f 2006/699/1324 2005/703/1323 2034/702/1350 +f 2037/708/1353 2030/696/1346 2006/699/1324 +f 2039/721/1355 2038/720/1354 2021/706/1338 +f 2021/706/1338 2020/722/1337 2039/721/1355 +f 2040/719/1356 2035/705/1351 2021/706/1338 +f 2041/642/1357 2042/641/1358 2043/640/1359 +f 2043/640/1359 2044/643/1360 2041/642/1357 +f 2045/644/1361 2046/647/1315 2043/646/1359 +f 2043/646/1359 2042/645/1358 2045/644/1361 +f 2047/648/1362 2048/651/1363 2049/650/1364 +f 2049/650/1364 2050/649/1365 2047/648/1362 +f 2047/648/1362 2051/653/1366 2052/652/1367 +f 2052/652/1367 2048/651/1363 2047/648/1362 +f 2049/655/1364 2048/654/1363 2042/641/1358 +f 2042/641/1358 2041/642/1357 2049/655/1364 +f 2052/656/1367 2045/644/1361 2042/645/1358 +f 2042/645/1358 2048/657/1363 2052/656/1367 +f 2053/658/1368 2054/661/1369 2055/660/1370 +f 2055/660/1370 2050/659/1365 2053/658/1368 +f 2050/662/1365 2055/665/1370 2056/664/1371 +f 2056/664/1371 2047/663/1362 2050/662/1365 +f 2057/668/1372 2058/667/1373 2059/666/1374 +f 2059/666/1374 2060/669/1375 2057/668/1372 +f 2061/670/1376 2062/673/431 2014/672/431 +f 2014/672/431 2013/671/1377 2061/670/1376 +f 2053/674/1368 2063/677/1378 2017/676/1379 +f 2017/676/1379 2016/675/1380 2053/674/1368 +f 2063/678/1378 2061/670/1376 2013/671/1377 +f 2013/671/1377 2017/679/1379 2063/678/1378 +f 2051/680/1366 2064/683/1381 2020/682/1382 +f 2020/682/1382 2019/681/1383 2051/680/1366 +f 2022/684/1384 2023/685/1315 2046/647/1315 +f 2046/647/1315 2045/644/1361 2022/684/1384 +f 2019/686/1383 2024/687/1385 2052/652/1367 +f 2052/652/1367 2051/653/1366 2019/686/1383 +f 2024/688/1385 2022/684/1384 2045/644/1361 +f 2045/644/1361 2052/656/1367 2024/688/1385 +f 2016/689/1380 2025/690/1386 2054/661/1369 +f 2054/661/1369 2053/658/1368 2016/689/1380 +f 2065/668/1387 2066/667/1388 2067/666/1389 +f 2067/666/1389 2068/669/1390 2065/668/1387 +f 2061/670/1376 2041/692/1357 2044/691/1360 +f 2044/691/1360 2062/673/431 2061/670/1376 +f 2050/649/1365 2049/650/1364 2063/677/1378 +f 2063/677/1378 2053/674/1368 2050/649/1365 +f 2063/678/1378 2049/693/1364 2041/692/1357 +f 2041/692/1357 2061/670/1376 2063/678/1378 +f 2051/680/1366 2047/695/1362 2056/694/1371 +f 2056/694/1371 2064/683/1381 2051/680/1366 +f 2069/696/1391 2054/699/1369 2025/698/1386 +f 2025/698/1386 2070/697/1392 2069/696/1391 +f 2070/697/1392 2025/698/1386 2032/700/1393 +f 2071/701/1394 2056/704/1371 2055/703/1370 +f 2055/703/1370 2072/702/1395 2071/701/1394 +f 2073/705/1396 2064/706/1381 2056/704/1371 +f 2056/704/1371 2071/701/1394 2073/705/1396 +f 2074/707/1397 2054/699/1369 2075/708/1398 +f 2059/709/1374 2069/712/1391 2070/711/1392 +f 2070/711/1392 2060/710/1375 2059/709/1374 +f 2059/709/1374 2058/714/1373 2076/713/1399 +f 2076/713/1399 2069/712/1391 2059/709/1374 +f 2058/714/1373 2057/716/1372 2077/715/1400 +f 2077/715/1400 2076/713/1399 2058/714/1373 +f 2060/717/1375 2070/718/1392 2077/715/1400 +f 2077/715/1400 2057/716/1372 2060/717/1375 +f 2067/713/1389 2072/714/1395 2074/716/1397 +f 2074/716/1397 2068/715/1390 2067/713/1389 +f 2067/713/1389 2066/712/1388 2071/709/1394 +f 2071/709/1394 2072/714/1395 2067/713/1389 +f 2066/712/1388 2065/711/1387 2073/710/1396 +f 2073/710/1396 2071/709/1394 2066/712/1388 +f 2068/715/1390 2074/716/1397 2073/717/1396 +f 2073/717/1396 2065/718/1387 2068/715/1390 +f 2078/719/1401 2073/705/1396 2074/707/1397 +f 2074/707/1397 2075/708/1398 2078/719/1401 +f 2076/720/1399 2078/719/1401 2075/708/1398 +f 2075/708/1398 2069/696/1391 2076/720/1399 +f 2032/700/1393 2020/722/1382 2077/721/1400 +f 2077/721/1400 2070/697/1392 2032/700/1393 +f 2076/720/1399 2064/706/1381 2078/719/1401 +f 2072/702/1395 2055/703/1370 2054/699/1369 +f 2054/699/1369 2074/707/1397 2072/702/1395 +f 2069/696/1391 2075/708/1398 2054/699/1369 +f 2077/721/1400 2020/722/1382 2064/706/1381 +f 2064/706/1381 2076/720/1399 2077/721/1400 +f 2073/705/1396 2078/719/1401 2064/706/1381 +f 2079/791/1402 2080/792/1403 2081/793/1404 +f 2081/793/1404 2082/794/1405 2079/791/1402 +f 2083/795/1406 2084/796/1407 2079/791/1402 +f 2079/791/1402 2082/794/1405 2083/795/1406 +f 2085/797/1408 2086/798/1409 2084/796/1407 +f 2084/796/1407 2083/795/1406 2085/797/1408 +f 2080/792/1403 2086/799/1409 2085/800/1408 +f 2085/800/1408 2081/793/1404 2080/792/1403 +f 2087/801/1410 2080/792/1403 2079/791/1402 +f 2079/791/1402 2088/802/1411 2087/801/1410 +f 2089/803/1412 2088/802/1411 2079/791/1402 +f 2079/791/1402 2084/796/1407 2089/803/1412 +f 2090/804/1413 2089/803/1412 2084/796/1407 +f 2084/796/1407 2086/798/1409 2090/804/1413 +f 2090/805/1413 2086/799/1409 2080/792/1403 +f 2080/792/1403 2087/801/1410 2090/805/1413 +f 2091/791/1414 2092/794/1415 2093/793/1416 +f 2093/793/1416 2094/792/1279 2091/791/1414 +f 2091/791/1414 2095/796/1417 2096/795/1418 +f 2096/795/1418 2092/794/1415 2091/791/1414 +f 2095/796/1417 2097/798/1419 2098/797/1420 +f 2098/797/1420 2096/795/1418 2095/796/1417 +f 2094/792/1279 2093/793/1416 2098/800/1420 +f 2098/800/1420 2097/799/1419 2094/792/1279 +f 2099/801/1421 2100/802/1422 2091/791/1414 +f 2091/791/1414 2094/792/1279 2099/801/1421 +f 2091/791/1414 2100/802/1422 2101/803/1423 +f 2101/803/1423 2095/796/1417 2091/791/1414 +f 2095/796/1417 2101/803/1423 2102/804/1424 +f 2102/804/1424 2097/798/1419 2095/796/1417 +f 2102/805/1424 2099/801/1421 2094/792/1279 +f 2094/792/1279 2097/799/1419 2102/805/1424 +f 2103/806/1425 2104/807/1426 2105/808/1427 +f 2105/808/1427 2106/809/1428 2103/806/1425 +f 2107/810/1429 2108/811/1430 2103/806/1425 +f 2103/806/1425 2106/809/1428 2107/810/1429 +f 2109/812/1431 2110/813/1432 2108/814/1430 +f 2108/814/1430 2107/815/1429 2109/812/1431 +f 2104/807/1426 2110/813/1432 2109/812/1431 +f 2109/812/1431 2105/808/1427 2104/807/1426 +f 2111/816/1433 2104/807/1426 2103/806/1425 +f 2103/806/1425 2112/817/1434 2111/816/1433 +f 2113/818/1435 2112/817/1434 2103/806/1425 +f 2103/806/1425 2108/811/1430 2113/818/1435 +f 2114/819/1436 2113/820/1435 2108/814/1430 +f 2108/814/1430 2110/813/1432 2114/819/1436 +f 2114/819/1436 2110/813/1432 2104/807/1426 +f 2104/807/1426 2111/816/1433 2114/819/1436 +# 2914 faces + diff --git a/examples/models/resources/models/obj/market_diffuse.png b/examples/models/resources/models/obj/market_diffuse.png new file mode 100644 index 0000000..3ad3046 Binary files /dev/null and b/examples/models/resources/models/obj/market_diffuse.png differ diff --git a/examples/models/resources/models/obj/plane.obj b/examples/models/resources/models/obj/plane.obj new file mode 100644 index 0000000..29b5944 --- /dev/null +++ b/examples/models/resources/models/obj/plane.obj @@ -0,0 +1,10858 @@ +# Blender v2.90.0 OBJ File: '' +# www.blender.org +o BODY_Material_#24_0 +v 2.545141 5.783802 -25.976692 +v 3.235504 6.677957 -13.125248 +v 1.687940 5.646317 -12.937294 +v -0.137555 3.728988 -25.602322 +v 0.973665 3.982364 -25.648491 +v -0.137555 5.284053 -12.871292 +v 0.973664 10.132854 -26.769033 +v 3.235504 13.408313 -14.351426 +v 4.269554 11.864355 -14.070142 +v 2.545140 8.331417 -26.440832 +v 4.632663 10.043135 -13.738335 +v 4.269555 8.221914 -13.406528 +v -0.137555 10.386230 -26.815191 +v -0.137555 14.802216 -14.605382 +v 1.687940 14.439952 -14.539380 +v -0.137555 10.386230 -26.815191 +v 0.973664 10.132854 -26.769033 +v -0.137555 10.132854 -26.769033 +v -0.137555 3.982364 -25.648491 +v 0.973665 3.982364 -25.648491 +v -0.137555 3.728988 -25.602322 +v 0.663374 15.705781 23.193211 +v 0.663374 14.114862 23.483055 +v 0.998288 14.910323 23.338135 +v 0.376462 18.602148 -30.355957 +v 0.330657 18.078314 -27.583200 +v 0.330657 17.075186 -24.744356 +v 0.376461 3.909487 -27.628571 +v 0.330618 3.524783 -30.914526 +v 0.285052 3.476720 -33.171906 +v 0.330657 11.401349 -24.776545 +v 0.376461 3.909487 -27.628571 +v 0.200132 4.545812 -36.862782 +v 0.200132 4.545812 -36.862782 +v 0.170088 5.657253 -38.139938 +v 0.170088 6.808916 -39.080044 +v 0.170088 12.034781 -40.236835 +v 0.170088 13.888091 -40.062054 +v 0.200132 15.707024 -39.244591 +v 0.200132 15.707024 -39.244591 +v 0.219588 17.377857 -38.011116 +v 0.285053 18.414829 -35.894424 +v 1.161025 13.829943 21.691204 +v 1.361917 14.567539 21.556824 +v 1.161026 15.305133 21.422447 +v 4.441549 12.221634 18.442724 +v 4.818830 14.087643 18.102762 +v 4.441548 15.953656 17.762800 +v 1.264851 22.121515 18.453445 +v 1.328365 22.272367 18.425961 +v 1.264851 22.423220 18.398476 +v 0.958179 22.423220 18.398476 +v 0.894666 22.272367 18.425961 +v 0.958179 22.121515 18.453445 +v 1.607252 21.900675 17.518620 +v 1.764696 22.274622 17.450493 +v 1.607252 22.648573 17.382362 +v 0.847047 22.648573 17.382362 +v 0.689604 22.274622 17.450493 +v 0.847048 21.900675 17.518620 +v 2.480337 19.942028 3.044717 +v 2.591266 20.552032 5.535551 +v 4.904634 19.031322 5.812605 +v 2.225156 18.538774 -2.685168 +v 3.460114 18.497147 0.467442 +v 4.473044 17.821404 0.554293 +v 2.406395 17.006306 3.793933 +v 3.460114 16.467627 0.837195 +v 2.406395 15.928947 -2.119541 +v -2.820251 5.783802 -25.976692 +v -1.963050 5.646317 -12.937294 +v -3.510613 6.677957 -13.125248 +v -0.137555 3.728988 -25.602322 +v -0.137555 5.284053 -12.871292 +v -1.248775 3.982364 -25.648491 +v -1.248774 10.132854 -26.769033 +v -4.544662 11.864355 -14.070142 +v -3.510613 13.408313 -14.351426 +v -2.820250 8.331417 -26.440832 +v -4.544664 8.221914 -13.406528 +v -4.907773 10.043135 -13.738335 +v -1.963049 14.439952 -14.539380 +v -0.137555 10.386230 -26.815191 +v -0.137555 10.132854 -26.769033 +v -1.248774 10.132854 -26.769033 +v -0.137555 3.982364 -25.648491 +v -0.137555 3.728988 -25.602322 +v -1.248775 3.982364 -25.648491 +v -0.938484 15.705781 23.193211 +v -1.273397 14.910323 23.338135 +v -0.938484 14.114862 23.483055 +v -0.651571 18.602148 -30.355957 +v -0.605767 17.075186 -24.744356 +v -0.605767 18.078314 -27.583200 +v -0.651571 3.909487 -27.628571 +v -0.560162 3.476720 -33.171906 +v -0.605727 3.524783 -30.914526 +v -0.605767 11.401349 -24.776545 +v -0.475242 4.545812 -36.862782 +v -0.651571 3.909487 -27.628571 +v -0.475242 4.545812 -36.862782 +v -0.445197 6.808916 -39.080044 +v -0.445197 5.657253 -38.139938 +v -0.445198 12.034781 -40.236835 +v -0.475242 15.707024 -39.244591 +v -0.445197 13.888091 -40.062054 +v -0.475242 15.707024 -39.244591 +v -0.560163 18.414829 -35.894424 +v -0.494698 17.377857 -38.011116 +v -1.436135 13.829943 21.691204 +v -1.436136 15.305133 21.422447 +v -1.637027 14.567539 21.556824 +v -4.716660 12.221634 18.442724 +v -4.716659 15.953656 17.762800 +v -5.093940 14.087643 18.102762 +v -1.539961 22.121515 18.453445 +v -1.539961 22.423220 18.398476 +v -1.603475 22.272367 18.425961 +v -1.233289 22.423220 18.398476 +v -1.233289 22.121515 18.453445 +v -1.169775 22.272367 18.425961 +v -1.882362 21.900675 17.518620 +v -1.882362 22.648573 17.382362 +v -2.039805 22.274622 17.450493 +v -1.122157 22.648573 17.382362 +v -1.122157 21.900675 17.518620 +v -0.964713 22.274622 17.450493 +v -2.755446 19.942028 3.044717 +v -5.179746 19.031322 5.812605 +v -2.866376 20.552032 5.535551 +v -2.500265 18.538774 -2.685168 +v -4.748155 17.821404 0.554293 +v -3.735223 18.497147 0.467442 +v -2.681505 17.006306 3.793933 +v -2.681505 15.928947 -2.119541 +v -3.735224 16.467627 0.837195 +v 5.886480 9.962349 1.986112 +v 4.473047 7.797970 2.380435 +v 6.382811 12.515405 1.520978 +v 2.357693 6.351778 2.643912 +v -0.137555 5.843942 2.736434 +v -0.137555 18.750629 -3.898979 +v 5.886480 15.068464 1.055844 +v -0.137555 21.086037 5.438262 +v -0.137555 20.817574 4.364942 +v -0.137555 15.705820 -3.344262 +v -0.137555 17.229437 5.018654 +v 2.406395 17.006306 3.793933 +v 2.480337 19.942028 3.044717 +v 3.460114 18.497147 0.467442 +v 3.460114 16.467627 0.837195 +v -0.137555 17.229437 5.018654 +v -0.137555 20.817574 4.364942 +v 2.480337 19.942028 3.044717 +v 2.406395 17.006306 3.793933 +v 2.406395 15.928947 -2.119541 +v 2.225156 18.538774 -2.685168 +v -0.137555 18.750629 -3.898979 +v -0.137555 15.705820 -3.344262 +v 3.460114 16.467627 0.837195 +v 3.460114 18.497147 0.467442 +v 6.450380 10.797626 7.312677 +v 4.904636 8.521720 7.727320 +v 6.993171 13.482239 6.823577 +v 2.591268 7.001008 8.004374 +v -0.137555 6.467003 8.101662 +v 6.450378 16.166853 6.334475 +v 0.973664 10.132854 -26.769033 +v 2.545140 8.331417 -26.440832 +v -0.137555 8.331417 -26.440832 +v -0.137555 10.132854 -26.769033 +v 2.545140 8.331417 -26.440832 +v 2.545141 5.783802 -25.976692 +v -0.137555 5.783802 -25.976692 +v -0.137555 8.331417 -26.440832 +v -0.137555 5.783802 -25.976692 +v 2.545141 5.783802 -25.976692 +v 0.973665 3.982364 -25.648491 +v -0.137555 3.982364 -25.648491 +v -0.137555 27.150551 8.418542 +v 10.657262 27.150551 8.418542 +v 10.657262 27.734844 13.241050 +v -0.137555 27.734844 13.241050 +v 10.657262 27.734844 13.241050 +v 10.657262 28.271790 13.143222 +v -0.137555 28.271790 13.143222 +v -0.137555 27.734844 13.241050 +v -0.137555 26.248919 3.469610 +v 10.657262 26.245462 3.654478 +v 21.452074 26.836880 8.475688 +v 21.452074 27.421173 13.298194 +v 21.452074 27.421173 13.298194 +v 21.452074 27.958118 13.200370 +v 10.657262 28.271790 13.143222 +v 10.657262 27.936581 8.275336 +v -0.137555 27.936581 8.275336 +v -0.137555 28.271790 13.143222 +v 2.342535 26.107084 2.691110 +v 10.657262 26.074389 2.673605 +v 21.452074 25.931791 3.711624 +v 32.246895 26.201221 8.591496 +v 32.246895 26.785511 13.414004 +v 32.246895 26.785511 13.414004 +v 32.246895 27.322460 13.316178 +v 21.452074 27.958118 13.200370 +v 21.452074 27.622913 8.332482 +v 10.657262 27.103384 3.498175 +v -0.137555 27.034948 3.326405 +v 6.234208 24.407400 -5.868575 +v 10.657262 24.407400 -5.868575 +v 10.657262 25.029203 -2.931825 +v 5.849846 25.098688 -2.843851 +v 21.452074 25.760714 2.730751 +v 32.246895 25.296129 3.827433 +v 41.450764 25.660938 8.689931 +v 38.136772 26.311825 13.500302 +v 38.136772 26.311825 13.500302 +v 38.136772 26.848774 13.402480 +v 32.246895 27.322460 13.316178 +v 32.246895 26.987251 8.448291 +v 21.452074 26.789709 3.555321 +v 10.657262 26.917547 2.519993 +v 2.342535 26.893122 2.547905 +v 10.657262 24.911684 -5.960440 +v 10.657262 24.407400 -5.868575 +v 6.234208 24.407400 -5.868575 +v 6.234208 24.911684 -5.960440 +v 21.452074 24.715536 -2.874681 +v 21.452074 25.098589 -1.065534 +v 10.657262 25.412260 -1.122682 +v 32.246895 25.125055 2.846561 +v 43.041698 24.755846 3.925868 +v 41.450764 25.660938 8.689931 +v 41.450764 26.446968 8.546725 +v 38.136772 26.848774 13.402480 +v 38.136772 26.311825 13.500302 +v 38.136772 26.848774 13.402480 +v 41.450764 26.446968 8.546725 +v 32.246895 26.154055 3.671129 +v 21.452074 26.603876 2.577139 +v 10.657262 26.198298 -1.265890 +v 10.657262 25.707838 -3.055464 +v 5.849846 25.884718 -2.987059 +v 5.429670 26.198298 -1.265890 +v 21.452074 24.598013 -5.903296 +v 21.452074 24.093729 -5.811423 +v 32.246895 24.079874 -2.758871 +v 32.246895 24.462931 -0.949727 +v 43.041698 24.584768 2.944992 +v 43.041698 24.755846 3.925868 +v 43.041698 25.613764 3.769564 +v 41.450764 25.660938 8.689931 +v 43.041698 25.613764 3.769564 +v 32.246883 25.968218 2.692949 +v 21.452074 25.884623 -1.208742 +v 21.452074 25.394167 -2.998319 +v 32.246895 23.962353 -5.787486 +v 32.246895 23.458073 -5.695620 +v 41.915051 23.539589 -2.660438 +v 43.041698 23.922642 -0.851296 +v 43.041698 24.584768 2.944992 +v 43.041698 25.427927 2.791382 +v 43.041698 25.427927 2.791382 +v 32.246895 25.248964 -1.092931 +v 32.246895 24.758509 -2.882509 +v 40.086185 23.422073 -5.689055 +v 40.086185 22.917782 -5.597183 +v 43.041698 23.922642 -0.851296 +v 41.915051 23.539589 -2.660438 +v 41.915051 24.218218 -2.784075 +v 43.041698 24.708681 -0.994498 +v 43.041698 24.708681 -0.994498 +v 41.915051 24.218218 -2.784075 +v -0.137555 26.248919 3.469610 +v -0.137555 27.034948 3.326405 +v 2.342535 26.893122 2.547905 +v 2.342535 26.107084 2.691110 +v 5.429670 26.198298 -1.265890 +v 5.429670 25.412260 -1.122682 +v 6.234208 24.911684 -5.960440 +v 6.234208 24.407400 -5.868575 +v 5.849846 25.098688 -2.843851 +v 5.849846 25.884718 -2.987059 +v 21.452074 24.093729 -5.811423 +v 32.246895 23.458073 -5.695620 +v 21.452074 24.598013 -5.903296 +v 10.657262 24.911684 -5.960440 +v 40.086185 22.917782 -5.597183 +v 32.246895 23.962353 -5.787486 +v 40.086185 22.917782 -5.597183 +v 40.086185 23.422073 -5.689055 +v 40.086185 23.422073 -5.689055 +v 5.429670 25.412260 -1.122682 +v 6.234208 24.911684 -5.960440 +v 0.301038 3.263966 -5.783109 +v 0.197856 3.753135 -5.871772 +v 31.931070 10.162366 -7.040006 +v 32.026306 9.709085 -6.957421 +v 39.669945 11.589635 -7.300035 +v 39.736111 11.274701 -7.242656 +v 0.387923 6.649406 14.232206 +v 32.075500 13.113069 13.054610 +v 31.962679 13.650052 12.956777 +v 0.266163 7.228906 14.126631 +v 37.826111 14.319102 12.834886 +v 37.726982 14.790937 12.748921 +v 32.026306 9.709085 -6.957421 +v 32.085331 10.333307 -1.938074 +v 0.387387 3.865942 -0.760052 +v 0.301038 3.263966 -5.783109 +v 39.736111 11.274701 -7.242656 +v 42.631611 12.549485 -2.430761 +v 42.539577 12.987517 -2.510567 +v 42.558872 13.816903 2.562746 +v 42.650913 13.378873 2.642551 +v 42.631611 12.549485 -2.430761 +v 31.952864 10.963766 -2.052936 +v 31.980639 11.746195 2.991455 +v 42.558872 13.816903 2.562746 +v 42.539577 12.987517 -2.510567 +v 31.931070 10.162366 -7.040006 +v 0.197856 3.753135 -5.871772 +v 0.243875 4.546322 -0.883360 +v 39.669945 11.589635 -7.300035 +v 42.539577 12.987517 -2.510567 +v 42.631611 12.549485 -2.430761 +v 39.736111 11.274701 -7.242656 +v 32.075500 13.113069 13.054610 +v 0.387923 6.649406 14.232206 +v 0.498981 5.383774 9.351863 +v 32.146481 11.874181 8.170041 +v 0.322121 6.222238 9.199900 +v 0.266163 7.228906 14.126631 +v 31.962679 13.650052 12.956777 +v 31.983232 12.651127 8.028491 +v 37.726982 14.790937 12.748921 +v 37.826111 14.319102 12.834886 +v 41.148281 13.882128 7.790358 +v 41.034866 14.421938 7.692010 +v 37.826111 14.319102 12.834886 +v 41.148281 13.882128 7.790358 +v 37.726982 14.790937 12.748921 +v 41.034866 14.421938 7.692010 +v 32.113106 11.115736 3.106316 +v 0.440122 4.637904 4.286060 +v 0.296608 5.318285 4.162748 +v 42.650913 13.378873 2.642551 +v 39.669945 11.589635 -7.300035 +v 4.091239 8.149817 -35.663517 +v 5.559022 7.933621 -36.487488 +v 10.651894 10.839343 -20.973984 +v 2.289506 10.581471 -20.926994 +v 2.316500 11.808965 -21.150627 +v 4.136919 9.079532 -35.830589 +v -0.137555 10.420605 -28.919138 +v -0.137555 11.835061 -21.155396 +v -0.137555 10.607282 -20.931702 +v 2.289506 10.581471 -20.926994 +v 2.316500 11.808965 -21.150627 +v -0.137555 11.835061 -21.155396 +v 10.651894 10.839343 -20.973984 +v 10.753733 11.399936 -21.076115 +v 12.581096 10.727206 -20.953552 +v 12.692742 11.199199 -21.039536 +v 15.755084 9.283175 -24.701189 +v 15.931952 9.756166 -24.787363 +v 15.310983 10.176061 -23.504894 +v 15.140950 9.703977 -23.418880 +v 17.404955 7.330409 -32.602814 +v 17.600180 7.780162 -32.684757 +v 13.768648 7.331349 -36.377769 +v 5.559022 7.933621 -36.487488 +v 5.622406 8.862197 -36.656662 +v 13.907855 7.973525 -36.291916 +v -0.137555 10.420605 -28.919138 +v 4.136919 9.079532 -35.830589 +v 4.091239 8.149817 -35.663517 +v -0.137555 9.192825 -28.695456 +v 12.692742 11.199199 -21.039536 +v 12.581096 10.727206 -20.953552 +v 16.102695 7.227387 -35.385410 +v 16.283424 7.700906 -35.471687 +v 16.283424 7.700906 -35.471687 +v 16.102695 7.227387 -35.385410 +v 15.310983 10.176061 -23.504894 +v 16.283424 7.700906 -35.471687 +v 13.907855 7.973525 -36.291916 +v 12.692742 11.199199 -21.039536 +v 10.753733 11.399936 -21.076115 +v 5.622406 8.862197 -36.656662 +v 17.404955 7.330409 -32.602814 +v 15.755084 9.283175 -24.701189 +v 15.140950 9.703977 -23.418880 +v 16.102695 7.227387 -35.385410 +v 13.768648 7.331349 -36.377769 +v 12.581096 10.727206 -20.953552 +v 15.931952 9.756166 -24.787363 +v 17.600180 7.780162 -32.684757 +v 30.305048 12.463110 10.208496 +v 30.963701 12.438213 10.208937 +v 30.813036 26.748894 11.243511 +v 30.154379 26.773792 11.243069 +v 30.963701 12.438213 10.208937 +v 30.960356 12.540001 8.359914 +v 30.809679 26.850677 9.394487 +v 30.813036 26.748894 11.243511 +v 30.960356 12.540001 8.359914 +v 30.301702 12.564899 8.359473 +v 30.151026 26.875576 9.394049 +v 30.809679 26.850677 9.394487 +v 30.301702 12.564899 8.359473 +v 30.305048 12.463110 10.208496 +v 30.154379 26.773792 11.243069 +v 30.151026 26.875576 9.394049 +v 0.634450 18.576508 2.205827 +v 0.634450 20.241886 1.902417 +v 1.850016 20.241886 1.902417 +v 1.850016 18.576508 2.205827 +v 0.634450 18.658239 2.654441 +v 1.850016 18.658239 2.654441 +v 1.850016 20.323616 2.351031 +v 0.634450 20.323616 2.351031 +v 0.634450 18.576508 2.205827 +v 1.850016 18.576508 2.205827 +v 1.850016 18.658239 2.654441 +v 0.634450 18.658239 2.654441 +v 1.850016 18.576508 2.205827 +v 1.850016 20.241886 1.902417 +v 1.850016 20.323616 2.351031 +v 1.850016 18.658239 2.654441 +v 1.850016 20.241886 1.902417 +v 0.634450 20.241886 1.902417 +v 0.634450 20.323616 2.351031 +v 1.850016 20.323616 2.351031 +v 0.634450 20.241886 1.902417 +v 0.634450 18.576508 2.205827 +v 0.634450 18.658239 2.654441 +v 0.634450 20.323616 2.351031 +v 6.450358 16.871246 6.704314 +v 6.450358 17.393959 9.573412 +v 6.993151 13.322628 10.315155 +v 6.993151 12.799915 7.446060 +v 4.904616 19.147156 6.289673 +v 4.904616 19.669867 9.158772 +v 2.591246 20.667866 6.012619 +v 2.591246 21.190580 8.881716 +v -0.137555 21.201870 5.915332 +v -0.137555 21.724585 8.784430 +v 2.591248 6.318684 8.626856 +v 2.591248 6.841393 11.495952 +v -0.137555 6.307393 11.593240 +v -0.137555 5.784679 8.724144 +v 4.904616 7.839396 8.349802 +v 4.904616 8.362108 11.218898 +v 6.450361 10.115304 7.935161 +v 6.450361 10.638018 10.804259 +v 6.450361 16.632854 11.177889 +v 6.993151 13.581101 11.733877 +v 6.993151 13.322628 10.315155 +v 6.450358 17.393959 9.573412 +v 4.904616 18.908764 10.763247 +v 4.904616 19.669867 9.158772 +v 2.591246 20.429476 10.486194 +v 2.591246 21.190580 8.881716 +v -0.137555 20.963480 10.388906 +v -0.137555 21.724585 8.784430 +v 2.591248 7.099868 12.914675 +v -0.137555 6.565864 13.011965 +v -0.137555 6.307393 11.593240 +v 2.591248 6.841393 11.495952 +v 4.904616 8.620581 12.637621 +v 4.904616 8.362108 11.218898 +v 6.450361 10.896488 12.222981 +v 6.450361 10.638018 10.804259 +v 6.450361 16.489346 12.240279 +v 6.993151 13.763827 12.736833 +v 6.993151 13.581101 11.733877 +v 6.450361 16.632854 11.177889 +v 4.904616 18.765253 11.825639 +v 4.904616 18.908764 10.763247 +v 2.591246 20.285967 11.548583 +v 2.591246 20.429476 10.486194 +v -0.137555 20.819971 11.451295 +v -0.137555 20.963480 10.388906 +v 2.591248 7.282592 13.917631 +v -0.137555 6.748590 14.014921 +v -0.137555 6.565864 13.011965 +v 2.591248 7.099868 12.914675 +v 4.904616 8.803307 13.640577 +v 4.904616 8.620581 12.637621 +v 6.450361 11.079216 13.225934 +v 6.450361 10.896488 12.222981 +v 6.450358 16.850937 14.456967 +v 6.993151 14.166320 14.946074 +v 6.993151 13.763827 12.736833 +v 6.450361 16.489346 12.240279 +v 4.904615 19.126841 14.042328 +v 4.904616 18.765253 11.825639 +v 2.591246 20.647554 13.765274 +v 2.591246 20.285967 11.548583 +v -0.137555 21.181559 13.667984 +v -0.137555 20.819971 11.451295 +v 2.591248 7.685090 16.126867 +v -0.137555 7.151085 16.224155 +v -0.137555 6.748590 14.014921 +v 2.591248 7.282592 13.917631 +v 4.904616 9.205801 15.849814 +v 4.904616 8.803307 13.640577 +v 6.450361 11.481709 15.435171 +v 6.450361 11.079216 13.225934 +v 6.450358 16.871246 6.704314 +v 6.993151 12.799915 7.446060 +v 5.267464 12.946739 7.419309 +v 4.856030 16.032776 6.857073 +v 4.904616 19.147156 6.289673 +v 3.684370 17.757896 6.542778 +v 2.591246 20.667866 6.012619 +v 1.930855 18.910583 6.332776 +v -0.137555 21.201870 5.915332 +v -0.137555 19.315353 6.259032 +v 2.591248 6.318684 8.626856 +v -0.137555 5.784679 8.724144 +v -0.137555 7.629245 8.388088 +v 1.930856 8.034017 8.314344 +v 4.904616 7.839396 8.349802 +v 3.684371 9.186704 8.104342 +v 6.450361 10.115304 7.935161 +v 4.856033 10.911824 7.790046 +v 6.358034 16.913443 14.535474 +v 6.358034 17.286711 16.584303 +v 6.893217 14.639720 17.066553 +v 6.893217 14.266452 15.017725 +v 4.833952 19.157454 14.126644 +v 4.833952 19.530722 16.175474 +v 2.553005 20.656855 13.853474 +v 2.553004 21.030119 15.902303 +v -0.137555 21.183367 13.757549 +v -0.137555 21.556639 15.806378 +v 2.553006 7.876051 16.181973 +v 2.553005 8.280234 18.225168 +v -0.137555 7.753714 18.321089 +v -0.137555 7.349532 16.277897 +v 4.833952 9.375453 15.908801 +v 4.833954 9.748725 17.957628 +v 2.553005 8.280234 18.225168 +v 2.553006 7.876051 16.181973 +v 6.358034 11.619465 15.499971 +v 6.358034 11.992731 17.548800 +v 4.833954 9.748725 17.957628 +v 4.833952 9.375453 15.908801 +v 3.367140 17.535583 17.474588 +v 3.367140 10.639707 18.730930 +v 7.131627 17.223406 19.063496 +v 5.827884 16.925011 20.438580 +v 6.319389 14.494061 20.881462 +v 7.730550 14.261175 19.603176 +v 5.426033 19.734667 18.605974 +v 4.428194 18.985874 20.063118 +v 2.873438 21.412638 18.300266 +v 2.333411 20.362902 19.812241 +v -0.137555 22.001863 18.192917 +v -0.137555 20.846445 19.724144 +v 2.873440 7.109707 20.906082 +v 2.333412 8.625226 21.950691 +v -0.137555 8.141681 22.038780 +v -0.137555 6.520483 21.013433 +v 5.426036 8.787681 20.600376 +v 4.428196 10.002252 21.699814 +v 7.131627 11.298944 20.142857 +v 5.827887 12.063114 21.324352 +v 6.319389 14.494061 20.881462 +v 5.827884 16.925011 20.438580 +v 4.652434 16.446011 20.525845 +v 5.047093 14.494061 20.881462 +v 4.428194 18.985874 20.063118 +v 3.528546 18.100796 20.224361 +v 2.333411 20.362902 19.812241 +v 1.846524 19.206488 20.022923 +v -0.137555 20.846445 19.724144 +v -0.137555 19.594753 19.952187 +v -0.137555 8.141681 22.038780 +v 2.333412 8.625226 21.950691 +v 1.846525 9.781638 21.740005 +v -0.137555 9.393373 21.810745 +v 4.428196 10.002252 21.699814 +v 3.528547 10.887330 21.538559 +v 5.827887 12.063114 21.324352 +v 4.652437 12.542114 21.237080 +v 4.652434 16.446011 20.525845 +v 4.441548 15.953656 17.762800 +v 4.818830 14.087643 18.102762 +v 5.047093 14.494061 20.881462 +v 3.528546 18.100796 20.224361 +v 3.367140 17.535583 17.474588 +v 1.846524 19.206488 20.022923 +v 1.759172 18.592596 17.282019 +v -0.137555 19.594753 19.952187 +v -0.137555 18.963770 17.214392 +v 1.846525 9.781638 21.740005 +v 1.759172 9.582694 18.923504 +v -0.137555 9.211522 18.991127 +v -0.137555 9.393373 21.810745 +v 3.528547 10.887330 21.538559 +v 3.367140 10.639707 18.730930 +v 4.652437 12.542114 21.237080 +v 4.441549 12.221634 18.442724 +v 7.061548 17.029957 17.660933 +v 7.654699 14.096279 18.195410 +v 6.893217 14.639720 17.066553 +v 6.358034 17.286711 16.584303 +v 5.372399 19.517012 17.207823 +v 4.833952 19.530722 16.175474 +v 2.844412 21.178797 16.905069 +v 2.553004 21.030119 15.902303 +v -0.137555 21.762342 16.798756 +v -0.137555 21.556639 15.806378 +v 2.844412 7.013754 19.485758 +v -0.137555 6.430205 19.592070 +v -0.137555 7.753714 18.321089 +v 5.372402 8.675551 19.182995 +v 7.061551 11.162606 18.729893 +v 6.358034 11.992731 17.548800 +v 7.131627 17.223406 19.063496 +v 7.730550 14.261175 19.603176 +v 7.654699 14.096279 18.195410 +v 7.061548 17.029957 17.660933 +v 5.426033 19.734667 18.605974 +v 5.372399 19.517012 17.207823 +v 2.873438 21.412638 18.300266 +v 2.844412 21.178797 16.905069 +v -0.137555 22.001863 18.192917 +v -0.137555 21.762342 16.798756 +v 2.873440 7.109707 20.906082 +v -0.137555 6.520483 21.013433 +v -0.137555 6.430205 19.592070 +v 2.844412 7.013754 19.485758 +v 5.426036 8.787681 20.600376 +v 5.372402 8.675551 19.182995 +v 7.131627 11.298944 20.142857 +v 7.061551 11.162606 18.729893 +v 10.347656 -5.313800 13.892914 +v 10.189377 -4.324817 14.341125 +v 10.173791 -4.065199 8.973198 +v 10.189374 -5.093708 9.342202 +v 9.902440 -2.803895 8.298583 +v 10.613137 -2.555629 8.260398 +v 10.749097 -4.127771 8.234436 +v 10.021957 -4.190809 8.244131 +v 9.801115 -1.547646 8.867919 +v 10.497879 -1.142371 8.805583 +v 9.733415 -0.613330 9.865463 +v 10.420865 -0.103137 9.786989 +v 9.709641 -0.143181 11.139349 +v 10.393823 0.403852 11.055208 +v 9.733415 -0.208778 12.495639 +v 10.420865 0.301416 12.417167 +v 9.722919 -0.800133 13.727847 +v 10.497879 -0.394859 13.665511 +v 9.824161 -1.827220 14.648387 +v 10.613143 -1.578959 14.610202 +v 9.943579 -3.133664 15.117107 +v 10.749100 -3.070621 15.107410 +v 10.062968 -4.520590 15.062659 +v 10.885056 -4.642758 15.081449 +v 10.144868 -5.776834 14.493324 +v 11.004154 -6.056028 14.536266 +v 10.221666 -6.653613 13.486927 +v 11.091516 -6.927130 13.528999 +v 11.004154 -6.056028 14.536266 +v 10.144868 -5.776834 14.493324 +v 10.248635 -7.046638 12.201180 +v 11.122193 -7.346391 12.247284 +v 10.221666 -7.058166 10.856751 +v 11.091516 -7.331683 10.898822 +v 10.144865 -6.524346 9.633391 +v 11.004151 -6.803540 9.676335 +v 10.062968 -5.497261 8.712852 +v 10.885054 -5.619434 8.731646 +v 11.410480 -5.221654 13.878742 +v 11.529890 -5.957200 13.093418 +v 11.410480 -5.810138 10.052730 +v 11.364158 -5.001564 9.328028 +v 9.902440 -2.803895 8.298583 +v 10.021957 -4.190809 8.244131 +v 10.021960 -4.078360 8.975224 +v 9.927868 -2.986496 9.018088 +v 10.062968 -5.497261 8.712852 +v 10.037540 -5.106868 9.344226 +v 10.144865 -6.524346 9.633391 +v 10.195823 -5.915451 10.068927 +v 10.221666 -7.058166 10.856751 +v 10.152031 -6.380999 11.038991 +v 10.248635 -7.046638 12.201180 +v 10.173262 -6.432639 12.106741 +v 10.221666 -6.653613 13.486927 +v 10.152031 -6.062517 13.109615 +v 10.144868 -5.776834 14.493324 +v 10.195823 -5.326966 13.894939 +v 10.144868 -5.776834 14.493324 +v 10.062968 -4.520590 15.062659 +v 10.037540 -4.337977 14.343151 +v 10.195823 -5.326966 13.894939 +v 9.943579 -3.133664 15.117107 +v 10.021963 -3.246119 14.386018 +v 9.824161 -1.827220 14.648387 +v 9.927871 -2.217605 14.017013 +v 9.722919 -0.800133 13.727847 +v 9.848101 -1.409030 13.292312 +v 9.733415 -0.208778 12.495639 +v 9.794803 -0.943481 12.322249 +v 9.709641 -0.143181 11.139349 +v 9.776086 -0.891838 11.254501 +v 9.733415 -0.613330 9.865463 +v 9.794800 -1.261969 10.251627 +v 9.801115 -1.547646 8.867919 +v 9.848098 -1.997514 9.466303 +v 11.388451 -4.072338 8.225910 +v 11.268930 -2.685418 8.280360 +v 11.294358 -2.868025 8.999867 +v 11.388016 -3.954838 8.957199 +v 11.167605 -1.429169 8.849696 +v 11.214588 -1.879037 9.448082 +v 11.099905 -0.494853 9.847242 +v 11.161290 -1.143492 10.233404 +v 11.076132 -0.024707 11.121126 +v 11.142576 -0.773364 11.236277 +v 11.099905 -0.090303 12.477416 +v 11.161293 -0.825004 12.304027 +v 11.167608 -0.681659 13.709624 +v 11.214591 -1.290552 13.274091 +v 11.268933 -1.708743 14.630164 +v 11.294361 -2.099133 13.998790 +v 11.388453 -3.015193 15.098885 +v 11.388453 -3.127642 14.367793 +v 11.541418 -4.402113 15.044438 +v 11.515990 -4.219506 14.324928 +v 11.694958 -5.658357 14.475101 +v 11.562313 -5.208493 13.876717 +v 11.694958 -5.658357 14.475101 +v 11.771752 -6.569247 13.473953 +v 11.702118 -5.944039 13.091393 +v 11.562313 -5.208493 13.876717 +v 11.798721 -6.962277 12.188204 +v 11.723349 -6.314167 12.088518 +v 11.771752 -6.973800 10.843776 +v 11.702118 -6.262527 11.020768 +v 11.694952 -6.405869 9.615170 +v 11.562313 -5.796978 10.050706 +v 11.541418 -5.378782 8.694632 +v 11.515990 -4.988397 9.326004 +v 9.927868 -2.986496 9.018088 +v 10.021960 -4.078360 8.975224 +v 10.173791 -4.065199 8.973198 +v 10.079700 -2.973335 9.016065 +v 10.037540 -5.106868 9.344226 +v 10.189374 -5.093708 9.342202 +v 10.195823 -5.915451 10.068927 +v 10.347653 -5.902290 10.066901 +v 10.152031 -6.380999 11.038991 +v 10.324265 -6.367838 11.036967 +v 10.173262 -6.432639 12.106741 +v 10.345494 -6.419479 12.104715 +v 10.152031 -6.062517 13.109615 +v 10.324265 -6.049350 13.107590 +v 10.195823 -5.326966 13.894939 +v 10.347656 -5.313800 13.892914 +v 10.195823 -5.326966 13.894939 +v 10.037540 -4.337977 14.343151 +v 10.189377 -4.324817 14.341125 +v 10.347656 -5.313800 13.892914 +v 10.021963 -3.246119 14.386018 +v 10.173796 -3.232952 14.383994 +v 9.927871 -2.217605 14.017013 +v 10.079700 -2.204439 14.014987 +v 9.848101 -1.409030 13.292312 +v 9.999933 -1.395863 13.290288 +v 9.794803 -0.943481 12.322249 +v 9.946635 -0.930319 12.320226 +v 9.776086 -0.891838 11.254501 +v 9.927916 -0.878675 11.252476 +v 9.794800 -1.261969 10.251627 +v 9.946632 -1.248802 10.249601 +v 9.848098 -1.997514 9.466303 +v 9.999930 -1.984348 9.464279 +v 11.388016 -3.954838 8.957199 +v 11.294358 -2.868025 8.999867 +v 11.142525 -2.881190 9.001891 +v 11.236621 -3.973048 8.959024 +v 11.214588 -1.879037 9.448082 +v 11.062758 -1.892203 9.450106 +v 11.161290 -1.143492 10.233404 +v 11.009460 -1.156657 10.235428 +v 11.142576 -0.773364 11.236277 +v 10.990744 -0.786530 11.238302 +v 11.161293 -0.825004 12.304027 +v 11.009460 -0.838170 12.306050 +v 11.214591 -1.290552 13.274091 +v 11.062758 -1.303718 13.276114 +v 11.294361 -2.099133 13.998790 +v 11.142528 -2.112300 14.000815 +v 11.388453 -3.127642 14.367793 +v 11.236621 -3.140807 14.369819 +v 11.515990 -4.219506 14.324928 +v 11.364158 -4.232666 14.326954 +v 11.562313 -5.208493 13.876717 +v 11.410480 -5.221654 13.878742 +v 11.562313 -5.208493 13.876717 +v 11.702118 -5.944039 13.091393 +v 11.529890 -5.957200 13.093418 +v 11.410480 -5.221654 13.878742 +v 11.723349 -6.314167 12.088518 +v 11.551121 -6.327328 12.090542 +v 11.702118 -6.262527 11.020768 +v 11.529890 -6.275688 11.022794 +v 11.562313 -5.796978 10.050706 +v 11.410480 -5.810138 10.052730 +v 11.515990 -4.988397 9.326004 +v 11.364158 -5.001564 9.328028 +v 11.268930 -2.685418 8.280360 +v 11.388451 -4.072338 8.225910 +v 10.749097 -4.127771 8.234436 +v 10.613137 -2.555629 8.260398 +v 11.167605 -1.429169 8.849696 +v 10.497879 -1.142371 8.805583 +v 11.099905 -0.494853 9.847242 +v 10.420865 -0.103137 9.786989 +v 11.076132 -0.024707 11.121126 +v 10.393823 0.403852 11.055208 +v 11.099905 -0.090303 12.477416 +v 10.420865 0.301416 12.417167 +v 11.167608 -0.681659 13.709624 +v 10.497879 -0.394859 13.665511 +v 11.268933 -1.708743 14.630164 +v 10.613143 -1.578959 14.610202 +v 11.388453 -3.015193 15.098885 +v 10.749100 -3.070621 15.107410 +v 11.541418 -4.402113 15.044438 +v 10.885056 -4.642758 15.081449 +v 11.694958 -5.658357 14.475101 +v 11.004154 -6.056028 14.536266 +v 11.771752 -6.569247 13.473953 +v 11.694958 -5.658357 14.475101 +v 11.004154 -6.056028 14.536266 +v 11.091516 -6.927130 13.528999 +v 11.798721 -6.962277 12.188204 +v 11.122193 -7.346391 12.247284 +v 11.771752 -6.973800 10.843776 +v 11.091516 -7.331683 10.898822 +v 11.694952 -6.405869 9.615170 +v 11.004151 -6.803540 9.676335 +v 11.541418 -5.378782 8.694632 +v 10.885054 -5.619434 8.731646 +v 2.834212 15.910932 19.358097 +v 2.834203 15.949227 19.568314 +v 3.293931 14.261284 19.875835 +v 3.293931 14.222986 19.665619 +v 1.578188 17.146614 19.132973 +v 1.578188 17.184916 19.343189 +v -0.137555 17.598896 19.050575 +v -0.137555 17.637207 19.260788 +v 1.578186 11.299354 20.198269 +v 1.578186 11.337653 20.408482 +v -0.137555 10.885364 20.490883 +v -0.137555 10.847074 20.280666 +v 2.834198 12.535027 19.973148 +v 2.834198 12.573324 20.183361 +v 3.293931 14.222986 19.665619 +v 3.293931 14.261284 19.875835 +v 2.834198 12.573324 20.183361 +v 2.834198 12.535027 19.973148 +v 0.612181 15.845090 21.324074 +v 0.612181 13.289986 21.789577 +v 2.322617 15.861096 20.732384 +v 1.674100 15.581246 21.285297 +v 1.954364 14.552227 21.472775 +v 2.703207 14.463718 20.986965 +v 1.282826 16.884050 20.546009 +v 0.908404 16.334541 21.148060 +v -0.137555 17.258476 20.477798 +v -0.137555 16.610268 21.097824 +v 1.282824 12.043385 21.427917 +v 0.908404 12.769909 21.797489 +v -0.137555 12.494183 21.847721 +v -0.137555 11.668958 21.496132 +v 2.322616 13.066336 21.241550 +v 1.674100 13.523205 21.660248 +v 1.954364 14.552227 21.472775 +v 1.674100 15.581246 21.285297 +v 1.298521 15.367919 21.324165 +v 1.520683 14.552227 21.472775 +v 1.674100 15.581246 21.285297 +v 0.908404 16.334541 21.148060 +v 0.691564 15.965047 21.215378 +v 1.298521 15.367919 21.324165 +v 0.908404 16.334541 21.148060 +v -0.137555 16.610268 21.097824 +v -0.137555 16.183609 21.175556 +v 0.691564 15.965047 21.215378 +v -0.137555 12.494183 21.847721 +v 0.908404 12.769909 21.797489 +v 0.691563 13.139404 21.730171 +v -0.137555 12.920841 21.769989 +v 0.908404 12.769909 21.797489 +v 1.674100 13.523205 21.660248 +v 1.298520 13.736532 21.621380 +v 0.691563 13.139404 21.730171 +v 1.674100 13.523205 21.660248 +v 1.954364 14.552227 21.472775 +v 1.520683 14.552227 21.472775 +v 1.298520 13.736532 21.621380 +v 1.520683 14.507906 21.229500 +v 1.298521 15.323596 21.080891 +v 1.161026 15.245500 21.095123 +v 1.361917 14.507906 21.229500 +v 1.298521 15.323596 21.080891 +v 0.691564 15.920726 20.972099 +v 0.612181 15.785457 20.996750 +v 1.161026 15.245500 21.095123 +v 0.691564 15.920726 20.972099 +v -0.137555 16.139288 20.932285 +v -0.137555 15.983094 20.960735 +v 0.612181 15.785457 20.996750 +v -0.137555 12.876520 21.526718 +v 0.691563 13.095083 21.486900 +v 0.612181 13.230352 21.462250 +v -0.137555 13.032715 21.498264 +v 0.691563 13.095083 21.486900 +v 1.298520 13.692211 21.378109 +v 1.161025 13.770308 21.363880 +v 0.612181 13.230352 21.462250 +v 1.298520 13.692211 21.378109 +v 1.520683 14.507906 21.229500 +v 1.361917 14.507906 21.229500 +v 1.161025 13.770308 21.363880 +v 1.520683 14.552227 21.472775 +v 1.298521 15.367919 21.324165 +v 1.298521 15.323596 21.080891 +v 1.520683 14.507906 21.229500 +v 1.298521 15.367919 21.324165 +v 0.691564 15.965047 21.215378 +v 0.691564 15.920726 20.972099 +v 1.298521 15.323596 21.080891 +v 0.691564 15.965047 21.215378 +v -0.137555 16.183609 21.175556 +v -0.137555 16.139288 20.932285 +v 0.691564 15.920726 20.972099 +v -0.137555 12.920841 21.769989 +v 0.691563 13.139404 21.730171 +v 0.691563 13.095083 21.486900 +v -0.137555 12.876520 21.526718 +v 0.691563 13.139404 21.730171 +v 1.298520 13.736532 21.621380 +v 1.298520 13.692211 21.378109 +v 0.691563 13.095083 21.486900 +v 1.298520 13.736532 21.621380 +v 1.520683 14.552227 21.472775 +v 1.520683 14.507906 21.229500 +v 1.298520 13.692211 21.378109 +v 1.161026 15.305133 21.422447 +v 1.361917 14.567539 21.556824 +v 1.361917 14.507906 21.229500 +v 1.161026 15.245500 21.095123 +v 1.361917 14.567539 21.556824 +v 1.161025 13.829943 21.691204 +v 1.161025 13.770308 21.363880 +v 1.361917 14.507906 21.229500 +v 1.161025 13.829943 21.691204 +v 0.612181 13.289986 21.789577 +v 0.612181 13.230352 21.462250 +v 1.161025 13.770308 21.363880 +v 0.612181 13.289986 21.789577 +v -0.137555 13.092350 21.825588 +v -0.137555 13.032715 21.498264 +v 0.612181 13.230352 21.462250 +v -0.137555 16.042728 21.288063 +v 0.612181 15.845090 21.324074 +v 0.612181 15.785457 20.996750 +v -0.137555 15.983094 20.960735 +v 0.612181 15.845090 21.324074 +v 1.161026 15.305133 21.422447 +v 1.161026 15.245500 21.095123 +v 0.612181 15.785457 20.996750 +v 2.322617 15.861096 20.732384 +v 2.703207 14.463718 20.986965 +v 2.703207 14.261284 19.875835 +v 2.322617 15.658666 19.621250 +v 1.282826 16.884050 20.546009 +v 1.282826 16.681616 19.434883 +v -0.137555 17.258476 20.477798 +v -0.137555 17.056042 19.366665 +v 1.282824 12.043385 21.427917 +v -0.137555 11.668958 21.496132 +v -0.137555 11.466525 20.385002 +v 1.282824 11.840951 20.316792 +v 2.322616 13.066336 21.241550 +v 2.322616 12.863903 20.130421 +v 2.703207 14.463718 20.986965 +v 2.322616 13.066336 21.241550 +v 2.322616 12.863903 20.130421 +v 2.703207 14.261284 19.875835 +v 2.322617 15.658666 19.621250 +v 2.703207 14.261284 19.875835 +v 3.293931 14.261284 19.875835 +v 2.834203 15.949227 19.568314 +v 2.703207 14.261284 19.875835 +v 2.322616 12.863903 20.130421 +v 2.834198 12.573324 20.183361 +v 3.293931 14.261284 19.875835 +v 2.322616 12.863903 20.130421 +v 1.282824 11.840951 20.316792 +v 1.578186 11.337653 20.408482 +v 2.834198 12.573324 20.183361 +v 1.282824 11.840951 20.316792 +v -0.137555 11.466525 20.385002 +v -0.137555 10.885364 20.490883 +v 1.578186 11.337653 20.408482 +v -0.137555 17.056042 19.366665 +v 1.282826 16.681616 19.434883 +v 1.578188 17.184916 19.343189 +v -0.137555 17.637207 19.260788 +v 1.282826 16.681616 19.434883 +v 2.322617 15.658666 19.621250 +v 2.834203 15.949227 19.568314 +v 1.578188 17.184916 19.343189 +v 0.663374 14.114862 23.483055 +v 0.715733 14.051090 23.425133 +v 1.072334 14.898061 23.270828 +v 0.998288 14.910323 23.338135 +v 0.715733 15.745030 23.116516 +v -0.137555 16.092754 23.053173 +v -0.137555 16.032167 23.133743 +v 0.663374 15.705781 23.193211 +v 0.998288 14.910323 23.338135 +v 1.072334 14.898061 23.270828 +v 0.715733 15.745030 23.116516 +v 0.663374 15.705781 23.193211 +v 0.715733 13.707285 21.538033 +v 1.072334 14.554255 21.383720 +v 1.072334 14.898061 23.270828 +v 0.715733 14.051090 23.425133 +v -0.137555 15.748948 21.166065 +v -0.137555 16.092754 23.053173 +v 0.715733 15.745030 23.116516 +v 0.715733 15.401227 21.229416 +v 1.072334 14.554255 21.383720 +v 0.715733 15.401227 21.229416 +v 0.715733 15.745030 23.116516 +v 1.072334 14.898061 23.270828 +v 6.777748 -3.374685 12.138167 +v 2.092322 7.513035 15.175448 +v 2.646245 7.840734 14.815410 +v 7.332256 -2.982224 11.851208 +v 2.704278 7.707127 15.538341 +v 7.388817 -3.256060 12.533605 +v 7.388817 -3.256060 12.533605 +v 2.704278 7.707127 15.538341 +v 2.092322 7.513035 15.175448 +v 6.777748 -3.374685 12.138167 +v 6.154264 -3.665658 11.352397 +v 1.461396 4.755218 2.757458 +v 2.013677 4.917661 2.296532 +v 6.703182 -3.810490 10.881698 +v 6.703182 -3.810490 10.881698 +v 2.013677 4.917661 2.296532 +v 2.074895 5.073448 3.014745 +v 6.769146 -3.258756 11.366552 +v 6.769146 -3.258756 11.366552 +v 2.074895 5.073448 3.014745 +v 1.461396 4.755218 2.757458 +v 6.154264 -3.665658 11.352397 +v -0.137555 -3.498145 12.355363 +v -0.137555 -4.092004 12.209984 +v 8.748431 -4.092004 12.209988 +v 8.748431 -3.498145 12.355365 +v -0.137555 -4.409125 11.687263 +v 8.748431 -4.409125 11.687264 +v -0.137555 -4.263747 11.093404 +v 8.748431 -4.263747 11.093406 +v -0.137555 -3.741025 10.776280 +v 8.748431 -3.741025 10.776284 +v -0.137555 -3.147167 10.921659 +v 8.748431 -3.147167 10.921661 +v -0.137555 -3.147167 10.921659 +v -0.137555 -2.830044 11.444382 +v 8.748431 -2.830044 11.444382 +v 8.748431 -3.147167 10.921661 +v -0.137555 -2.975422 12.038241 +v 8.748431 -2.975422 12.038241 +v 8.748431 -3.498145 12.355365 +v 8.748431 -4.092004 12.209988 +v 8.748431 -3.953632 12.021311 +v 8.748431 -3.533713 12.124108 +v 8.748431 -4.409125 11.687264 +v 8.748431 -4.177870 11.651694 +v 8.748431 -4.263747 11.093406 +v 8.748431 -4.075072 11.231778 +v 8.748431 -3.741025 10.776284 +v 8.748431 -3.705457 11.007539 +v 8.748431 -3.147167 10.921661 +v 8.748431 -3.285537 11.110336 +v 8.748431 -3.147167 10.921661 +v 8.748431 -2.830044 11.444382 +v 8.748431 -3.061300 11.479952 +v 8.748431 -3.285537 11.110336 +v 8.748431 -2.975422 12.038241 +v 8.748431 -3.164097 11.899868 +v 8.748431 -3.953632 12.021311 +v 9.643316 -3.959666 12.022240 +v 9.605914 -3.541481 12.125302 +v 8.748431 -3.533713 12.124108 +v 8.748431 -4.177870 11.651694 +v 9.658809 -4.183187 11.652513 +v 9.643316 -3.959666 12.022240 +v 8.748431 -3.953632 12.021311 +v 8.748431 -4.075072 11.231778 +v 9.643316 -4.081106 11.232705 +v 9.658809 -4.183187 11.652513 +v 8.748431 -4.177870 11.651694 +v 8.748431 -3.705457 11.007539 +v 9.605911 -3.713226 11.008735 +v 9.643316 -4.081106 11.232705 +v 8.748431 -4.075072 11.231778 +v 8.748431 -3.285537 11.110336 +v 9.568512 -3.295041 11.111799 +v 9.605911 -3.713226 11.008735 +v 8.748431 -3.705457 11.007539 +v 8.748431 -3.061300 11.479952 +v 9.553020 -3.071526 11.481525 +v 9.568512 -3.295041 11.111799 +v 8.748431 -3.285537 11.110336 +v 8.748431 -3.164097 11.899868 +v 9.568512 -3.173601 11.901333 +v 9.553020 -3.071526 11.481525 +v 8.748431 -3.061300 11.479952 +v 8.748431 -3.533713 12.124108 +v 9.605914 -3.541481 12.125302 +v 9.568512 -3.173601 11.901333 +v 8.748431 -3.164097 11.899868 +v 10.058415 -4.646990 13.001652 +v 9.940152 -3.324768 13.327479 +v 9.605914 -3.355837 13.332259 +v 9.724178 -4.678094 13.006378 +v 10.107403 -5.353782 11.832620 +v 10.058415 -4.646990 13.001652 +v 9.724178 -4.678094 13.006378 +v 9.773163 -5.384840 11.837338 +v 10.058415 -5.031002 10.505172 +v 10.107403 -5.353782 11.832620 +v 9.773163 -5.384840 11.837338 +v 9.724178 -5.062070 10.509952 +v 9.940152 -3.867794 9.797000 +v 10.058415 -5.031002 10.505172 +v 9.724178 -5.062070 10.509952 +v 9.605911 -3.898864 9.801778 +v 9.821888 -2.545539 10.122879 +v 9.940152 -3.867794 9.797000 +v 9.605911 -3.898864 9.801778 +v 9.487651 -2.576614 10.127659 +v 9.772903 -1.838800 11.291918 +v 9.821888 -2.545539 10.122879 +v 9.487651 -2.576614 10.127659 +v 9.438663 -1.869869 11.296698 +v 9.821891 -2.161563 12.619308 +v 9.772903 -1.838800 11.291918 +v 9.438663 -1.869869 11.296698 +v 9.487651 -2.192633 12.624087 +v 9.940152 -3.324768 13.327479 +v 9.821891 -2.161563 12.619308 +v 9.487651 -2.192633 12.624087 +v 9.605914 -3.355837 13.332259 +v 9.605914 -3.541481 12.125302 +v 9.643316 -3.959666 12.022240 +v 9.724178 -4.678094 13.006378 +v 9.605914 -3.355837 13.332259 +v 9.643316 -3.959666 12.022240 +v 9.658809 -4.183187 11.652513 +v 9.773163 -5.384840 11.837338 +v 9.724178 -4.678094 13.006378 +v 9.658809 -4.183187 11.652513 +v 9.643316 -4.081106 11.232705 +v 9.724178 -5.062070 10.509952 +v 9.773163 -5.384840 11.837338 +v 9.643316 -4.081106 11.232705 +v 9.605911 -3.713226 11.008735 +v 9.605911 -3.898864 9.801778 +v 9.724178 -5.062070 10.509952 +v 9.605911 -3.713226 11.008735 +v 9.568512 -3.295041 11.111799 +v 9.487651 -2.576614 10.127659 +v 9.605911 -3.898864 9.801778 +v 9.568512 -3.295041 11.111799 +v 9.553020 -3.071526 11.481525 +v 9.438663 -1.869869 11.296698 +v 9.487651 -2.576614 10.127659 +v 9.553020 -3.071526 11.481525 +v 9.568512 -3.173601 11.901333 +v 9.487651 -2.192633 12.624087 +v 9.438663 -1.869869 11.296698 +v 9.568512 -3.173601 11.901333 +v 9.605914 -3.541481 12.125302 +v 9.605914 -3.355837 13.332259 +v 9.487651 -2.192633 12.624087 +v 34.341240 10.973569 -4.305973 +v 34.243908 10.975993 -4.362118 +v 34.243908 24.352579 -3.784413 +v 34.341240 24.350153 -3.728268 +v 34.243908 10.971145 -4.249835 +v 34.243908 24.347727 -3.672129 +v 34.243908 10.971145 -4.249835 +v 34.243908 24.347727 -3.672129 +v 30.426413 12.832979 10.128780 +v 30.118052 12.800472 9.998507 +v 12.762002 27.443340 10.522055 +v 13.057944 27.553009 10.638275 +v 30.118052 12.800472 9.998507 +v 30.158758 12.818146 10.331888 +v 12.812175 27.472626 10.853327 +v 12.762002 27.443340 10.522055 +v 5.737073 7.860677 11.055306 +v 5.473027 7.993579 10.894900 +v 29.891050 26.787380 10.721846 +v 30.191610 26.743053 10.866119 +v 5.473027 7.993579 10.894900 +v 5.484356 7.996225 11.231019 +v 29.919748 26.796295 11.056828 +v 29.891050 26.787380 10.721846 +v 31.197435 10.997549 0.614511 +v 30.819914 11.104485 0.424588 +v 30.819914 27.064472 9.410694 +v 31.197435 26.957542 9.600615 +v 30.819914 10.890615 0.804433 +v 30.819914 26.850609 9.790541 +v 30.819914 10.890615 0.804433 +v 30.819914 26.850609 9.790541 +v 6.536887 16.464014 12.762231 +v 6.446542 16.478489 12.489015 +v 13.910448 26.973335 10.576986 +v 14.000791 26.958862 10.850204 +v 6.228430 16.608864 12.353185 +v 13.692336 27.103703 10.441158 +v 6.010320 16.778763 12.434308 +v 13.474224 27.273605 10.522282 +v 6.010320 16.778763 12.434308 +v 5.919975 16.888662 12.684867 +v 13.383882 27.383507 10.772839 +v 13.474224 27.273605 10.522282 +v 6.010320 16.874187 12.958085 +v 13.474224 27.369030 11.046057 +v 6.228430 16.743813 13.093915 +v 13.692336 27.238659 11.181887 +v 6.446542 16.573915 13.012792 +v 13.910448 27.068760 11.100763 +v 3.460064 17.646593 0.622345 +v 2.406346 17.756693 -2.452592 +v 2.406346 18.909416 -2.662604 +v 3.460064 18.907696 0.392586 +v -0.137555 17.892881 -3.742776 +v -0.137555 19.238968 -3.988016 +v -0.137555 19.903610 4.531394 +v 2.406346 19.189877 3.396056 +v 2.406346 20.489861 3.159215 +v -0.137555 21.291946 4.278457 +v 3.460064 18.907696 0.392586 +v 2.406346 18.909416 -2.662604 +v 1.988101 18.997980 -2.176482 +v 2.868576 18.907696 0.392586 +v 2.406346 18.909416 -2.662604 +v -0.137555 19.238968 -3.988016 +v -0.137555 19.364216 -3.300538 +v 1.988101 18.997980 -2.176482 +v -0.137555 21.291946 4.278457 +v 2.406346 20.489861 3.159215 +v 1.988101 20.286793 2.693955 +v -0.137555 20.931133 3.633897 +v 2.406346 20.489861 3.159215 +v 3.460064 18.907696 0.392586 +v 2.868576 18.907696 0.392586 +v 1.988101 20.286793 2.693955 +v 2.868576 18.907696 0.392586 +v 1.988101 18.997980 -2.176482 +v 1.988101 17.957739 -1.986966 +v 2.868576 17.970634 0.563307 +v 1.988101 18.997980 -2.176482 +v -0.137555 19.364216 -3.300538 +v -0.137555 18.330683 -3.112241 +v 1.988101 17.957739 -1.986966 +v -0.137555 20.931133 3.633897 +v 1.988101 20.286793 2.693955 +v 1.988101 19.330694 2.868146 +v -0.137555 20.041740 3.795932 +v 1.988101 20.286793 2.693955 +v 2.868576 18.907696 0.392586 +v 2.868576 17.970634 0.563307 +v 1.988101 19.330694 2.868146 +v 1.764696 19.540924 2.445557 +v 1.607252 19.914867 2.377429 +v 1.607252 22.648573 17.382362 +v 1.764696 22.274622 17.450493 +v 1.227150 20.069763 2.349210 +v 1.227150 22.803465 17.354145 +v 0.847047 19.914867 2.377429 +v 0.847047 22.648573 17.382362 +v 0.689604 19.540924 2.445557 +v 0.689604 22.274622 17.450493 +v 0.847048 19.166975 2.513686 +v 0.847048 21.900675 17.518620 +v 0.847048 19.166975 2.513686 +v 1.227150 19.012081 2.541905 +v 1.227150 21.745783 17.546841 +v 0.847048 21.900675 17.518620 +v 1.607252 19.166975 2.513686 +v 1.607252 21.900675 17.518620 +v 1.227150 22.803465 17.354145 +v 1.227150 21.745783 17.546841 +v 1.328365 22.063547 17.279758 +v 1.264851 22.214399 17.252277 +v 1.264851 22.423220 18.398476 +v 1.328365 22.272367 18.425961 +v 1.111515 22.276884 17.240891 +v 1.111515 22.485704 18.387093 +v 0.958179 22.214399 17.252277 +v 0.958179 22.423220 18.398476 +v 0.894666 22.063547 17.279758 +v 0.894666 22.272367 18.425961 +v 0.958179 21.912691 17.307243 +v 0.958179 22.121515 18.453445 +v 1.111515 21.850206 17.318626 +v 1.111515 22.059031 18.464828 +v 1.264851 21.912691 17.307243 +v 1.264851 22.121515 18.453445 +v 1.264851 21.912691 17.307243 +v 1.264851 22.121515 18.453445 +v 1.111515 22.485704 18.387093 +v 1.111515 22.059031 18.464828 +v 0.133934 16.457468 22.082756 +v 0.267938 16.083843 22.120594 +v 2.302677 19.353851 21.730213 +v 1.762202 19.625370 21.680744 +v 0.376600 15.523850 22.167568 +v 2.625365 19.191742 21.759747 +v 0.628120 15.397494 22.190586 +v 2.876886 19.065380 21.782768 +v 1.073912 15.597871 22.200733 +v 3.029603 18.988661 21.796749 +v 3.662046 22.581758 20.906145 +v 3.067275 22.880556 20.851706 +v 4.308591 22.256952 20.965319 +v 4.570708 22.125269 20.989309 +v 4.812643 22.003733 21.011454 +v 3.548905 24.540596 20.280066 +v 4.345898 24.140202 20.353010 +v 4.939451 25.479950 19.791376 +v 3.965612 25.969181 19.702246 +v 5.111174 23.755747 20.423056 +v 5.808561 25.043331 19.870920 +v 5.474634 23.573153 20.456320 +v 6.406145 24.743126 19.925615 +v 5.860458 23.379328 20.491632 +v 6.917789 24.486084 19.972445 +v 5.114145 27.688271 18.802736 +v 4.300347 26.658504 19.377474 +v 5.623532 26.764912 19.158976 +v 6.998875 29.319054 17.636089 +v 6.739822 26.703918 19.030687 +v 8.696851 30.098463 16.817387 +v 7.574537 26.468971 19.019972 +v 10.099993 29.987379 16.565411 +v 7.997971 25.885288 19.232836 +v 10.327551 28.673668 17.340019 +v 1.523451 15.759408 22.209934 +v 3.151719 18.927311 21.807922 +v 5.006096 21.906542 21.029158 +v 6.168966 23.224344 20.519869 +v 7.326908 24.280552 20.009890 +v 8.236472 25.164478 19.527105 +v 9.891048 26.912106 18.423786 +v 0.133934 16.457468 22.082756 +v 1.762202 19.625370 21.680744 +v 1.761461 19.573685 21.405102 +v 0.143137 16.425117 21.804653 +v 0.267938 16.083843 22.120594 +v 0.133934 16.457468 22.082756 +v 0.143137 16.425117 21.804653 +v 0.277901 16.052988 21.842400 +v 0.376600 15.523850 22.167568 +v 0.267938 16.083843 22.120594 +v 0.277901 16.052988 21.842400 +v 0.387803 15.495456 21.889267 +v 0.628120 15.397494 22.190586 +v 0.376600 15.523850 22.167568 +v 0.387803 15.495456 21.889267 +v 0.639325 15.369096 21.912289 +v 3.151719 18.927311 21.807922 +v 1.523451 15.759408 22.209934 +v 1.532655 15.727063 21.931828 +v 3.150980 18.875626 21.532272 +v 1.073912 15.597871 22.200733 +v 0.628120 15.397494 22.190586 +v 0.639325 15.369096 21.912289 +v 1.084074 15.567410 21.922523 +v 1.762202 19.625370 21.680744 +v 3.067275 22.880556 20.851706 +v 3.056602 22.809984 20.580938 +v 1.761461 19.573685 21.405102 +v 5.006096 21.906542 21.029158 +v 3.151719 18.927311 21.807922 +v 3.150980 18.875626 21.532272 +v 4.995420 21.835970 20.758394 +v 3.548905 24.540596 20.280066 +v 3.965612 25.969181 19.702246 +v 3.945781 25.881596 19.438158 +v 3.533330 24.460865 20.012613 +v 6.168966 23.224344 20.519869 +v 5.006096 21.906542 21.029158 +v 4.995420 21.835970 20.758394 +v 6.153392 23.144617 20.252417 +v 4.300347 26.658504 19.377474 +v 5.114145 27.688271 18.802736 +v 5.088283 27.589695 18.544235 +v 4.278272 26.566811 19.115355 +v 5.114145 27.688271 18.802736 +v 6.998875 29.319054 17.636089 +v 6.966145 29.208187 17.385136 +v 5.088283 27.589695 18.544235 +v 6.998875 29.319054 17.636089 +v 8.696851 30.098463 16.817387 +v 8.659721 29.979841 16.571980 +v 6.966145 29.208187 17.385136 +v 8.696851 30.098463 16.817387 +v 10.099993 29.987379 16.565411 +v 10.061254 29.865934 16.322176 +v 8.659721 29.979841 16.571980 +v 10.327551 28.673668 17.340019 +v 9.891048 26.912106 18.423786 +v 9.860877 26.805782 18.169872 +v 10.292060 28.557926 17.092480 +v 8.236472 25.164478 19.527105 +v 7.326908 24.280552 20.009890 +v 7.307082 24.192966 19.745806 +v 8.213132 25.070473 19.266150 +v 10.099993 29.987379 16.565411 +v 10.327551 28.673668 17.340019 +v 10.292060 28.557926 17.092480 +v 10.061254 29.865934 16.322176 +v 1.523451 15.759408 22.209934 +v 1.073912 15.597871 22.200733 +v 1.084074 15.567410 21.922523 +v 1.532655 15.727063 21.931828 +v 9.891048 26.912106 18.423786 +v 8.236472 25.164478 19.527105 +v 8.213132 25.070473 19.266150 +v 9.860877 26.805782 18.169872 +v 3.965612 25.969181 19.702246 +v 4.300347 26.658504 19.377474 +v 4.278272 26.566811 19.115355 +v 3.945781 25.881596 19.438158 +v 3.067275 22.880556 20.851706 +v 3.548905 24.540596 20.280066 +v 3.533330 24.460865 20.012613 +v 3.056602 22.809984 20.580938 +v 7.326908 24.280552 20.009890 +v 6.168966 23.224344 20.519869 +v 6.153392 23.144617 20.252417 +v 7.307082 24.192966 19.745806 +v 1.761461 19.573685 21.405102 +v 3.056602 22.809984 20.580938 +v 4.995420 21.835970 20.758394 +v 3.150980 18.875626 21.532272 +v 1.084074 15.567410 21.922523 +v 0.277901 16.052988 21.842400 +v 0.143137 16.425117 21.804653 +v 1.532655 15.727063 21.931828 +v 1.084074 15.567410 21.922523 +v 0.639325 15.369096 21.912289 +v 0.387803 15.495456 21.889267 +v 0.277901 16.052988 21.842400 +v 1.532655 15.727063 21.931828 +v 0.143137 16.425117 21.804653 +v 1.761461 19.573685 21.405102 +v 3.150980 18.875626 21.532272 +v 3.533330 24.460865 20.012613 +v 6.153392 23.144617 20.252417 +v 4.995420 21.835970 20.758394 +v 3.056602 22.809984 20.580938 +v 4.278272 26.566811 19.115355 +v 8.213132 25.070473 19.266150 +v 7.307082 24.192966 19.745806 +v 3.945781 25.881596 19.438158 +v 6.153392 23.144617 20.252417 +v 3.533330 24.460865 20.012613 +v 3.945781 25.881596 19.438158 +v 7.307082 24.192966 19.745806 +v 6.966145 29.208187 17.385136 +v 8.659721 29.979841 16.571980 +v 10.061254 29.865934 16.322176 +v 10.292060 28.557926 17.092480 +v 8.213132 25.070473 19.266150 +v 4.278272 26.566811 19.115355 +v 5.088283 27.589695 18.544235 +v 9.860877 26.805782 18.169872 +v 9.860877 26.805782 18.169872 +v 5.088283 27.589695 18.544235 +v 6.966145 29.208187 17.385136 +v 10.292060 28.557926 17.092480 +v 0.376462 18.602148 -30.355957 +v 0.330657 17.075186 -24.744356 +v 0.285053 18.414829 -35.894424 +v 0.330618 18.670710 -33.683582 +v 0.330657 17.075186 -24.744356 +v 0.330657 15.336257 -22.014980 +v 0.330657 12.973974 -22.107353 +v 0.330657 11.401349 -24.776545 +v 0.330657 11.401349 -24.776545 +v 0.330657 7.251087 -23.778145 +v 0.330657 4.289977 -24.225880 +v 0.376461 3.909487 -27.628571 +v 0.330657 11.401349 -24.776545 +v 0.200132 4.545812 -36.862782 +v 0.285053 18.414829 -35.894424 +v 0.330657 17.075186 -24.744356 +v 0.285052 3.476720 -33.171906 +v 0.219588 3.910732 -35.557438 +v 0.200132 4.545812 -36.862782 +v 0.376461 3.909487 -27.628571 +v 0.170088 12.034781 -40.236835 +v 0.200132 15.707024 -39.244591 +v 0.285053 18.414829 -35.894424 +v 0.200132 4.545812 -36.862782 +v 0.170088 6.808916 -39.080044 +v 0.170088 9.315046 -39.888615 +v 0.170088 12.034781 -40.236835 +v 0.200132 4.545812 -36.862782 +v 11.142525 -2.881190 9.001891 +v 11.236621 -3.140807 14.369819 +v 11.364158 -4.232666 14.326954 +v 11.236621 -3.973048 8.959024 +v 11.062758 -1.892203 9.450106 +v 11.142528 -2.112300 14.000815 +v 11.551121 -6.327328 12.090542 +v 11.529890 -6.275688 11.022794 +v 11.009460 -1.156657 10.235428 +v 11.062758 -1.303718 13.276114 +v 10.990744 -0.786530 11.238302 +v 11.009460 -0.838170 12.306050 +v 9.946635 -0.930319 12.320226 +v 9.927916 -0.878675 11.252476 +v 9.946632 -1.248802 10.249601 +v 9.999933 -1.395863 13.290288 +v 10.079700 -2.204439 14.014987 +v 9.999930 -1.984348 9.464279 +v 10.079700 -2.973335 9.016065 +v 10.173796 -3.232952 14.383994 +v 10.347653 -5.902290 10.066901 +v 10.324265 -6.049350 13.107590 +v 10.324265 -6.367838 11.036967 +v 10.345494 -6.419479 12.104715 +v -0.137555 16.032167 23.133743 +v -0.137555 13.788481 23.542515 +v -0.137555 16.042728 21.288063 +v -0.137555 13.092350 21.825588 +v 1.759172 18.592596 17.282019 +v 1.759172 9.582694 18.923504 +v -0.137555 18.963770 17.214392 +v -0.137555 9.211522 18.991127 +v -0.137555 10.607282 -20.931702 +v -0.137555 9.192825 -28.695456 +v 5.849846 25.098688 -2.843851 +v 5.429670 25.412260 -1.122682 +v 6.450380 10.797626 7.312677 +v 6.993171 13.482239 6.823577 +v 5.595087 13.518061 6.817050 +v 5.158012 11.356320 7.210891 +v 4.904636 8.521720 7.727320 +v 6.450380 10.797626 7.312677 +v 5.158012 11.356320 7.210891 +v 3.913326 9.523684 7.544775 +v 6.993171 13.482239 6.823577 +v 6.450378 16.166853 6.334475 +v 5.158011 15.679805 6.423209 +v 5.595087 13.518061 6.817050 +v 2.591268 7.001008 8.004374 +v 4.904636 8.521720 7.727320 +v 3.913326 9.523684 7.544775 +v 2.050524 8.299153 7.767869 +v 4.904634 19.031322 5.812605 +v 2.591266 20.552032 5.535551 +v 2.050523 19.210899 5.779888 +v 3.913326 17.986372 6.002982 +v 6.450378 16.166853 6.334475 +v 4.904634 19.031322 5.812605 +v 3.913326 17.986372 6.002982 +v 5.158011 15.679805 6.423209 +v 2.591266 20.552032 5.535551 +v -0.137555 21.086037 5.438262 +v -0.137555 19.639086 5.701879 +v 2.050523 19.210899 5.779888 +v 0.715733 14.051090 23.425133 +v 0.663374 14.114862 23.483055 +v -0.137555 13.788481 23.542515 +v -0.137555 13.703371 23.488483 +v 0.715733 13.707285 21.538033 +v 0.715733 14.051090 23.425133 +v -0.137555 13.703371 23.488483 +v -0.137555 13.359564 21.601383 +v -0.137555 6.467003 8.101662 +v 2.591268 7.001008 8.004374 +v 2.050524 8.299153 7.767869 +v -0.137555 7.870969 7.845878 +v -4.748156 7.797970 2.380435 +v -6.161592 9.962349 1.986112 +v -6.657920 12.515405 1.520978 +v -2.632802 6.351778 2.643912 +v -0.137555 5.843942 2.736434 +v -6.161589 15.068464 1.055844 +v -0.137555 17.229437 5.018654 +v -0.137555 15.705820 -3.344262 +v -2.681505 17.006306 3.793933 +v -3.735224 16.467627 0.837195 +v -3.735223 18.497147 0.467442 +v -2.755446 19.942028 3.044717 +v -0.137555 17.229437 5.018654 +v -2.681505 17.006306 3.793933 +v -2.755446 19.942028 3.044717 +v -0.137555 20.817574 4.364942 +v -2.681505 15.928947 -2.119541 +v -0.137555 15.705820 -3.344262 +v -0.137555 18.750629 -3.898979 +v -2.500265 18.538774 -2.685168 +v -3.735224 16.467627 0.837195 +v -3.735223 18.497147 0.467442 +v -5.179747 8.521720 7.727320 +v -6.725490 10.797626 7.312677 +v -7.268282 13.482239 6.823577 +v -2.866378 7.001008 8.004374 +v -0.137555 6.467003 8.101662 +v -6.725487 16.166853 6.334475 +v -0.137555 8.331417 -26.440832 +v -2.820250 8.331417 -26.440832 +v -1.248774 10.132854 -26.769033 +v -0.137555 10.132854 -26.769033 +v -0.137555 5.783802 -25.976692 +v -2.820251 5.783802 -25.976692 +v -2.820250 8.331417 -26.440832 +v -0.137555 8.331417 -26.440832 +v -0.137555 5.783802 -25.976692 +v -0.137555 3.982364 -25.648491 +v -1.248775 3.982364 -25.648491 +v -2.820251 5.783802 -25.976692 +v -10.932370 27.734844 13.241050 +v -10.932370 27.150551 8.418542 +v -0.137555 27.150551 8.418542 +v -0.137555 27.734844 13.241050 +v -0.137555 28.271790 13.143222 +v -10.932370 28.271790 13.143222 +v -10.932370 27.734844 13.241050 +v -0.137555 27.734844 13.241050 +v -10.932370 26.245462 3.654478 +v -0.137555 26.248919 3.469610 +v -21.727186 27.421173 13.298194 +v -21.727186 26.836880 8.475688 +v -21.727186 27.958118 13.200370 +v -21.727186 27.421173 13.298194 +v -0.137555 27.936581 8.275336 +v -10.932370 27.936581 8.275336 +v -10.932370 28.271790 13.143222 +v -0.137555 28.271790 13.143222 +v -10.932370 26.074389 2.673605 +v -2.617644 26.107084 2.691110 +v -21.727186 25.931791 3.711624 +v -32.521996 26.785511 13.414004 +v -32.521996 26.201221 8.591496 +v -32.521996 27.322460 13.316178 +v -32.521996 26.785511 13.414004 +v -21.727186 27.622913 8.332482 +v -21.727186 27.958118 13.200370 +v -0.137555 27.034948 3.326405 +v -10.932370 27.103384 3.498175 +v -6.509318 24.407400 -5.868575 +v -6.124956 25.098688 -2.843851 +v -10.932370 25.029203 -2.931825 +v -10.932370 24.407400 -5.868575 +v -21.727186 25.760714 2.730751 +v -32.521996 25.296129 3.827433 +v -38.411888 26.311825 13.500302 +v -41.725868 25.660938 8.689931 +v -38.411888 26.848774 13.402480 +v -38.411888 26.311825 13.500302 +v -32.521996 26.987251 8.448291 +v -32.521996 27.322460 13.316178 +v -21.727186 26.789709 3.555321 +v -2.617644 26.893122 2.547905 +v -10.932370 26.917547 2.519993 +v -6.509318 24.407400 -5.868575 +v -10.932370 24.407400 -5.868575 +v -10.932370 24.911684 -5.960440 +v -6.509318 24.911684 -5.960440 +v -21.727186 25.098589 -1.065534 +v -21.727186 24.715536 -2.874681 +v -10.932370 25.412260 -1.122682 +v -32.521996 25.125055 2.846561 +v -43.316811 24.755846 3.925868 +v -38.411888 26.848774 13.402480 +v -41.725868 26.446968 8.546725 +v -41.725868 25.660938 8.689931 +v -38.411888 26.311825 13.500302 +v -41.725868 26.446968 8.546725 +v -38.411888 26.848774 13.402480 +v -32.521996 26.154055 3.671129 +v -21.727186 26.603876 2.577139 +v -6.124956 25.884718 -2.987059 +v -10.932370 25.707838 -3.055464 +v -10.932370 26.198298 -1.265890 +v -5.704780 26.198298 -1.265890 +v -21.727186 24.598013 -5.903296 +v -21.727186 24.093729 -5.811423 +v -32.521996 24.462931 -0.949727 +v -32.521996 24.079874 -2.758871 +v -43.316811 24.584768 2.944992 +v -43.316811 25.613764 3.769564 +v -43.316811 24.755846 3.925868 +v -41.725868 25.660938 8.689931 +v -43.316811 25.613764 3.769564 +v -32.521996 25.968218 2.692949 +v -21.727186 25.394167 -2.998319 +v -21.727186 25.884623 -1.208742 +v -32.521996 23.962353 -5.787486 +v -32.521996 23.458073 -5.695620 +v -43.316811 23.922642 -0.851296 +v -42.190163 23.539589 -2.660438 +v -43.316811 25.427927 2.791382 +v -43.316811 24.584768 2.944992 +v -43.316811 25.427927 2.791382 +v -32.521996 24.758509 -2.882509 +v -32.521996 25.248964 -1.092931 +v -40.361286 23.422073 -5.689055 +v -40.361286 22.917782 -5.597183 +v -43.316811 23.922642 -0.851296 +v -43.316811 24.708681 -0.994498 +v -42.190163 24.218218 -2.784075 +v -42.190163 23.539589 -2.660438 +v -42.190163 24.218218 -2.784075 +v -43.316811 24.708681 -0.994498 +v -2.617644 26.893122 2.547905 +v -0.137555 27.034948 3.326405 +v -0.137555 26.248919 3.469610 +v -2.617644 26.107084 2.691110 +v -5.704780 25.412260 -1.122682 +v -5.704780 26.198298 -1.265890 +v -6.124956 25.098688 -2.843851 +v -6.509318 24.407400 -5.868575 +v -6.509318 24.911684 -5.960440 +v -6.124956 25.884718 -2.987059 +v -21.727186 24.093729 -5.811423 +v -32.521996 23.458073 -5.695620 +v -10.932370 24.911684 -5.960440 +v -21.727186 24.598013 -5.903296 +v -40.361286 22.917782 -5.597183 +v -32.521996 23.962353 -5.787486 +v -40.361286 23.422073 -5.689055 +v -40.361286 22.917782 -5.597183 +v -40.361286 23.422073 -5.689055 +v -5.704780 25.412260 -1.122682 +v -6.509318 24.911684 -5.960440 +v -0.576148 3.263966 -5.783109 +v -32.301418 9.709085 -6.957421 +v -32.206169 10.162366 -7.040006 +v -0.472966 3.753135 -5.871772 +v -40.011227 11.274701 -7.242656 +v -39.945049 11.589635 -7.300035 +v -0.663033 6.649406 14.232206 +v -0.541272 7.228906 14.126631 +v -32.237789 13.650052 12.956777 +v -32.350616 13.113069 13.054610 +v -38.002087 14.790937 12.748921 +v -38.101227 14.319102 12.834886 +v -0.662496 3.865942 -0.760052 +v -32.360443 10.333307 -1.938074 +v -32.301418 9.709085 -6.957421 +v -0.576148 3.263966 -5.783109 +v -42.906727 12.549485 -2.430761 +v -40.011227 11.274701 -7.242656 +v -42.926029 13.378873 2.642551 +v -42.833996 13.816903 2.562746 +v -42.814693 12.987517 -2.510567 +v -42.906727 12.549485 -2.430761 +v -42.833996 13.816903 2.562746 +v -32.255753 11.746195 2.991455 +v -32.227974 10.963766 -2.052936 +v -42.814693 12.987517 -2.510567 +v -32.206169 10.162366 -7.040006 +v -0.518984 4.546322 -0.883360 +v -0.472966 3.753135 -5.871772 +v -39.945049 11.589635 -7.300035 +v -40.011227 11.274701 -7.242656 +v -42.906727 12.549485 -2.430761 +v -42.814693 12.987517 -2.510567 +v -0.774090 5.383774 9.351863 +v -32.421593 11.874181 8.170041 +v -0.597230 6.222238 9.199900 +v -32.258347 12.651127 8.028491 +v -41.423397 13.882128 7.790358 +v -38.101227 14.319102 12.834886 +v -38.002087 14.790937 12.748921 +v -41.309978 14.421938 7.692010 +v -32.421593 11.874181 8.170041 +v -32.350616 13.113069 13.054610 +v -38.101227 14.319102 12.834886 +v -41.423397 13.882128 7.790358 +v -41.309978 14.421938 7.692010 +v -38.002087 14.790937 12.748921 +v -32.237789 13.650052 12.956777 +v -32.258347 12.651127 8.028491 +v -0.715231 4.637904 4.286060 +v -32.388218 11.115736 3.106316 +v -0.571717 5.318285 4.162748 +v -42.926029 13.378873 2.642551 +v -39.945049 11.589635 -7.300035 +v -0.774090 5.383774 9.351863 +v -0.597230 6.222238 9.199900 +v -10.927002 10.839343 -20.973984 +v -5.834132 7.933621 -36.487488 +v -4.366348 8.149817 -35.663517 +v -2.564616 10.581471 -20.926994 +v -2.591609 11.808965 -21.150627 +v -0.137555 11.835061 -21.155396 +v -0.137555 10.420605 -28.919138 +v -4.412028 9.079532 -35.830589 +v -0.137555 10.607282 -20.931702 +v -0.137555 11.835061 -21.155396 +v -2.591609 11.808965 -21.150627 +v -2.564616 10.581471 -20.926994 +v -11.028844 11.399936 -21.076115 +v -10.927002 10.839343 -20.973984 +v -12.967854 11.199199 -21.039536 +v -12.856207 10.727206 -20.953552 +v -15.586095 10.176061 -23.504894 +v -16.207060 9.756166 -24.787363 +v -16.030195 9.283175 -24.701189 +v -15.416062 9.703977 -23.418880 +v -17.875292 7.780162 -32.684757 +v -17.680067 7.330409 -32.602814 +v -14.043754 7.331349 -36.377769 +v -14.182967 7.973525 -36.291916 +v -5.897515 8.862197 -36.656662 +v -5.834132 7.933621 -36.487488 +v -4.366348 8.149817 -35.663517 +v -4.412028 9.079532 -35.830589 +v -0.137555 10.420605 -28.919138 +v -0.137555 9.192825 -28.695456 +v -12.967854 11.199199 -21.039536 +v -12.856207 10.727206 -20.953552 +v -16.558538 7.700906 -35.471687 +v -16.377802 7.227387 -35.385410 +v -16.377802 7.227387 -35.385410 +v -16.558538 7.700906 -35.471687 +v -15.586095 10.176061 -23.504894 +v -12.967854 11.199199 -21.039536 +v -14.182967 7.973525 -36.291916 +v -16.558538 7.700906 -35.471687 +v -11.028844 11.399936 -21.076115 +v -5.897515 8.862197 -36.656662 +v -15.416062 9.703977 -23.418880 +v -16.030195 9.283175 -24.701189 +v -17.680067 7.330409 -32.602814 +v -16.377802 7.227387 -35.385410 +v -14.043754 7.331349 -36.377769 +v -12.856207 10.727206 -20.953552 +v -17.875292 7.780162 -32.684757 +v -16.207060 9.756166 -24.787363 +v -30.580156 12.463110 10.208496 +v -30.429491 26.773792 11.243069 +v -31.088133 26.748894 11.243511 +v -31.238810 12.438213 10.208937 +v -31.238810 12.438213 10.208937 +v -31.088133 26.748894 11.243511 +v -31.084776 26.850677 9.394487 +v -31.235453 12.540001 8.359914 +v -31.235453 12.540001 8.359914 +v -31.084776 26.850677 9.394487 +v -30.426134 26.875576 9.394049 +v -30.576811 12.564899 8.359473 +v -30.576811 12.564899 8.359473 +v -30.426134 26.875576 9.394049 +v -30.429491 26.773792 11.243069 +v -30.580156 12.463110 10.208496 +v -0.909560 18.576508 2.205827 +v -2.125126 18.576508 2.205827 +v -2.125126 20.241886 1.902417 +v -0.909560 20.241886 1.902417 +v -0.909560 18.658239 2.654441 +v -0.909560 20.323616 2.351031 +v -2.125126 20.323616 2.351031 +v -2.125126 18.658239 2.654441 +v -0.909560 18.576508 2.205827 +v -0.909560 18.658239 2.654441 +v -2.125126 18.658239 2.654441 +v -2.125126 18.576508 2.205827 +v -2.125126 18.576508 2.205827 +v -2.125126 18.658239 2.654441 +v -2.125126 20.323616 2.351031 +v -2.125126 20.241886 1.902417 +v -2.125126 20.241886 1.902417 +v -2.125126 20.323616 2.351031 +v -0.909560 20.323616 2.351031 +v -0.909560 20.241886 1.902417 +v -0.909560 20.241886 1.902417 +v -0.909560 20.323616 2.351031 +v -0.909560 18.658239 2.654441 +v -0.909560 18.576508 2.205827 +v -7.268263 13.322628 10.315155 +v -6.725470 17.393959 9.573412 +v -6.725470 16.871246 6.704314 +v -7.268263 12.799915 7.446060 +v -5.179726 19.669867 9.158772 +v -5.179726 19.147156 6.289673 +v -2.866356 21.190580 8.881716 +v -2.866356 20.667866 6.012619 +v -0.137555 21.724585 8.784430 +v -0.137555 21.201870 5.915332 +v -0.137555 6.307393 11.593240 +v -2.866358 6.841393 11.495952 +v -2.866358 6.318684 8.626856 +v -0.137555 5.784679 8.724144 +v -5.179727 8.362108 11.218898 +v -5.179727 7.839396 8.349802 +v -5.179727 8.362108 11.218898 +v -6.725470 10.638018 10.804259 +v -6.725470 10.115304 7.935161 +v -5.179727 7.839396 8.349802 +v -6.725470 10.638018 10.804259 +v -6.725470 10.115304 7.935161 +v -7.268263 13.322628 10.315155 +v -7.268263 13.581101 11.733877 +v -6.725470 16.632854 11.177889 +v -6.725470 17.393959 9.573412 +v -5.179726 18.908764 10.763247 +v -5.179726 19.669867 9.158772 +v -2.866356 20.429476 10.486194 +v -2.866356 21.190580 8.881716 +v -0.137555 20.963480 10.388906 +v -0.137555 21.724585 8.784430 +v -0.137555 6.307393 11.593240 +v -0.137555 6.565864 13.011965 +v -2.866358 7.099868 12.914675 +v -2.866358 6.841393 11.495952 +v -5.179727 8.620581 12.637621 +v -6.725470 10.896488 12.222981 +v -7.268263 13.581101 11.733877 +v -7.268263 13.763827 12.736833 +v -6.725470 16.489346 12.240279 +v -6.725470 16.632854 11.177889 +v -5.179726 18.765253 11.825639 +v -5.179726 18.908764 10.763247 +v -2.866356 20.285967 11.548583 +v -2.866356 20.429476 10.486194 +v -0.137555 20.819971 11.451295 +v -0.137555 20.963480 10.388906 +v -0.137555 6.565864 13.011965 +v -0.137555 6.748590 14.014921 +v -2.866358 7.282592 13.917631 +v -2.866358 7.099868 12.914675 +v -5.179727 8.803307 13.640577 +v -5.179727 8.620581 12.637621 +v -6.725470 11.079216 13.225934 +v -6.725470 10.896488 12.222981 +v -7.268263 13.763827 12.736833 +v -7.268263 14.166320 14.946074 +v -6.725467 16.850937 14.456967 +v -6.725470 16.489346 12.240279 +v -5.179726 19.126841 14.042328 +v -5.179726 18.765253 11.825639 +v -2.866356 20.647554 13.765274 +v -2.866356 20.285967 11.548583 +v -0.137555 21.181559 13.667984 +v -0.137555 20.819971 11.451295 +v -0.137555 6.748590 14.014921 +v -0.137555 7.151085 16.224155 +v -2.866358 7.685090 16.126867 +v -2.866358 7.282592 13.917631 +v -5.179727 9.205801 15.849814 +v -5.179727 8.803307 13.640577 +v -6.725470 11.481709 15.435171 +v -6.725470 11.079216 13.225934 +v -6.725470 16.871246 6.704314 +v -5.131141 16.032776 6.857073 +v -5.542573 12.946739 7.419309 +v -7.268263 12.799915 7.446060 +v -5.179726 19.147156 6.289673 +v -3.959480 17.757896 6.542778 +v -2.866356 20.667866 6.012619 +v -2.205964 18.910583 6.332776 +v -0.137555 21.201870 5.915332 +v -0.137555 19.315353 6.259032 +v -2.866358 6.318684 8.626856 +v -2.205966 8.034017 8.314344 +v -0.137555 7.629245 8.388088 +v -0.137555 5.784679 8.724144 +v -3.959480 9.186704 8.104342 +v -5.131142 10.911824 7.790046 +v -7.168325 14.639720 17.066553 +v -6.633142 17.286711 16.584303 +v -6.633142 16.913443 14.535474 +v -7.168325 14.266452 15.017725 +v -5.109061 19.530722 16.175474 +v -5.109061 19.157454 14.126644 +v -2.828113 21.030119 15.902303 +v -2.828115 20.656855 13.853474 +v -0.137555 21.556639 15.806378 +v -0.137555 21.183367 13.757549 +v -0.137555 7.753714 18.321089 +v -2.828115 8.280234 18.225168 +v -2.828116 7.876051 16.181973 +v -0.137555 7.349532 16.277897 +v -5.109064 9.748725 17.957628 +v -5.109062 9.375453 15.908801 +v -6.633142 11.992731 17.548800 +v -6.633142 11.619465 15.499971 +v -3.642250 10.639707 18.730930 +v -3.642249 17.535583 17.474588 +v -4.716659 15.953656 17.762800 +v -4.716660 12.221634 18.442724 +v -7.406736 17.223406 19.063496 +v -8.005659 14.261175 19.603176 +v -6.594498 14.494061 20.881462 +v -6.102993 16.925011 20.438580 +v -5.701145 19.734667 18.605974 +v -4.703304 18.985874 20.063118 +v -3.148548 21.412638 18.300266 +v -2.608520 20.362902 19.812241 +v -0.137555 22.001863 18.192917 +v -0.137555 20.846445 19.724144 +v -3.148549 7.109707 20.906082 +v -0.137555 6.520483 21.013433 +v -0.137555 8.141681 22.038780 +v -2.608521 8.625226 21.950691 +v -5.701147 8.787681 20.600376 +v -4.703304 10.002252 21.699814 +v -7.406736 11.298944 20.142857 +v -6.102996 12.063114 21.324352 +v -6.594498 14.494061 20.881462 +v -5.322203 14.494061 20.881462 +v -4.927547 16.446011 20.525845 +v -6.102993 16.925011 20.438580 +v -3.803655 18.100796 20.224361 +v -4.703304 18.985874 20.063118 +v -2.121634 19.206488 20.022923 +v -2.608520 20.362902 19.812241 +v -0.137555 19.594753 19.952187 +v -0.137555 20.846445 19.724144 +v -0.137555 8.141681 22.038780 +v -0.137555 9.393373 21.810745 +v -2.121634 9.781638 21.740005 +v -2.608521 8.625226 21.950691 +v -3.803658 10.887330 21.538559 +v -4.703304 10.002252 21.699814 +v -4.927547 12.542114 21.237080 +v -6.102996 12.063114 21.324352 +v -5.093940 14.087643 18.102762 +v -4.716659 15.953656 17.762800 +v -4.927547 16.446011 20.525845 +v -5.322203 14.494061 20.881462 +v -3.642249 17.535583 17.474588 +v -3.803655 18.100796 20.224361 +v -2.034281 18.592596 17.282019 +v -2.121634 19.206488 20.022923 +v -0.137555 18.963770 17.214392 +v -0.137555 19.594753 19.952187 +v -0.137555 9.211522 18.991127 +v -2.034282 9.582694 18.923504 +v -2.121634 9.781638 21.740005 +v -0.137555 9.393373 21.810745 +v -3.642250 10.639707 18.730930 +v -3.803658 10.887330 21.538559 +v -4.716660 12.221634 18.442724 +v -4.927547 12.542114 21.237080 +v -7.168325 14.639720 17.066553 +v -7.929808 14.096279 18.195410 +v -7.336660 17.029957 17.660933 +v -6.633142 17.286711 16.584303 +v -5.647511 19.517012 17.207823 +v -5.109061 19.530722 16.175474 +v -3.119521 21.178797 16.905069 +v -2.828113 21.030119 15.902303 +v -0.137555 21.762342 16.798756 +v -0.137555 21.556639 15.806378 +v -0.137555 7.753714 18.321089 +v -0.137555 6.430205 19.592070 +v -3.119522 7.013754 19.485758 +v -2.828115 8.280234 18.225168 +v -5.647511 8.675551 19.182995 +v -5.109064 9.748725 17.957628 +v -7.336660 11.162606 18.729893 +v -6.633142 11.992731 17.548800 +v -7.929808 14.096279 18.195410 +v -8.005659 14.261175 19.603176 +v -7.406736 17.223406 19.063496 +v -7.336660 17.029957 17.660933 +v -5.701145 19.734667 18.605974 +v -5.647511 19.517012 17.207823 +v -3.148548 21.412638 18.300266 +v -3.119521 21.178797 16.905069 +v -0.137555 22.001863 18.192917 +v -0.137555 21.762342 16.798756 +v -0.137555 6.430205 19.592070 +v -0.137555 6.520483 21.013433 +v -3.148549 7.109707 20.906082 +v -3.119522 7.013754 19.485758 +v -5.701147 8.787681 20.600376 +v -5.647511 8.675551 19.182995 +v -7.406736 11.298944 20.142857 +v -7.336660 11.162606 18.729893 +v -10.448902 -4.065199 8.973198 +v -10.464485 -4.324817 14.341125 +v -10.622765 -5.313800 13.892914 +v -10.464482 -5.093708 9.342202 +v -11.024202 -4.127771 8.234436 +v -10.888246 -2.555629 8.260398 +v -10.177548 -2.803895 8.298583 +v -10.297066 -4.190809 8.244131 +v -10.772985 -1.142371 8.805583 +v -10.076224 -1.547646 8.867919 +v -10.695973 -0.103137 9.786989 +v -10.008523 -0.613330 9.865463 +v -10.668931 0.403852 11.055208 +v -9.984747 -0.143181 11.139349 +v -10.695973 0.301416 12.417167 +v -10.008523 -0.208778 12.495639 +v -10.772990 -0.394859 13.665511 +v -9.998027 -0.800133 13.727847 +v -10.888248 -1.578959 14.610202 +v -10.099266 -1.827220 14.648387 +v -11.024208 -3.070621 15.107410 +v -10.218687 -3.133664 15.117107 +v -11.160166 -4.642758 15.081449 +v -10.338077 -4.520590 15.062659 +v -11.279265 -6.056028 14.536266 +v -10.419976 -5.776834 14.493324 +v -11.279265 -6.056028 14.536266 +v -11.366625 -6.927130 13.528999 +v -10.496778 -6.653613 13.486927 +v -10.419976 -5.776834 14.493324 +v -11.397299 -7.346391 12.247284 +v -10.523744 -7.046638 12.201180 +v -11.366625 -7.331683 10.898822 +v -10.496775 -7.058166 10.856751 +v -11.279260 -6.803540 9.676335 +v -10.419973 -6.524346 9.633391 +v -11.160163 -5.619434 8.731646 +v -10.338074 -5.497261 8.712852 +v -11.685589 -5.810138 10.052730 +v -11.804996 -5.957200 13.093418 +v -11.685592 -5.221654 13.878742 +v -11.639263 -5.001564 9.328028 +v -10.177548 -2.803895 8.298583 +v -10.202976 -2.986496 9.018088 +v -10.297069 -4.078360 8.975224 +v -10.297066 -4.190809 8.244131 +v -10.297066 -4.190809 8.244131 +v -10.297069 -4.078360 8.975224 +v -10.312647 -5.106868 9.344226 +v -10.338074 -5.497261 8.712852 +v -10.338074 -5.497261 8.712852 +v -10.312647 -5.106868 9.344226 +v -10.470928 -5.915451 10.068927 +v -10.419973 -6.524346 9.633391 +v -10.419973 -6.524346 9.633391 +v -10.470928 -5.915451 10.068927 +v -10.427139 -6.380999 11.038991 +v -10.496775 -7.058166 10.856751 +v -10.496775 -7.058166 10.856751 +v -10.427139 -6.380999 11.038991 +v -10.448370 -6.432639 12.106741 +v -10.523744 -7.046638 12.201180 +v -10.523744 -7.046638 12.201180 +v -10.448370 -6.432639 12.106741 +v -10.427139 -6.062517 13.109615 +v -10.496778 -6.653613 13.486927 +v -10.496778 -6.653613 13.486927 +v -10.427139 -6.062517 13.109615 +v -10.470931 -5.326966 13.894939 +v -10.419976 -5.776834 14.493324 +v -10.419976 -5.776834 14.493324 +v -10.470931 -5.326966 13.894939 +v -10.312652 -4.337977 14.343151 +v -10.338077 -4.520590 15.062659 +v -10.338077 -4.520590 15.062659 +v -10.312652 -4.337977 14.343151 +v -10.297069 -3.246119 14.386018 +v -10.218687 -3.133664 15.117107 +v -10.218687 -3.133664 15.117107 +v -10.297069 -3.246119 14.386018 +v -10.202979 -2.217605 14.017013 +v -10.099266 -1.827220 14.648387 +v -10.099266 -1.827220 14.648387 +v -10.202979 -2.217605 14.017013 +v -10.123209 -1.409030 13.292312 +v -9.998027 -0.800133 13.727847 +v -9.998027 -0.800133 13.727847 +v -10.123209 -1.409030 13.292312 +v -10.069911 -0.943481 12.322249 +v -10.008523 -0.208778 12.495639 +v -10.008523 -0.208778 12.495639 +v -10.069911 -0.943481 12.322249 +v -10.051191 -0.891838 11.254501 +v -9.984747 -0.143181 11.139349 +v -9.984747 -0.143181 11.139349 +v -10.051191 -0.891838 11.254501 +v -10.069908 -1.261969 10.251627 +v -10.008523 -0.613330 9.865463 +v -10.008523 -0.613330 9.865463 +v -10.069908 -1.261969 10.251627 +v -10.123206 -1.997514 9.466303 +v -10.076224 -1.547646 8.867919 +v -10.076224 -1.547646 8.867919 +v -10.123206 -1.997514 9.466303 +v -10.202976 -2.986496 9.018088 +v -10.177548 -2.803895 8.298583 +v -11.663559 -4.072338 8.225910 +v -11.663124 -3.954838 8.957199 +v -11.569467 -2.868025 8.999867 +v -11.544039 -2.685418 8.280360 +v -11.544039 -2.685418 8.280360 +v -11.569467 -2.868025 8.999867 +v -11.489699 -1.879037 9.448082 +v -11.442715 -1.429169 8.849696 +v -11.442715 -1.429169 8.849696 +v -11.489699 -1.879037 9.448082 +v -11.436399 -1.143492 10.233404 +v -11.375010 -0.494853 9.847242 +v -11.375010 -0.494853 9.847242 +v -11.436399 -1.143492 10.233404 +v -11.417682 -0.773364 11.236277 +v -11.351240 -0.024707 11.121126 +v -11.351240 -0.024707 11.121126 +v -11.417682 -0.773364 11.236277 +v -11.436399 -0.825004 12.304027 +v -11.375016 -0.090303 12.477416 +v -11.375016 -0.090303 12.477416 +v -11.436399 -0.825004 12.304027 +v -11.489699 -1.290552 13.274091 +v -11.442718 -0.681659 13.709624 +v -11.442718 -0.681659 13.709624 +v -11.489699 -1.290552 13.274091 +v -11.569469 -2.099133 13.998790 +v -11.544042 -1.708743 14.630164 +v -11.544042 -1.708743 14.630164 +v -11.569469 -2.099133 13.998790 +v -11.663559 -3.127642 14.367793 +v -11.663562 -3.015193 15.098885 +v -11.663562 -3.015193 15.098885 +v -11.663559 -3.127642 14.367793 +v -11.791100 -4.219506 14.324928 +v -11.816527 -4.402113 15.044438 +v -11.816527 -4.402113 15.044438 +v -11.791100 -4.219506 14.324928 +v -11.837422 -5.208493 13.876717 +v -11.970063 -5.658357 14.475101 +v -11.970063 -5.658357 14.475101 +v -11.837422 -5.208493 13.876717 +v -11.977229 -5.944039 13.091393 +v -12.046864 -6.569247 13.473953 +v -12.046864 -6.569247 13.473953 +v -11.977229 -5.944039 13.091393 +v -11.998460 -6.314167 12.088518 +v -12.073831 -6.962277 12.188204 +v -12.073831 -6.962277 12.188204 +v -11.998460 -6.314167 12.088518 +v -11.977229 -6.262527 11.020768 +v -12.046861 -6.973800 10.843776 +v -12.046861 -6.973800 10.843776 +v -11.977229 -6.262527 11.020768 +v -11.837420 -5.796978 10.050706 +v -11.970063 -6.405869 9.615170 +v -11.970063 -6.405869 9.615170 +v -11.837420 -5.796978 10.050706 +v -11.791097 -4.988397 9.326004 +v -11.816525 -5.378782 8.694632 +v -11.816525 -5.378782 8.694632 +v -11.791097 -4.988397 9.326004 +v -11.663124 -3.954838 8.957199 +v -11.663559 -4.072338 8.225910 +v -10.202976 -2.986496 9.018088 +v -10.354806 -2.973335 9.016065 +v -10.448902 -4.065199 8.973198 +v -10.297069 -4.078360 8.975224 +v -10.297069 -4.078360 8.975224 +v -10.448902 -4.065199 8.973198 +v -10.464482 -5.093708 9.342202 +v -10.312647 -5.106868 9.344226 +v -10.312647 -5.106868 9.344226 +v -10.464482 -5.093708 9.342202 +v -10.622762 -5.902290 10.066901 +v -10.470928 -5.915451 10.068927 +v -10.470928 -5.915451 10.068927 +v -10.622762 -5.902290 10.066901 +v -10.599370 -6.367838 11.036967 +v -10.427139 -6.380999 11.038991 +v -10.427139 -6.380999 11.038991 +v -10.599370 -6.367838 11.036967 +v -10.620604 -6.419479 12.104715 +v -10.448370 -6.432639 12.106741 +v -10.448370 -6.432639 12.106741 +v -10.620604 -6.419479 12.104715 +v -10.599373 -6.049350 13.107590 +v -10.427139 -6.062517 13.109615 +v -10.427139 -6.062517 13.109615 +v -10.599373 -6.049350 13.107590 +v -10.622765 -5.313800 13.892914 +v -10.470931 -5.326966 13.894939 +v -10.470931 -5.326966 13.894939 +v -10.622765 -5.313800 13.892914 +v -10.464485 -4.324817 14.341125 +v -10.312652 -4.337977 14.343151 +v -10.312652 -4.337977 14.343151 +v -10.464485 -4.324817 14.341125 +v -10.448902 -3.232952 14.383994 +v -10.297069 -3.246119 14.386018 +v -10.297069 -3.246119 14.386018 +v -10.448902 -3.232952 14.383994 +v -10.354809 -2.204439 14.014987 +v -10.202979 -2.217605 14.017013 +v -10.202979 -2.217605 14.017013 +v -10.354809 -2.204439 14.014987 +v -10.275043 -1.395863 13.290288 +v -10.123209 -1.409030 13.292312 +v -10.123209 -1.409030 13.292312 +v -10.275043 -1.395863 13.290288 +v -10.221741 -0.930319 12.320226 +v -10.069911 -0.943481 12.322249 +v -10.069911 -0.943481 12.322249 +v -10.221741 -0.930319 12.320226 +v -10.203024 -0.878675 11.252476 +v -10.051191 -0.891838 11.254501 +v -10.051191 -0.891838 11.254501 +v -10.203024 -0.878675 11.252476 +v -10.221741 -1.248802 10.249601 +v -10.069908 -1.261969 10.251627 +v -10.069908 -1.261969 10.251627 +v -10.221741 -1.248802 10.249601 +v -10.275040 -1.984348 9.464279 +v -10.123206 -1.997514 9.466303 +v -10.123206 -1.997514 9.466303 +v -10.275040 -1.984348 9.464279 +v -10.354806 -2.973335 9.016065 +v -10.202976 -2.986496 9.018088 +v -11.663124 -3.954838 8.957199 +v -11.511726 -3.973048 8.959024 +v -11.417636 -2.881190 9.001891 +v -11.569467 -2.868025 8.999867 +v -11.569467 -2.868025 8.999867 +v -11.417636 -2.881190 9.001891 +v -11.337867 -1.892203 9.450106 +v -11.489699 -1.879037 9.448082 +v -11.489699 -1.879037 9.448082 +v -11.337867 -1.892203 9.450106 +v -11.284566 -1.156657 10.235428 +v -11.436399 -1.143492 10.233404 +v -11.436399 -1.143492 10.233404 +v -11.284566 -1.156657 10.235428 +v -11.265852 -0.786530 11.238302 +v -11.417682 -0.773364 11.236277 +v -11.417682 -0.773364 11.236277 +v -11.265852 -0.786530 11.238302 +v -11.284569 -0.838170 12.306050 +v -11.436399 -0.825004 12.304027 +v -11.436399 -0.825004 12.304027 +v -11.284569 -0.838170 12.306050 +v -11.337867 -1.303718 13.276114 +v -11.489699 -1.290552 13.274091 +v -11.489699 -1.290552 13.274091 +v -11.337867 -1.303718 13.276114 +v -11.417636 -2.112300 14.000815 +v -11.569469 -2.099133 13.998790 +v -11.569469 -2.099133 13.998790 +v -11.417636 -2.112300 14.000815 +v -11.511729 -3.140807 14.369819 +v -11.663559 -3.127642 14.367793 +v -11.663559 -3.127642 14.367793 +v -11.511729 -3.140807 14.369819 +v -11.639269 -4.232666 14.326954 +v -11.791100 -4.219506 14.324928 +v -11.791100 -4.219506 14.324928 +v -11.639269 -4.232666 14.326954 +v -11.685592 -5.221654 13.878742 +v -11.837422 -5.208493 13.876717 +v -11.837422 -5.208493 13.876717 +v -11.685592 -5.221654 13.878742 +v -11.804996 -5.957200 13.093418 +v -11.977229 -5.944039 13.091393 +v -11.977229 -5.944039 13.091393 +v -11.804996 -5.957200 13.093418 +v -11.826226 -6.327328 12.090542 +v -11.998460 -6.314167 12.088518 +v -11.998460 -6.314167 12.088518 +v -11.826226 -6.327328 12.090542 +v -11.804996 -6.275688 11.022794 +v -11.977229 -6.262527 11.020768 +v -11.977229 -6.262527 11.020768 +v -11.804996 -6.275688 11.022794 +v -11.685589 -5.810138 10.052730 +v -11.837420 -5.796978 10.050706 +v -11.837420 -5.796978 10.050706 +v -11.685589 -5.810138 10.052730 +v -11.639263 -5.001564 9.328028 +v -11.791097 -4.988397 9.326004 +v -11.791097 -4.988397 9.326004 +v -11.639263 -5.001564 9.328028 +v -11.511726 -3.973048 8.959024 +v -11.663124 -3.954838 8.957199 +v -11.663559 -4.072338 8.225910 +v -11.544039 -2.685418 8.280360 +v -11.442715 -1.429169 8.849696 +v -11.375010 -0.494853 9.847242 +v -11.351240 -0.024707 11.121126 +v -11.375016 -0.090303 12.477416 +v -11.442718 -0.681659 13.709624 +v -11.544042 -1.708743 14.630164 +v -11.663562 -3.015193 15.098885 +v -11.816527 -4.402113 15.044438 +v -11.970063 -5.658357 14.475101 +v -11.970063 -5.658357 14.475101 +v -12.046864 -6.569247 13.473953 +v -12.073831 -6.962277 12.188204 +v -12.046861 -6.973800 10.843776 +v -11.970063 -6.405869 9.615170 +v -11.816525 -5.378782 8.694632 +v -3.569041 14.261284 19.875835 +v -3.109313 15.949227 19.568314 +v -3.109322 15.910932 19.358097 +v -3.569041 14.222986 19.665619 +v -1.853298 17.184916 19.343189 +v -1.853298 17.146614 19.132973 +v -0.137555 17.637207 19.260788 +v -0.137555 17.598896 19.050575 +v -0.137555 10.885364 20.490883 +v -1.853296 11.337653 20.408482 +v -1.853296 11.299354 20.198269 +v -0.137555 10.847074 20.280666 +v -3.109308 12.573324 20.183361 +v -3.109308 12.535027 19.973148 +v -3.109308 12.573324 20.183361 +v -3.569041 14.261284 19.875835 +v -3.569041 14.222986 19.665619 +v -3.109308 12.535027 19.973148 +v -0.887290 13.289986 21.789577 +v -0.887291 15.845090 21.324074 +v -2.597726 15.861096 20.732384 +v -2.978316 14.463718 20.986965 +v -2.229474 14.552227 21.472775 +v -1.949210 15.581246 21.285297 +v -1.557935 16.884050 20.546009 +v -1.183514 16.334541 21.148060 +v -0.137555 17.258476 20.477798 +v -0.137555 16.610268 21.097824 +v -1.557934 12.043385 21.427917 +v -0.137555 11.668958 21.496132 +v -0.137555 12.494183 21.847721 +v -1.183513 12.769909 21.797489 +v -2.597726 13.066336 21.241550 +v -1.949209 13.523205 21.660248 +v -2.229474 14.552227 21.472775 +v -1.795793 14.552227 21.472775 +v -1.573631 15.367919 21.324165 +v -1.949210 15.581246 21.285297 +v -1.949210 15.581246 21.285297 +v -1.573631 15.367919 21.324165 +v -0.966673 15.965047 21.215378 +v -1.183514 16.334541 21.148060 +v -1.183514 16.334541 21.148060 +v -0.966673 15.965047 21.215378 +v -0.137555 16.183609 21.175556 +v -0.137555 16.610268 21.097824 +v -0.137555 12.494183 21.847721 +v -0.137555 12.920841 21.769989 +v -0.966673 13.139404 21.730171 +v -1.183513 12.769909 21.797489 +v -1.183513 12.769909 21.797489 +v -0.966673 13.139404 21.730171 +v -1.573630 13.736532 21.621380 +v -1.949209 13.523205 21.660248 +v -1.949209 13.523205 21.660248 +v -1.573630 13.736532 21.621380 +v -1.795793 14.552227 21.472775 +v -2.229474 14.552227 21.472775 +v -1.795793 14.507906 21.229500 +v -1.637027 14.507906 21.229500 +v -1.436136 15.245500 21.095123 +v -1.573631 15.323596 21.080891 +v -1.573631 15.323596 21.080891 +v -1.436136 15.245500 21.095123 +v -0.887291 15.785457 20.996750 +v -0.966673 15.920726 20.972099 +v -0.966673 15.920726 20.972099 +v -0.887291 15.785457 20.996750 +v -0.137555 15.983094 20.960735 +v -0.137555 16.139288 20.932285 +v -0.137555 12.876520 21.526718 +v -0.137555 13.032715 21.498264 +v -0.887290 13.230352 21.462250 +v -0.966673 13.095083 21.486900 +v -0.966673 13.095083 21.486900 +v -0.887290 13.230352 21.462250 +v -1.436135 13.770308 21.363880 +v -1.573630 13.692211 21.378109 +v -1.573630 13.692211 21.378109 +v -1.436135 13.770308 21.363880 +v -1.637027 14.507906 21.229500 +v -1.795793 14.507906 21.229500 +v -1.795793 14.552227 21.472775 +v -1.795793 14.507906 21.229500 +v -1.573631 15.323596 21.080891 +v -1.573631 15.367919 21.324165 +v -1.573631 15.367919 21.324165 +v -1.573631 15.323596 21.080891 +v -0.966673 15.920726 20.972099 +v -0.966673 15.965047 21.215378 +v -0.966673 15.965047 21.215378 +v -0.966673 15.920726 20.972099 +v -0.137555 16.139288 20.932285 +v -0.137555 16.183609 21.175556 +v -0.137555 12.920841 21.769989 +v -0.137555 12.876520 21.526718 +v -0.966673 13.095083 21.486900 +v -0.966673 13.139404 21.730171 +v -0.966673 13.139404 21.730171 +v -0.966673 13.095083 21.486900 +v -1.573630 13.692211 21.378109 +v -1.573630 13.736532 21.621380 +v -1.573630 13.736532 21.621380 +v -1.573630 13.692211 21.378109 +v -1.795793 14.507906 21.229500 +v -1.795793 14.552227 21.472775 +v -1.436136 15.305133 21.422447 +v -1.436136 15.245500 21.095123 +v -1.637027 14.507906 21.229500 +v -1.637027 14.567539 21.556824 +v -1.637027 14.567539 21.556824 +v -1.637027 14.507906 21.229500 +v -1.436135 13.770308 21.363880 +v -1.436135 13.829943 21.691204 +v -1.436135 13.829943 21.691204 +v -1.436135 13.770308 21.363880 +v -0.887290 13.230352 21.462250 +v -0.887290 13.289986 21.789577 +v -0.887290 13.289986 21.789577 +v -0.887290 13.230352 21.462250 +v -0.137555 13.032715 21.498264 +v -0.137555 13.092350 21.825588 +v -0.137555 16.042728 21.288063 +v -0.137555 15.983094 20.960735 +v -0.887291 15.785457 20.996750 +v -0.887291 15.845090 21.324074 +v -0.887291 15.845090 21.324074 +v -0.887291 15.785457 20.996750 +v -1.436136 15.245500 21.095123 +v -1.436136 15.305133 21.422447 +v -2.978316 14.261284 19.875835 +v -2.978316 14.463718 20.986965 +v -2.597726 15.861096 20.732384 +v -2.597726 15.658666 19.621250 +v -1.557935 16.884050 20.546009 +v -1.557935 16.681616 19.434883 +v -0.137555 17.258476 20.477798 +v -0.137555 17.056042 19.366665 +v -0.137555 11.466525 20.385002 +v -0.137555 11.668958 21.496132 +v -1.557934 12.043385 21.427917 +v -1.557934 11.840951 20.316792 +v -2.597726 13.066336 21.241550 +v -2.597726 12.863903 20.130421 +v -2.597726 12.863903 20.130421 +v -2.597726 13.066336 21.241550 +v -2.978316 14.463718 20.986965 +v -2.978316 14.261284 19.875835 +v -2.597726 15.658666 19.621250 +v -3.109313 15.949227 19.568314 +v -3.569041 14.261284 19.875835 +v -2.978316 14.261284 19.875835 +v -2.978316 14.261284 19.875835 +v -3.569041 14.261284 19.875835 +v -3.109308 12.573324 20.183361 +v -2.597726 12.863903 20.130421 +v -2.597726 12.863903 20.130421 +v -3.109308 12.573324 20.183361 +v -1.853296 11.337653 20.408482 +v -1.557934 11.840951 20.316792 +v -1.557934 11.840951 20.316792 +v -1.853296 11.337653 20.408482 +v -0.137555 10.885364 20.490883 +v -0.137555 11.466525 20.385002 +v -0.137555 17.056042 19.366665 +v -0.137555 17.637207 19.260788 +v -1.853298 17.184916 19.343189 +v -1.557935 16.681616 19.434883 +v -1.557935 16.681616 19.434883 +v -1.853298 17.184916 19.343189 +v -3.109313 15.949227 19.568314 +v -2.597726 15.658666 19.621250 +v -0.938484 14.114862 23.483055 +v -1.273397 14.910323 23.338135 +v -1.347445 14.898061 23.270828 +v -0.990843 14.051090 23.425133 +v -0.137555 16.032167 23.133743 +v -0.137555 16.092754 23.053173 +v -0.990843 15.745030 23.116516 +v -0.938484 15.705781 23.193211 +v -1.273397 14.910323 23.338135 +v -0.938484 15.705781 23.193211 +v -0.990843 15.745030 23.116516 +v -1.347445 14.898061 23.270828 +v -0.990843 13.707285 21.538033 +v -0.990843 14.051090 23.425133 +v -1.347445 14.898061 23.270828 +v -1.347445 14.554255 21.383720 +v -0.990843 15.745030 23.116516 +v -0.137555 16.092754 23.053173 +v -0.137555 15.748948 21.166065 +v -0.990843 15.401227 21.229416 +v -1.347445 14.554255 21.383720 +v -1.347445 14.898061 23.270828 +v -0.990843 15.745030 23.116516 +v -0.990843 15.401227 21.229416 +v -7.052857 -3.374685 12.138167 +v -7.607366 -2.982224 11.851208 +v -2.921354 7.840734 14.815410 +v -2.367431 7.513035 15.175448 +v -7.663925 -3.256060 12.533605 +v -2.979387 7.707127 15.538341 +v -7.052857 -3.374685 12.138167 +v -2.367431 7.513035 15.175448 +v -6.429377 -3.665658 11.352397 +v -6.978294 -3.810490 10.881698 +v -2.288786 4.917661 2.296532 +v -1.736506 4.755218 2.757458 +v -7.044255 -3.258756 11.366552 +v -2.350004 5.073448 3.014745 +v -6.429377 -3.665658 11.352397 +v -1.736506 4.755218 2.757458 +v -0.137555 -3.498145 12.355363 +v -9.023540 -3.498145 12.355365 +v -9.023540 -4.092004 12.209988 +v -0.137555 -4.092004 12.209984 +v -9.023540 -4.409125 11.687264 +v -0.137555 -4.409125 11.687263 +v -9.023540 -4.263747 11.093406 +v -0.137555 -4.263747 11.093404 +v -9.023540 -3.741025 10.776284 +v -0.137555 -3.741025 10.776280 +v -9.023540 -3.147167 10.921661 +v -0.137555 -3.147167 10.921659 +v -0.137555 -3.147167 10.921659 +v -9.023540 -3.147167 10.921661 +v -9.023540 -2.830044 11.444382 +v -0.137555 -2.830044 11.444382 +v -9.023540 -2.975422 12.038241 +v -0.137555 -2.975422 12.038241 +v -9.023540 -3.498145 12.355365 +v -9.023540 -3.533713 12.124108 +v -9.023540 -3.953632 12.021311 +v -9.023540 -4.092004 12.209988 +v -9.023540 -4.177870 11.651694 +v -9.023540 -4.409125 11.687264 +v -9.023540 -4.075072 11.231778 +v -9.023540 -4.263747 11.093406 +v -9.023540 -3.705457 11.007539 +v -9.023540 -3.741025 10.776284 +v -9.023540 -3.285537 11.110336 +v -9.023540 -3.147167 10.921661 +v -9.023540 -3.147167 10.921661 +v -9.023540 -3.285537 11.110336 +v -9.023540 -3.061300 11.479952 +v -9.023540 -2.830044 11.444382 +v -9.023540 -3.164097 11.899868 +v -9.023540 -2.975422 12.038241 +v -9.881022 -3.541481 12.125302 +v -9.918426 -3.959666 12.022240 +v -9.023540 -3.953632 12.021311 +v -9.023540 -3.533713 12.124108 +v -9.918426 -3.959666 12.022240 +v -9.933917 -4.183187 11.652513 +v -9.023540 -4.177870 11.651694 +v -9.023540 -3.953632 12.021311 +v -9.933917 -4.183187 11.652513 +v -9.918426 -4.081106 11.232705 +v -9.023540 -4.075072 11.231778 +v -9.023540 -4.177870 11.651694 +v -9.918426 -4.081106 11.232705 +v -9.881022 -3.713226 11.008735 +v -9.023540 -3.705457 11.007539 +v -9.023540 -4.075072 11.231778 +v -9.881022 -3.713226 11.008735 +v -9.843617 -3.295041 11.111799 +v -9.023540 -3.285537 11.110336 +v -9.023540 -3.705457 11.007539 +v -9.843617 -3.295041 11.111799 +v -9.828129 -3.071526 11.481525 +v -9.023540 -3.061300 11.479952 +v -9.023540 -3.285537 11.110336 +v -9.828129 -3.071526 11.481525 +v -9.843620 -3.173601 11.901333 +v -9.023540 -3.164097 11.899868 +v -9.023540 -3.061300 11.479952 +v -9.843620 -3.173601 11.901333 +v -9.881022 -3.541481 12.125302 +v -9.023540 -3.533713 12.124108 +v -9.023540 -3.164097 11.899868 +v -9.881022 -3.355837 13.332259 +v -10.215263 -3.324768 13.327479 +v -10.333525 -4.646990 13.001652 +v -9.999287 -4.678094 13.006378 +v -9.999287 -4.678094 13.006378 +v -10.333525 -4.646990 13.001652 +v -10.382511 -5.353782 11.832620 +v -10.048271 -5.384840 11.837338 +v -10.048271 -5.384840 11.837338 +v -10.382511 -5.353782 11.832620 +v -10.333525 -5.031002 10.505172 +v -9.999284 -5.062070 10.509952 +v -9.999284 -5.062070 10.509952 +v -10.333525 -5.031002 10.505172 +v -10.215261 -3.867794 9.797000 +v -9.881022 -3.898864 9.801778 +v -9.881022 -3.898864 9.801778 +v -10.215261 -3.867794 9.797000 +v -10.096996 -2.545539 10.122879 +v -9.762759 -2.576614 10.127659 +v -9.762759 -2.576614 10.127659 +v -10.096996 -2.545539 10.122879 +v -10.048013 -1.838800 11.291918 +v -9.713772 -1.869869 11.296698 +v -9.713772 -1.869869 11.296698 +v -10.048013 -1.838800 11.291918 +v -10.096999 -2.161563 12.619308 +v -9.762759 -2.192633 12.624087 +v -9.762759 -2.192633 12.624087 +v -10.096999 -2.161563 12.619308 +v -10.215263 -3.324768 13.327479 +v -9.881022 -3.355837 13.332259 +v -9.881022 -3.541481 12.125302 +v -9.881022 -3.355837 13.332259 +v -9.999287 -4.678094 13.006378 +v -9.918426 -3.959666 12.022240 +v -9.918426 -3.959666 12.022240 +v -9.999287 -4.678094 13.006378 +v -10.048271 -5.384840 11.837338 +v -9.933917 -4.183187 11.652513 +v -9.933917 -4.183187 11.652513 +v -10.048271 -5.384840 11.837338 +v -9.999284 -5.062070 10.509952 +v -9.918426 -4.081106 11.232705 +v -9.918426 -4.081106 11.232705 +v -9.999284 -5.062070 10.509952 +v -9.881022 -3.898864 9.801778 +v -9.881022 -3.713226 11.008735 +v -9.881022 -3.713226 11.008735 +v -9.881022 -3.898864 9.801778 +v -9.762759 -2.576614 10.127659 +v -9.843617 -3.295041 11.111799 +v -9.843617 -3.295041 11.111799 +v -9.762759 -2.576614 10.127659 +v -9.713772 -1.869869 11.296698 +v -9.828129 -3.071526 11.481525 +v -9.828129 -3.071526 11.481525 +v -9.713772 -1.869869 11.296698 +v -9.762759 -2.192633 12.624087 +v -9.843620 -3.173601 11.901333 +v -9.843620 -3.173601 11.901333 +v -9.762759 -2.192633 12.624087 +v -9.881022 -3.355837 13.332259 +v -9.881022 -3.541481 12.125302 +v -34.616352 10.973569 -4.305973 +v -34.616352 24.350153 -3.728268 +v -34.519024 24.352579 -3.784413 +v -34.519024 10.975993 -4.362118 +v -34.519024 24.347727 -3.672129 +v -34.519024 10.971145 -4.249835 +v -34.519024 10.971145 -4.249835 +v -34.519024 24.347727 -3.672129 +v -30.701521 12.832979 10.128780 +v -13.333050 27.553009 10.638275 +v -13.037113 27.443340 10.522055 +v -30.393160 12.800472 9.998507 +v -30.393160 12.800472 9.998507 +v -13.037113 27.443340 10.522055 +v -13.087281 27.472626 10.853327 +v -30.433870 12.818146 10.331888 +v -6.012183 7.860677 11.055306 +v -30.466719 26.743053 10.866119 +v -30.166159 26.787380 10.721846 +v -5.748137 7.993579 10.894900 +v -5.748137 7.993579 10.894900 +v -30.166159 26.787380 10.721846 +v -30.194857 26.796295 11.056828 +v -5.759465 7.996225 11.231019 +v -31.472544 10.997549 0.614511 +v -31.472544 26.957542 9.600615 +v -31.095026 27.064472 9.410694 +v -31.095026 11.104485 0.424588 +v -31.095026 26.850609 9.790541 +v -31.095026 10.890615 0.804433 +v -31.095026 10.890615 0.804433 +v -31.095026 26.850609 9.790541 +v -6.811996 16.464014 12.762231 +v -14.275897 26.958862 10.850204 +v -14.185555 26.973335 10.576986 +v -6.721651 16.478489 12.489015 +v -13.967443 27.103703 10.441158 +v -6.503540 16.608864 12.353185 +v -13.749335 27.273605 10.522282 +v -6.285429 16.778763 12.434308 +v -6.285429 16.778763 12.434308 +v -13.749335 27.273605 10.522282 +v -13.658987 27.383507 10.772839 +v -6.195086 16.888662 12.684867 +v -13.749335 27.369030 11.046057 +v -6.285429 16.874187 12.958085 +v -13.967443 27.238659 11.181887 +v -6.503540 16.743813 13.093915 +v -14.185555 27.068760 11.100763 +v -6.721651 16.573915 13.012792 +v -3.735173 17.646593 0.622345 +v -3.735174 18.907696 0.392586 +v -2.681455 18.909416 -2.662604 +v -2.681455 17.756693 -2.452592 +v -0.137555 19.238968 -3.988016 +v -0.137555 17.892881 -3.742776 +v -0.137555 19.903610 4.531394 +v -0.137555 21.291946 4.278457 +v -2.681456 20.489861 3.159215 +v -2.681455 19.189877 3.396056 +v -3.735174 18.907696 0.392586 +v -3.143685 18.907696 0.392586 +v -2.263211 18.997980 -2.176482 +v -2.681455 18.909416 -2.662604 +v -2.681455 18.909416 -2.662604 +v -2.263211 18.997980 -2.176482 +v -0.137555 19.364216 -3.300538 +v -0.137555 19.238968 -3.988016 +v -0.137555 21.291946 4.278457 +v -0.137555 20.931133 3.633897 +v -2.263211 20.286793 2.693955 +v -2.681456 20.489861 3.159215 +v -2.681456 20.489861 3.159215 +v -2.263211 20.286793 2.693955 +v -3.143685 18.907696 0.392586 +v -3.735174 18.907696 0.392586 +v -3.143685 18.907696 0.392586 +v -3.143685 17.970634 0.563307 +v -2.263211 17.957739 -1.986966 +v -2.263211 18.997980 -2.176482 +v -2.263211 18.997980 -2.176482 +v -2.263211 17.957739 -1.986966 +v -0.137555 18.330683 -3.112241 +v -0.137555 19.364216 -3.300538 +v -0.137555 20.931133 3.633897 +v -0.137555 20.041740 3.795932 +v -2.263211 19.330694 2.868146 +v -2.263211 20.286793 2.693955 +v -2.263211 20.286793 2.693955 +v -2.263211 19.330694 2.868146 +v -3.143685 17.970634 0.563307 +v -3.143685 18.907696 0.392586 +v -2.039805 19.540924 2.445557 +v -2.039805 22.274622 17.450493 +v -1.882362 22.648573 17.382362 +v -1.882362 19.914867 2.377429 +v -1.502259 22.803465 17.354145 +v -1.502259 20.069763 2.349210 +v -1.122157 22.648573 17.382362 +v -1.122157 19.914867 2.377429 +v -0.964713 22.274622 17.450493 +v -0.964713 19.540924 2.445557 +v -1.122157 21.900675 17.518620 +v -1.122157 19.166975 2.513686 +v -1.122157 19.166975 2.513686 +v -1.122157 21.900675 17.518620 +v -1.502259 21.745783 17.546841 +v -1.502259 19.012081 2.541905 +v -1.882362 21.900675 17.518620 +v -1.882362 19.166975 2.513686 +v -1.502259 21.745783 17.546841 +v -1.502259 22.803465 17.354145 +v -1.603475 22.063547 17.279758 +v -1.603475 22.272367 18.425961 +v -1.539961 22.423220 18.398476 +v -1.539961 22.214399 17.252277 +v -1.386625 22.485704 18.387093 +v -1.386625 22.276884 17.240891 +v -1.233289 22.423220 18.398476 +v -1.233289 22.214399 17.252277 +v -1.169775 22.272367 18.425961 +v -1.169775 22.063547 17.279758 +v -1.233289 22.121515 18.453445 +v -1.233289 21.912691 17.307243 +v -1.386625 22.059031 18.464828 +v -1.386625 21.850206 17.318626 +v -1.539961 22.121515 18.453445 +v -1.539961 21.912691 17.307243 +v -1.539961 21.912691 17.307243 +v -1.539961 22.121515 18.453445 +v -1.386625 22.059031 18.464828 +v -1.386625 22.485704 18.387093 +v -3.417006 10.968184 22.387386 +v -1.213201 14.126719 22.777767 +v -1.609402 14.102673 22.739937 +v -3.879512 11.357963 22.337925 +v -3.140869 10.735471 22.416927 +v -0.655696 14.247482 22.824745 +v -2.925635 10.554080 22.439945 +v -0.440460 14.066093 22.847767 +v -2.794947 10.443944 22.453922 +v -0.448988 13.577412 22.857906 +v -5.848219 8.446975 21.563320 +v -6.357187 8.875909 21.508881 +v -5.294947 7.980704 21.622498 +v -5.070643 7.791671 21.646484 +v -4.863611 7.617192 21.668633 +v -8.008676 6.131011 20.448557 +v -7.011161 7.204411 21.010193 +v -7.693181 7.779181 20.937244 +v -8.842028 6.833315 20.359426 +v -7.264944 5.504225 20.528097 +v -6.356288 6.652514 21.080233 +v -6.753573 5.073263 20.582792 +v -6.045258 6.390395 21.113504 +v -6.315737 4.704283 20.629625 +v -5.715096 6.112151 21.148817 +v -9.969534 5.100362 19.459917 +v -10.725815 2.725559 18.293270 +v -8.920165 4.995983 19.816156 +v -9.343699 6.254065 20.034655 +v -10.773172 0.857841 17.474567 +v -8.424287 3.994022 19.687868 +v -10.118230 -0.388031 17.222591 +v -7.879467 3.319399 19.677153 +v -8.821138 -0.079582 17.997200 +v -7.176163 3.160187 19.890013 +v -2.690449 10.355878 22.465099 +v -0.420340 13.100590 22.867107 +v -4.698066 7.477681 21.686337 +v -5.451099 5.889658 21.177050 +v -6.419691 3.224981 20.184286 +v -5.965638 4.409235 20.667070 +v -7.374048 1.015672 19.080969 +v -1.609402 14.102673 22.739937 +v -1.576042 14.106964 22.461826 +v -3.832299 11.379006 22.062275 +v -3.879512 11.357963 22.337925 +v -1.213201 14.126719 22.777767 +v -1.180917 14.129717 22.499580 +v -1.576042 14.106964 22.461826 +v -1.609402 14.102673 22.739937 +v -0.655696 14.247482 22.824745 +v -0.625182 14.248373 22.546444 +v -1.180917 14.129717 22.499580 +v -1.213201 14.126719 22.777767 +v -0.440460 14.066093 22.847767 +v -0.409945 14.066982 22.569466 +v -0.625182 14.248373 22.546444 +v -0.655696 14.247482 22.824745 +v -2.690449 10.355878 22.465099 +v -2.643234 10.376924 22.189453 +v -0.386982 13.104876 22.589008 +v -0.420340 13.100590 22.867107 +v -0.448988 13.577412 22.857906 +v -0.416986 13.580074 22.579697 +v -0.409945 14.066982 22.569466 +v -0.440460 14.066093 22.847767 +v -3.879512 11.357963 22.337925 +v -3.832299 11.379006 22.062275 +v -6.296528 8.913524 21.238117 +v -6.357187 8.875909 21.508881 +v -4.698066 7.477681 21.686337 +v -4.637406 7.515300 21.415569 +v -2.643234 10.376924 22.189453 +v -2.690449 10.355878 22.465099 +v -7.693181 7.779181 20.937244 +v -7.626042 7.824908 20.669788 +v -8.769339 6.886054 20.095335 +v -8.842028 6.833315 20.359426 +v -5.451099 5.889658 21.177050 +v -5.383957 5.935385 20.909594 +v -4.637406 7.515300 21.415569 +v -4.698066 7.477681 21.686337 +v -9.343699 6.254065 20.034655 +v -9.268124 6.310481 19.772535 +v -9.889118 5.162975 19.201414 +v -9.969534 5.100362 19.459917 +v -9.969534 5.100362 19.459917 +v -9.889118 5.162975 19.201414 +v -10.636815 2.799323 18.042316 +v -10.725815 2.725559 18.293270 +v -10.725815 2.725559 18.293270 +v -10.636815 2.799323 18.042316 +v -10.678776 0.938709 17.229160 +v -10.773172 0.857841 17.474567 +v -10.773172 0.857841 17.474567 +v -10.678776 0.938709 17.229160 +v -10.021882 -0.304576 16.979359 +v -10.118230 -0.388031 17.222591 +v -8.821138 -0.079582 17.997200 +v -8.728744 -0.001357 17.749660 +v -7.288219 1.085293 18.827051 +v -7.374048 1.015672 19.080969 +v -6.419691 3.224981 20.184286 +v -6.342486 3.283472 19.923330 +v -5.892945 4.461967 20.402983 +v -5.965638 4.409235 20.667070 +v -10.118230 -0.388031 17.222591 +v -10.021882 -0.304576 16.979359 +v -8.728744 -0.001357 17.749660 +v -8.821138 -0.079582 17.997200 +v -0.420340 13.100590 22.867107 +v -0.386982 13.104876 22.589008 +v -0.416986 13.580074 22.579697 +v -0.448988 13.577412 22.857906 +v -7.374048 1.015672 19.080969 +v -7.288219 1.085293 18.827051 +v -6.342486 3.283472 19.923330 +v -6.419691 3.224981 20.184286 +v -8.842028 6.833315 20.359426 +v -8.769339 6.886054 20.095335 +v -9.268124 6.310481 19.772535 +v -9.343699 6.254065 20.034655 +v -6.357187 8.875909 21.508881 +v -6.296528 8.913524 21.238117 +v -7.626042 7.824908 20.669788 +v -7.693181 7.779181 20.937244 +v -5.965638 4.409235 20.667070 +v -5.892945 4.461967 20.402983 +v -5.383957 5.935385 20.909594 +v -5.451099 5.889658 21.177050 +v -3.832299 11.379006 22.062275 +v -2.643234 10.376924 22.189453 +v -4.637406 7.515300 21.415569 +v -6.296528 8.913524 21.238117 +v -1.576042 14.106964 22.461826 +v -1.180917 14.129717 22.499580 +v -0.416986 13.580074 22.579697 +v -0.386982 13.104876 22.589008 +v -0.416986 13.580074 22.579697 +v -1.180917 14.129717 22.499580 +v -0.625182 14.248373 22.546444 +v -0.409945 14.066982 22.569466 +v -3.832299 11.379006 22.062275 +v -1.576042 14.106964 22.461826 +v -0.386982 13.104876 22.589008 +v -2.643234 10.376924 22.189453 +v -4.637406 7.515300 21.415569 +v -5.383957 5.935385 20.909594 +v -7.626042 7.824908 20.669788 +v -6.296528 8.913524 21.238117 +v -5.892945 4.461967 20.402983 +v -6.342486 3.283472 19.923330 +v -9.268124 6.310481 19.772535 +v -8.769339 6.886054 20.095335 +v -8.769339 6.886054 20.095335 +v -7.626042 7.824908 20.669788 +v -5.383957 5.935385 20.909594 +v -5.892945 4.461967 20.402983 +v -10.636815 2.799323 18.042316 +v -8.728744 -0.001357 17.749660 +v -10.021882 -0.304576 16.979359 +v -10.678776 0.938709 17.229160 +v -9.889118 5.162975 19.201414 +v -9.268124 6.310481 19.772535 +v -6.342486 3.283472 19.923330 +v -7.288219 1.085293 18.827051 +v -10.636815 2.799323 18.042316 +v -9.889118 5.162975 19.201414 +v -7.288219 1.085293 18.827051 +v -8.728744 -0.001357 17.749660 +v 0.330618 18.670710 -33.683582 +v 0.285053 18.414829 -35.894424 +v -0.560163 18.414829 -35.894424 +v -0.605727 18.670710 -33.683582 +v -0.651571 18.602148 -30.355957 +v -0.605727 18.670710 -33.683582 +v -0.560163 18.414829 -35.894424 +v -0.605767 17.075186 -24.744356 +v -0.605767 17.075186 -24.744356 +v -0.605767 11.401349 -24.776545 +v -0.605767 12.973974 -22.107353 +v -0.605767 15.336257 -22.014980 +v -0.605767 11.401349 -24.776545 +v -0.651571 3.909487 -27.628571 +v -0.605766 4.289977 -24.225880 +v -0.605767 7.251087 -23.778145 +v -0.560163 18.414829 -35.894424 +v -0.475242 4.545812 -36.862782 +v -0.605767 11.401349 -24.776545 +v -0.605767 17.075186 -24.744356 +v -0.475242 4.545812 -36.862782 +v -0.494697 3.910732 -35.557438 +v -0.560162 3.476720 -33.171906 +v -0.651571 3.909487 -27.628571 +v -0.560163 18.414829 -35.894424 +v -0.475242 15.707024 -39.244591 +v -0.445198 12.034781 -40.236835 +v -0.475242 4.545812 -36.862782 +v -0.445198 12.034781 -40.236835 +v -0.445197 9.315046 -39.888615 +v -0.445197 6.808916 -39.080044 +v -0.475242 4.545812 -36.862782 +v 0.330657 15.336257 -22.014980 +v 0.330657 17.075186 -24.744356 +v -0.605767 17.075186 -24.744356 +v -0.605767 15.336257 -22.014980 +v 0.330657 17.075186 -24.744356 +v 0.330657 18.078314 -27.583200 +v -0.605767 18.078314 -27.583200 +v -0.605767 17.075186 -24.744356 +v 0.170088 12.034781 -40.236835 +v -0.445198 12.034781 -40.236835 +v -0.445197 13.888091 -40.062054 +v 0.170088 13.888091 -40.062054 +v 0.330618 3.524783 -30.914526 +v 0.376461 3.909487 -27.628571 +v -0.651571 3.909487 -27.628571 +v -0.605727 3.524783 -30.914526 +v 0.376461 3.909487 -27.628571 +v 0.330657 4.289977 -24.225880 +v -0.605766 4.289977 -24.225880 +v -0.651571 3.909487 -27.628571 +v 0.200132 15.707024 -39.244591 +v -0.475242 15.707024 -39.244591 +v -0.494698 17.377857 -38.011116 +v 0.219588 17.377857 -38.011116 +v 0.219588 3.910732 -35.557438 +v -0.494697 3.910732 -35.557438 +v -0.475242 4.545812 -36.862782 +v 0.200132 4.545812 -36.862782 +v 0.170088 13.888091 -40.062054 +v -0.445197 13.888091 -40.062054 +v -0.475242 15.707024 -39.244591 +v 0.200132 15.707024 -39.244591 +v 0.285052 3.476720 -33.171906 +v -0.560162 3.476720 -33.171906 +v -0.494697 3.910732 -35.557438 +v 0.219588 3.910732 -35.557438 +v 0.170088 6.808916 -39.080044 +v -0.445197 6.808916 -39.080044 +v -0.445197 9.315046 -39.888615 +v 0.170088 9.315046 -39.888615 +v 0.219588 17.377857 -38.011116 +v -0.494698 17.377857 -38.011116 +v -0.560163 18.414829 -35.894424 +v 0.285053 18.414829 -35.894424 +v 0.200132 4.545812 -36.862782 +v -0.475242 4.545812 -36.862782 +v -0.445197 5.657253 -38.139938 +v 0.170088 5.657253 -38.139938 +v 0.330618 18.670710 -33.683582 +v -0.605727 18.670710 -33.683582 +v -0.651571 18.602148 -30.355957 +v 0.376462 18.602148 -30.355957 +v 0.330657 18.078314 -27.583200 +v 0.376462 18.602148 -30.355957 +v -0.651571 18.602148 -30.355957 +v -0.605767 18.078314 -27.583200 +v 0.170088 9.315046 -39.888615 +v -0.445197 9.315046 -39.888615 +v -0.445198 12.034781 -40.236835 +v 0.170088 12.034781 -40.236835 +v 0.330657 11.401349 -24.776545 +v 0.330657 12.973974 -22.107353 +v -0.605767 12.973974 -22.107353 +v -0.605767 11.401349 -24.776545 +v 0.330657 4.289977 -24.225880 +v 0.330657 7.251087 -23.778145 +v -0.605767 7.251087 -23.778145 +v -0.605766 4.289977 -24.225880 +v 0.285052 3.476720 -33.171906 +v 0.330618 3.524783 -30.914526 +v -0.605727 3.524783 -30.914526 +v -0.560162 3.476720 -33.171906 +v 0.170088 5.657253 -38.139938 +v -0.445197 5.657253 -38.139938 +v -0.445197 6.808916 -39.080044 +v 0.170088 6.808916 -39.080044 +v 0.330657 7.251087 -23.778145 +v 0.330657 11.401349 -24.776545 +v -0.605767 11.401349 -24.776545 +v -0.605767 7.251087 -23.778145 +v 0.330657 12.973974 -22.107353 +v 0.330657 15.336257 -22.014980 +v -0.605767 15.336257 -22.014980 +v -0.605767 12.973974 -22.107353 +v -11.639269 -4.232666 14.326954 +v -11.511729 -3.140807 14.369819 +v -11.417636 -2.881190 9.001891 +v -11.511726 -3.973048 8.959024 +v -11.417636 -2.112300 14.000815 +v -11.337867 -1.892203 9.450106 +v -11.804996 -6.275688 11.022794 +v -11.826226 -6.327328 12.090542 +v -11.337867 -1.303718 13.276114 +v -11.284566 -1.156657 10.235428 +v -11.284569 -0.838170 12.306050 +v -11.265852 -0.786530 11.238302 +v -10.221741 -1.248802 10.249601 +v -10.203024 -0.878675 11.252476 +v -10.221741 -0.930319 12.320226 +v -10.275043 -1.395863 13.290288 +v -10.354806 -2.973335 9.016065 +v -10.275040 -1.984348 9.464279 +v -10.354809 -2.204439 14.014987 +v -10.448902 -3.232952 14.383994 +v -10.599373 -6.049350 13.107590 +v -10.622762 -5.902290 10.066901 +v -10.620604 -6.419479 12.104715 +v -10.599370 -6.367838 11.036967 +v -0.137555 13.788481 23.542515 +v -0.137555 16.032167 23.133743 +v -0.137555 13.092350 21.825588 +v -0.137555 16.042728 21.288063 +v -2.034282 9.582694 18.923504 +v -2.034281 18.592596 17.282019 +v -0.137555 9.211522 18.991127 +v -0.137555 18.963770 17.214392 +v -0.137555 9.192825 -28.695456 +v -0.137555 10.607282 -20.931702 +v -5.704780 25.412260 -1.122682 +v -6.124956 25.098688 -2.843851 +v -6.725490 10.797626 7.312677 +v -5.433122 11.356320 7.210891 +v -5.870196 13.518061 6.817050 +v -7.268282 13.482239 6.823577 +v -5.179747 8.521720 7.727320 +v -4.188437 9.523684 7.544775 +v -5.433122 11.356320 7.210891 +v -6.725490 10.797626 7.312677 +v -7.268282 13.482239 6.823577 +v -5.870196 13.518061 6.817050 +v -5.433122 15.679805 6.423209 +v -6.725487 16.166853 6.334475 +v -2.866378 7.001008 8.004374 +v -2.325634 8.299153 7.767869 +v -4.188437 9.523684 7.544775 +v -5.179747 8.521720 7.727320 +v -5.179746 19.031322 5.812605 +v -4.188436 17.986372 6.002982 +v -2.325632 19.210899 5.779888 +v -2.866376 20.552032 5.535551 +v -6.725487 16.166853 6.334475 +v -5.433122 15.679805 6.423209 +v -4.188436 17.986372 6.002982 +v -5.179746 19.031322 5.812605 +v -2.866376 20.552032 5.535551 +v -2.325632 19.210899 5.779888 +v -0.137555 19.639086 5.701879 +v -0.137555 21.086037 5.438262 +v -0.137555 13.788481 23.542515 +v -0.938484 14.114862 23.483055 +v -0.990843 14.051090 23.425133 +v -0.137555 13.703371 23.488483 +v -0.137555 13.703371 23.488483 +v -0.990843 14.051090 23.425133 +v -0.990843 13.707285 21.538033 +v -0.137555 13.359564 21.601383 +v -0.137555 6.467003 8.101662 +v -0.137555 7.870969 7.845878 +v -2.325634 8.299153 7.767869 +v -2.866378 7.001008 8.004374 +v 1.870543 20.548264 5.038902 +v 1.870543 22.464592 4.689771 +v 0.505632 23.065418 4.580308 +v 0.505632 20.832825 4.987058 +v -0.859279 23.065418 4.580308 +v -0.859279 20.832825 4.987056 +v -2.224189 22.464592 4.689771 +v -2.224189 20.548264 5.038902 +v 1.870543 20.472183 4.621320 +v 0.505632 20.756752 4.569478 +v 0.505632 22.989342 4.162726 +v 1.870543 22.388515 4.272189 +v -0.859278 20.756752 4.569476 +v -0.859278 22.989342 4.162726 +v -2.224189 20.472183 4.621320 +v -2.224189 22.388515 4.272189 +v -2.224189 20.548264 5.038902 +v -2.224189 22.464592 4.689771 +v -2.224189 22.388515 4.272189 +v -2.224189 20.472183 4.621320 +v -2.224189 22.464592 4.689771 +v -0.859279 23.065418 4.580308 +v -0.859278 22.989342 4.162726 +v -2.224189 22.388515 4.272189 +v 0.505632 23.065418 4.580308 +v 0.505632 22.989342 4.162726 +v 1.870543 22.464592 4.689771 +v 1.870543 22.388515 4.272189 +v 1.870543 22.464592 4.689771 +v 1.870543 20.548264 5.038902 +v 1.870543 20.472183 4.621320 +v 1.870543 22.388515 4.272189 +v -1.806203 23.529200 16.307932 +v -1.365730 23.349699 16.340633 +v -1.183280 22.916361 16.419582 +v -1.806203 22.916361 16.419582 +v -1.183280 22.916361 16.419582 +v -1.365730 23.349699 16.340633 +v -1.365730 23.360544 16.400158 +v -1.183280 22.927206 16.479107 +v -1.806203 23.529200 16.307932 +v -1.806203 23.540041 16.367455 +v -2.246677 23.349699 16.340633 +v -2.246677 23.360544 16.400158 +v -2.429127 22.916361 16.419582 +v -2.429127 22.927206 16.479107 +v -2.246677 22.483023 16.498531 +v -2.246677 22.493864 16.558056 +v -1.806203 22.303526 16.531235 +v -1.806203 22.314371 16.590755 +v -1.365730 22.483023 16.498531 +v -1.365730 22.493864 16.558056 +v -1.183280 22.927206 16.479107 +v -1.365730 23.360544 16.400158 +v -1.806203 23.540041 16.367455 +v -1.806203 22.927206 16.479107 +v -2.246677 23.349699 16.340633 +v -2.429127 22.916361 16.419582 +v -2.246677 23.360544 16.400158 +v -2.429127 22.927206 16.479107 +v -2.246677 22.493864 16.558056 +v -1.806203 22.314371 16.590755 +v -1.365730 22.493864 16.558056 +v -1.365730 22.483023 16.498531 +v -1.806203 22.303526 16.531235 +v -2.246677 22.483023 16.498531 +v 29.751905 10.424383 -0.328292 +v 29.443541 10.391874 -0.458566 +v 12.087492 25.034750 0.064983 +v 12.383435 25.144411 0.181201 +v 29.443541 10.391874 -0.458566 +v 29.484251 10.409550 -0.125184 +v 12.137660 25.064028 0.396255 +v 12.087492 25.034750 0.064983 +v 5.062560 5.452081 0.598234 +v 4.798513 5.584981 0.437826 +v 29.216539 24.378778 0.264774 +v 29.517099 24.334452 0.409047 +v 4.798513 5.584981 0.437826 +v 4.809842 5.587626 0.773945 +v 29.245237 24.387697 0.599754 +v 29.216539 24.378778 0.264774 +v 5.862374 14.055417 2.305160 +v 5.772030 14.069890 2.031945 +v 13.235933 24.564737 0.119916 +v 13.326281 24.550264 0.393134 +v 5.553920 14.200265 1.896114 +v 13.017826 24.695112 -0.015912 +v 5.335808 14.370164 1.977235 +v 12.799714 24.865015 0.065210 +v 5.335808 14.370164 1.977235 +v 5.245464 14.480065 2.227794 +v 12.709373 24.974913 0.315768 +v 12.799714 24.865015 0.065210 +v 5.335808 14.465589 2.501012 +v 12.799714 24.960436 0.588987 +v 5.553920 14.335216 2.636842 +v 13.017826 24.830057 0.724817 +v 5.772030 14.165317 2.555719 +v 13.235933 24.660166 0.643693 +v 30.305048 10.643557 0.578635 +v 30.963701 10.618658 0.579076 +v 30.813036 24.929342 1.613645 +v 30.154379 24.954233 1.613205 +v 30.963701 10.618658 0.579076 +v 30.960356 10.720448 -1.269946 +v 30.809679 25.031126 -0.235375 +v 30.813036 24.929342 1.613645 +v 30.960356 10.720448 -1.269946 +v 30.301702 10.745346 -1.270385 +v 30.151026 25.056025 -0.235818 +v 30.809679 25.031126 -0.235375 +v 30.301702 10.745346 -1.270385 +v 30.305048 10.643557 0.578635 +v 30.154379 24.954233 1.613205 +v 30.151026 25.056025 -0.235818 +v 30.168859 12.297785 8.400374 +v 29.800108 12.215061 8.225577 +v 30.481874 25.568533 0.910831 +v 30.850637 25.651247 1.085624 +v 29.783651 12.389593 8.543138 +v 30.465429 25.743063 1.228393 +v 29.783651 12.389593 8.543138 +v 30.465429 25.743063 1.228393 +v -30.407583 10.874838 0.548656 +v -30.256914 25.185518 1.583229 +v -30.915556 25.160620 1.583671 +v -31.066236 10.849939 0.549096 +v -31.066236 10.849939 0.549096 +v -30.915556 25.160620 1.583671 +v -30.912214 25.262411 -0.265351 +v -31.062880 10.951727 -1.299926 +v -31.062880 10.951727 -1.299926 +v -30.912214 25.262411 -0.265351 +v -30.253561 25.287302 -0.265792 +v -30.404238 10.976625 -1.300365 +v -30.404238 10.976625 -1.300365 +v -30.253561 25.287302 -0.265792 +v -30.256914 25.185518 1.583229 +v -30.407583 10.874838 0.548656 +v -30.528948 11.244707 0.468940 +v -13.160481 25.964739 0.978435 +v -12.864539 25.855074 0.862214 +v -30.220583 11.212198 0.338664 +v -30.220583 11.212198 0.338664 +v -12.864539 25.855074 0.862214 +v -12.914712 25.884352 1.193487 +v -30.261293 11.229874 0.672046 +v -5.839613 6.272407 1.395468 +v -30.294146 25.154779 1.206283 +v -29.993582 25.199106 1.062009 +v -5.575566 6.405307 1.235060 +v -5.575566 6.405307 1.235060 +v -29.993582 25.199106 1.062009 +v -30.022280 25.208025 1.396987 +v -5.586895 6.407953 1.571177 +v -6.639424 14.875742 3.102392 +v -14.103328 25.370588 1.190364 +v -14.012986 25.385061 0.917148 +v -6.549077 14.890219 2.829175 +v -13.794873 25.515436 0.781316 +v -6.330967 15.020592 2.693344 +v -13.576761 25.685339 0.862441 +v -6.112858 15.190493 2.774467 +v -6.112858 15.190493 2.774467 +v -13.576761 25.685339 0.862441 +v -13.486419 25.795240 1.112998 +v -6.022512 15.300392 3.025024 +v -13.576761 25.780760 1.386217 +v -6.112858 15.285915 3.298242 +v -13.794873 25.650393 1.522045 +v -6.330967 15.155542 3.434072 +v -14.012986 25.480490 1.440923 +v -6.549077 14.985643 3.352951 +v -30.282450 25.731180 1.116691 +v -30.282450 12.223915 9.098432 +v -29.904940 12.318897 9.259166 +v -29.904940 25.826159 1.277427 +v -29.904940 12.128931 8.937694 +v -29.904940 25.636194 0.955959 +v -29.904940 25.636194 0.955959 +v -29.904940 12.128931 8.937694 +vt 1.879478 0.530174 +vt 1.897414 0.524735 +vt 1.879566 0.526113 +vt 1.881690 0.427537 +vt 1.899500 0.427921 +vt 1.881778 0.423476 +vt 1.948867 0.692212 +vt 1.948604 0.707056 +vt 1.953637 0.699684 +vt 0.565573 0.782724 +vt 0.597737 0.776562 +vt 0.631173 0.764652 +vt 0.596866 0.612516 +vt 0.558627 0.607968 +vt 0.532640 0.607381 +vt 0.630058 0.699236 +vt 0.596866 0.612516 +vt 0.489568 0.620042 +vt 0.489568 0.620042 +vt 0.475518 0.632309 +vt 0.464575 0.645515 +vt 0.450798 0.706790 +vt 0.452967 0.728116 +vt 0.462399 0.748874 +vt 0.462399 0.748874 +vt 0.476409 0.768140 +vt 0.500841 0.780471 +vt 1.802491 0.725181 +vt 1.806539 0.710319 +vt 1.802491 0.695456 +vt 1.052336 0.836845 +vt 1.057214 0.817874 +vt 1.052250 0.798920 +vt 0.848890 0.817343 +vt 0.848723 0.828857 +vt 0.856840 0.837024 +vt 0.876845 0.828942 +vt 0.877015 0.817427 +vt 0.868894 0.809261 +vt 1.880832 0.983071 +vt 1.880933 0.976152 +vt 1.876054 0.971245 +vt 1.864033 0.976101 +vt 1.863932 0.983021 +vt 1.868811 0.987928 +vt 0.879478 0.530174 +vt 0.879566 0.526113 +vt 0.897414 0.524735 +vt 0.881690 0.427537 +vt 0.881778 0.423476 +vt 0.899500 0.427921 +vt 0.948867 0.692212 +vt 0.953637 0.699684 +vt 0.948604 0.707056 +vt 0.565573 0.782724 +vt 0.631173 0.764652 +vt 0.597737 0.776562 +vt 0.596866 0.612516 +vt 0.532640 0.607381 +vt 0.558627 0.607968 +vt 0.630058 0.699236 +vt 0.489568 0.620042 +vt 0.596866 0.612516 +vt 0.489568 0.620042 +vt 0.464575 0.645515 +vt 0.475518 0.632309 +vt 0.450798 0.706790 +vt 0.462399 0.748874 +vt 0.452967 0.728116 +vt 0.462399 0.748874 +vt 0.500841 0.780471 +vt 0.476409 0.768140 +vt 0.802491 0.725181 +vt 0.802491 0.695456 +vt 0.806539 0.710319 +vt 0.052336 0.836845 +vt 0.052250 0.798920 +vt 0.057214 0.817874 +vt 1.848890 0.817343 +vt 1.856840 0.837024 +vt 1.848723 0.828857 +vt 1.876845 0.828942 +vt 1.868894 0.809261 +vt 1.877015 0.817427 +vt 0.880832 0.983071 +vt 0.876054 0.971245 +vt 0.880933 0.976152 +vt 0.864033 0.976101 +vt 0.868811 0.987928 +vt 0.863932 0.983021 +vt 0.764773 0.724732 +vt 0.734627 0.710218 +vt 0.734627 0.809321 +vt 1.897414 0.524735 +vt 1.923223 0.496405 +vt 1.880188 0.497240 +vt 1.879566 0.526113 +vt 1.923223 0.496405 +vt 1.924064 0.457336 +vt 1.881068 0.456409 +vt 1.880188 0.497240 +vt 1.881068 0.456409 +vt 1.924064 0.457336 +vt 1.899500 0.427921 +vt 1.881690 0.427537 +vt 0.122549 0.656233 +vt 0.122578 0.652637 +vt 0.010500 0.652637 +vt 0.010633 0.652337 +vt 0.234486 0.661460 +vt 0.234656 0.654561 +vt 0.346443 0.668053 +vt 0.346734 0.658459 +vt 0.407538 0.672188 +vt 0.408643 0.660136 +vt 0.122122 0.451058 +vt 0.123852 0.442823 +vt 0.078205 0.439206 +vt 0.076831 0.448786 +vt 0.234965 0.454150 +vt 0.235514 0.448414 +vt 0.347024 0.455886 +vt 0.347440 0.450682 +vt 0.428376 0.456721 +vt 0.428786 0.451517 +vt 0.454072 0.482134 +vt 0.433218 0.452772 +vt 0.428376 0.456721 +vt 1.008858 0.429252 +vt 1.359604 0.433571 +vt 1.361111 0.429252 +vt 1.415687 0.433571 +vt 1.415695 0.429252 +vt 1.007350 0.223041 +vt 1.359604 0.226016 +vt 1.360039 0.219522 +vt 1.007350 0.219056 +vt 1.408423 0.225906 +vt 1.411958 0.221276 +vt 1.417122 0.012457 +vt 1.444812 0.062060 +vt 1.449332 0.062060 +vt 1.421961 0.012442 +vt 1.676401 0.986658 +vt 1.700313 0.990996 +vt 1.701728 0.978157 +vt 1.677748 0.976969 +vt 1.786661 0.989188 +vt 1.787706 0.983066 +vt 1.808887 0.988109 +vt 1.806581 0.983761 +vt 2.956937 0.990430 +vt 2.964659 0.990613 +vt 2.960512 0.822945 +vt 2.952790 0.822763 +vt 2.964659 0.990613 +vt 2.986306 0.990450 +vt 2.982158 0.822781 +vt 2.960512 0.822945 +vt 2.986306 0.990450 +vt 2.994010 0.989886 +vt 2.989862 0.822218 +vt 2.982158 0.822781 +vt 2.935309 0.991339 +vt 2.956937 0.990430 +vt 2.952790 0.822763 +vt 2.931161 0.823668 +vt 0.880274 0.541093 +vt 0.880271 0.560769 +vt 0.894615 0.560769 +vt 0.894613 0.541093 +vt 0.880271 0.585741 +vt 0.894615 0.585741 +vt 0.894611 0.566056 +vt 0.880276 0.566056 +vt 0.880274 0.541093 +vt 0.894613 0.541093 +vt 0.894601 0.535809 +vt 0.880285 0.535809 +vt 0.899927 0.585758 +vt 0.899927 0.566039 +vt 0.894611 0.566056 +vt 0.894615 0.585741 +vt 0.894615 0.560769 +vt 0.880271 0.560769 +vt 0.880276 0.566056 +vt 0.894611 0.566056 +vt 0.874960 0.566039 +vt 0.874960 0.585758 +vt 0.880271 0.585741 +vt 0.880276 0.566056 +vt 0.151943 0.966273 +vt 0.118276 0.966204 +vt 0.118294 0.984845 +vt 0.151961 0.984813 +vt 0.178138 0.965761 +vt 0.178157 0.984787 +vt 0.204440 0.965590 +vt 0.204459 0.984762 +vt 0.232801 0.965563 +vt 0.232820 0.984734 +vt 0.038622 0.965136 +vt 0.012148 0.965162 +vt 0.014053 0.984946 +vt 0.038641 0.984922 +vt 0.065148 0.965369 +vt 0.065167 0.984896 +vt 0.091706 0.965741 +vt 0.091724 0.984871 +vt 1.041294 0.782869 +vt 1.041455 0.852946 +vt 1.347561 0.949223 +vt 1.320488 0.949446 +vt 1.320590 0.961766 +vt 1.347663 0.961543 +vt 1.293415 0.949670 +vt 1.293517 0.961990 +vt 1.266341 0.949894 +vt 1.266443 0.962214 +vt 1.239268 0.950118 +vt 1.239370 0.962438 +vt 1.455855 0.948328 +vt 1.428781 0.948551 +vt 1.428883 0.960871 +vt 1.455957 0.960648 +vt 1.401708 0.948775 +vt 1.401810 0.961095 +vt 1.374635 0.948999 +vt 1.374737 0.961319 +vt 0.570606 0.567542 +vt 0.583420 0.567306 +vt 0.583267 0.559022 +vt 0.570454 0.559258 +vt 0.597978 0.567038 +vt 0.597825 0.558754 +vt 0.613012 0.566762 +vt 0.612860 0.558477 +vt 0.613380 0.586739 +vt 0.598345 0.587015 +vt 0.598505 0.595698 +vt 0.613540 0.595421 +vt 0.583787 0.587283 +vt 0.583947 0.595966 +vt 0.570974 0.587519 +vt 0.571134 0.596202 +vt 0.557296 0.587771 +vt 0.557455 0.596453 +vt 0.543262 0.588029 +vt 0.543422 0.596712 +vt 0.528359 0.588303 +vt 0.528518 0.596986 +vt 1.932941 0.593358 +vt 1.936440 0.593358 +vt 1.936440 0.572867 +vt 1.932941 0.572867 +vt 1.791431 0.684576 +vt 1.791431 0.736062 +vt 1.978612 0.593111 +vt 1.978612 0.614013 +vt 1.985470 0.613849 +vt 1.985470 0.593358 +vt 1.978612 0.614013 +vt 1.978612 0.634422 +vt 1.985470 0.634339 +vt 1.985470 0.613849 +vt 1.978612 0.634422 +vt 1.978612 0.654830 +vt 1.985470 0.654830 +vt 1.985470 0.634339 +vt 1.978612 0.531886 +vt 1.978612 0.552294 +vt 1.985470 0.552377 +vt 1.985470 0.531886 +vt 1.978612 0.552294 +vt 1.978612 0.572703 +vt 1.985470 0.572867 +vt 1.985470 0.552377 +vt 1.978612 0.572703 +vt 1.978612 0.593111 +vt 1.985470 0.593358 +vt 1.985470 0.572867 +vt 1.989519 0.593358 +vt 1.989519 0.613849 +vt 1.992030 0.613849 +vt 1.992030 0.593358 +vt 1.989519 0.613849 +vt 1.989519 0.634339 +vt 1.992030 0.634339 +vt 1.992030 0.613849 +vt 1.989519 0.634339 +vt 1.989519 0.654830 +vt 1.992030 0.654830 +vt 1.992030 0.634339 +vt 1.989519 0.531886 +vt 1.989519 0.552377 +vt 1.992030 0.552377 +vt 1.992030 0.531886 +vt 1.989519 0.552377 +vt 1.989519 0.572867 +vt 1.992030 0.572867 +vt 1.992030 0.552377 +vt 1.989519 0.572867 +vt 1.989519 0.593358 +vt 1.992030 0.593358 +vt 1.992030 0.572867 +vt 1.985470 0.593358 +vt 1.985470 0.613849 +vt 1.989519 0.613849 +vt 1.989519 0.593358 +vt 1.985470 0.613849 +vt 1.985470 0.634339 +vt 1.989519 0.634339 +vt 1.989519 0.613849 +vt 1.985470 0.634339 +vt 1.985470 0.654830 +vt 1.989519 0.654830 +vt 1.989519 0.634339 +vt 1.985470 0.531886 +vt 1.985470 0.552377 +vt 1.989519 0.552377 +vt 1.989519 0.531886 +vt 1.985470 0.552377 +vt 1.985470 0.572867 +vt 1.989519 0.572867 +vt 1.989519 0.552377 +vt 1.985470 0.572867 +vt 1.985470 0.593358 +vt 1.989519 0.593358 +vt 1.989519 0.572867 +vt 1.997477 0.613849 +vt 1.997477 0.593358 +vt 1.992030 0.593358 +vt 1.992030 0.613849 +vt 1.997477 0.593358 +vt 1.997477 0.572867 +vt 1.992030 0.572867 +vt 1.992030 0.593358 +vt 1.997477 0.572867 +vt 1.997477 0.552377 +vt 1.992030 0.552377 +vt 1.992030 0.572867 +vt 1.997477 0.552377 +vt 1.997477 0.531886 +vt 1.992030 0.531886 +vt 1.992030 0.552377 +vt 1.997477 0.654830 +vt 1.997477 0.634339 +vt 1.992030 0.634339 +vt 1.992030 0.654830 +vt 1.997477 0.634339 +vt 1.997477 0.613849 +vt 1.992030 0.613849 +vt 1.992030 0.634339 +vt 1.964272 0.593111 +vt 1.964272 0.572703 +vt 1.945781 0.572867 +vt 1.945781 0.593358 +vt 1.945781 0.613849 +vt 1.945781 0.593358 +vt 1.936440 0.593358 +vt 1.936440 0.613848 +vt 1.945781 0.593358 +vt 1.945781 0.572867 +vt 1.936440 0.572867 +vt 1.936440 0.593358 +vt 1.945781 0.572867 +vt 1.945781 0.552377 +vt 1.936440 0.552377 +vt 1.936440 0.572867 +vt 1.945781 0.552377 +vt 1.945781 0.531886 +vt 1.936440 0.531886 +vt 1.936440 0.552377 +vt 1.945781 0.654830 +vt 1.945781 0.634339 +vt 1.936440 0.634339 +vt 1.936440 0.654830 +vt 1.945781 0.634339 +vt 1.945781 0.613849 +vt 1.936440 0.613848 +vt 1.936440 0.634339 +vt 1.979362 0.691436 +vt 1.979348 0.689810 +vt 1.963987 0.689810 +vt 1.964001 0.691436 +vt 1.964001 0.691436 +vt 1.963987 0.689810 +vt 1.948957 0.689810 +vt 1.948867 0.692212 +vt 1.979067 0.658221 +vt 1.963706 0.658221 +vt 1.963987 0.689810 +vt 1.979348 0.689810 +vt 1.963706 0.658221 +vt 1.948957 0.658221 +vt 1.948957 0.689810 +vt 1.963987 0.689810 +vt 0.787461 0.635838 +vt 0.787461 0.644547 +vt 0.790486 0.644521 +vt 0.790486 0.635883 +vt 0.787461 0.652662 +vt 0.790486 0.652704 +vt 0.787461 0.661373 +vt 0.790486 0.661424 +vt 0.787461 0.669213 +vt 0.790486 0.669213 +vt 0.787461 0.677249 +vt 0.790486 0.677249 +vt 0.787461 0.611351 +vt 0.787461 0.618762 +vt 0.790486 0.618762 +vt 0.790486 0.611351 +vt 0.787461 0.627702 +vt 0.790486 0.627702 +vt 2.838023 0.574485 +vt 2.819068 0.574477 +vt 2.820639 0.577859 +vt 2.836431 0.577819 +vt 2.850694 0.586961 +vt 2.838023 0.574485 +vt 2.836431 0.577819 +vt 2.847119 0.588558 +vt 2.850748 0.605962 +vt 2.850694 0.586961 +vt 2.847119 0.588558 +vt 2.847216 0.604497 +vt 2.838228 0.618611 +vt 2.850748 0.605962 +vt 2.847216 0.604497 +vt 2.836657 0.615142 +vt 2.819383 0.618676 +vt 2.838228 0.618611 +vt 2.836657 0.615142 +vt 2.820841 0.615024 +vt 2.806807 0.606156 +vt 2.819383 0.618676 +vt 2.820841 0.615024 +vt 2.810164 0.604546 +vt 2.806580 0.587149 +vt 2.806807 0.606156 +vt 2.810164 0.604546 +vt 2.810070 0.588715 +vt 2.819068 0.574477 +vt 2.806580 0.587149 +vt 2.810070 0.588715 +vt 2.820639 0.577859 +vt 2.826168 0.590676 +vt 2.831048 0.590663 +vt 2.836431 0.577819 +vt 2.820639 0.577859 +vt 2.831048 0.590663 +vt 2.834519 0.594115 +vt 2.847119 0.588558 +vt 2.836431 0.577819 +vt 2.834519 0.594115 +vt 2.834548 0.599011 +vt 2.847216 0.604497 +vt 2.847119 0.588558 +vt 2.834548 0.599011 +vt 2.831117 0.602483 +vt 2.836657 0.615142 +vt 2.847216 0.604497 +vt 2.831117 0.602483 +vt 2.826236 0.602496 +vt 2.820841 0.615024 +vt 2.836657 0.615142 +vt 2.826236 0.602496 +vt 2.822765 0.599043 +vt 2.810164 0.604546 +vt 2.820841 0.615024 +vt 2.822765 0.599043 +vt 2.822736 0.594147 +vt 2.810070 0.588715 +vt 2.810164 0.604546 +vt 2.822736 0.594147 +vt 2.826168 0.590676 +vt 2.820639 0.577859 +vt 2.810070 0.588715 +vt 1.712529 0.749275 +vt 1.712529 0.796196 +vt 1.722815 0.796196 +vt 1.722815 0.749275 +vt 1.712529 0.796196 +vt 1.712529 0.821096 +vt 1.722815 0.821096 +vt 1.722815 0.796196 +vt 1.712529 0.687755 +vt 1.712529 0.713461 +vt 1.722815 0.713461 +vt 1.722815 0.687755 +vt 1.712529 0.713461 +vt 1.712529 0.749275 +vt 1.722815 0.749275 +vt 1.722815 0.713461 +vt 1.869054 0.971224 +vt 1.875811 0.987949 +vt 0.868492 0.837058 +vt 0.857248 0.809226 +vt 1.963142 0.507307 +vt 1.956692 0.465842 +vt 1.953100 0.466601 +vt 1.959462 0.507483 +vt 1.975459 0.514343 +vt 1.971978 0.514904 +vt 1.971030 0.518012 +vt 1.975659 0.517915 +vt 1.974988 0.462717 +vt 1.981663 0.505121 +vt 1.985318 0.504333 +vt 1.978737 0.462523 +vt 1.932504 0.389173 +vt 1.926916 0.381387 +vt 1.928188 0.391026 +vt 1.953100 0.466601 +vt 1.941483 0.425665 +vt 1.918600 0.436844 +vt 1.935331 0.471062 +vt 1.945891 0.513500 +vt 1.959462 0.507483 +vt 1.941512 0.510082 +vt 1.945891 0.513500 +vt 1.953322 0.516859 +vt 1.956592 0.511103 +vt 1.941512 0.510082 +vt 1.959462 0.507483 +vt 1.953100 0.466601 +vt 1.935331 0.471062 +vt 1.935117 0.407189 +vt 1.905937 0.424989 +vt 1.918600 0.436844 +vt 1.941483 0.425665 +vt 1.905937 0.424989 +vt 1.935117 0.407189 +vt 1.928188 0.391026 +vt 1.886744 0.406160 +vt 0.631173 0.764652 +vt 0.661496 0.745082 +vt 0.660792 0.717479 +vt 0.630058 0.699236 +vt 2.858635 0.680042 +vt 2.871958 0.679834 +vt 2.882754 0.675465 +vt 2.847085 0.674987 +vt 2.891651 0.666530 +vt 2.838888 0.666443 +vt 1.939803 0.691444 +vt 1.939801 0.709338 +vt 1.776324 0.680594 +vt 1.776324 0.740044 +vt 1.026016 0.772165 +vt 1.026226 0.863725 +vt 1.006733 0.768437 +vt 1.006960 0.867541 +vt 0.480897 0.445316 +vt 0.478945 0.407182 +vt 0.467033 0.405254 +vt 0.468978 0.443492 +vt 0.483699 0.484442 +vt 0.480897 0.445316 +vt 0.468978 0.443492 +vt 0.473741 0.481656 +vt 0.478945 0.407182 +vt 0.473654 0.367990 +vt 0.464299 0.367976 +vt 0.467033 0.405254 +vt 0.484683 0.508705 +vt 0.483699 0.484442 +vt 0.473741 0.481656 +vt 0.475839 0.508026 +vt 0.471613 0.341395 +vt 0.470613 0.322225 +vt 0.465906 0.323652 +vt 0.465805 0.340155 +vt 0.473654 0.367990 +vt 0.471613 0.341395 +vt 0.465805 0.340155 +vt 0.464299 0.367976 +vt 0.470613 0.322225 +vt 0.470069 0.279726 +vt 0.464726 0.279813 +vt 0.465906 0.323652 +vt 0.485336 0.540193 +vt 0.484683 0.508705 +vt 0.475839 0.508026 +vt 0.474510 0.533329 +vt 1.734627 0.809321 +vt 1.734627 0.710218 +vt 1.764773 0.724732 +vt 0.880188 0.497240 +vt 0.923223 0.496405 +vt 0.897414 0.524735 +vt 0.879566 0.526113 +vt 0.881068 0.456409 +vt 0.924064 0.457336 +vt 0.923223 0.496405 +vt 0.880188 0.497240 +vt 0.881068 0.456409 +vt 0.881690 0.427537 +vt 0.899500 0.427921 +vt 0.924064 0.457336 +vt 1.010500 0.652637 +vt 1.122578 0.652637 +vt 1.122549 0.656233 +vt 1.010633 0.652337 +vt 1.234656 0.654561 +vt 1.234486 0.661460 +vt 1.346734 0.658459 +vt 1.346443 0.668053 +vt 1.408643 0.660136 +vt 1.407538 0.672188 +vt 1.078205 0.439206 +vt 1.123852 0.442823 +vt 1.122122 0.451058 +vt 1.076831 0.448786 +vt 1.234965 0.454150 +vt 1.235514 0.448414 +vt 1.347024 0.455886 +vt 1.347440 0.450682 +vt 1.428376 0.456721 +vt 1.428786 0.451517 +vt 1.454072 0.482134 +vt 1.447451 0.487014 +vt 1.428376 0.456721 +vt 1.433218 0.452772 +vt 0.008858 0.429252 +vt 0.361111 0.429252 +vt 0.359604 0.433571 +vt 0.415695 0.429252 +vt 0.415687 0.433571 +vt 0.417122 0.012457 +vt 0.421961 0.012442 +vt 0.449332 0.062060 +vt 0.444812 0.062060 +vt 0.676401 0.986658 +vt 0.677748 0.976969 +vt 0.701728 0.978157 +vt 0.700313 0.990996 +vt 0.787706 0.983066 +vt 0.786661 0.989188 +vt 0.806581 0.983761 +vt 0.808887 0.988109 +vt 3.956937 0.990430 +vt 3.952790 0.822763 +vt 3.960512 0.822945 +vt 3.964659 0.990613 +vt 3.964659 0.990613 +vt 3.960512 0.822945 +vt 3.982158 0.822781 +vt 3.986306 0.990450 +vt 3.986306 0.990450 +vt 3.982158 0.822781 +vt 3.989862 0.822218 +vt 3.994010 0.989886 +vt 3.935309 0.991339 +vt 3.931161 0.823668 +vt 3.952790 0.822763 +vt 3.956937 0.990430 +vt 1.880274 0.541093 +vt 1.894613 0.541093 +vt 1.894615 0.560769 +vt 1.880271 0.560769 +vt 1.880271 0.585741 +vt 1.880276 0.566056 +vt 1.894611 0.566056 +vt 1.894615 0.585741 +vt 1.880274 0.541093 +vt 1.880285 0.535809 +vt 1.894601 0.535809 +vt 1.894613 0.541093 +vt 1.899927 0.585758 +vt 1.894615 0.585741 +vt 1.894611 0.566056 +vt 1.899927 0.566039 +vt 1.894615 0.560769 +vt 1.894611 0.566056 +vt 1.880276 0.566056 +vt 1.880271 0.560769 +vt 1.874960 0.566039 +vt 1.880276 0.566056 +vt 1.880271 0.585741 +vt 1.874960 0.585758 +vt 1.151943 0.966273 +vt 1.151961 0.984813 +vt 1.118294 0.984845 +vt 1.118276 0.966204 +vt 1.178138 0.965761 +vt 1.178157 0.984787 +vt 1.204440 0.965590 +vt 1.204459 0.984762 +vt 1.232801 0.965563 +vt 1.232820 0.984734 +vt 1.038622 0.965136 +vt 1.038641 0.984922 +vt 1.014053 0.984946 +vt 1.012148 0.965162 +vt 1.091724 0.984871 +vt 0.041455 0.852946 +vt 0.041294 0.782869 +vt 0.052250 0.798920 +vt 0.052336 0.836845 +vt 0.347561 0.949223 +vt 0.347663 0.961543 +vt 0.320590 0.961766 +vt 0.320488 0.949446 +vt 0.293517 0.961990 +vt 0.293415 0.949670 +vt 0.266443 0.962214 +vt 0.266341 0.949894 +vt 0.239370 0.962438 +vt 0.239268 0.950118 +vt 0.455855 0.948328 +vt 0.455957 0.960648 +vt 0.428883 0.960871 +vt 0.428781 0.948551 +vt 0.401810 0.961095 +vt 0.401708 0.948775 +vt 0.374737 0.961319 +vt 0.374635 0.948999 +vt 1.613012 0.566762 +vt 1.612860 0.558477 +vt 1.627604 0.558206 +vt 1.627756 0.566490 +vt 1.513593 0.568591 +vt 1.513441 0.560307 +vt 1.527838 0.560042 +vt 1.527991 0.568326 +vt 1.527991 0.568326 +vt 1.527838 0.560042 +vt 1.542742 0.559767 +vt 1.542895 0.568052 +vt 1.556928 0.567794 +vt 1.556776 0.559509 +vt 1.570454 0.559258 +vt 1.570606 0.567542 +vt 1.570606 0.567542 +vt 1.570454 0.559258 +vt 1.583267 0.559022 +vt 1.583420 0.567306 +vt 1.583420 0.567306 +vt 1.583267 0.559022 +vt 1.597825 0.558754 +vt 1.597978 0.567038 +vt 1.597978 0.567038 +vt 1.597825 0.558754 +vt 1.612860 0.558477 +vt 1.613012 0.566762 +vt 1.628124 0.586467 +vt 1.628284 0.595150 +vt 1.613540 0.595421 +vt 1.613380 0.586739 +vt 1.613380 0.586739 +vt 1.613540 0.595421 +vt 1.598505 0.595698 +vt 1.598345 0.587015 +vt 1.598345 0.587015 +vt 1.598505 0.595698 +vt 1.583947 0.595966 +vt 1.583787 0.587283 +vt 1.583787 0.587283 +vt 1.583947 0.595966 +vt 1.571134 0.596202 +vt 1.570974 0.587519 +vt 1.570974 0.587519 +vt 1.571134 0.596202 +vt 1.557456 0.596453 +vt 1.557296 0.587771 +vt 1.557296 0.587771 +vt 1.557456 0.596453 +vt 1.543422 0.596712 +vt 1.543262 0.588029 +vt 1.543262 0.588029 +vt 1.543422 0.596712 +vt 1.528518 0.596986 +vt 1.528358 0.588303 +vt 1.528358 0.588303 +vt 1.528518 0.596986 +vt 1.514121 0.597251 +vt 1.513961 0.588568 +vt 1.612860 0.558477 +vt 1.612825 0.556578 +vt 1.627569 0.556307 +vt 1.627604 0.558206 +vt 1.627604 0.558206 +vt 1.627569 0.556307 +vt 1.642140 0.556039 +vt 1.642175 0.557938 +vt 1.642175 0.557938 +vt 1.642140 0.556039 +vt 1.656962 0.555766 +vt 1.656997 0.557665 +vt 1.670449 0.557417 +vt 1.670414 0.555518 +vt 1.684206 0.555265 +vt 1.684240 0.557164 +vt 1.684240 0.557164 +vt 1.684206 0.555265 +vt 1.698385 0.555004 +vt 1.698421 0.556903 +vt 1.482951 0.560868 +vt 1.497922 0.558693 +vt 1.497957 0.560592 +vt 1.497957 0.560592 +vt 1.497922 0.558693 +vt 1.513406 0.558408 +vt 1.513441 0.560307 +vt 1.513441 0.560307 +vt 1.513406 0.558408 +vt 1.527803 0.558143 +vt 1.527838 0.560042 +vt 1.527838 0.560042 +vt 1.527803 0.558143 +vt 1.542707 0.557869 +vt 1.542742 0.559767 +vt 1.542742 0.559767 +vt 1.542707 0.557869 +vt 1.556741 0.557610 +vt 1.556776 0.559509 +vt 1.556776 0.559509 +vt 1.556741 0.557610 +vt 1.570419 0.557359 +vt 1.570454 0.559258 +vt 1.570454 0.559258 +vt 1.570419 0.557359 +vt 1.583232 0.557123 +vt 1.583267 0.559022 +vt 1.583267 0.559022 +vt 1.583232 0.557123 +vt 1.597790 0.556855 +vt 1.597825 0.558754 +vt 1.597825 0.558754 +vt 1.597790 0.556855 +vt 1.612825 0.556578 +vt 1.628284 0.595150 +vt 1.628316 0.596895 +vt 1.613572 0.597166 +vt 1.613540 0.595421 +vt 1.613540 0.595421 +vt 1.613572 0.597166 +vt 1.598537 0.597443 +vt 1.598505 0.595698 +vt 1.598505 0.595698 +vt 1.598537 0.597443 +vt 1.583979 0.597710 +vt 1.583947 0.595966 +vt 1.583947 0.595966 +vt 1.583979 0.597710 +vt 1.571166 0.597946 +vt 1.571134 0.596202 +vt 1.571134 0.596202 +vt 1.571166 0.597946 +vt 1.557488 0.598198 +vt 1.557456 0.596453 +vt 1.557456 0.596453 +vt 1.557488 0.598198 +vt 1.543454 0.598456 +vt 1.543422 0.596712 +vt 1.543422 0.596712 +vt 1.543454 0.598456 +vt 1.528550 0.598731 +vt 1.528518 0.596986 +vt 1.528518 0.596986 +vt 1.528550 0.598731 +vt 1.514153 0.598995 +vt 1.514121 0.597251 +vt 1.514121 0.597251 +vt 1.514153 0.598995 +vt 1.498669 0.599280 +vt 1.498637 0.597536 +vt 1.498637 0.597536 +vt 1.498669 0.599280 +vt 1.483663 0.599557 +vt 1.483631 0.597812 +vt 1.699100 0.593847 +vt 1.699132 0.595591 +vt 1.684952 0.595852 +vt 1.684920 0.594108 +vt 1.684920 0.594108 +vt 1.684952 0.595852 +vt 1.671161 0.596106 +vt 1.671129 0.594361 +vt 1.657677 0.594609 +vt 1.657709 0.596354 +vt 1.642887 0.596626 +vt 1.642854 0.594882 +vt 0.936439 0.572867 +vt 0.936439 0.593358 +vt 0.932941 0.593358 +vt 0.932941 0.572867 +vt 0.791431 0.736062 +vt 0.791431 0.684576 +vt 0.978612 0.593111 +vt 0.985470 0.593358 +vt 0.985470 0.613849 +vt 0.978612 0.614013 +vt 0.978612 0.614013 +vt 0.985470 0.613849 +vt 0.985470 0.634339 +vt 0.978612 0.634422 +vt 0.978612 0.634422 +vt 0.985470 0.634339 +vt 0.985470 0.654830 +vt 0.978612 0.654830 +vt 0.978612 0.531886 +vt 0.985470 0.531886 +vt 0.985470 0.552377 +vt 0.978612 0.552294 +vt 0.978612 0.552294 +vt 0.985470 0.552377 +vt 0.985470 0.572867 +vt 0.978612 0.572703 +vt 0.978612 0.572703 +vt 0.985470 0.572867 +vt 0.985470 0.593358 +vt 0.978612 0.593111 +vt 0.989519 0.593358 +vt 0.992030 0.593358 +vt 0.992030 0.613849 +vt 0.989519 0.613849 +vt 0.989519 0.613849 +vt 0.992030 0.613849 +vt 0.992030 0.634339 +vt 0.989519 0.634339 +vt 0.989519 0.634339 +vt 0.992030 0.634339 +vt 0.992030 0.654830 +vt 0.989519 0.654830 +vt 0.989519 0.531886 +vt 0.992030 0.531886 +vt 0.992030 0.552377 +vt 0.989519 0.552377 +vt 0.989519 0.552377 +vt 0.992030 0.552377 +vt 0.992030 0.572867 +vt 0.989519 0.572867 +vt 0.989519 0.572867 +vt 0.992030 0.572867 +vt 0.992030 0.593358 +vt 0.989519 0.593358 +vt 0.985470 0.593358 +vt 0.989519 0.593358 +vt 0.989519 0.613849 +vt 0.985470 0.613849 +vt 0.985470 0.613849 +vt 0.989519 0.613849 +vt 0.989519 0.634339 +vt 0.985470 0.634339 +vt 0.985470 0.634339 +vt 0.989519 0.634339 +vt 0.989519 0.654830 +vt 0.985470 0.654830 +vt 0.985470 0.531886 +vt 0.989519 0.531886 +vt 0.989519 0.552377 +vt 0.985470 0.552377 +vt 0.985470 0.552377 +vt 0.989519 0.552377 +vt 0.989519 0.572867 +vt 0.985470 0.572867 +vt 0.985470 0.572867 +vt 0.989519 0.572867 +vt 0.989519 0.593358 +vt 0.985470 0.593358 +vt 0.997477 0.613849 +vt 0.992030 0.613849 +vt 0.992030 0.593358 +vt 0.997477 0.593358 +vt 0.997477 0.593358 +vt 0.992030 0.593358 +vt 0.992030 0.572867 +vt 0.997477 0.572867 +vt 0.997477 0.572867 +vt 0.992030 0.572867 +vt 0.992030 0.552377 +vt 0.997477 0.552377 +vt 0.997477 0.552377 +vt 0.992030 0.552377 +vt 0.992030 0.531886 +vt 0.997477 0.531886 +vt 0.997477 0.654830 +vt 0.992030 0.654830 +vt 0.992030 0.634339 +vt 0.997477 0.634339 +vt 0.997477 0.634339 +vt 0.992030 0.634339 +vt 0.992030 0.613849 +vt 0.945781 0.572867 +vt 0.964273 0.572703 +vt 0.964273 0.593111 +vt 0.945781 0.593358 +vt 0.945781 0.613849 +vt 0.936439 0.613848 +vt 0.936439 0.593358 +vt 0.945781 0.593358 +vt 0.945781 0.593358 +vt 0.936439 0.593358 +vt 0.936439 0.572867 +vt 0.945781 0.572867 +vt 0.945781 0.572867 +vt 0.936439 0.572867 +vt 0.936439 0.552377 +vt 0.945781 0.552377 +vt 0.945781 0.552377 +vt 0.936439 0.552377 +vt 0.936439 0.531886 +vt 0.945781 0.531886 +vt 0.945781 0.654830 +vt 0.936439 0.654830 +vt 0.936439 0.634339 +vt 0.945781 0.634339 +vt 0.945781 0.634339 +vt 0.936439 0.634339 +vt 0.936439 0.613848 +vt 0.945781 0.613849 +vt 0.979362 0.691436 +vt 0.964001 0.691436 +vt 0.963987 0.689810 +vt 0.979348 0.689810 +vt 0.964001 0.691436 +vt 0.948867 0.692212 +vt 0.948957 0.689810 +vt 0.963987 0.689810 +vt 0.979067 0.658221 +vt 0.979348 0.689810 +vt 0.963987 0.689810 +vt 0.963706 0.658221 +vt 0.963706 0.658221 +vt 0.963987 0.689810 +vt 0.948957 0.689810 +vt 0.948957 0.658221 +vt 1.787461 0.635838 +vt 1.790486 0.635883 +vt 1.790486 0.644521 +vt 1.787461 0.644547 +vt 1.790486 0.652704 +vt 1.787461 0.652662 +vt 1.790486 0.661424 +vt 1.787461 0.661373 +vt 1.790486 0.669213 +vt 1.787461 0.669213 +vt 1.790486 0.677249 +vt 1.787461 0.677249 +vt 1.787461 0.611351 +vt 1.790486 0.611351 +vt 1.790486 0.618762 +vt 1.787461 0.618762 +vt 1.790486 0.627702 +vt 1.787461 0.627702 +vt 0.820639 0.577859 +vt 0.819068 0.574477 +vt 0.838023 0.574485 +vt 0.836431 0.577819 +vt 0.836431 0.577819 +vt 0.838023 0.574485 +vt 0.850694 0.586961 +vt 0.847119 0.588558 +vt 0.847119 0.588558 +vt 0.850694 0.586961 +vt 0.850748 0.605962 +vt 0.847216 0.604497 +vt 0.847216 0.604497 +vt 0.850748 0.605962 +vt 0.838228 0.618611 +vt 0.836657 0.615142 +vt 0.836657 0.615142 +vt 0.838228 0.618611 +vt 0.819383 0.618676 +vt 0.820841 0.615024 +vt 0.820841 0.615024 +vt 0.819383 0.618676 +vt 0.806807 0.606156 +vt 0.810164 0.604546 +vt 0.810164 0.604546 +vt 0.806807 0.606156 +vt 0.806580 0.587149 +vt 0.810070 0.588715 +vt 0.810070 0.588715 +vt 0.806580 0.587149 +vt 0.819068 0.574477 +vt 0.820639 0.577859 +vt 0.826167 0.590676 +vt 0.820639 0.577859 +vt 0.836431 0.577819 +vt 0.831048 0.590663 +vt 0.831048 0.590663 +vt 0.836431 0.577819 +vt 0.847119 0.588558 +vt 0.834520 0.594115 +vt 0.834520 0.594115 +vt 0.847119 0.588558 +vt 0.847216 0.604497 +vt 0.834548 0.599011 +vt 0.834548 0.599011 +vt 0.847216 0.604497 +vt 0.836657 0.615142 +vt 0.831117 0.602483 +vt 0.831117 0.602483 +vt 0.836657 0.615142 +vt 0.820841 0.615024 +vt 0.826236 0.602496 +vt 0.826236 0.602496 +vt 0.820841 0.615024 +vt 0.810164 0.604546 +vt 0.822765 0.599043 +vt 0.822765 0.599043 +vt 0.810164 0.604546 +vt 0.810070 0.588715 +vt 0.822736 0.594147 +vt 0.822736 0.594147 +vt 0.810070 0.588715 +vt 0.820639 0.577859 +vt 0.826167 0.590676 +vt 0.712529 0.749275 +vt 0.722815 0.749275 +vt 0.722815 0.796196 +vt 0.712529 0.796196 +vt 0.712529 0.796196 +vt 0.722815 0.796196 +vt 0.722815 0.821096 +vt 0.712529 0.687755 +vt 0.722815 0.687755 +vt 0.722815 0.713461 +vt 0.712529 0.713461 +vt 0.712529 0.713461 +vt 0.722815 0.713461 +vt 0.722815 0.749275 +vt 0.712529 0.749275 +vt 0.875811 0.987949 +vt 0.869054 0.971224 +vt 1.857248 0.809226 +vt 1.868492 0.837058 +vt 0.963142 0.507307 +vt 0.959462 0.507483 +vt 0.953100 0.466601 +vt 0.956692 0.465842 +vt 0.975459 0.514343 +vt 0.975659 0.517915 +vt 0.971030 0.518012 +vt 0.974988 0.462717 +vt 0.978737 0.462523 +vt 0.985318 0.504333 +vt 0.981663 0.505121 +vt 0.953100 0.466601 +vt 0.935331 0.471062 +vt 0.918600 0.436844 +vt 0.941483 0.425665 +vt 0.945891 0.513500 +vt 0.956592 0.511103 +vt 0.953322 0.516859 +vt 0.953100 0.466601 +vt 0.959462 0.507483 +vt 0.941512 0.510082 +vt 0.935331 0.471062 +vt 0.918600 0.436844 +vt 0.905937 0.424989 +vt 0.935117 0.407189 +vt 0.941483 0.425665 +vt 0.928188 0.391026 +vt 0.935117 0.407189 +vt 0.905937 0.424989 +vt 0.886744 0.406160 +vt 0.526626 0.783518 +vt 0.500841 0.780471 +vt 0.500841 0.780471 +vt 0.526626 0.783518 +vt 0.631173 0.764652 +vt 0.630058 0.699236 +vt 0.660792 0.717479 +vt 0.661496 0.745082 +vt 0.661496 0.745082 +vt 0.631173 0.764652 +vt 0.631173 0.764652 +vt 0.661496 0.745082 +vt 0.631173 0.764652 +vt 0.597737 0.776562 +vt 0.597737 0.776562 +vt 0.631173 0.764652 +vt 0.450798 0.706790 +vt 0.450798 0.706790 +vt 0.452967 0.728116 +vt 0.452967 0.728116 +vt 0.558627 0.607968 +vt 0.596866 0.612516 +vt 0.596866 0.612516 +vt 0.558627 0.607968 +vt 0.596866 0.612516 +vt 0.637337 0.616972 +vt 0.637337 0.616972 +vt 0.596866 0.612516 +vt 0.462399 0.748874 +vt 0.462399 0.748874 +vt 0.476409 0.768140 +vt 0.476409 0.768140 +vt 0.504547 0.612629 +vt 0.504547 0.612629 +vt 0.489568 0.620042 +vt 0.489568 0.620042 +vt 0.452967 0.728116 +vt 0.452967 0.728116 +vt 0.462399 0.748874 +vt 0.462399 0.748874 +vt 0.532640 0.607381 +vt 0.532640 0.607381 +vt 0.504547 0.612629 +vt 0.504547 0.612629 +vt 0.464575 0.645515 +vt 0.464575 0.645515 +vt 0.454897 0.674918 +vt 0.454897 0.674918 +vt 0.476409 0.768140 +vt 0.476409 0.768140 +vt 0.500841 0.780471 +vt 0.500841 0.780471 +vt 0.489568 0.620042 +vt 0.489568 0.620042 +vt 0.475518 0.632309 +vt 0.475518 0.632309 +vt 0.526626 0.783518 +vt 0.526626 0.783518 +vt 0.565573 0.782724 +vt 0.565573 0.782724 +vt 0.597737 0.776562 +vt 0.565573 0.782724 +vt 0.565573 0.782724 +vt 0.597737 0.776562 +vt 0.454897 0.674918 +vt 0.454897 0.674918 +vt 0.450798 0.706790 +vt 0.450798 0.706790 +vt 0.630058 0.699236 +vt 0.660792 0.717479 +vt 0.660792 0.717479 +vt 0.630058 0.699236 +vt 0.637337 0.616972 +vt 0.641785 0.651360 +vt 0.641785 0.651360 +vt 0.637337 0.616972 +vt 0.532640 0.607381 +vt 0.558627 0.607968 +vt 0.558627 0.607968 +vt 0.532640 0.607381 +vt 0.475518 0.632309 +vt 0.475518 0.632309 +vt 0.464575 0.645515 +vt 0.464575 0.645515 +vt 0.641785 0.651360 +vt 0.630058 0.699236 +vt 0.630058 0.699236 +vt 0.641785 0.651360 +vt 0.660792 0.717479 +vt 0.661496 0.745082 +vt 0.661496 0.745082 +vt 0.660792 0.717479 +vt 3.838417 0.629355 +vt 3.847316 0.620416 +vt 3.883001 0.620895 +vt 3.891823 0.630072 +vt 3.858914 0.615670 +vt 3.871445 0.615838 +vt 0.882754 0.675465 +vt 0.871958 0.679834 +vt 0.858635 0.680042 +vt 0.847085 0.674987 +vt 0.891651 0.666530 +vt 0.838888 0.666443 +vt 0.939801 0.709338 +vt 0.939803 0.691444 +vt 0.776324 0.740044 +vt 0.776324 0.680594 +vt 0.026226 0.863725 +vt 0.026016 0.772165 +vt 0.006960 0.867541 +vt 0.006733 0.768437 +vt 0.475514 0.113873 +vt 0.463662 0.116085 +vt 0.462963 0.154364 +vt 0.474805 0.152050 +vt 0.477040 0.074678 +vt 0.467179 0.077787 +vt 0.463662 0.116085 +vt 0.475514 0.113873 +vt 0.474805 0.152050 +vt 0.462963 0.154364 +vt 0.461444 0.191712 +vt 0.470793 0.191393 +vt 0.477234 0.050396 +vt 0.468417 0.051363 +vt 0.467179 0.077787 +vt 0.477040 0.074678 +vt 0.469620 0.218039 +vt 0.463855 0.219468 +vt 0.464494 0.235959 +vt 0.469244 0.237231 +vt 0.470793 0.191393 +vt 0.461444 0.191712 +vt 0.463855 0.219468 +vt 0.469620 0.218039 +vt 0.469244 0.237231 +vt 0.464494 0.235959 +vt 0.464726 0.279813 +vt 0.470069 0.279726 +vt 0.476861 0.018904 +vt 0.466265 0.026117 +vt 0.468417 0.051363 +vt 0.477234 0.050396 +vt 1.981228 0.796580 +vt 1.981343 0.741059 +vt 1.942279 0.723767 +vt 1.941700 0.788339 +vt 1.901950 0.723781 +vt 1.902173 0.788339 +vt 1.862950 0.741047 +vt 1.862839 0.796665 +vt 0.862839 0.796665 +vt 0.902173 0.788339 +vt 0.901950 0.723781 +vt 0.862950 0.741047 +vt 0.941700 0.788339 +vt 0.942279 0.723767 +vt 0.981228 0.796580 +vt 0.981343 0.741059 +vt 1.862839 0.796665 +vt 1.862950 0.741047 +vt 1.855536 0.734860 +vt 1.855120 0.796308 +vt 1.981343 0.741059 +vt 1.981228 0.796580 +vt 1.989729 0.796687 +vt 1.989631 0.734959 +vt 0.844269 0.970059 +vt 0.840070 0.973577 +vt 0.839588 0.978994 +vt 0.846439 0.976789 +vt 1.853430 0.974539 +vt 1.849805 0.970333 +vt 1.844269 0.970059 +vt 1.846439 0.976789 +vt 0.849805 0.970333 +vt 0.853430 0.974539 +vt 1.840070 0.973577 +vt 1.839588 0.978994 +vt 1.843067 0.983246 +vt 1.848652 0.983663 +vt 1.852944 0.980064 +vt 0.843067 0.983246 +vt 0.848652 0.983663 +vt 0.852944 0.980064 +vt 1.956937 0.990430 +vt 1.964659 0.990613 +vt 1.960512 0.822945 +vt 1.952790 0.822763 +vt 1.964659 0.990613 +vt 1.986306 0.990450 +vt 1.982158 0.822781 +vt 1.960512 0.822945 +vt 1.986306 0.990450 +vt 1.994010 0.989886 +vt 1.989862 0.822218 +vt 1.982158 0.822781 +vt 1.935309 0.991339 +vt 1.956937 0.990430 +vt 1.952790 0.822763 +vt 1.931161 0.823668 +vt 0.956937 0.990430 +vt 0.952790 0.822763 +vt 0.960512 0.822945 +vt 0.964659 0.990613 +vt 0.964659 0.990613 +vt 0.960512 0.822945 +vt 0.982158 0.822781 +vt 0.986306 0.990450 +vt 0.986306 0.990450 +vt 0.982158 0.822781 +vt 0.989862 0.822218 +vt 0.994010 0.989886 +vt 0.935309 0.991339 +vt 0.931161 0.823668 +vt 0.952790 0.822763 +vt 0.956937 0.990430 +vt 0.869549 0.494493 +vt 0.685876 0.470732 +vt 0.686956 0.503877 +vt 0.845515 0.545239 +vt 0.858857 0.533495 +vt 0.699936 0.535074 +vt 0.865099 0.357931 +vt 0.681322 0.330970 +vt 0.682548 0.368587 +vt 0.867157 0.421069 +vt 0.683656 0.402609 +vt 0.684743 0.435968 +vt 0.863161 0.273323 +vt 0.678978 0.276933 +vt 0.680251 0.298094 +vt 0.489619 0.321696 +vt 0.470613 0.322225 +vt 0.471613 0.341395 +vt 0.535821 0.320678 +vt 0.518922 0.329838 +vt 0.525635 0.340736 +vt 0.764773 0.794808 +vt 0.777260 0.759770 +vt 0.862351 0.052066 +vt 0.679553 0.048633 +vt 0.679553 0.081796 +vt 0.836677 0.002131 +vt 0.691510 0.017031 +vt 0.850394 0.013434 +vt 0.862351 0.188698 +vt 0.679553 0.183992 +vt 0.679553 0.221628 +vt 0.862351 0.125527 +vt 0.679552 0.116577 +vt 0.679553 0.149953 +vt 0.679553 0.254521 +vt 0.488258 0.237141 +vt 0.469620 0.218039 +vt 0.469244 0.237231 +vt 0.534467 0.236654 +vt 0.523633 0.216939 +vt 0.517279 0.228049 +vt 1.764773 0.794808 +vt 1.777260 0.759770 +vt 0.526575 0.441997 +vt 0.527814 0.480018 +vt 0.525447 0.407375 +vt 0.528647 0.505581 +vt 0.529865 0.542964 +vt 0.549395 0.279043 +vt 0.524206 0.369307 +vt 0.470069 0.279726 +vt 0.481435 0.279541 +vt 1.773548 0.788447 +vt 1.794554 0.804641 +vt 1.810287 0.776335 +vt 1.792986 0.760963 +vt 1.767225 0.804455 +vt 1.785301 0.819129 +vt 1.794554 0.804641 +vt 1.773548 0.788447 +vt 1.811318 0.732380 +vt 1.842490 0.758277 +vt 1.857822 0.684972 +vt 1.807952 0.688354 +vt 1.792986 0.760963 +vt 1.810287 0.776335 +vt 0.480897 0.445316 +vt 0.483699 0.484442 +vt 0.478945 0.407182 +vt 0.484683 0.508705 +vt 0.485336 0.540193 +vt 0.473654 0.367990 +vt 0.007228 0.696445 +vt 0.119097 0.704237 +vt 0.122549 0.656233 +vt 0.010633 0.652337 +vt 0.003656 0.747731 +vt 0.115658 0.753608 +vt 0.231007 0.711437 +vt 0.234486 0.661460 +vt 0.122578 0.652637 +vt 0.122635 0.602044 +vt 0.010442 0.602044 +vt 0.010500 0.652637 +vt 0.028796 0.757590 +vt 0.114950 0.763773 +vt 0.227568 0.760808 +vt 0.342960 0.718029 +vt 0.346443 0.668053 +vt 0.234656 0.654561 +vt 0.234828 0.602638 +vt 0.122635 0.552394 +vt 0.010560 0.550570 +vt 0.062947 0.849104 +vt 0.108784 0.852297 +vt 0.110904 0.821863 +vt 0.061147 0.817481 +vt 0.226860 0.770973 +vt 0.339521 0.767400 +vt 0.438412 0.723653 +vt 0.407538 0.672188 +vt 0.346734 0.658459 +vt 0.347022 0.603842 +vt 0.234828 0.552988 +vt 0.122635 0.542227 +vt 0.036628 0.541905 +vt 0.222813 0.829063 +vt 0.224120 0.810314 +vt 0.112209 0.803114 +vt 0.338813 0.777565 +vt 0.451460 0.774172 +vt 0.449077 0.613331 +vt 0.441013 0.606700 +vt 0.408643 0.660136 +vt 0.414803 0.663012 +vt 0.408643 0.660136 +vt 0.441013 0.606700 +vt 0.347022 0.554192 +vt 0.234828 0.542822 +vt 0.122635 0.502880 +vt 0.122635 0.484280 +vt 0.072599 0.485738 +vt 0.067729 0.503711 +vt 0.334766 0.835655 +vt 0.336072 0.816907 +vt 0.450752 0.784337 +vt 0.468300 0.556341 +vt 0.458729 0.555094 +vt 0.449465 0.611753 +vt 0.458729 0.555094 +vt 0.347022 0.544025 +vt 0.234828 0.503474 +vt 0.234828 0.484874 +vt 0.435030 0.841614 +vt 0.448012 0.823679 +vt 0.467840 0.545989 +vt 0.458499 0.545633 +vt 0.458499 0.545633 +vt 0.347022 0.504678 +vt 0.347022 0.486078 +vt 0.466944 0.501505 +vt 0.447451 0.487014 +vt 0.458683 0.504904 +vt 0.458683 0.504904 +vt 0.447451 0.487014 +vt 0.008432 0.542215 +vt 0.010560 0.550570 +vt 0.036628 0.541905 +vt 0.031953 0.534333 +vt 0.067729 0.503711 +vt 0.059617 0.498005 +vt 0.076831 0.448786 +vt 0.071413 0.450752 +vt 0.063922 0.484353 +vt 0.072599 0.485738 +vt 0.220694 0.859497 +vt 0.332646 0.866089 +vt 0.234965 0.454150 +vt 0.122122 0.451058 +vt 0.413957 0.870728 +vt 0.347024 0.455886 +vt 0.428376 0.456721 +vt 0.058035 0.799341 +vt 0.076831 0.448786 +vt 1.007350 0.433571 +vt 1.361111 0.429252 +vt 1.359604 0.377913 +vt 1.007350 0.377143 +vt 1.008858 0.429252 +vt 1.415695 0.429252 +vt 1.443716 0.379205 +vt 1.444812 0.062060 +vt 1.442509 0.117159 +vt 1.447494 0.117159 +vt 1.449332 0.062060 +vt 1.359604 0.064109 +vt 1.359604 0.113625 +vt 1.442509 0.117159 +vt 1.444812 0.062060 +vt 1.359604 0.012457 +vt 1.007350 0.012457 +vt 1.007350 0.062893 +vt 1.359604 0.226016 +vt 1.007350 0.223041 +vt 1.007350 0.273165 +vt 1.359604 0.273993 +vt 1.007350 0.164184 +vt 1.007350 0.219056 +vt 1.360039 0.219522 +vt 1.359604 0.165360 +vt 1.411958 0.221276 +vt 1.417218 0.224158 +vt 1.444355 0.160955 +vt 1.440307 0.160955 +vt 1.408423 0.225906 +vt 1.424813 0.274675 +vt 1.411958 0.221276 +vt 1.440307 0.160955 +vt 1.359604 0.326053 +vt 1.007350 0.325257 +vt 1.007350 0.112438 +vt 1.442099 0.327051 +vt 1.417122 0.012457 +vt 1.619799 0.822990 +vt 1.602982 0.814799 +vt 1.556521 0.990202 +vt 1.649324 0.985311 +vt 1.701728 0.978157 +vt 1.727590 0.833933 +vt 1.682262 0.899936 +vt 1.677748 0.976969 +vt 1.843743 0.951051 +vt 1.839120 0.949321 +vt 1.832190 0.961777 +vt 1.836182 0.964853 +vt 1.864233 0.869956 +vt 1.859622 0.870344 +vt 1.826082 0.827429 +vt 1.741088 0.816903 +vt 1.742659 0.826246 +vt 1.825098 0.833812 +vt 1.682262 0.899936 +vt 1.727590 0.833933 +vt 1.721259 0.826124 +vt 1.671031 0.894589 +vt 1.806581 0.983761 +vt 1.808887 0.988109 +vt 1.850605 0.840104 +vt 1.847832 0.843279 +vt 1.847832 0.843279 +vt 1.850605 0.840104 +vt 1.832190 0.961777 +vt 1.847832 0.843279 +vt 1.825098 0.833812 +vt 1.806581 0.983761 +vt 1.787706 0.983066 +vt 1.742659 0.826246 +vt 1.474077 0.865561 +vt 1.497494 0.952154 +vt 1.505137 0.965983 +vt 1.486724 0.833848 +vt 1.511976 0.821328 +vt 1.535132 0.991677 +vt 1.839120 0.949321 +vt 1.859622 0.870344 +vt 0.151943 0.966273 +vt 0.151914 0.936365 +vt 0.118246 0.934817 +vt 0.118276 0.966204 +vt 0.178138 0.965761 +vt 0.178109 0.936030 +vt 0.204440 0.965590 +vt 0.204412 0.935862 +vt 0.232801 0.965563 +vt 0.232773 0.935835 +vt 0.038622 0.965136 +vt 0.038592 0.934188 +vt 0.010231 0.934215 +vt 0.012148 0.965162 +vt 0.065148 0.965369 +vt 0.065118 0.934322 +vt 0.091706 0.965741 +vt 0.091676 0.934542 +vt 0.151897 0.918153 +vt 0.118231 0.919298 +vt 0.118246 0.934817 +vt 0.151914 0.936365 +vt 0.178092 0.917926 +vt 0.178109 0.936030 +vt 0.204394 0.917878 +vt 0.204412 0.935862 +vt 0.232755 0.917851 +vt 0.232773 0.935835 +vt 0.038578 0.918885 +vt 0.010216 0.918912 +vt 0.010231 0.934215 +vt 0.038592 0.934188 +vt 0.065103 0.918970 +vt 0.065118 0.934322 +vt 0.091661 0.919114 +vt 0.091676 0.934542 +vt 0.151886 0.907159 +vt 0.118220 0.908326 +vt 0.118231 0.919298 +vt 0.151897 0.918153 +vt 0.178081 0.906997 +vt 0.178092 0.917926 +vt 0.204384 0.906970 +vt 0.204394 0.917878 +vt 0.232745 0.906943 +vt 0.232755 0.917851 +vt 0.038567 0.908066 +vt 0.010206 0.908094 +vt 0.010216 0.918912 +vt 0.038578 0.918885 +vt 0.065093 0.908117 +vt 0.065103 0.918970 +vt 0.091650 0.908208 +vt 0.091661 0.919114 +vt 0.151864 0.884126 +vt 0.118197 0.884159 +vt 0.118220 0.908326 +vt 0.151886 0.907159 +vt 0.178059 0.884101 +vt 0.178081 0.906997 +vt 0.204361 0.884075 +vt 0.204384 0.906970 +vt 0.232723 0.884048 +vt 0.232745 0.906943 +vt 0.038544 0.884236 +vt 0.010183 0.884263 +vt 0.010206 0.908094 +vt 0.038567 0.908066 +vt 0.065070 0.884210 +vt 0.065093 0.908117 +vt 0.091627 0.884184 +vt 0.091650 0.908208 +vt 1.319964 0.882191 +vt 1.320134 0.902752 +vt 1.347219 0.902528 +vt 1.347049 0.881967 +vt 1.292880 0.882414 +vt 1.293050 0.902975 +vt 1.265796 0.882638 +vt 1.265966 0.903199 +vt 1.238712 0.882862 +vt 1.238882 0.903423 +vt 1.428215 0.881296 +vt 1.428385 0.901857 +vt 1.455469 0.901633 +vt 1.455299 0.881072 +vt 1.401217 0.881519 +vt 1.401387 0.902080 +vt 1.428385 0.901857 +vt 1.428215 0.881296 +vt 1.374133 0.881743 +vt 1.374303 0.902304 +vt 1.401387 0.902080 +vt 1.401217 0.881519 +vt 1.320333 0.930704 +vt 1.320488 0.949446 +vt 1.347561 0.949223 +vt 1.347406 0.930480 +vt 1.293260 0.930928 +vt 1.293415 0.949670 +vt 1.266186 0.931151 +vt 1.266341 0.949894 +vt 1.239113 0.931375 +vt 1.239268 0.950118 +vt 1.428626 0.929809 +vt 1.428781 0.948551 +vt 1.455855 0.948328 +vt 1.455700 0.929585 +vt 1.401553 0.930033 +vt 1.401708 0.948775 +vt 1.374480 0.930256 +vt 1.374635 0.948999 +vt 1.320590 0.961766 +vt 1.320820 0.989579 +vt 1.347893 0.989356 +vt 1.347663 0.961543 +vt 1.293517 0.961990 +vt 1.293746 0.989803 +vt 1.266443 0.962214 +vt 1.266673 0.990027 +vt 1.239370 0.962438 +vt 1.239600 0.990251 +vt 1.428883 0.960871 +vt 1.429113 0.988684 +vt 1.456187 0.988461 +vt 1.455957 0.960648 +vt 1.401810 0.961095 +vt 1.402040 0.988908 +vt 1.374737 0.961319 +vt 1.374966 0.989132 +vt 1.320218 0.916692 +vt 1.347291 0.916468 +vt 1.347219 0.902528 +vt 1.320134 0.902752 +vt 1.293144 0.916916 +vt 1.293050 0.902975 +vt 1.266071 0.917140 +vt 1.265966 0.903199 +vt 1.238997 0.917363 +vt 1.238882 0.903423 +vt 1.428510 0.915797 +vt 1.455584 0.915573 +vt 1.455469 0.901633 +vt 1.401438 0.916021 +vt 1.374364 0.916245 +vt 1.374303 0.902304 +vt 1.320333 0.930704 +vt 1.347406 0.930480 +vt 1.347291 0.916468 +vt 1.320218 0.916692 +vt 1.293260 0.930928 +vt 1.293144 0.916916 +vt 1.266186 0.931151 +vt 1.266071 0.917140 +vt 1.239113 0.931375 +vt 1.238997 0.917363 +vt 1.428626 0.929809 +vt 1.455700 0.929585 +vt 1.455584 0.915573 +vt 1.428510 0.915797 +vt 1.401553 0.930033 +vt 1.401438 0.916021 +vt 1.374480 0.930256 +vt 1.374364 0.916245 +vt 2.838425 0.629350 +vt 2.833580 0.641115 +vt 2.896551 0.641960 +vt 2.891809 0.630066 +vt 0.613012 0.566762 +vt 0.613203 0.577108 +vt 0.627946 0.576837 +vt 0.627756 0.566490 +vt 0.597978 0.567038 +vt 0.598168 0.577385 +vt 0.583420 0.567306 +vt 0.583610 0.577653 +vt 0.570606 0.567542 +vt 0.570797 0.577889 +vt 0.556928 0.567794 +vt 0.557118 0.578140 +vt 0.542895 0.568052 +vt 0.543085 0.578399 +vt 0.527991 0.568326 +vt 0.528181 0.578673 +vt 0.513593 0.568591 +vt 0.513784 0.578938 +vt 0.498110 0.568876 +vt 0.498300 0.579223 +vt 0.483103 0.569152 +vt 0.483294 0.579499 +vt 0.698573 0.565187 +vt 0.698763 0.575534 +vt 0.712688 0.575278 +vt 0.712498 0.564931 +vt 0.684393 0.565448 +vt 0.684583 0.575795 +vt 0.670601 0.565702 +vt 0.670792 0.576048 +vt 0.657149 0.565949 +vt 0.657340 0.576296 +vt 0.642327 0.566222 +vt 0.642517 0.576569 +vt 4.838881 0.666464 +vt 4.847080 0.675011 +vt 4.882653 0.675536 +vt 4.891664 0.666551 +vt 0.627756 0.566490 +vt 0.627604 0.558206 +vt 0.642327 0.566222 +vt 0.642175 0.557938 +vt 0.657149 0.565949 +vt 0.656997 0.557665 +vt 0.670601 0.565702 +vt 0.670449 0.557417 +vt 0.684393 0.565448 +vt 0.684240 0.557164 +vt 0.698573 0.565187 +vt 0.698421 0.556903 +vt 0.712498 0.564931 +vt 0.712345 0.556646 +vt 0.483103 0.569152 +vt 0.498110 0.568876 +vt 0.497957 0.560592 +vt 0.482951 0.560868 +vt 0.513593 0.568591 +vt 0.513441 0.560307 +vt 0.527991 0.568326 +vt 0.527838 0.560042 +vt 0.542895 0.568052 +vt 0.542742 0.559767 +vt 0.556928 0.567794 +vt 0.556776 0.559509 +vt 0.628124 0.586467 +vt 0.628283 0.595150 +vt 0.513961 0.588568 +vt 0.514121 0.597251 +vt 0.498477 0.588853 +vt 0.498637 0.597536 +vt 0.483471 0.589129 +vt 0.483631 0.597812 +vt 0.712866 0.584908 +vt 0.698941 0.585164 +vt 0.699100 0.593847 +vt 0.713025 0.593590 +vt 0.684761 0.585425 +vt 0.684920 0.594108 +vt 0.670969 0.585679 +vt 0.671129 0.594361 +vt 0.657517 0.585926 +vt 0.657677 0.594609 +vt 0.642695 0.586199 +vt 0.642854 0.594882 +vt 0.612860 0.558477 +vt 0.627604 0.558206 +vt 0.627569 0.556307 +vt 0.612825 0.556578 +vt 0.642175 0.557938 +vt 0.642140 0.556039 +vt 0.656997 0.557665 +vt 0.656962 0.555766 +vt 0.670449 0.557417 +vt 0.670414 0.555518 +vt 0.684240 0.557164 +vt 0.684206 0.555265 +vt 0.698421 0.556903 +vt 0.698386 0.555004 +vt 0.712345 0.556646 +vt 0.712310 0.554747 +vt 0.482951 0.560868 +vt 0.497957 0.560592 +vt 0.497922 0.558693 +vt 0.482916 0.558969 +vt 0.513441 0.560307 +vt 0.513406 0.558408 +vt 0.527838 0.560042 +vt 0.527803 0.558143 +vt 0.542742 0.559767 +vt 0.542707 0.557869 +vt 0.556776 0.559509 +vt 0.556741 0.557610 +vt 0.570454 0.559258 +vt 0.570419 0.557359 +vt 0.583267 0.559022 +vt 0.583232 0.557123 +vt 0.597825 0.558754 +vt 0.597790 0.556855 +vt 0.628283 0.595150 +vt 0.613540 0.595421 +vt 0.613572 0.597166 +vt 0.628316 0.596895 +vt 0.598505 0.595698 +vt 0.598537 0.597443 +vt 0.583947 0.595966 +vt 0.583979 0.597710 +vt 0.571134 0.596202 +vt 0.571166 0.597946 +vt 0.557455 0.596453 +vt 0.557488 0.598198 +vt 0.543422 0.596712 +vt 0.543454 0.598456 +vt 0.528518 0.596986 +vt 0.528550 0.598731 +vt 0.514121 0.597251 +vt 0.514153 0.598995 +vt 0.498637 0.597536 +vt 0.498669 0.599280 +vt 0.483631 0.597812 +vt 0.483663 0.599557 +vt 0.713025 0.593590 +vt 0.699100 0.593847 +vt 0.699132 0.595591 +vt 0.713057 0.595335 +vt 0.684920 0.594108 +vt 0.684952 0.595852 +vt 0.671129 0.594361 +vt 0.671161 0.596106 +vt 0.657677 0.594609 +vt 0.657709 0.596354 +vt 0.642854 0.594882 +vt 0.642887 0.596626 +vt 0.613380 0.586739 +vt 0.628124 0.586467 +vt 0.627946 0.576837 +vt 0.613203 0.577108 +vt 0.598345 0.587015 +vt 0.598168 0.577385 +vt 0.583787 0.587283 +vt 0.583610 0.577653 +vt 0.570974 0.587519 +vt 0.570797 0.577889 +vt 0.557296 0.587771 +vt 0.557118 0.578140 +vt 0.543262 0.588029 +vt 0.543085 0.578399 +vt 0.528359 0.588303 +vt 0.528181 0.578673 +vt 0.513961 0.588568 +vt 0.513784 0.578938 +vt 0.498477 0.588853 +vt 0.498300 0.579223 +vt 0.483471 0.589129 +vt 0.483294 0.579499 +vt 0.698941 0.585164 +vt 0.712866 0.584908 +vt 0.712688 0.575278 +vt 0.698763 0.575534 +vt 0.684761 0.585425 +vt 0.684583 0.575795 +vt 0.670969 0.585679 +vt 0.670792 0.576048 +vt 0.657517 0.585926 +vt 0.657340 0.576296 +vt 0.642695 0.586199 +vt 0.642517 0.576569 +vt 1.932941 0.613848 +vt 1.936440 0.613848 +vt 1.936440 0.593358 +vt 1.932941 0.593358 +vt 1.932941 0.634339 +vt 1.936440 0.634339 +vt 1.932941 0.654830 +vt 1.936440 0.654830 +vt 1.932941 0.552377 +vt 1.936440 0.552377 +vt 1.936440 0.531886 +vt 1.932941 0.531886 +vt 1.932941 0.572867 +vt 1.936440 0.572867 +vt 1.964272 0.614013 +vt 1.978612 0.614013 +vt 1.978612 0.593111 +vt 1.964272 0.593111 +vt 1.964272 0.634422 +vt 1.978612 0.634422 +vt 1.964272 0.654830 +vt 1.978612 0.654830 +vt 1.964272 0.552294 +vt 1.978612 0.552294 +vt 1.978612 0.531886 +vt 1.964272 0.531886 +vt 1.964272 0.572703 +vt 1.978612 0.572703 +vt 1.964272 0.614013 +vt 1.964272 0.593111 +vt 1.945781 0.593358 +vt 1.945781 0.613849 +vt 1.964272 0.634422 +vt 1.945781 0.634339 +vt 1.964272 0.654830 +vt 1.945781 0.654830 +vt 1.964272 0.552294 +vt 1.964272 0.531886 +vt 1.945781 0.531886 +vt 1.945781 0.552377 +vt 1.964272 0.572703 +vt 1.945781 0.572867 +vt 1.948957 0.689810 +vt 1.939799 0.689810 +vt 1.939803 0.691444 +vt 1.948867 0.692212 +vt 1.939799 0.658221 +vt 1.939799 0.689810 +vt 1.948957 0.689810 +vt 1.948957 0.658221 +vt 1.901649 0.531322 +vt 1.901649 0.681789 +vt 1.911924 0.681789 +vt 1.911924 0.531322 +vt 1.919678 0.681789 +vt 1.919678 0.531322 +vt 1.919678 0.531322 +vt 1.919678 0.681789 +vt 1.929541 0.681789 +vt 1.927963 0.531322 +vt 2.929541 0.681789 +vt 2.927963 0.531322 +vt 2.919678 0.531322 +vt 2.919678 0.681789 +vt 2.919678 0.681789 +vt 2.919678 0.531322 +vt 2.911924 0.531322 +vt 2.911924 0.681789 +vt 2.911924 0.681789 +vt 2.911924 0.531322 +vt 2.901649 0.531322 +vt 2.901649 0.681789 +vt 0.653557 0.635717 +vt 0.653557 0.644666 +vt 0.787461 0.644547 +vt 0.787461 0.635838 +vt 0.653557 0.652542 +vt 0.787461 0.652662 +vt 0.653557 0.661492 +vt 0.787461 0.661373 +vt 0.653557 0.669213 +vt 0.787461 0.669213 +vt 0.653557 0.677249 +vt 0.787461 0.677249 +vt 0.653557 0.611351 +vt 0.653557 0.618762 +vt 0.787461 0.618762 +vt 0.787461 0.611351 +vt 0.653557 0.627702 +vt 0.787461 0.627702 +vt 0.790486 0.644521 +vt 0.804256 0.644590 +vt 0.804256 0.635967 +vt 0.790486 0.635883 +vt 0.790486 0.652704 +vt 0.804256 0.652654 +vt 0.804256 0.644590 +vt 0.790486 0.644521 +vt 0.790486 0.661424 +vt 0.804256 0.661401 +vt 0.804256 0.652654 +vt 0.790486 0.652704 +vt 0.790486 0.669213 +vt 0.804256 0.669213 +vt 0.804256 0.661401 +vt 0.790486 0.661424 +vt 0.790486 0.677249 +vt 0.804256 0.677249 +vt 0.804256 0.669213 +vt 0.790486 0.669213 +vt 0.790486 0.618762 +vt 0.804256 0.618762 +vt 0.804256 0.611351 +vt 0.790486 0.611351 +vt 0.790486 0.627702 +vt 0.804256 0.627702 +vt 0.804256 0.618762 +vt 0.790486 0.618762 +vt 0.790486 0.635883 +vt 0.804256 0.635967 +vt 0.804256 0.627702 +vt 0.790486 0.627702 +vt 1.907472 0.257985 +vt 1.908977 0.257975 +vt 1.912623 0.051317 +vt 1.911119 0.051328 +vt 1.910712 0.257976 +vt 1.914357 0.051377 +vt 1.905738 0.257926 +vt 1.909384 0.051326 +vt 1.945508 0.023291 +vt 1.942880 0.023291 +vt 1.942142 0.289169 +vt 1.945365 0.289169 +vt 1.953900 0.023291 +vt 1.948675 0.023291 +vt 1.948937 0.289169 +vt 1.953900 0.289169 +vt 1.884426 0.003712 +vt 1.882265 0.003712 +vt 1.882265 0.306753 +vt 1.884426 0.306753 +vt 1.891725 0.003712 +vt 1.887573 0.003712 +vt 1.887573 0.306753 +vt 1.891725 0.306753 +vt 0.672500 0.806611 +vt 0.671067 0.801549 +vt 0.457033 0.801549 +vt 0.458466 0.806611 +vt 0.671087 0.796454 +vt 0.457013 0.796454 +vt 0.672521 0.811706 +vt 0.458446 0.811706 +vt 0.973814 0.134518 +vt 0.970027 0.134518 +vt 0.970027 0.286613 +vt 0.973814 0.286613 +vt 0.967029 0.134518 +vt 0.967029 0.286613 +vt 0.963765 0.134518 +vt 0.963765 0.286613 +vt 0.991477 0.134518 +vt 0.987690 0.134518 +vt 0.987690 0.286613 +vt 0.991477 0.286613 +vt 0.983886 0.134518 +vt 0.983886 0.286613 +vt 0.980889 0.134518 +vt 0.980889 0.286613 +vt 0.977618 0.134518 +vt 0.977618 0.286613 +vt 1.688848 0.749275 +vt 1.688848 0.796196 +vt 1.707262 0.796196 +vt 1.707262 0.749275 +vt 1.688848 0.821096 +vt 1.707262 0.821096 +vt 1.688848 0.687755 +vt 1.688848 0.713461 +vt 1.707262 0.713461 +vt 1.707262 0.687755 +vt 1.707262 0.749275 +vt 1.707262 0.796196 +vt 1.712529 0.796196 +vt 1.712529 0.749275 +vt 1.707262 0.796196 +vt 1.707262 0.821096 +vt 1.712529 0.821096 +vt 1.712529 0.796196 +vt 1.707262 0.687755 +vt 1.707262 0.713461 +vt 1.712529 0.713461 +vt 1.712529 0.687755 +vt 1.707262 0.713461 +vt 1.707262 0.749275 +vt 1.712529 0.749275 +vt 1.712529 0.713461 +vt 0.901273 0.987954 +vt 0.905721 0.987777 +vt 0.898839 0.809308 +vt 0.894390 0.809475 +vt 0.910255 0.987933 +vt 0.903373 0.809475 +vt 0.914763 0.987434 +vt 0.907880 0.808954 +vt 0.919212 0.987273 +vt 0.912328 0.808772 +vt 0.923660 0.987101 +vt 0.916777 0.808601 +vt 0.887785 0.988453 +vt 0.892292 0.987943 +vt 0.885410 0.809505 +vt 0.880903 0.810015 +vt 0.896825 0.988115 +vt 0.889943 0.809656 +vt 1.835327 0.793387 +vt 1.831746 0.793387 +vt 1.831746 0.820585 +vt 1.835327 0.820585 +vt 1.828119 0.793387 +vt 1.828119 0.820585 +vt 1.824470 0.793387 +vt 1.824470 0.820585 +vt 1.820887 0.793387 +vt 1.820887 0.820585 +vt 1.817304 0.793387 +vt 1.817304 0.820585 +vt 1.813656 0.793387 +vt 1.813656 0.820585 +vt 1.810030 0.793387 +vt 1.810030 0.820585 +vt 1.838908 0.793387 +vt 1.838908 0.820585 +vt 1.963142 0.507307 +vt 1.966829 0.510170 +vt 1.963771 0.464386 +vt 1.956692 0.465842 +vt 1.971978 0.514904 +vt 1.968024 0.463687 +vt 1.975459 0.514343 +vt 1.971339 0.463143 +vt 1.978725 0.509767 +vt 1.973352 0.462812 +vt 1.954252 0.423683 +vt 1.945634 0.424628 +vt 1.962774 0.422283 +vt 1.966228 0.421716 +vt 1.969417 0.421193 +vt 1.938767 0.405843 +vt 1.949923 0.403838 +vt 1.946255 0.386738 +vt 1.932504 0.389173 +vt 1.960009 0.402182 +vt 1.957710 0.384857 +vt 1.964799 0.401395 +vt 1.965586 0.383564 +vt 1.969884 0.400560 +vt 1.972329 0.382456 +vt 1.930994 0.364212 +vt 1.931040 0.379851 +vt 1.943846 0.369533 +vt 1.936570 0.333645 +vt 1.955052 0.362291 +vt 1.950086 0.315819 +vt 1.964760 0.358704 +vt 1.963966 0.306471 +vt 1.972943 0.361369 +vt 1.976111 0.317948 +vt 1.981663 0.505121 +vt 1.974988 0.462717 +vt 1.972942 0.421304 +vt 1.974470 0.399545 +vt 1.977774 0.381266 +vt 1.980256 0.366925 +vt 1.985764 0.339373 +vt 1.966829 0.510170 +vt 1.963142 0.507307 +vt 1.960727 0.510219 +vt 1.964615 0.512998 +vt 1.971978 0.514904 +vt 1.966829 0.510170 +vt 1.964615 0.512998 +vt 1.971030 0.518012 +vt 1.978725 0.509767 +vt 1.975459 0.514343 +vt 1.975659 0.517915 +vt 1.979438 0.515266 +vt 1.956692 0.465842 +vt 1.945634 0.424628 +vt 1.941483 0.425665 +vt 1.953100 0.466601 +vt 1.972942 0.421304 +vt 1.974988 0.462717 +vt 1.978737 0.462523 +vt 1.977648 0.421732 +vt 1.938767 0.405843 +vt 1.932504 0.389173 +vt 1.928188 0.391026 +vt 1.935117 0.407189 +vt 1.974470 0.399545 +vt 1.972942 0.421304 +vt 1.977648 0.421732 +vt 1.978161 0.399738 +vt 1.931040 0.379851 +vt 1.930994 0.364212 +vt 1.926746 0.365415 +vt 1.926916 0.381387 +vt 1.930994 0.364212 +vt 1.936570 0.333645 +vt 1.933515 0.332831 +vt 1.926746 0.365415 +vt 1.936570 0.333645 +vt 1.950086 0.315819 +vt 1.948466 0.313374 +vt 1.933515 0.332831 +vt 1.950086 0.315819 +vt 1.963966 0.306471 +vt 1.962437 0.303992 +vt 1.948466 0.313374 +vt 1.976111 0.317948 +vt 1.985764 0.339373 +vt 1.990410 0.338499 +vt 1.978359 0.315358 +vt 1.980256 0.366925 +vt 1.977774 0.381266 +vt 1.981269 0.381445 +vt 1.984066 0.367261 +vt 1.963966 0.306471 +vt 1.976111 0.317948 +vt 1.978359 0.315358 +vt 1.965424 0.303475 +vt 1.981663 0.505121 +vt 1.978725 0.509767 +vt 1.979438 0.515266 +vt 1.982307 0.509582 +vt 1.985764 0.339373 +vt 1.980256 0.366925 +vt 1.984066 0.367261 +vt 1.990410 0.338499 +vt 1.931040 0.379851 +vt 1.945634 0.424628 +vt 1.938767 0.405843 +vt 1.935117 0.407189 +vt 1.941483 0.425665 +vt 1.977774 0.381266 +vt 1.974470 0.399545 +vt 1.978161 0.399738 +vt 1.981269 0.381445 +vt 1.956592 0.511103 +vt 1.950077 0.517329 +vt 1.926916 0.381387 +vt 1.876822 0.376070 +vt 1.886744 0.406160 +vt 1.928188 0.391026 +vt 1.933515 0.332831 +vt 1.931160 0.313322 +vt 1.921929 0.299465 +vt 1.906951 0.304459 +vt 1.876822 0.376070 +vt 1.926916 0.381387 +vt 1.926746 0.365415 +vt 1.882738 0.329557 +vt 1.882738 0.329557 +vt 1.926746 0.365415 +vt 1.933515 0.332831 +vt 1.906951 0.304459 +vt 0.565573 0.782724 +vt 0.631173 0.764652 +vt 0.500841 0.780471 +vt 0.526626 0.783518 +vt 0.630058 0.699236 +vt 0.641785 0.651360 +vt 0.637337 0.616972 +vt 0.596866 0.612516 +vt 0.630058 0.699236 +vt 0.489568 0.620042 +vt 0.500841 0.780471 +vt 0.631173 0.764652 +vt 0.532640 0.607381 +vt 0.504547 0.612629 +vt 0.489568 0.620042 +vt 0.596866 0.612516 +vt 0.450798 0.706790 +vt 0.462399 0.748874 +vt 0.500841 0.780471 +vt 0.489568 0.620042 +vt 0.464575 0.645515 +vt 0.454897 0.674918 +vt 0.450798 0.706790 +vt 0.489568 0.620042 +vt 4.896566 0.641971 +vt 4.833570 0.641126 +vt 4.833514 0.653935 +vt 4.896511 0.654781 +vt 4.891823 0.630072 +vt 4.838417 0.629355 +vt 4.858635 0.680069 +vt 4.871963 0.679861 +vt 4.883001 0.620895 +vt 4.847316 0.620416 +vt 4.871445 0.615838 +vt 4.858914 0.615670 +vt 2.896495 0.654765 +vt 2.833525 0.653920 +vt 2.882991 0.620893 +vt 2.847321 0.620414 +vt 2.871440 0.615838 +vt 2.858914 0.615670 +vt 1.676401 0.986658 +vt 1.671031 0.894589 +vt 0.063613 0.482216 +vt 0.058323 0.502256 +vt 1.979348 0.689810 +vt 1.979362 0.691436 +vt 1.993903 0.691436 +vt 1.993911 0.689810 +vt 1.979067 0.658221 +vt 1.979348 0.689810 +vt 1.993911 0.689810 +vt 1.993909 0.658221 +vt 0.521275 0.077663 +vt 0.521275 0.115703 +vt 0.521275 0.150343 +vt 0.521275 0.052086 +vt 0.521275 0.014684 +vt 0.521275 0.188430 +vt 0.773548 0.788447 +vt 0.792986 0.760963 +vt 0.810287 0.776335 +vt 0.794554 0.804641 +vt 0.767225 0.804455 +vt 0.773548 0.788447 +vt 0.794554 0.804641 +vt 0.785301 0.819129 +vt 0.811318 0.732380 +vt 0.807952 0.688354 +vt 0.857822 0.684972 +vt 0.842490 0.758277 +vt 0.792986 0.760963 +vt 0.810287 0.776335 +vt 0.477040 0.074678 +vt 0.475514 0.113873 +vt 0.474805 0.152050 +vt 0.477234 0.050396 +vt 0.476861 0.018904 +vt 0.470793 0.191393 +vt 1.122549 0.656233 +vt 1.119097 0.704237 +vt 1.007228 0.696445 +vt 1.010633 0.652337 +vt 1.115658 0.753608 +vt 1.003656 0.747731 +vt 1.234486 0.661460 +vt 1.231007 0.711437 +vt 1.010442 0.602044 +vt 1.122635 0.602044 +vt 1.122578 0.652637 +vt 1.010500 0.652637 +vt 1.114950 0.763773 +vt 1.028796 0.757590 +vt 1.227568 0.760808 +vt 1.346443 0.668053 +vt 1.342960 0.718029 +vt 1.234828 0.602638 +vt 1.234656 0.654561 +vt 1.010560 0.550570 +vt 1.122635 0.552394 +vt 1.062947 0.849104 +vt 1.061147 0.817481 +vt 1.110904 0.821863 +vt 1.108784 0.852297 +vt 1.226860 0.770973 +vt 1.339521 0.767400 +vt 1.407538 0.672188 +vt 1.438412 0.723653 +vt 1.347022 0.603842 +vt 1.346734 0.658459 +vt 1.234828 0.552988 +vt 1.036628 0.541905 +vt 1.122635 0.542227 +vt 1.224120 0.810314 +vt 1.222813 0.829063 +vt 1.112209 0.803114 +vt 1.338813 0.777565 +vt 1.451460 0.774172 +vt 1.408643 0.660136 +vt 1.441013 0.606700 +vt 1.449077 0.613331 +vt 1.414803 0.663012 +vt 1.441013 0.606700 +vt 1.408643 0.660136 +vt 1.347022 0.554192 +vt 1.234828 0.542822 +vt 1.072599 0.485738 +vt 1.122635 0.484280 +vt 1.122635 0.502880 +vt 1.067729 0.503711 +vt 1.336072 0.816907 +vt 1.334766 0.835655 +vt 1.450752 0.784337 +vt 1.458729 0.555094 +vt 1.468300 0.556341 +vt 1.449466 0.611753 +vt 1.458729 0.555094 +vt 1.347022 0.544025 +vt 1.234828 0.484874 +vt 1.234828 0.503474 +vt 1.448012 0.823679 +vt 1.435030 0.841614 +vt 1.458499 0.545633 +vt 1.467840 0.545989 +vt 1.458499 0.545633 +vt 1.347022 0.486078 +vt 1.347022 0.504678 +vt 1.466944 0.501505 +vt 1.458683 0.504904 +vt 1.447451 0.487014 +vt 1.458683 0.504904 +vt 1.036628 0.541905 +vt 1.010560 0.550570 +vt 1.008432 0.542215 +vt 1.031953 0.534333 +vt 1.059617 0.498005 +vt 1.067729 0.503711 +vt 1.063922 0.484353 +vt 1.071413 0.450752 +vt 1.076831 0.448786 +vt 1.072599 0.485738 +vt 1.220694 0.859497 +vt 1.332646 0.866089 +vt 1.122122 0.451058 +vt 1.234965 0.454150 +vt 1.413957 0.870728 +vt 1.347024 0.455886 +vt 1.428376 0.456721 +vt 1.058035 0.799341 +vt 1.076831 0.448786 +vt 0.007350 0.433571 +vt 0.007350 0.223041 +vt 0.007350 0.219056 +vt 0.360029 0.219502 +vt 0.359781 0.223060 +vt 0.412410 0.221355 +vt 0.408486 0.225878 +vt 0.007350 0.377143 +vt 0.359604 0.377913 +vt 0.361111 0.429252 +vt 0.008858 0.429252 +vt 0.443716 0.379205 +vt 0.415695 0.429252 +vt 0.447494 0.117159 +vt 0.442509 0.117159 +vt 0.444812 0.062060 +vt 0.449332 0.062060 +vt 0.442509 0.117159 +vt 0.359604 0.113625 +vt 0.359604 0.064109 +vt 0.444812 0.062060 +vt 0.359604 0.012457 +vt 0.007350 0.062893 +vt 0.007350 0.012457 +vt 0.007350 0.273165 +vt 0.359604 0.273993 +vt 0.007350 0.164184 +vt 0.359856 0.165360 +vt 0.444599 0.160996 +vt 0.417279 0.223981 +vt 0.411881 0.221286 +vt 0.439950 0.160996 +vt 0.359604 0.273993 +vt 0.359781 0.223060 +vt 0.408486 0.225878 +vt 0.424813 0.274675 +vt 0.439950 0.160996 +vt 0.411881 0.221286 +vt 0.360029 0.219502 +vt 0.359856 0.165360 +vt 0.007350 0.325257 +vt 0.359604 0.326053 +vt 0.007350 0.112438 +vt 0.442099 0.327051 +vt 0.417122 0.012457 +vt 0.007350 0.273165 +vt 0.007350 0.164184 +vt 0.556521 0.990202 +vt 0.602982 0.814799 +vt 0.619799 0.822990 +vt 0.649324 0.985311 +vt 0.701728 0.978157 +vt 0.677748 0.976969 +vt 0.682262 0.899936 +vt 0.727590 0.833933 +vt 0.832190 0.961777 +vt 0.839120 0.949321 +vt 0.843743 0.951051 +vt 0.836182 0.964853 +vt 0.859622 0.870344 +vt 0.864233 0.869956 +vt 0.826082 0.827429 +vt 0.825098 0.833812 +vt 0.742659 0.826246 +vt 0.741088 0.816903 +vt 0.721259 0.826124 +vt 0.727590 0.833933 +vt 0.682262 0.899936 +vt 0.671031 0.894589 +vt 0.806581 0.983761 +vt 0.808887 0.988109 +vt 0.847832 0.843279 +vt 0.850605 0.840104 +vt 0.850605 0.840104 +vt 0.847832 0.843279 +vt 0.832190 0.961777 +vt 0.806581 0.983761 +vt 0.825098 0.833812 +vt 0.847832 0.843279 +vt 0.787706 0.983066 +vt 0.742659 0.826246 +vt 0.505137 0.965983 +vt 0.497494 0.952154 +vt 0.474077 0.865561 +vt 0.486724 0.833848 +vt 0.511976 0.821328 +vt 0.535132 0.991677 +vt 0.859622 0.870344 +vt 0.839120 0.949321 +vt 1.118246 0.934817 +vt 1.151914 0.936365 +vt 1.151943 0.966273 +vt 1.118276 0.966204 +vt 1.178110 0.936030 +vt 1.178138 0.965761 +vt 1.204412 0.935862 +vt 1.204440 0.965590 +vt 1.232773 0.935835 +vt 1.232801 0.965563 +vt 1.010231 0.934215 +vt 1.038592 0.934188 +vt 1.038622 0.965136 +vt 1.012148 0.965162 +vt 1.065118 0.934322 +vt 1.065148 0.965369 +vt 1.065118 0.934322 +vt 1.091676 0.934542 +vt 1.091706 0.965741 +vt 1.065148 0.965369 +vt 1.091676 0.934542 +vt 1.091706 0.965741 +vt 1.118246 0.934817 +vt 1.118231 0.919298 +vt 1.151897 0.918153 +vt 1.151914 0.936365 +vt 1.178092 0.917926 +vt 1.178110 0.936030 +vt 1.204394 0.917878 +vt 1.204412 0.935862 +vt 1.232755 0.917851 +vt 1.232773 0.935835 +vt 1.010231 0.934215 +vt 1.010216 0.918912 +vt 1.038578 0.918885 +vt 1.038592 0.934188 +vt 1.065103 0.918970 +vt 1.091661 0.919114 +vt 1.118231 0.919298 +vt 1.118220 0.908326 +vt 1.151886 0.907159 +vt 1.151897 0.918153 +vt 1.178082 0.906997 +vt 1.178092 0.917926 +vt 1.204384 0.906970 +vt 1.204394 0.917878 +vt 1.232745 0.906943 +vt 1.232755 0.917851 +vt 1.010216 0.918912 +vt 1.010206 0.908094 +vt 1.038567 0.908066 +vt 1.038578 0.918885 +vt 1.065093 0.908117 +vt 1.065103 0.918970 +vt 1.091650 0.908208 +vt 1.091661 0.919114 +vt 1.118220 0.908326 +vt 1.118197 0.884159 +vt 1.151864 0.884126 +vt 1.151886 0.907159 +vt 1.178059 0.884101 +vt 1.178082 0.906997 +vt 1.204361 0.884075 +vt 1.204384 0.906970 +vt 1.232723 0.884048 +vt 1.232745 0.906943 +vt 1.010206 0.908094 +vt 1.010183 0.884263 +vt 1.038544 0.884236 +vt 1.038567 0.908066 +vt 1.065070 0.884210 +vt 1.065093 0.908117 +vt 1.091627 0.884184 +vt 1.091650 0.908208 +vt 1.065167 0.984896 +vt 0.347219 0.902528 +vt 0.320134 0.902752 +vt 0.319964 0.882191 +vt 0.347049 0.881967 +vt 0.293050 0.902975 +vt 0.292880 0.882414 +vt 0.265966 0.903199 +vt 0.265796 0.882638 +vt 0.238882 0.903423 +vt 0.238712 0.882862 +vt 0.455469 0.901633 +vt 0.428385 0.901857 +vt 0.428215 0.881296 +vt 0.455299 0.881072 +vt 0.401387 0.902080 +vt 0.401217 0.881519 +vt 0.374303 0.902304 +vt 0.374133 0.881743 +vt 0.320333 0.930704 +vt 0.347406 0.930480 +vt 0.347561 0.949223 +vt 0.320488 0.949446 +vt 0.293260 0.930928 +vt 0.293415 0.949670 +vt 0.266186 0.931151 +vt 0.266341 0.949894 +vt 0.239113 0.931375 +vt 0.239268 0.950118 +vt 0.428626 0.929809 +vt 0.455700 0.929585 +vt 0.455855 0.948328 +vt 0.428781 0.948551 +vt 0.401553 0.930033 +vt 0.401708 0.948775 +vt 0.374480 0.930256 +vt 0.374635 0.948999 +vt 0.347893 0.989356 +vt 0.320820 0.989579 +vt 0.320590 0.961766 +vt 0.347663 0.961543 +vt 0.293746 0.989803 +vt 0.293517 0.961990 +vt 0.266673 0.990027 +vt 0.266443 0.962214 +vt 0.239600 0.990251 +vt 0.239370 0.962438 +vt 0.456187 0.988461 +vt 0.429113 0.988684 +vt 0.428883 0.960871 +vt 0.455957 0.960648 +vt 0.402040 0.988908 +vt 0.401810 0.961095 +vt 0.374966 0.989132 +vt 0.374737 0.961319 +vt 0.347219 0.902528 +vt 0.347291 0.916468 +vt 0.320218 0.916692 +vt 0.320134 0.902752 +vt 0.293144 0.916916 +vt 0.293050 0.902975 +vt 0.266071 0.917140 +vt 0.265966 0.903199 +vt 0.238998 0.917363 +vt 0.238882 0.903423 +vt 0.455469 0.901633 +vt 0.455584 0.915573 +vt 0.428510 0.915797 +vt 0.428385 0.901857 +vt 0.401437 0.916021 +vt 0.401387 0.902080 +vt 0.374364 0.916245 +vt 0.374303 0.902304 +vt 0.347291 0.916468 +vt 0.347406 0.930480 +vt 0.320333 0.930704 +vt 0.320218 0.916692 +vt 0.293260 0.930928 +vt 0.293144 0.916916 +vt 0.266186 0.931151 +vt 0.266071 0.917140 +vt 0.239113 0.931375 +vt 0.238998 0.917363 +vt 0.455584 0.915573 +vt 0.455700 0.929585 +vt 0.428626 0.929809 +vt 0.428510 0.915797 +vt 0.401553 0.930033 +vt 0.401437 0.916021 +vt 0.374480 0.930256 +vt 0.374364 0.916245 +vt 0.896551 0.641960 +vt 0.833580 0.641115 +vt 0.838425 0.629350 +vt 0.891809 0.630066 +vt 1.627946 0.576837 +vt 1.613203 0.577108 +vt 1.613012 0.566762 +vt 1.627756 0.566490 +vt 1.598168 0.577385 +vt 1.597978 0.567038 +vt 1.583610 0.577653 +vt 1.583420 0.567306 +vt 1.570796 0.577889 +vt 1.570606 0.567542 +vt 1.557118 0.578140 +vt 1.556928 0.567794 +vt 1.543085 0.578399 +vt 1.542895 0.568052 +vt 1.528181 0.578673 +vt 1.527991 0.568326 +vt 1.513784 0.578938 +vt 1.513593 0.568591 +vt 1.498300 0.579223 +vt 1.498110 0.568876 +vt 1.483294 0.579499 +vt 1.483104 0.569152 +vt 1.712688 0.575278 +vt 1.698763 0.575534 +vt 1.698573 0.565187 +vt 1.712498 0.564931 +vt 1.684583 0.575795 +vt 1.684393 0.565448 +vt 1.670792 0.576048 +vt 1.670601 0.565702 +vt 1.657340 0.576296 +vt 1.657149 0.565949 +vt 1.642517 0.576569 +vt 1.642327 0.566222 +vt 3.882653 0.675536 +vt 3.847080 0.675011 +vt 3.838880 0.666464 +vt 3.891664 0.666551 +vt 1.627756 0.566490 +vt 1.627604 0.558206 +vt 1.642175 0.557938 +vt 1.642327 0.566222 +vt 1.642327 0.566222 +vt 1.642175 0.557938 +vt 1.656997 0.557665 +vt 1.657149 0.565949 +vt 1.657149 0.565949 +vt 1.656997 0.557665 +vt 1.670449 0.557417 +vt 1.670601 0.565702 +vt 1.670601 0.565702 +vt 1.670449 0.557417 +vt 1.684240 0.557164 +vt 1.684393 0.565448 +vt 1.684393 0.565448 +vt 1.684240 0.557164 +vt 1.698421 0.556903 +vt 1.698573 0.565187 +vt 1.698573 0.565187 +vt 1.698421 0.556903 +vt 1.712345 0.556646 +vt 1.712498 0.564931 +vt 1.483104 0.569152 +vt 1.482951 0.560868 +vt 1.497957 0.560592 +vt 1.498110 0.568876 +vt 1.498110 0.568876 +vt 1.497957 0.560592 +vt 1.513441 0.560307 +vt 1.513593 0.568591 +vt 1.542895 0.568052 +vt 1.542742 0.559767 +vt 1.556776 0.559509 +vt 1.556928 0.567794 +vt 1.513961 0.588568 +vt 1.514121 0.597251 +vt 1.498637 0.597536 +vt 1.498477 0.588853 +vt 1.498477 0.588853 +vt 1.498637 0.597536 +vt 1.483631 0.597812 +vt 1.483471 0.589129 +vt 1.712866 0.584908 +vt 1.713025 0.593590 +vt 1.699100 0.593847 +vt 1.698941 0.585164 +vt 1.698941 0.585164 +vt 1.699100 0.593847 +vt 1.684920 0.594108 +vt 1.684761 0.585425 +vt 1.684761 0.585425 +vt 1.684920 0.594108 +vt 1.671129 0.594361 +vt 1.670969 0.585679 +vt 1.670969 0.585679 +vt 1.671129 0.594361 +vt 1.657677 0.594609 +vt 1.657517 0.585926 +vt 1.657517 0.585926 +vt 1.657677 0.594609 +vt 1.642854 0.594882 +vt 1.642695 0.586199 +vt 1.642695 0.586199 +vt 1.642854 0.594882 +vt 1.628284 0.595150 +vt 1.628124 0.586467 +vt 1.656997 0.557665 +vt 1.656962 0.555766 +vt 1.670414 0.555518 +vt 1.670449 0.557417 +vt 1.698421 0.556903 +vt 1.698385 0.555004 +vt 1.712311 0.554747 +vt 1.712345 0.556646 +vt 1.482916 0.558969 +vt 1.612860 0.558477 +vt 1.713025 0.593590 +vt 1.713057 0.595335 +vt 1.699132 0.595591 +vt 1.699100 0.593847 +vt 1.671129 0.594361 +vt 1.671161 0.596106 +vt 1.657709 0.596354 +vt 1.657677 0.594609 +vt 1.642854 0.594882 +vt 1.642887 0.596626 +vt 1.628316 0.596895 +vt 1.628284 0.595150 +vt 1.628124 0.586467 +vt 1.613380 0.586739 +vt 1.598345 0.587015 +vt 1.583787 0.587283 +vt 1.570974 0.587519 +vt 1.557296 0.587771 +vt 1.543262 0.588029 +vt 1.528358 0.588303 +vt 1.513961 0.588568 +vt 1.498477 0.588853 +vt 1.483471 0.589129 +vt 1.712866 0.584908 +vt 1.698941 0.585164 +vt 1.684761 0.585425 +vt 1.670969 0.585679 +vt 1.657517 0.585926 +vt 1.642695 0.586199 +vt 0.936439 0.593358 +vt 0.936439 0.613848 +vt 0.932941 0.613848 +vt 0.932941 0.593358 +vt 0.936439 0.634339 +vt 0.932941 0.634339 +vt 0.936439 0.654830 +vt 0.932941 0.654830 +vt 0.936439 0.531886 +vt 0.936439 0.552377 +vt 0.932941 0.552377 +vt 0.932941 0.531886 +vt 0.936439 0.572867 +vt 0.932941 0.572867 +vt 0.964273 0.614013 +vt 0.964273 0.593111 +vt 0.978612 0.593111 +vt 0.978612 0.614013 +vt 0.964273 0.634422 +vt 0.978612 0.634422 +vt 0.964273 0.654830 +vt 0.978612 0.654830 +vt 0.964273 0.552294 +vt 0.964273 0.531886 +vt 0.978612 0.531886 +vt 0.978612 0.552294 +vt 0.964273 0.572703 +vt 0.978612 0.572703 +vt 0.997477 0.613849 +vt 0.945781 0.593358 +vt 0.964273 0.593111 +vt 0.964273 0.614013 +vt 0.945781 0.613849 +vt 0.964273 0.634422 +vt 0.945781 0.634339 +vt 0.964273 0.654830 +vt 0.945781 0.654830 +vt 0.945781 0.531886 +vt 0.964273 0.531886 +vt 0.964273 0.552294 +vt 0.945781 0.552377 +vt 0.964273 0.572703 +vt 0.945781 0.572867 +vt 0.939803 0.691444 +vt 0.939799 0.689810 +vt 0.948957 0.689810 +vt 0.948867 0.692212 +vt 0.948957 0.689810 +vt 0.939799 0.689810 +vt 0.939799 0.658221 +vt 0.948957 0.658221 +vt 2.901649 0.531322 +vt 2.911924 0.531322 +vt 2.911924 0.681789 +vt 2.901649 0.681789 +vt 2.919678 0.531322 +vt 2.919678 0.681789 +vt 2.927963 0.531322 +vt 2.929541 0.681789 +vt 0.929541 0.681789 +vt 0.919678 0.681789 +vt 0.919678 0.531322 +vt 0.927963 0.531322 +vt 0.911924 0.681789 +vt 0.911924 0.531322 +vt 0.901649 0.681789 +vt 0.901649 0.531322 +vt 1.653557 0.635717 +vt 1.787461 0.635838 +vt 1.787461 0.644547 +vt 1.653557 0.644666 +vt 1.787461 0.652662 +vt 1.653557 0.652542 +vt 1.787461 0.661373 +vt 1.653557 0.661492 +vt 1.787461 0.669213 +vt 1.653557 0.669213 +vt 1.787461 0.677249 +vt 1.653557 0.677249 +vt 1.653557 0.611351 +vt 1.787461 0.611351 +vt 1.787461 0.618762 +vt 1.653557 0.618762 +vt 1.787461 0.627702 +vt 1.653557 0.627702 +vt 1.804256 0.635967 +vt 1.804256 0.644590 +vt 1.790486 0.644521 +vt 1.790486 0.635883 +vt 1.804256 0.644590 +vt 1.804256 0.652654 +vt 1.790486 0.652704 +vt 1.790486 0.644521 +vt 1.804256 0.652654 +vt 1.804256 0.661401 +vt 1.790486 0.661424 +vt 1.790486 0.652704 +vt 1.804256 0.661401 +vt 1.804256 0.669213 +vt 1.790486 0.669213 +vt 1.790486 0.661424 +vt 1.804256 0.669213 +vt 1.804256 0.677249 +vt 1.790486 0.677249 +vt 1.790486 0.669213 +vt 1.804256 0.611351 +vt 1.804256 0.618762 +vt 1.790486 0.618762 +vt 1.790486 0.611351 +vt 1.804256 0.618762 +vt 1.804256 0.627702 +vt 1.790486 0.627702 +vt 1.790486 0.618762 +vt 1.804256 0.627702 +vt 1.804256 0.635967 +vt 1.790486 0.635883 +vt 1.790486 0.627702 +vt 0.907472 0.257985 +vt 0.911119 0.051328 +vt 0.912623 0.051317 +vt 0.908977 0.257975 +vt 0.914357 0.051377 +vt 0.910712 0.257976 +vt 0.905738 0.257926 +vt 0.909384 0.051326 +vt 2.945508 0.023291 +vt 2.945365 0.289169 +vt 2.942142 0.289169 +vt 2.942880 0.023291 +vt 2.953900 0.023291 +vt 2.953900 0.289169 +vt 2.948937 0.289169 +vt 2.948675 0.023291 +vt 2.884426 0.003712 +vt 2.884426 0.306753 +vt 2.882265 0.306753 +vt 2.882265 0.003712 +vt 2.891725 0.003712 +vt 2.891725 0.306753 +vt 2.887573 0.306753 +vt 2.887573 0.003712 +vt 3.672500 0.806611 +vt 3.458466 0.806611 +vt 3.457033 0.801549 +vt 3.671067 0.801549 +vt 3.457013 0.796454 +vt 3.671087 0.796454 +vt 3.672521 0.811706 +vt 3.458446 0.811706 +vt 3.973814 0.134518 +vt 3.973814 0.286613 +vt 3.970027 0.286613 +vt 3.970027 0.134518 +vt 3.967030 0.286613 +vt 3.967030 0.134518 +vt 3.963765 0.286613 +vt 3.963765 0.134518 +vt 3.991477 0.134518 +vt 3.991477 0.286613 +vt 3.987690 0.286613 +vt 3.987690 0.134518 +vt 3.983886 0.286613 +vt 3.983886 0.134518 +vt 3.980889 0.286613 +vt 3.980889 0.134518 +vt 3.977618 0.286613 +vt 3.977618 0.134518 +vt 0.688848 0.749275 +vt 0.707262 0.749275 +vt 0.707262 0.796196 +vt 0.688848 0.796196 +vt 0.707262 0.821096 +vt 0.688848 0.821096 +vt 0.688848 0.687755 +vt 0.707262 0.687755 +vt 0.707262 0.713461 +vt 0.688848 0.713461 +vt 0.707262 0.749275 +vt 0.712529 0.749275 +vt 0.712529 0.796196 +vt 0.707262 0.796196 +vt 0.707262 0.796196 +vt 0.712529 0.796196 +vt 0.712529 0.821096 +vt 0.707262 0.821096 +vt 0.707262 0.687755 +vt 0.712529 0.687755 +vt 0.712529 0.713461 +vt 0.707262 0.713461 +vt 0.707262 0.713461 +vt 0.712529 0.713461 +vt 0.712529 0.749275 +vt 0.707262 0.749275 +vt 0.712529 0.821096 +vt 1.901273 0.987954 +vt 1.894390 0.809475 +vt 1.898839 0.809308 +vt 1.905721 0.987777 +vt 1.903373 0.809475 +vt 1.910255 0.987933 +vt 1.907880 0.808954 +vt 1.914763 0.987434 +vt 1.912328 0.808772 +vt 1.919212 0.987273 +vt 1.916777 0.808601 +vt 1.923660 0.987101 +vt 1.887785 0.988453 +vt 1.880903 0.810015 +vt 1.885410 0.809505 +vt 1.892292 0.987943 +vt 1.889943 0.809656 +vt 1.896825 0.988115 +vt 0.835327 0.793387 +vt 0.835327 0.820585 +vt 0.831746 0.820585 +vt 0.831746 0.793387 +vt 0.828119 0.820585 +vt 0.828119 0.793387 +vt 0.824470 0.820585 +vt 0.824470 0.793387 +vt 0.820887 0.820585 +vt 0.820887 0.793387 +vt 0.817304 0.820585 +vt 0.817304 0.793387 +vt 0.813656 0.820585 +vt 0.813656 0.793387 +vt 0.810030 0.820585 +vt 0.810030 0.793387 +vt 0.838908 0.793387 +vt 0.838908 0.820585 +vt 0.963771 0.464386 +vt 0.966829 0.510170 +vt 0.963142 0.507307 +vt 0.956692 0.465842 +vt 0.968024 0.463687 +vt 0.971978 0.514904 +vt 0.971339 0.463143 +vt 0.975459 0.514343 +vt 0.973352 0.462812 +vt 0.978725 0.509767 +vt 0.954252 0.423683 +vt 0.945634 0.424628 +vt 0.962774 0.422283 +vt 0.966228 0.421716 +vt 0.969417 0.421193 +vt 0.946255 0.386738 +vt 0.949923 0.403838 +vt 0.938767 0.405843 +vt 0.932504 0.389173 +vt 0.957710 0.384857 +vt 0.960009 0.402182 +vt 0.965586 0.383564 +vt 0.964799 0.401395 +vt 0.972329 0.382456 +vt 0.969884 0.400560 +vt 0.930994 0.364212 +vt 0.936570 0.333645 +vt 0.943846 0.369533 +vt 0.931040 0.379851 +vt 0.950086 0.315819 +vt 0.955052 0.362291 +vt 0.963966 0.306471 +vt 0.964760 0.358704 +vt 0.976111 0.317948 +vt 0.972943 0.361369 +vt 0.974988 0.462717 +vt 0.981663 0.505121 +vt 0.972942 0.421304 +vt 0.974470 0.399545 +vt 0.980256 0.366925 +vt 0.977774 0.381266 +vt 0.985764 0.339373 +vt 0.966829 0.510170 +vt 0.964615 0.512998 +vt 0.960727 0.510219 +vt 0.963142 0.507307 +vt 0.971978 0.514904 +vt 0.971030 0.518012 +vt 0.964615 0.512998 +vt 0.966829 0.510170 +vt 0.971978 0.514904 +vt 0.978725 0.509767 +vt 0.979438 0.515266 +vt 0.975659 0.517915 +vt 0.975459 0.514343 +vt 0.956692 0.465842 +vt 0.953100 0.466601 +vt 0.941483 0.425665 +vt 0.945634 0.424628 +vt 0.972942 0.421304 +vt 0.977648 0.421732 +vt 0.978737 0.462523 +vt 0.974988 0.462717 +vt 0.938767 0.405843 +vt 0.935117 0.407189 +vt 0.928188 0.391026 +vt 0.932504 0.389173 +vt 0.974470 0.399545 +vt 0.978161 0.399738 +vt 0.977648 0.421732 +vt 0.972942 0.421304 +vt 0.931040 0.379851 +vt 0.926916 0.381387 +vt 0.926746 0.365415 +vt 0.930994 0.364212 +vt 0.930994 0.364212 +vt 0.926746 0.365415 +vt 0.933515 0.332831 +vt 0.936570 0.333645 +vt 0.936570 0.333645 +vt 0.933515 0.332831 +vt 0.948466 0.313374 +vt 0.950086 0.315819 +vt 0.950086 0.315819 +vt 0.948466 0.313374 +vt 0.962437 0.303992 +vt 0.963966 0.306471 +vt 0.976111 0.317948 +vt 0.978359 0.315358 +vt 0.990410 0.338499 +vt 0.985764 0.339373 +vt 0.980256 0.366925 +vt 0.984066 0.367261 +vt 0.981269 0.381445 +vt 0.977774 0.381266 +vt 0.963966 0.306471 +vt 0.965424 0.303475 +vt 0.978359 0.315358 +vt 0.976111 0.317948 +vt 0.981663 0.505121 +vt 0.982307 0.509582 +vt 0.979438 0.515266 +vt 0.978725 0.509767 +vt 0.985764 0.339373 +vt 0.990410 0.338499 +vt 0.984066 0.367261 +vt 0.980256 0.366925 +vt 0.932504 0.389173 +vt 0.928188 0.391026 +vt 0.926916 0.381387 +vt 0.931040 0.379851 +vt 0.945634 0.424628 +vt 0.941483 0.425665 +vt 0.935117 0.407189 +vt 0.938767 0.405843 +vt 0.977774 0.381266 +vt 0.981269 0.381445 +vt 0.978161 0.399738 +vt 0.974470 0.399545 +vt 0.959462 0.507483 +vt 0.956592 0.511103 +vt 0.945891 0.513500 +vt 0.941512 0.510082 +vt 0.950077 0.517329 +vt 0.886744 0.406160 +vt 0.876822 0.376070 +vt 0.926916 0.381387 +vt 0.928188 0.391026 +vt 0.933515 0.332831 +vt 0.906951 0.304459 +vt 0.921929 0.299465 +vt 0.931160 0.313322 +vt 0.926746 0.365415 +vt 0.926916 0.381387 +vt 0.876822 0.376070 +vt 0.882738 0.329557 +vt 0.933515 0.332831 +vt 0.926746 0.365415 +vt 0.882738 0.329557 +vt 0.906951 0.304459 +vt 0.565573 0.782724 +vt 0.526626 0.783518 +vt 0.500841 0.780471 +vt 0.631173 0.764652 +vt 0.630058 0.699236 +vt 0.596866 0.612516 +vt 0.637337 0.616972 +vt 0.641785 0.651360 +vt 0.500841 0.780471 +vt 0.489568 0.620042 +vt 0.630058 0.699236 +vt 0.631173 0.764652 +vt 0.489568 0.620042 +vt 0.504547 0.612629 +vt 0.532640 0.607381 +vt 0.596866 0.612516 +vt 0.500841 0.780471 +vt 0.462399 0.748874 +vt 0.450798 0.706790 +vt 0.489568 0.620042 +vt 0.450798 0.706790 +vt 0.454897 0.674918 +vt 0.464575 0.645515 +vt 0.489568 0.620042 +vt 3.833514 0.653935 +vt 3.833570 0.641126 +vt 3.896566 0.641971 +vt 3.896511 0.654781 +vt 3.871963 0.679861 +vt 3.858635 0.680069 +vt 0.896495 0.654765 +vt 0.833525 0.653920 +vt 0.847321 0.620414 +vt 0.882991 0.620893 +vt 0.858914 0.615670 +vt 0.871440 0.615838 +vt 0.671031 0.894589 +vt 0.676401 0.986658 +vt 1.058323 0.502256 +vt 1.063613 0.482216 +vt 0.993903 0.691436 +vt 0.979362 0.691436 +vt 0.979348 0.689810 +vt 0.993911 0.689810 +vt 0.993911 0.689810 +vt 0.979348 0.689810 +vt 0.979067 0.658221 +vt 0.993909 0.658221 +vt 1.862950 0.741047 +vt 1.901950 0.723781 +vt 1.899748 0.711405 +vt 1.855536 0.734860 +vt 1.942279 0.723767 +vt 1.944343 0.711333 +vt 1.981343 0.741059 +vt 1.989631 0.734959 +vt 1.853947 0.974376 +vt 1.850019 0.969849 +vt 1.849805 0.970333 +vt 1.853430 0.974539 +vt 1.844046 0.969394 +vt 1.844269 0.970059 +vt 1.839486 0.973242 +vt 1.840070 0.973577 +vt 1.838931 0.979200 +vt 1.839588 0.978994 +vt 1.842796 0.983726 +vt 1.843067 0.983246 +vt 1.848811 0.984156 +vt 1.848652 0.983663 +vt 1.853443 0.980298 +vt 1.852944 0.980064 +vt 0.945508 0.023291 +vt 0.942880 0.023291 +vt 0.942142 0.289169 +vt 0.945365 0.289169 +vt 0.953900 0.023291 +vt 0.948675 0.023291 +vt 0.948937 0.289169 +vt 0.953900 0.289169 +vt 3.884426 0.003712 +vt 3.882265 0.003712 +vt 3.882265 0.306753 +vt 3.884426 0.306753 +vt 3.891725 0.003712 +vt 3.887573 0.003712 +vt 3.887573 0.306753 +vt 3.891725 0.306753 +vt 1.973814 0.134518 +vt 1.970027 0.134518 +vt 1.970027 0.286613 +vt 1.973814 0.286613 +vt 1.967029 0.134518 +vt 1.967029 0.286613 +vt 1.963765 0.134518 +vt 1.963765 0.286613 +vt 1.991477 0.134518 +vt 1.987690 0.134518 +vt 1.987690 0.286613 +vt 1.991477 0.286613 +vt 1.983886 0.134518 +vt 1.983886 0.286613 +vt 1.980889 0.134518 +vt 1.980889 0.286613 +vt 1.977618 0.134518 +vt 1.977618 0.286613 +vt 2.672500 0.806611 +vt 2.671067 0.801549 +vt 2.457033 0.801549 +vt 2.458466 0.806611 +vt 2.671087 0.796454 +vt 2.457013 0.796454 +vt 2.672521 0.811706 +vt 2.458446 0.811706 +vt 3.945508 0.023291 +vt 3.945365 0.289169 +vt 3.942142 0.289169 +vt 3.942880 0.023291 +vt 3.953900 0.023291 +vt 3.953900 0.289169 +vt 3.948937 0.289169 +vt 3.948675 0.023291 +vt 0.884426 0.003712 +vt 0.884426 0.306753 +vt 0.882265 0.306753 +vt 0.882265 0.003712 +vt 0.891725 0.003712 +vt 0.891725 0.306753 +vt 0.887573 0.306753 +vt 0.887573 0.003712 +vt 2.973814 0.134518 +vt 2.973814 0.286613 +vt 2.970027 0.286613 +vt 2.970027 0.134518 +vt 2.967030 0.286613 +vt 2.967030 0.134518 +vt 2.963765 0.286613 +vt 2.963765 0.134518 +vt 2.991477 0.134518 +vt 2.991477 0.286613 +vt 2.987690 0.286613 +vt 2.987690 0.134518 +vt 2.983886 0.286613 +vt 2.983886 0.134518 +vt 2.980889 0.286613 +vt 2.980889 0.134518 +vt 2.977618 0.286613 +vt 2.977618 0.134518 +vt 1.672500 0.806611 +vt 1.458466 0.806611 +vt 1.457033 0.801549 +vt 1.671067 0.801549 +vt 1.457013 0.796454 +vt 1.671087 0.796454 +vt 1.672521 0.811706 +vt 1.458446 0.811706 +vn 0.0000 -0.1792 -0.9838 +vn 0.0000 -0.1793 -0.9838 +vn -0.0000 0.1792 0.9838 +vn 0.9944 0.0999 0.0353 +vn 0.9977 0.0649 -0.0215 +vn 0.9997 0.0130 -0.0182 +vn 0.9945 -0.0659 -0.0808 +vn 0.9989 0.0044 -0.0465 +vn 0.9991 0.0175 -0.0395 +vn -0.9944 0.0999 0.0353 +vn -0.9977 0.0649 -0.0215 +vn -0.9997 0.0130 -0.0182 +vn -0.9945 -0.0659 -0.0808 +vn -0.9989 0.0044 -0.0465 +vn -0.9991 0.0175 -0.0395 +vn 0.0000 0.9838 -0.1792 +vn 0.8539 -0.0933 -0.5120 +vn -0.0001 -0.1789 -0.9839 +vn 0.8444 0.0810 -0.5296 +vn 0.8444 0.0809 -0.5296 +vn -0.0034 -0.0721 0.9974 +vn 0.9999 0.0106 -0.0012 +vn 0.0034 0.0721 -0.9974 +vn -0.9999 -0.0106 0.0012 +vn 0.0000 -0.9838 0.1792 +vn 1.0000 0.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn -0.9962 -0.0864 0.0133 +vn 0.9962 0.0864 -0.0133 +vn 0.9659 -0.2546 0.0464 +vn 0.0000 0.1793 0.9838 +vn -0.9659 -0.2546 0.0464 +vn -0.7071 -0.6957 0.1267 +vn -0.2588 -0.9503 0.1731 +vn -0.2588 0.9503 -0.1731 +vn -0.7071 0.6957 -0.1267 +vn -0.9659 0.2546 -0.0464 +vn 0.9659 0.2546 -0.0464 +vn 0.7071 -0.6957 0.1267 +vn 0.2588 -0.9503 0.1731 +vn 0.2588 0.9503 -0.1731 +vn 0.7071 0.6957 -0.1267 +vn 0.6533 -0.1395 0.7441 +vn 0.6533 0.3930 0.6471 +vn 0.9239 -0.3765 0.0686 +vn 0.9239 0.3765 -0.0686 +vn 0.0358 -0.2361 0.9711 +vn 0.0357 -0.2361 0.9711 +vn 0.0865 -0.8509 0.5181 +vn 0.0864 -0.8510 0.5181 +vn 0.0865 -0.9673 -0.2384 +vn 0.0358 -0.5170 -0.8552 +vn -0.0358 0.2361 -0.9711 +vn -0.0865 0.8510 -0.5181 +vn -0.0865 0.9673 0.2384 +vn -0.0358 0.5170 0.8552 +vn -0.9956 -0.0926 0.0142 +vn -0.9956 -0.0925 0.0142 +vn -0.9437 0.0593 0.3255 +vn -0.4395 0.1610 0.8837 +vn -0.4396 0.1610 0.8837 +vn -0.4396 -0.1610 -0.8837 +vn -0.9437 -0.0593 -0.3255 +vn -0.8906 0.4474 -0.0815 +vn -0.4530 -0.8886 0.0724 +vn 0.8906 -0.4474 0.0815 +vn -0.9097 0.4098 -0.0673 +vn -0.0294 -0.2356 -0.9714 +vn -0.0295 -0.2356 -0.9714 +vn 0.0496 -0.0823 -0.9954 +vn 0.0499 -0.0821 -0.9954 +vn 0.0551 -0.0729 -0.9958 +vn 0.0219 -0.1369 -0.9903 +vn -0.0675 -0.3073 -0.9492 +vn -0.0908 -0.3505 -0.9321 +vn -0.8539 -0.0933 -0.5120 +vn 0.0001 -0.1789 -0.9839 +vn -0.8444 0.0810 -0.5296 +vn -0.8444 0.0809 -0.5296 +vn 0.0034 -0.0721 0.9974 +vn -0.9999 0.0106 -0.0012 +vn -0.0034 0.0721 -0.9974 +vn 0.9999 -0.0106 0.0012 +vn 0.9962 -0.0864 0.0133 +vn 0.9887 -0.1218 -0.0873 +vn 0.9887 -0.1217 -0.0872 +vn 0.9856 -0.1559 -0.0655 +vn 0.9856 -0.1558 -0.0655 +vn -0.9962 0.0864 -0.0133 +vn -0.0166 -0.0378 0.9991 +vn 0.0167 0.3374 0.9412 +vn 0.0474 0.6615 0.7484 +vn 0.0755 0.9959 0.0497 +vn 0.0755 0.9349 -0.3467 +vn 0.0474 0.4060 -0.9126 +vn 0.0167 0.0390 -0.9991 +vn -0.0166 -0.3363 -0.9416 +vn -0.0476 -0.6641 -0.7462 +vn -0.0720 -0.8977 -0.4348 +vn -0.0856 -0.9951 -0.0496 +vn -0.0856 -0.9342 0.3464 +vn -0.0720 -0.7255 0.6844 +vn -0.0476 -0.4091 0.9112 +vn 0.0166 0.0373 -0.9992 +vn 0.0477 0.4105 -0.9106 +vn 0.0477 0.6652 0.7452 +vn 0.0477 0.6651 0.7452 +vn -0.6533 -0.1395 0.7441 +vn -0.6533 0.3930 0.6471 +vn -0.9239 -0.3765 0.0686 +vn -0.9239 0.3765 -0.0686 +vn -0.0358 -0.2361 0.9711 +vn -0.0357 -0.2361 0.9711 +vn -0.0865 -0.8509 0.5181 +vn -0.0864 -0.8510 0.5181 +vn -0.0865 -0.9673 -0.2384 +vn -0.0358 -0.5170 -0.8552 +vn 0.0358 0.2361 -0.9711 +vn 0.0865 0.8510 -0.5181 +vn 0.0865 0.9673 0.2384 +vn 0.0358 0.5170 0.8552 +vn 0.9956 -0.0926 0.0142 +vn 0.9437 0.0593 0.3255 +vn 0.4396 0.1610 0.8837 +vn 0.4396 -0.1610 -0.8837 +vn 0.9437 -0.0593 -0.3255 +vn -0.7621 0.6423 -0.0815 +vn 0.6382 0.7665 0.0724 +vn 0.7621 -0.6423 0.0815 +vn 0.2049 0.1199 -0.9714 +vn 0.0887 -0.0219 -0.9958 +vn 0.1345 0.0338 -0.9903 +vn 0.1345 0.0339 -0.9903 +vn 0.2558 0.1831 -0.9492 +vn 0.2864 0.2216 -0.9321 +vn 0.0000 0.9934 -0.1150 +vn 0.0000 0.8434 0.5373 +vn 0.0000 0.9429 0.3332 +vn 0.0000 0.0939 -0.9956 +vn 0.0000 -0.9932 0.1163 +vn 0.0000 -0.9938 0.1111 +vn 0.0000 0.5939 -0.8045 +vn 0.0000 -0.8992 -0.4375 +vn 0.0000 0.4099 -0.9121 +vn 0.0000 -0.9838 -0.1790 +vn 0.0000 -0.3071 -0.9517 +vn 0.0000 0.8980 -0.4399 +vn 0.0000 -0.7544 -0.6565 +vn 0.0000 0.9998 0.0206 +vn 0.0000 0.9826 0.1856 +vn 0.0000 -0.1270 -0.9919 +vn 0.0000 -0.8616 0.5076 +vn 0.0000 -0.1495 0.9888 +vn 0.0000 -0.9998 0.0213 +vn 0.0000 -0.6324 -0.7747 +vn 0.0000 0.2339 0.9723 +vn 0.0000 -0.0391 0.9992 +vn 0.8197 -0.5727 -0.0082 +vn 0.7597 -0.6501 -0.0164 +vn 0.4703 -0.8816 0.0405 +vn -0.0000 -0.9926 0.1213 +vn 0.4006 -0.9109 0.0987 +vn 0.0000 -0.9980 0.0635 +vn 0.6690 0.6800 -0.3002 +vn 0.7067 0.6511 -0.2768 +vn 0.8960 0.3880 -0.2160 +vn 0.9775 0.1101 -0.1802 +vn 0.9876 0.0385 -0.1522 +vn 0.9463 -0.3136 -0.0788 +vn 0.0000 0.9347 -0.3555 +vn 0.0000 0.9403 -0.3405 +vn 0.3748 0.8697 -0.3211 +vn 0.1348 0.9134 -0.3841 +vn 0.3839 0.8929 -0.2354 +vn 0.7451 0.6335 -0.2084 +vn 0.4943 0.8181 -0.2940 +vn 0.1307 0.8932 -0.4302 +vn 0.7392 0.6373 -0.2177 +vn -0.5050 0.7994 -0.3256 +vn -0.5068 0.7980 -0.3260 +vn -0.8197 -0.5727 -0.0082 +vn -0.4704 -0.8815 0.0416 +vn -0.7597 -0.6501 -0.0164 +vn -0.4006 -0.9109 0.0987 +vn -0.6690 0.6800 -0.3002 +vn -0.8960 0.3880 -0.2160 +vn -0.7067 0.6511 -0.2768 +vn -0.9775 0.1101 -0.1802 +vn -0.9463 -0.3136 -0.0788 +vn -0.9876 0.0385 -0.1522 +vn -0.3748 0.8697 -0.3211 +vn -0.1348 0.9134 -0.3841 +vn -0.7451 0.6335 -0.2084 +vn -0.3840 0.8928 -0.2352 +vn -0.4943 0.8181 -0.2940 +vn -0.7392 0.6373 -0.2177 +vn -0.1307 0.8932 -0.4302 +vn 0.5050 0.7994 -0.3256 +vn 0.5068 0.7980 -0.3260 +vn 0.9200 -0.3895 -0.0438 +vn 0.7085 -0.7055 0.0167 +vn 0.9937 -0.0210 -0.1099 +vn 0.3860 -0.9206 0.0597 +vn 0.0000 -0.9972 0.0754 +vn -0.0000 0.9401 -0.3409 +vn 0.9362 0.3098 -0.1661 +vn 0.0000 0.9695 -0.2450 +vn -0.0000 0.9695 -0.2451 +vn -0.5050 0.7993 -0.3256 +vn 0.1308 0.8933 -0.4301 +vn -0.0000 -0.2046 -0.9789 +vn -0.0000 -0.2045 -0.9789 +vn -0.4656 -0.1810 -0.8663 +vn -0.7520 0.1019 0.6512 +vn -0.6996 0.1149 0.7053 +vn -0.9368 0.0336 0.3482 +vn 0.9219 -0.3858 -0.0358 +vn 0.7125 -0.7007 0.0373 +vn 0.9938 -0.0197 -0.1090 +vn 0.3893 -0.9164 0.0926 +vn -0.0000 -0.9935 0.1135 +vn 0.9394 0.3025 -0.1612 +vn -0.0000 -0.9884 0.1517 +vn -0.0154 -0.9881 0.1530 +vn -0.0147 -0.9926 0.1203 +vn 0.0000 -0.9927 0.1203 +vn -0.0000 -0.9835 0.1807 +vn -0.0161 -0.9839 0.1780 +vn -0.0446 -0.9872 0.1534 +vn -0.0446 -0.9918 0.1202 +vn 0.0147 0.9975 -0.0687 +vn 0.0142 0.9925 -0.1213 +vn 0.0000 0.9925 -0.1224 +vn 0.0000 0.9976 -0.0687 +vn -0.0031 -0.9852 0.1715 +vn -0.0159 -0.9849 0.1722 +vn -0.0446 -0.9828 0.1791 +vn -0.0606 -0.9873 0.1471 +vn -0.0638 -0.9917 0.1120 +vn 0.0444 0.9967 -0.0686 +vn 0.0445 0.9917 -0.1203 +vn 0.0135 0.9835 -0.1804 +vn -0.0000 0.9841 -0.1778 +vn -0.0053 -0.9766 0.2148 +vn -0.0174 -0.9773 0.2109 +vn -0.0174 -0.9785 0.2055 +vn -0.0052 -0.9793 0.2025 +vn -0.0446 -0.9841 0.1716 +vn -0.0563 -0.9827 0.1767 +vn -0.0593 -0.9865 0.1525 +vn -0.0679 -0.9923 0.1038 +vn 0.0635 0.9961 -0.0605 +vn 0.0605 0.9916 -0.1140 +vn 0.0446 0.9828 -0.1791 +vn 0.0136 0.9824 -0.1862 +vn -0.0031 0.9824 -0.1869 +vn -0.0446 -0.9773 0.2069 +vn -0.0446 -0.9809 0.1893 +vn -0.0166 -0.9823 0.1868 +vn -0.0553 -0.9836 0.1716 +vn -0.0526 -0.9833 0.1742 +vn 0.8962 0.0795 0.4364 +vn 0.8986 0.0786 0.4316 +vn 0.8256 0.1011 0.5551 +vn 0.0676 0.9963 -0.0525 +vn 0.0593 0.9904 -0.1252 +vn 0.0563 0.9826 -0.1767 +vn 0.0446 0.9814 -0.1865 +vn 0.0181 0.9766 -0.2141 +vn 0.0227 0.9655 -0.2596 +vn 0.0159 0.9680 -0.2503 +vn 0.0045 0.9802 -0.1978 +vn -0.0589 -0.9748 0.2154 +vn -0.0560 -0.9796 0.1932 +vn -0.0508 -0.9839 0.1716 +vn 0.9875 0.0283 0.1553 +vn 0.0526 0.9830 -0.1759 +vn 0.0553 0.9809 -0.1864 +vn 0.0446 0.9732 -0.2254 +vn 0.0445 0.9635 -0.2641 +vn -0.0565 -0.9730 0.2236 +vn -0.0519 -0.9800 0.1919 +vn 0.0508 0.9812 -0.1864 +vn 0.0559 0.9718 -0.2292 +vn 0.0587 0.9604 -0.2723 +vn 0.9624 -0.0487 -0.2673 +vn 0.9648 -0.0471 -0.2588 +vn 0.0519 0.9733 -0.2236 +vn 0.0562 0.9582 -0.2804 +vn -0.5676 -0.1476 -0.8100 +vn -0.8987 -0.0786 -0.4316 +vn -0.9924 -0.0221 -0.1211 +vn -0.9841 -0.0319 -0.1749 +vn -0.9835 -0.0324 -0.1781 +vn -0.0611 -0.9745 0.2161 +vn 0.0228 0.9610 -0.2757 +vn -0.0625 -0.9723 0.2253 +vn 0.0609 0.9601 -0.2730 +vn 0.0623 0.9574 -0.2820 +vn -0.0032 -0.9834 0.1815 +vn 0.0162 0.9577 -0.2872 +vn -0.0001 -0.1787 -0.9839 +vn -0.0000 -0.1790 -0.9838 +vn 0.2043 -0.9714 0.1206 +vn 0.2062 -0.9691 0.1355 +vn 0.2028 -0.9703 0.1316 +vn 0.2023 -0.9725 0.1157 +vn 0.2064 -0.9704 0.1254 +vn 0.2098 -0.9674 0.1418 +vn 0.9793 0.1992 -0.0363 +vn 0.9689 0.2231 0.1071 +vn 0.9685 0.2235 0.1098 +vn -0.1963 0.9684 -0.1536 +vn -0.1984 0.9667 -0.1615 +vn -0.1946 0.9674 -0.1621 +vn -0.1918 0.9688 -0.1569 +vn -0.1950 0.9680 -0.1577 +vn -0.2012 0.9675 -0.1532 +vn -0.2015 0.9679 -0.1504 +vn 0.2095 -0.9478 0.2403 +vn 0.2030 -0.9475 0.2469 +vn 0.2036 -0.9594 0.1952 +vn 0.2103 -0.9583 0.1935 +vn -0.2020 0.9618 -0.1846 +vn -0.2019 0.9594 -0.1968 +vn -0.1990 0.9601 -0.1966 +vn -0.1989 0.9625 -0.1847 +vn 0.8157 0.2651 0.5142 +vn 0.8863 0.2565 0.3856 +vn 0.8856 0.2566 0.3871 +vn 0.2161 -0.9480 0.2338 +vn 0.2170 -0.9595 0.1794 +vn -0.1960 0.9606 -0.1969 +vn -0.1958 0.9638 -0.1811 +vn 0.2091 -0.9666 0.1482 +vn 0.2034 -0.9683 0.1448 +vn -0.2018 0.9663 -0.1599 +vn 0.2144 -0.9649 0.1518 +vn -0.1887 0.9686 -0.1620 +vn 0.0194 -0.9850 0.1714 +vn -0.0243 -0.9816 0.1893 +vn -0.0351 -0.9805 0.1935 +vn 0.0195 -0.9851 0.1708 +vn 0.0303 0.9835 -0.1786 +vn 0.0432 0.9832 -0.1771 +vn 0.0000 0.9836 -0.1804 +vn 0.8843 -0.2718 0.3796 +vn 0.8851 -0.2730 0.3770 +vn 0.7757 -0.1504 0.6130 +vn 0.7694 -0.1448 0.6222 +vn 0.9213 -0.3842 -0.0598 +vn 0.9219 -0.3835 -0.0547 +vn 0.1710 -0.0770 -0.9823 +vn -0.2475 -0.0947 -0.9642 +vn -0.2487 -0.0949 -0.9639 +vn 0.2026 -0.0813 -0.9759 +vn -0.0000 -0.1442 -0.9895 +vn -0.6983 -0.1037 -0.7083 +vn -0.7022 -0.1031 -0.7044 +vn -0.0000 -0.1442 -0.9896 +vn 0.6740 -0.0671 0.7357 +vn 0.8315 -0.4074 -0.3777 +vn 0.3503 -0.1008 -0.9312 +vn 0.2032 0.9615 -0.1848 +vn 0.2145 0.9594 -0.1833 +vn 0.1479 0.9702 -0.1919 +vn 0.1350 0.9718 -0.1935 +vn 0.0864 0.9783 -0.1884 +vn 0.0784 0.9794 -0.1859 +vn -0.2904 -0.9414 0.1717 +vn -0.2905 -0.9414 0.1717 +vn -0.1809 -0.9647 0.1917 +vn -0.1928 -0.9627 0.1896 +vn -0.1140 -0.9728 0.2019 +vn -0.0992 -0.9740 0.2039 +vn 0.2978 0.9392 -0.1709 +vn 0.9360 0.3463 -0.0631 +vn 0.9995 -0.0324 0.0059 +vn 0.3827 0.9089 -0.1656 +vn 0.3827 -0.9089 0.1656 +vn 0.9469 0.3020 0.1101 +vn 0.9993 -0.0186 0.0309 +vn 0.9994 -0.0186 0.0308 +vn 0.8668 0.4564 0.2010 +vn 0.6734 0.6679 0.3168 +vn 0.5930 0.7275 0.3451 +vn 0.3440 0.8484 0.4024 +vn 0.2982 0.8624 0.4091 +vn -0.0000 0.9035 0.4286 +vn 0.9361 0.3503 0.0302 +vn 0.9999 -0.0040 0.0160 +vn 0.9056 0.4218 0.0451 +vn 0.7095 0.6984 0.0943 +vn 0.6699 0.7358 0.0994 +vn 0.3804 0.9165 0.1238 +vn 0.3539 0.9269 0.1252 +vn -0.0000 0.9910 0.1339 +vn 0.9250 0.3749 -0.0620 +vn 1.0000 -0.0005 0.0010 +vn 1.0000 -0.0005 0.0009 +vn 0.9233 0.3789 -0.0627 +vn 0.7082 0.6968 -0.1137 +vn 0.7059 0.6991 -0.1140 +vn 0.3834 0.9115 -0.1487 +vn 0.3818 0.9122 -0.1488 +vn 0.0000 0.9870 -0.1610 +vn 0.1951 -0.9621 0.1903 +vn 0.0000 -0.9810 0.1941 +vn 0.0000 -0.9810 0.1940 +vn 0.5516 -0.8195 0.1557 +vn 0.5376 -0.7017 -0.4676 +vn 0.3682 -0.7906 -0.4893 +vn 0.8315 -0.5466 0.0996 +vn 0.6258 0.3869 0.6773 +vn 0.6774 0.1319 0.7237 +vn 0.4790 0.6031 0.6379 +vn 0.2592 0.7475 0.6116 +vn -0.0000 0.7982 0.6023 +vn 0.2592 -0.4838 0.8359 +vn -0.0000 -0.5345 0.8452 +vn 0.4790 -0.3393 0.8096 +vn 0.6258 -0.1232 0.7702 +vn -0.9232 -0.3599 0.1346 +vn -0.9202 -0.3672 0.1357 +vn -0.9967 0.0102 0.0804 +vn -0.9967 0.0187 0.0791 +vn -0.7081 -0.6823 0.1818 +vn -0.7038 -0.6866 0.1824 +vn -0.3837 -0.8984 0.2135 +vn -0.3807 -0.8997 0.2136 +vn 0.0000 -0.9745 0.2246 +vn 0.0000 -0.9748 0.2229 +vn -0.3787 0.9240 -0.0535 +vn -0.3818 0.9227 -0.0533 +vn -0.0000 0.9979 -0.0644 +vn -0.7010 0.7128 -0.0226 +vn -0.7054 0.7085 -0.0219 +vn -0.9182 0.3953 0.0240 +vn -0.9213 0.3880 0.0250 +vn 0.8413 0.2013 -0.5017 +vn 0.7821 -0.1569 -0.6031 +vn 0.8184 -0.0436 -0.5730 +vn 0.8229 0.3371 -0.4573 +vn 0.7202 0.5883 -0.3678 +vn 0.6498 0.6848 -0.3298 +vn 0.4114 0.8766 -0.2495 +vn 0.3501 0.9064 -0.2361 +vn -0.0000 0.9792 -0.2030 +vn 0.2071 -0.6673 -0.7154 +vn -0.0000 -0.6926 -0.7213 +vn 0.4172 -0.5825 -0.6976 +vn 0.6203 -0.4184 -0.6635 +vn 0.6735 -0.3531 -0.6494 +vn 0.9262 0.3644 -0.0965 +vn 0.9985 -0.0174 -0.0518 +vn 0.9986 -0.0017 -0.0536 +vn 0.9207 0.3778 -0.0981 +vn 0.7110 0.6902 -0.1347 +vn 0.7031 0.6980 -0.1356 +vn 0.3855 0.9087 -0.1603 +vn 0.3799 0.9110 -0.1606 +vn -0.0000 0.9856 -0.1693 +vn 0.3776 -0.9244 0.0547 +vn -0.0000 -0.9980 0.0634 +vn 0.3831 -0.9221 0.0545 +vn 0.6998 -0.7137 0.0300 +vn 0.7077 -0.7059 0.0291 +vn 0.9183 -0.3958 -0.0073 +vn 0.9239 -0.3825 -0.0089 +vn -0.9961 -0.0867 0.0133 +vn -0.9978 -0.0661 0.0102 +vn -0.9978 -0.0658 0.0101 +vn -0.1233 0.1705 -0.9776 +vn -0.1523 0.2208 -0.9634 +vn -0.0231 -0.1539 -0.9878 +vn -0.0228 -0.1570 -0.9873 +vn -0.3348 0.4709 -0.8162 +vn -0.3835 0.5223 -0.7616 +vn -0.5382 0.6789 -0.4994 +vn -0.5575 0.6972 -0.4507 +vn -0.6150 0.7794 -0.1199 +vn -0.5281 0.8051 0.2699 +vn -0.5505 0.8062 0.2168 +vn -0.3156 0.7038 0.6364 +vn -0.3631 0.7368 0.5704 +vn -0.1133 0.4609 0.8802 +vn -0.1363 0.4997 0.8554 +vn -0.0211 0.1511 0.9883 +vn -0.0209 0.1492 0.9886 +vn -0.0599 -0.1890 0.9802 +vn -0.0766 -0.2392 0.9680 +vn -0.1901 -0.5504 0.8130 +vn -0.2160 -0.6149 0.7584 +vn -0.2929 -0.8311 0.4728 +vn -0.2972 -0.8469 0.4409 +vn -0.3157 -0.9378 0.1442 +vn -0.3157 -0.9378 0.1443 +vn -0.2929 -0.9347 -0.2012 +vn -0.2972 -0.9402 -0.1661 +vn -0.1901 -0.7693 -0.6100 +vn -0.2160 -0.8144 -0.5385 +vn -0.0611 -0.4773 -0.8766 +vn -0.0767 -0.5190 -0.8513 +vn 0.6292 0.4847 -0.6077 +vn 0.5871 0.7004 -0.4059 +vn 0.6222 0.6555 0.4281 +vn 0.6295 0.4441 0.6375 +vn -0.9984 -0.0568 0.0024 +vn -0.9984 -0.0569 0.0024 +vn -0.9984 -0.0435 0.0359 +vn -0.9985 -0.0431 0.0349 +vn -0.9983 -0.0385 0.0431 +vn -0.9983 -0.0388 0.0435 +vn -0.9979 -0.0634 0.0122 +vn -0.9978 -0.0658 0.0125 +vn -0.9935 -0.1129 0.0174 +vn -0.9979 -0.0641 0.0074 +vn -0.9978 -0.0665 0.0079 +vn -0.9983 -0.0497 -0.0295 +vn -0.9983 -0.0500 -0.0298 +vn -0.9966 -0.0667 -0.0485 +vn -0.9966 -0.0664 -0.0483 +vn -0.9941 -0.0876 -0.0633 +vn -0.9942 -0.0872 -0.0631 +vn -0.9873 -0.1391 -0.0761 +vn -0.9874 -0.1386 -0.0765 +vn -0.9891 -0.1378 -0.0517 +vn -0.9890 -0.1385 -0.0522 +vn -0.9946 -0.1032 -0.0123 +vn -0.9945 -0.1035 -0.0129 +vn 0.9949 0.0988 -0.0179 +vn 0.9950 0.0987 -0.0179 +vn 0.9949 0.0996 -0.0126 +vn 0.9927 0.1148 -0.0378 +vn 0.9927 0.1148 -0.0372 +vn 0.9893 0.1390 -0.0451 +vn 0.9894 0.1380 -0.0458 +vn 0.9893 0.1389 -0.0451 +vn 0.9907 0.1344 -0.0216 +vn 0.9907 0.1341 -0.0215 +vn 0.9941 0.1073 -0.0165 +vn 0.9907 0.1347 -0.0198 +vn 0.9907 0.1343 -0.0198 +vn 0.9893 0.1461 0.0012 +vn 0.9894 0.1454 0.0022 +vn 0.9927 0.1209 0.0015 +vn 0.9927 0.1206 0.0009 +vn 0.0327 -0.2277 0.9732 +vn -0.0004 0.1569 0.9876 +vn 0.0003 0.1482 0.9890 +vn -0.0326 0.5087 0.8603 +vn -0.0326 0.5086 0.8604 +vn -0.0588 0.7976 0.6003 +vn -0.0588 0.7970 0.6012 +vn -0.0732 0.9682 0.2394 +vn -0.0729 0.9660 0.2481 +vn -0.0771 0.9854 -0.1516 +vn -0.0732 0.8515 -0.5193 +vn -0.0730 0.8468 -0.5270 +vn -0.0588 0.5804 -0.8122 +vn -0.0588 0.5795 -0.8129 +vn -0.0326 0.2266 -0.9734 +vn -0.0004 -0.1472 -0.9891 +vn 0.0004 -0.1559 -0.9878 +vn 0.0327 -0.5096 -0.8598 +vn 0.0610 -0.7961 -0.6020 +vn 0.0804 -0.9656 -0.2471 +vn 0.0874 -0.9846 0.1514 +vn 0.0804 -0.8467 0.5259 +vn 0.0610 -0.5784 0.8134 +vn -0.0029 0.1489 0.9888 +vn 0.6889 -0.1066 0.7170 +vn 0.6661 0.1776 0.7244 +vn 0.7087 -0.3739 0.5983 +vn 0.7225 -0.5749 0.3840 +vn 0.7274 -0.6782 0.1043 +vn 0.7225 -0.6637 -0.1934 +vn 0.7087 -0.5367 -0.4579 +vn 0.6883 -0.3224 -0.6498 +vn -0.0001 -0.1505 -0.9886 +vn 0.6674 -0.0506 -0.7430 +vn -0.0328 0.2281 -0.9731 +vn 0.6304 0.2338 -0.7403 +vn -0.0587 0.5797 -0.8127 +vn 0.6292 0.4846 -0.6077 +vn -0.0730 0.8492 -0.5230 +vn 0.5871 0.7004 -0.4058 +vn 0.5708 0.8115 -0.1249 +vn -0.0730 0.9671 0.2436 +vn 0.5695 0.8047 0.1678 +vn -0.0588 0.7971 0.6010 +vn 0.6222 0.6555 0.4280 +vn -0.0358 0.5093 0.8599 +vn 0.0774 0.1839 -0.9799 +vn 0.0260 -0.1509 -0.9882 +vn 0.0258 -0.1495 -0.9884 +vn 0.1040 0.2455 -0.9638 +vn 0.2593 0.5127 -0.8185 +vn 0.3094 0.5759 -0.7567 +vn 0.4486 0.7407 -0.5002 +vn 0.4683 0.7617 -0.4477 +vn 0.5205 0.8439 -0.1298 +vn 0.4486 0.8567 0.2545 +vn 0.4683 0.8611 0.1981 +vn 0.2593 0.7350 0.6265 +vn 0.3093 0.7767 0.5486 +vn 0.0774 0.4699 0.8793 +vn 0.1040 0.5238 0.8455 +vn 0.0259 0.1531 0.9879 +vn 0.0259 0.1544 0.9877 +vn 0.1267 -0.1699 0.9773 +vn 0.1554 -0.2192 0.9632 +vn 0.3181 -0.4943 0.8090 +vn 0.3529 -0.5528 0.7549 +vn 0.4547 -0.7559 0.4710 +vn 0.4598 -0.7700 0.4423 +vn 0.4841 -0.8648 0.1330 +vn 0.4842 -0.8648 0.1330 +vn 0.4548 -0.8625 -0.2221 +vn 0.4598 -0.8674 -0.1905 +vn 0.3180 -0.7146 -0.6230 +vn 0.3529 -0.7541 -0.5539 +vn 0.1267 -0.4557 -0.8811 +vn 0.1555 -0.4985 -0.8529 +vn 0.8660 0.4919 -0.0896 +vn 0.5000 0.8520 -0.1552 +vn 0.0000 0.9838 -0.1793 +vn 0.5000 -0.8520 0.1552 +vn 0.4768 0.4204 0.7720 +vn 0.4767 0.4204 0.7720 +vn 0.5505 0.1496 0.8213 +vn 0.2753 0.6187 0.7359 +vn 0.0000 0.6912 0.7226 +vn 0.2753 -0.3194 0.9068 +vn -0.0000 -0.3920 0.9200 +vn 0.4768 -0.1212 0.8706 +vn 0.0000 0.9838 -0.1791 +vn 0.2706 0.7695 0.5785 +vn -0.0000 0.7993 0.6010 +vn -0.5120 0.0164 -0.8588 +vn 0.4238 0.4055 -0.8099 +vn 0.4278 0.4065 -0.8073 +vn 0.9216 0.3863 0.0369 +vn 0.9216 0.3863 0.0368 +vn -0.4064 -0.4012 0.8209 +vn -0.4064 -0.4013 0.8209 +vn -0.9326 -0.2755 0.2330 +vn -0.8821 -0.4710 0.0106 +vn -0.4229 -0.7463 -0.5140 +vn 0.9315 0.2618 -0.2524 +vn -0.4553 0.4941 0.7406 +vn -0.4553 0.4941 0.7407 +vn -0.0000 0.1520 0.9884 +vn -0.0000 -0.5914 0.8064 +vn 0.0000 -0.9884 0.1520 +vn 0.0000 -0.8064 -0.5914 +vn 0.0000 -0.1520 -0.9884 +vn 0.0000 0.5914 -0.8064 +vn 0.0000 0.9884 -0.1520 +vn -0.0000 0.8064 0.5914 +vn -0.0030 -0.2387 0.9711 +vn -0.0029 -0.2390 0.9710 +vn -0.0031 -0.2386 0.9711 +vn -0.0059 -0.8554 0.5179 +vn -0.0059 -0.8554 0.5180 +vn -0.0057 -0.9714 -0.2373 +vn -0.0059 -0.9715 -0.2369 +vn -0.0059 -0.9715 -0.2368 +vn -0.0059 -0.9715 -0.2370 +vn -0.0031 -0.5195 -0.8545 +vn -0.0030 -0.5194 -0.8545 +vn 0.0040 0.2388 -0.9711 +vn 0.0040 0.2387 -0.9711 +vn 0.0114 0.8554 -0.5178 +vn 0.0114 0.8555 -0.5177 +vn 0.0113 0.8554 -0.5178 +vn 0.0116 0.9714 0.2372 +vn 0.0114 0.9715 0.2368 +vn 0.0114 0.9715 0.2369 +vn 0.0040 0.5195 0.8544 +vn 0.0039 0.5196 0.8544 +vn 0.0038 0.5198 0.8543 +vn 0.0040 0.5194 0.8545 +vn -0.5000 0.0374 -0.8652 +vn -0.5000 -0.0373 0.8652 +vn -0.5000 -0.0374 0.8652 +vn 0.6385 0.7592 -0.1260 +vn -0.2118 -0.2181 -0.9527 +vn -0.5267 -0.6034 -0.5988 +vn 0.6331 0.7545 -0.1727 +vn 0.0371 0.0072 0.9993 +vn -0.3758 -0.4743 0.7961 +vn -0.5267 -0.6033 -0.5988 +vn 0.6092 -0.7909 -0.0581 +vn -0.4221 0.5423 -0.7264 +vn -0.1468 0.1824 -0.9722 +vn 0.6104 -0.7917 0.0240 +vn -0.4222 0.5423 -0.7264 +vn -0.3940 0.5200 0.7579 +vn -0.0558 0.0831 0.9950 +vn -0.1469 0.1824 -0.9722 +vn -0.5000 0.4249 -0.7546 +vn -0.5000 -0.4249 0.7547 +vn -0.5000 -0.4249 0.7546 +vn -0.5000 -0.4248 0.7546 +vn 0.8194 -0.5640 0.1027 +vn 0.5794 -0.5255 -0.6230 +vn 0.5794 -0.5256 -0.6230 +vn 0.8194 -0.5640 0.1028 +vn -0.5794 0.2721 -0.7683 +vn -0.8194 0.5640 -0.1028 +vn -0.5794 0.5255 0.6230 +vn -0.5794 0.5256 0.6230 +vn 0.5794 -0.2721 0.7683 +vn 0.9999 -0.0025 -0.0139 +vn 0.7750 -0.1133 -0.6217 +vn 0.7152 -0.1253 -0.6876 +vn 0.9999 0.0026 0.0143 +vn 0.7864 0.1107 0.6078 +vn 0.6983 0.1283 0.7042 +vn 0.0817 0.9966 -0.0118 +vn 0.2007 0.9739 -0.1059 +vn 0.0646 0.8796 -0.4713 +vn 0.0647 0.8796 -0.4713 +vn 0.0504 0.8706 -0.4894 +vn 0.0505 0.8706 -0.4894 +vn -0.7071 -0.6957 0.1268 +vn -0.7071 -0.6956 0.1269 +vn 0.7071 -0.6956 0.1268 +vn 0.7071 -0.6956 0.1269 +vn 0.7071 -0.6957 0.1268 +vn -0.0075 0.1264 0.9920 +vn 0.0034 0.1143 0.9934 +vn 0.0149 0.1770 0.9841 +vn 0.0115 0.1830 0.9830 +vn -0.0157 0.1212 0.9925 +vn 0.0094 0.1775 0.9841 +vn -0.0392 0.1348 0.9901 +vn -0.0106 0.1893 0.9819 +vn -0.0698 0.1559 0.9853 +vn -0.0188 0.1960 0.9804 +vn 0.0485 0.2717 0.9612 +vn 0.0503 0.2750 0.9601 +vn 0.0806 0.3318 0.9399 +vn 0.0792 0.3290 0.9410 +vn 0.1044 0.3691 0.9235 +vn 0.1042 0.3689 0.9236 +vn 0.1053 0.3718 0.9223 +vn 0.1026 0.3743 0.9216 +vn 0.0983 0.3753 0.9217 +vn 0.1528 0.4280 0.8908 +vn 0.1261 0.3967 0.9092 +vn 0.1415 0.4131 0.8996 +vn 0.1769 0.4466 0.8771 +vn 0.1512 0.4285 0.8908 +vn 0.1755 0.4662 0.8671 +vn 0.1376 0.4504 0.8822 +vn 0.1567 0.4798 0.8633 +vn 0.1143 0.4452 0.8881 +vn 0.1284 0.4901 0.8622 +vn -0.0624 0.1552 0.9859 +vn -0.0154 0.1967 0.9804 +vn 0.0502 0.2749 0.9602 +vn 0.0811 0.3326 0.9396 +vn 0.0980 0.3792 0.9201 +vn 0.1069 0.4232 0.8997 +vn 0.1151 0.4751 0.8724 +vn -0.9408 -0.3389 0.0056 +vn -0.9409 -0.3385 0.0060 +vn -0.9410 -0.3384 0.0061 +vn -0.9810 -0.1933 -0.0167 +vn -0.9810 -0.1933 -0.0168 +vn 0.4039 -0.9080 0.1116 +vn 0.4040 -0.9080 0.1115 +vn 0.4039 -0.9080 0.1115 +vn -0.9318 0.3578 -0.0606 +vn 0.8560 -0.5080 0.0959 +vn 0.8560 -0.5080 0.0958 +vn -0.9622 0.2714 -0.0213 +vn -0.9622 0.2714 -0.0214 +vn 0.7680 -0.6256 0.1373 +vn 0.7680 -0.6256 0.1372 +vn -0.8121 0.5683 -0.1328 +vn -0.8121 0.5682 -0.1329 +vn -0.7078 0.6783 -0.1974 +vn -0.5123 0.8047 -0.2999 +vn -0.5123 0.8047 -0.3000 +vn -0.0067 0.8979 -0.4401 +vn 0.9683 -0.2492 -0.0164 +vn 0.7309 -0.6613 0.1686 +vn 0.9815 0.0655 -0.1801 +vn 0.3323 -0.9359 0.1172 +vn 0.3323 -0.9359 0.1171 +vn 0.3323 -0.9359 0.1173 +vn 0.7653 -0.6228 0.1628 +vn 0.7653 -0.6228 0.1627 +vn -0.9096 0.4100 -0.0671 +vn -0.9096 0.4102 -0.0669 +vn -0.9627 0.2690 -0.0282 +vn -0.9627 0.2690 -0.0281 +vn 0.7033 -0.6902 0.1704 +vn 0.0495 -0.0825 -0.9954 +vn 0.0551 -0.0726 -0.9958 +vn 0.0551 -0.0727 -0.9958 +vn -0.1099 -0.3837 -0.9169 +vn -0.1793 -0.5131 -0.8394 +vn -0.1793 -0.5130 -0.8394 +vn -0.1337 -0.4227 -0.8963 +vn -0.1549 -0.4704 -0.8688 +vn -0.1548 -0.4704 -0.8688 +vn 0.9969 -0.0775 -0.0138 +vn 0.9999 0.0009 0.0110 +vn 0.9999 0.0009 0.0111 +vn 0.9999 0.0009 0.0114 +vn 1.0000 -0.0040 -0.0066 +vn 0.9997 0.0111 -0.0198 +vn 0.9998 -0.0043 -0.0201 +vn 0.9998 -0.0043 -0.0202 +vn 0.9998 -0.0044 -0.0200 +vn 0.9999 -0.0034 -0.0152 +vn 0.9999 -0.0034 -0.0153 +vn 0.6304 0.2338 -0.7402 +vn 0.7087 -0.3741 0.5982 +vn 0.6883 -0.3224 -0.6499 +vn 0.5708 0.8115 -0.1248 +vn 0.5695 0.8046 0.1678 +vn 0.7225 -0.5750 0.3840 +vn 0.7087 -0.5366 -0.4580 +vn 0.7225 -0.6638 -0.1934 +vn -0.9972 -0.0744 0.0115 +vn -0.9972 -0.0743 0.0114 +vn -1.0000 0.0026 -0.0004 +vn -0.0000 -0.9854 0.1700 +vn -0.9835 -0.0325 -0.1781 +vn 0.2706 -0.5160 0.8127 +vn -0.0000 -0.5360 0.8442 +vn -0.0000 -0.9838 0.1793 +vn -0.7085 -0.7055 0.0167 +vn -0.9200 -0.3896 -0.0438 +vn -0.9937 -0.0210 -0.1099 +vn -0.3860 -0.9206 0.0597 +vn -0.9362 0.3098 -0.1661 +vn 0.5050 0.7993 -0.3256 +vn -0.1308 0.8933 -0.4301 +vn 0.0000 -0.2023 -0.9793 +vn 0.4656 -0.1810 -0.8663 +vn 0.7520 0.1019 0.6512 +vn 0.6996 0.1148 0.7052 +vn 0.9368 0.0336 0.3482 +vn -0.7125 -0.7007 0.0373 +vn -0.9219 -0.3858 -0.0358 +vn -0.9938 -0.0197 -0.1090 +vn -0.3892 -0.9165 0.0926 +vn -0.9394 0.3025 -0.1612 +vn 0.0147 -0.9926 0.1203 +vn 0.0152 -0.9882 0.1526 +vn 0.0161 -0.9839 0.1780 +vn 0.0446 -0.9918 0.1202 +vn 0.0446 -0.9872 0.1534 +vn -0.0142 0.9925 -0.1213 +vn -0.0147 0.9975 -0.0687 +vn 0.0159 -0.9849 0.1722 +vn 0.0030 -0.9852 0.1716 +vn 0.0446 -0.9828 0.1791 +vn 0.0638 -0.9917 0.1120 +vn 0.0606 -0.9873 0.1471 +vn -0.0445 0.9917 -0.1203 +vn -0.0444 0.9967 -0.0686 +vn -0.0135 0.9835 -0.1804 +vn 0.0053 -0.9766 0.2148 +vn 0.0052 -0.9793 0.2025 +vn 0.0174 -0.9785 0.2055 +vn 0.0174 -0.9773 0.2109 +vn 0.0446 -0.9841 0.1716 +vn 0.0563 -0.9827 0.1767 +vn 0.0679 -0.9923 0.1038 +vn 0.0593 -0.9865 0.1525 +vn -0.0604 0.9916 -0.1140 +vn -0.0635 0.9961 -0.0605 +vn -0.0446 0.9828 -0.1791 +vn 0.0031 0.9824 -0.1869 +vn -0.0136 0.9824 -0.1862 +vn 0.0446 -0.9809 0.1893 +vn 0.0446 -0.9773 0.2069 +vn 0.0166 -0.9823 0.1868 +vn 0.0553 -0.9836 0.1716 +vn 0.0526 -0.9833 0.1742 +vn -0.8256 0.1011 0.5551 +vn -0.8986 0.0786 0.4316 +vn -0.8962 0.0795 0.4364 +vn -0.0593 0.9904 -0.1252 +vn -0.0676 0.9963 -0.0525 +vn -0.0563 0.9826 -0.1768 +vn -0.0446 0.9814 -0.1865 +vn -0.0159 0.9680 -0.2504 +vn -0.0227 0.9655 -0.2596 +vn -0.0181 0.9766 -0.2141 +vn -0.0045 0.9802 -0.1978 +vn 0.0560 -0.9796 0.1932 +vn 0.0589 -0.9747 0.2154 +vn 0.0508 -0.9839 0.1716 +vn -0.9875 0.0283 0.1553 +vn -0.0526 0.9830 -0.1759 +vn -0.0553 0.9809 -0.1864 +vn -0.0445 0.9635 -0.2641 +vn -0.0446 0.9732 -0.2254 +vn 0.0519 -0.9800 0.1919 +vn 0.0565 -0.9730 0.2236 +vn -0.0508 0.9812 -0.1864 +vn -0.0587 0.9604 -0.2723 +vn -0.0559 0.9718 -0.2292 +vn -0.9624 -0.0487 -0.2673 +vn -0.9648 -0.0471 -0.2588 +vn -0.0562 0.9582 -0.2804 +vn -0.0519 0.9733 -0.2236 +vn 0.5676 -0.1476 -0.8100 +vn 0.8987 -0.0786 -0.4316 +vn 0.9841 -0.0319 -0.1749 +vn 0.9924 -0.0221 -0.1211 +vn 0.9835 -0.0324 -0.1781 +vn 0.0611 -0.9745 0.2161 +vn -0.0228 0.9610 -0.2757 +vn 0.0625 -0.9723 0.2254 +vn -0.0609 0.9601 -0.2730 +vn -0.0623 0.9574 -0.2820 +vn 0.0032 -0.9834 0.1815 +vn -0.0162 0.9577 -0.2872 +vn 0.0001 -0.1787 -0.9839 +vn -0.1383 -0.5229 0.8411 +vn 0.1440 0.8129 0.5642 +vn 0.0912 0.5948 0.7987 +vn -0.0884 -0.2567 0.9624 +vn -0.2028 -0.9703 0.1316 +vn -0.2062 -0.9691 0.1355 +vn -0.2043 -0.9714 0.1206 +vn -0.2023 -0.9725 0.1158 +vn -0.2098 -0.9674 0.1418 +vn -0.2064 -0.9704 0.1254 +vn -0.9685 0.2235 0.1098 +vn -0.9689 0.2231 0.1071 +vn -0.9793 0.1992 -0.0363 +vn 0.1946 0.9674 -0.1621 +vn 0.1983 0.9667 -0.1616 +vn 0.1963 0.9684 -0.1536 +vn 0.1918 0.9688 -0.1569 +vn 0.1950 0.9681 -0.1577 +vn 0.2014 0.9679 -0.1504 +vn 0.2012 0.9675 -0.1532 +vn -0.2030 -0.9476 0.2468 +vn 0.2019 0.9594 -0.1968 +vn -0.8863 0.2565 0.3856 +vn -0.8157 0.2651 0.5142 +vn -0.8856 0.2566 0.3871 +vn -0.2126 -0.9613 0.1755 +vn -0.2160 -0.9480 0.2338 +vn -0.2161 -0.9480 0.2338 +vn -0.2170 -0.9595 0.1794 +vn 0.1958 0.9638 -0.1811 +vn 0.1960 0.9606 -0.1969 +vn 0.1959 0.9607 -0.1967 +vn 0.1977 0.9635 -0.1805 +vn -0.2034 -0.9683 0.1448 +vn -0.2090 -0.9666 0.1482 +vn 0.2018 0.9663 -0.1599 +vn -0.2144 -0.9649 0.1518 +vn 0.1887 0.9686 -0.1620 +vn -0.2037 -0.9687 0.1420 +vn 0.2020 0.9641 -0.1724 +vn 0.0350 -0.9805 0.1935 +vn 0.0243 -0.9816 0.1893 +vn -0.0194 -0.9850 0.1714 +vn -0.0195 -0.9851 0.1708 +vn -0.0303 0.9835 -0.1786 +vn -0.0432 0.9832 -0.1771 +vn -0.7757 -0.1504 0.6130 +vn -0.8851 -0.2730 0.3770 +vn -0.8843 -0.2718 0.3796 +vn -0.7694 -0.1448 0.6222 +vn -0.9219 -0.3835 -0.0547 +vn -0.9213 -0.3842 -0.0598 +vn -0.1710 -0.0770 -0.9823 +vn -0.2026 -0.0813 -0.9759 +vn 0.2487 -0.0949 -0.9639 +vn 0.2475 -0.0947 -0.9642 +vn 0.7022 -0.1031 -0.7044 +vn 0.6983 -0.1037 -0.7083 +vn -0.6740 -0.0671 0.7357 +vn -0.8315 -0.4074 -0.3777 +vn -0.3503 -0.1008 -0.9312 +vn -0.2032 0.9615 -0.1848 +vn -0.1350 0.9718 -0.1935 +vn -0.1479 0.9702 -0.1919 +vn -0.2145 0.9594 -0.1833 +vn -0.0864 0.9783 -0.1884 +vn -0.0784 0.9794 -0.1859 +vn 0.1809 -0.9647 0.1917 +vn 0.2905 -0.9413 0.1717 +vn 0.1928 -0.9627 0.1896 +vn 0.1140 -0.9728 0.2019 +vn 0.0991 -0.9740 0.2038 +vn -0.2978 0.9392 -0.1709 +vn -0.9995 -0.0324 0.0059 +vn -0.9360 0.3463 -0.0631 +vn -0.3827 0.9089 -0.1656 +vn -0.3827 -0.9089 0.1656 +vn -0.5556 -0.8180 0.1490 +vn -0.7523 -0.6481 0.1181 +vn -0.8965 -0.4358 0.0794 +vn -0.4125 -0.4268 -0.8048 +vn -0.9808 -0.1919 0.0350 +vn -0.9994 -0.0186 0.0308 +vn -0.9993 -0.0186 0.0309 +vn -0.9469 0.3020 0.1101 +vn -0.8668 0.4564 0.2010 +vn -0.6734 0.6679 0.3168 +vn -0.5930 0.7275 0.3451 +vn -0.3440 0.8484 0.4024 +vn -0.2982 0.8624 0.4091 +vn -0.9999 -0.0040 0.0160 +vn -0.9999 -0.0040 0.0161 +vn -0.9361 0.3503 0.0302 +vn -0.9056 0.4218 0.0451 +vn -0.7095 0.6984 0.0943 +vn -0.6699 0.7358 0.0994 +vn -0.3804 0.9165 0.1238 +vn -0.3539 0.9269 0.1252 +vn -1.0000 -0.0005 0.0009 +vn -1.0000 -0.0005 0.0010 +vn -0.9249 0.3751 -0.0623 +vn -0.9233 0.3788 -0.0626 +vn -0.7082 0.6968 -0.1137 +vn -0.7059 0.6991 -0.1140 +vn -0.3834 0.9115 -0.1487 +vn -0.3818 0.9122 -0.1488 +vn -0.3813 -0.9075 0.1765 +vn -0.3798 -0.9081 0.1764 +vn -0.7054 -0.6967 0.1302 +vn -0.7053 -0.6969 0.1300 +vn -0.6258 0.3869 0.6773 +vn -0.6774 0.1319 0.7237 +vn -0.4790 0.6031 0.6379 +vn -0.2592 0.7475 0.6116 +vn -0.2592 -0.4838 0.8359 +vn -0.4790 -0.3393 0.8096 +vn -0.6258 -0.1232 0.7702 +vn 0.9967 0.0102 0.0804 +vn 0.9202 -0.3672 0.1357 +vn 0.9233 -0.3599 0.1346 +vn 0.9967 0.0187 0.0791 +vn 0.7038 -0.6866 0.1824 +vn 0.7081 -0.6823 0.1818 +vn 0.3807 -0.8997 0.2136 +vn 0.3837 -0.8984 0.2135 +vn 0.3818 0.9227 -0.0533 +vn 0.3787 0.9240 -0.0535 +vn 0.7054 0.7085 -0.0219 +vn 0.7010 0.7128 -0.0226 +vn 0.9213 0.3880 0.0250 +vn 0.9182 0.3953 0.0240 +vn -0.8184 -0.0436 -0.5730 +vn -0.7821 -0.1569 -0.6031 +vn -0.8413 0.2013 -0.5017 +vn -0.8229 0.3371 -0.4573 +vn -0.7202 0.5883 -0.3678 +vn -0.6498 0.6848 -0.3298 +vn -0.4114 0.8766 -0.2495 +vn -0.3501 0.9064 -0.2361 +vn -0.2071 -0.6673 -0.7154 +vn -0.2297 -0.6614 -0.7140 +vn -0.4172 -0.5825 -0.6976 +vn -0.4608 -0.5558 -0.6920 +vn -0.6203 -0.4184 -0.6635 +vn -0.6735 -0.3531 -0.6494 +vn -0.9986 -0.0017 -0.0536 +vn -0.9985 -0.0174 -0.0518 +vn -0.9262 0.3644 -0.0965 +vn -0.9207 0.3778 -0.0981 +vn -0.7110 0.6902 -0.1347 +vn -0.7031 0.6980 -0.1356 +vn -0.3855 0.9087 -0.1603 +vn -0.3799 0.9110 -0.1606 +vn -0.3776 -0.9244 0.0547 +vn -0.3831 -0.9221 0.0545 +vn -0.6998 -0.7137 0.0300 +vn -0.7077 -0.7059 0.0291 +vn -0.9183 -0.3958 -0.0073 +vn -0.9239 -0.3825 -0.0089 +vn 0.9978 -0.0658 0.0101 +vn 0.9978 -0.0661 0.0102 +vn 0.9961 -0.0867 0.0133 +vn -0.0014 -0.1517 -0.9884 +vn 0.0245 0.2351 -0.9717 +vn 0.1233 0.1705 -0.9776 +vn 0.0228 -0.1570 -0.9873 +vn 0.0406 0.5855 -0.8097 +vn 0.3348 0.4709 -0.8162 +vn 0.0539 0.8503 -0.5236 +vn 0.5382 0.6789 -0.4994 +vn 0.0597 0.9866 -0.1518 +vn 0.6150 0.7794 -0.1199 +vn 0.0499 0.9692 0.2412 +vn 0.5281 0.8051 0.2699 +vn 0.0299 0.8037 0.5943 +vn 0.3156 0.7038 0.6364 +vn 0.0165 0.5155 0.8567 +vn 0.1133 0.4609 0.8802 +vn -0.0025 0.1519 0.9884 +vn 0.0211 0.1511 0.9883 +vn -0.0395 -0.2307 0.9722 +vn 0.0599 -0.1890 0.9802 +vn -0.0697 -0.6095 0.7897 +vn 0.1901 -0.5504 0.8130 +vn -0.0697 -0.6096 0.7897 +vn -0.0889 -0.8741 0.4775 +vn 0.2929 -0.8311 0.4728 +vn -0.0938 -0.9840 0.1514 +vn 0.3157 -0.9378 0.1442 +vn -0.0889 -0.9772 -0.1928 +vn 0.2930 -0.9347 -0.2012 +vn -0.0697 -0.8187 -0.5700 +vn 0.1901 -0.7693 -0.6100 +vn -0.0395 -0.5122 -0.8579 +vn 0.0611 -0.4773 -0.8766 +vn -0.9931 0.1161 -0.0179 +vn -0.9931 0.1162 -0.0179 +vn -0.9956 0.0925 -0.0143 +vn -0.9956 0.0924 -0.0142 +vn 0.9996 -0.0273 -0.0086 +vn 0.9951 -0.0592 0.0792 +vn 0.9998 -0.0178 0.0069 +vn 0.9998 -0.0179 0.0069 +vn 0.9935 -0.1128 0.0180 +vn 0.9934 -0.1129 0.0180 +vn 0.9935 -0.1130 0.0168 +vn 0.9935 -0.1130 0.0167 +vn 0.9998 -0.0191 -0.0012 +vn 0.9998 -0.0191 -0.0013 +vn 0.9951 -0.0803 -0.0578 +vn 0.9978 -0.0528 -0.0390 +vn 0.9920 -0.1203 -0.0385 +vn -0.9935 0.1129 -0.0120 +vn -0.9935 0.1129 -0.0119 +vn -0.9912 0.1167 -0.0629 +vn -0.9867 0.1601 -0.0280 +vn -0.9867 0.1602 -0.0280 +vn -0.9941 0.1075 -0.0149 +vn -0.9941 0.1076 -0.0149 +vn -0.9941 0.1071 -0.0181 +vn -0.9941 0.1070 -0.0181 +vn -0.9867 0.1611 -0.0215 +vn -0.9912 0.1302 0.0249 +vn -0.9935 0.1112 -0.0227 +vn -0.9935 0.1112 -0.0226 +vn 0.0677 0.9004 0.4298 +vn 0.0678 0.9004 0.4298 +vn 0.0678 0.7296 -0.6805 +vn 0.0673 0.7226 -0.6879 +vn 0.0673 0.8960 0.4390 +vn 0.0226 0.3343 0.9422 +vn -0.0260 -0.1509 -0.9882 +vn -0.0774 0.1839 -0.9799 +vn -0.2593 0.5128 -0.8185 +vn -0.4487 0.7406 -0.5001 +vn -0.5205 0.8439 -0.1298 +vn -0.4486 0.8567 0.2545 +vn -0.2593 0.7350 0.6265 +vn -0.0774 0.4699 0.8793 +vn -0.0259 0.1531 0.9879 +vn -0.1267 -0.1699 0.9773 +vn -0.3181 -0.4943 0.8090 +vn -0.4547 -0.7559 0.4710 +vn -0.4841 -0.8648 0.1330 +vn -0.4548 -0.8625 -0.2221 +vn -0.3180 -0.7146 -0.6230 +vn -0.1267 -0.4557 -0.8811 +vn -0.8660 0.4919 -0.0896 +vn -0.5000 0.8520 -0.1552 +vn -0.5000 -0.8520 0.1552 +vn -0.4768 0.4204 0.7720 +vn -0.5505 0.1496 0.8213 +vn -0.4767 0.4204 0.7720 +vn -0.2753 0.6187 0.7359 +vn -0.2753 -0.3194 0.9068 +vn -0.4768 -0.1212 0.8706 +vn -0.2706 0.7695 0.5785 +vn 0.9147 -0.4028 0.0328 +vn -0.4278 0.4065 -0.8073 +vn -0.4238 0.4055 -0.8099 +vn 0.9195 -0.3930 -0.0104 +vn -0.4724 -0.0396 0.8805 +vn -0.5109 -0.0173 0.8595 +vn 0.9147 -0.4027 0.0328 +vn 0.9195 -0.3929 -0.0104 +vn 0.9326 -0.2755 0.2330 +vn -0.4655 -0.4834 -0.7414 +vn -0.3343 -0.5671 -0.7528 +vn 0.8821 -0.4710 0.0106 +vn -0.4610 0.7435 0.4843 +vn -0.5679 0.7188 0.4010 +vn 0.0030 -0.2387 0.9711 +vn 0.0030 -0.2388 0.9711 +vn 0.0031 -0.2386 0.9711 +vn 0.0058 -0.8554 0.5179 +vn 0.0058 -0.8555 0.5179 +vn 0.0059 -0.8554 0.5179 +vn 0.0059 -0.9715 -0.2368 +vn 0.0057 -0.9714 -0.2373 +vn 0.0059 -0.9715 -0.2370 +vn 0.0030 -0.5194 -0.8545 +vn 0.0031 -0.5195 -0.8544 +vn 0.0031 -0.5195 -0.8545 +vn 0.0030 -0.5194 -0.8546 +vn -0.0040 0.2387 -0.9711 +vn -0.0040 0.2386 -0.9711 +vn -0.0040 0.2388 -0.9711 +vn -0.0116 0.8556 -0.5175 +vn -0.0114 0.8554 -0.5178 +vn -0.0112 0.8552 -0.5181 +vn -0.0113 0.8554 -0.5179 +vn -0.0114 0.9715 0.2369 +vn -0.0114 0.9715 0.2368 +vn -0.0116 0.9714 0.2372 +vn -0.0113 0.9715 0.2368 +vn -0.0040 0.5196 0.8544 +vn -0.0040 0.5195 0.8545 +vn -0.0040 0.5195 0.8544 +vn -0.0040 0.5194 0.8545 +vn 0.5000 0.0374 -0.8652 +vn 0.5000 -0.0374 0.8652 +vn 0.5000 -0.0373 0.8652 +vn -0.6385 0.7592 -0.1260 +vn -0.6331 0.7545 -0.1727 +vn 0.5267 -0.6034 -0.5988 +vn 0.2118 -0.2181 -0.9527 +vn 0.5267 -0.6033 -0.5988 +vn 0.3758 -0.4743 0.7962 +vn -0.0371 0.0072 0.9993 +vn -0.6092 -0.7909 -0.0581 +vn -0.6104 -0.7917 0.0240 +vn 0.1468 0.1824 -0.9722 +vn 0.4221 0.5423 -0.7264 +vn 0.4222 0.5423 -0.7264 +vn 0.1469 0.1824 -0.9722 +vn 0.0558 0.0831 0.9950 +vn 0.3940 0.5200 0.7579 +vn 0.5000 0.4249 -0.7546 +vn 0.5000 -0.4249 0.7546 +vn 0.5000 -0.4249 0.7547 +vn 0.5000 -0.4248 0.7546 +vn -0.8194 -0.5640 0.1027 +vn -0.8194 -0.5640 0.1028 +vn -0.5794 -0.5256 -0.6230 +vn -0.5794 -0.5255 -0.6230 +vn 0.5794 0.2721 -0.7683 +vn 0.5794 0.2720 -0.7683 +vn 0.8194 0.5640 -0.1028 +vn 0.5794 0.5255 0.6230 +vn 0.5794 0.5256 0.6230 +vn -0.5794 -0.2721 0.7683 +vn -0.9999 -0.0025 -0.0139 +vn -0.9999 0.0026 0.0143 +vn -0.7152 -0.1253 -0.6876 +vn -0.7750 -0.1133 -0.6217 +vn -0.6983 0.1283 0.7042 +vn -0.7864 0.1107 0.6078 +vn -0.0817 0.9966 -0.0118 +vn -0.2007 0.9739 -0.1059 +vn -0.0646 0.8796 -0.4713 +vn -0.0647 0.8796 -0.4713 +vn -0.0504 0.8706 -0.4894 +vn -0.0505 0.8706 -0.4894 +vn -0.7071 -0.6956 0.1268 +vn -0.1568 -0.0834 0.9841 +vn -0.1037 -0.0481 0.9934 +vn -0.1191 -0.0429 0.9920 +vn -0.1636 -0.0827 0.9830 +vn -0.1595 -0.0786 0.9841 +vn -0.1176 -0.0334 0.9925 +vn -0.1781 -0.0649 0.9819 +vn -0.1393 -0.0171 0.9901 +vn -0.1876 -0.0600 0.9804 +vn -0.1708 0.0027 0.9853 +vn -0.2306 -0.1516 0.9612 +vn -0.2329 -0.1546 0.9601 +vn -0.2981 -0.2413 0.9235 +vn -0.2712 -0.2024 0.9410 +vn -0.2732 -0.2048 0.9399 +vn -0.2980 -0.2412 0.9236 +vn -0.3003 -0.2433 0.9223 +vn -0.3037 -0.2418 0.9216 +vn -0.3063 -0.2382 0.9217 +vn -0.3331 -0.3091 0.8908 +vn -0.3408 -0.3385 0.8771 +vn -0.3240 -0.2929 0.8996 +vn -0.3149 -0.2722 0.9092 +vn -0.3593 -0.3450 0.8671 +vn -0.3343 -0.3078 0.8908 +vn -0.3792 -0.3331 0.8633 +vn -0.3598 -0.3039 0.8822 +vn -0.3999 -0.3111 0.8622 +vn -0.3641 -0.2805 0.8881 +vn -0.1868 -0.0633 0.9804 +vn -0.1673 -0.0038 0.9859 +vn -0.2328 -0.1545 0.9602 +vn -0.2738 -0.2056 0.9396 +vn -0.3468 -0.2650 0.8997 +vn -0.3099 -0.2395 0.9201 +vn -0.3913 -0.2930 0.8724 +vn -0.0595 0.9982 0.0060 +vn -0.0596 0.9982 0.0060 +vn -0.0598 0.9982 0.0062 +vn -0.0596 0.9982 0.0061 +vn -0.2089 0.9778 -0.0168 +vn -0.2089 0.9778 -0.0167 +vn 0.9937 -0.0135 0.1116 +vn 0.9937 -0.0135 0.1115 +vn 0.9937 -0.0136 0.1114 +vn -0.6960 0.7155 -0.0606 +vn 0.8042 -0.5866 0.0958 +vn 0.8042 -0.5866 0.0957 +vn -0.6286 0.7775 -0.0213 +vn 0.8776 -0.4594 0.1373 +vn 0.8776 -0.4594 0.1372 +vn -0.8422 0.5225 -0.1329 +vn -0.9023 0.3833 -0.1974 +vn -0.9415 0.1538 -0.2999 +vn -0.8279 -0.3476 -0.4400 +vn -0.8279 -0.3476 -0.4401 +vn 0.6106 -0.7918 -0.0165 +vn 0.6106 -0.7918 -0.0164 +vn 0.8958 -0.4113 0.1686 +vn 0.3265 -0.9279 -0.1801 +vn 0.9911 0.0634 0.1173 +vn 0.9911 0.0633 0.1172 +vn 0.8739 -0.4580 0.1628 +vn 0.8740 -0.4579 0.1628 +vn -0.7350 0.6747 -0.0674 +vn -0.7352 0.6745 -0.0671 +vn -0.7353 0.6745 -0.0670 +vn -0.6265 0.7789 -0.0282 +vn -0.6265 0.7789 -0.0281 +vn -0.6266 0.7789 -0.0281 +vn 0.9114 -0.3745 0.1704 +vn 0.9115 -0.3745 0.1704 +vn 0.0953 -0.0130 -0.9954 +vn 0.0953 -0.0131 -0.9954 +vn 0.0951 -0.0135 -0.9954 +vn 0.0884 -0.0220 -0.9958 +vn 0.0885 -0.0220 -0.9958 +vn 0.3094 0.2522 -0.9169 +vn 0.4009 0.3669 -0.8394 +vn 0.4010 0.3669 -0.8394 +vn 0.3358 0.2894 -0.8963 +vn 0.3358 0.2895 -0.8963 +vn 0.3713 0.3277 -0.8688 +vn 0.3713 0.3276 -0.8688 +vn -0.9969 -0.0775 -0.0138 +vn -0.9999 0.0009 0.0110 +vn -0.9999 0.0009 0.0111 +vn -0.9999 0.0009 0.0114 +vn -1.0000 -0.0040 -0.0066 +vn -1.0000 -0.0040 -0.0067 +vn -0.9997 0.0111 -0.0198 +vn -0.9998 -0.0043 -0.0202 +vn -0.9998 -0.0043 -0.0201 +vn -0.9999 -0.0034 -0.0152 +vn -0.9999 -0.0034 -0.0153 +vn -0.9954 0.0949 -0.0146 +vn -0.9954 0.0951 -0.0146 +vn -0.9954 0.0950 -0.0146 +vn -0.9856 0.1669 -0.0257 +vn 0.9972 -0.0743 0.0114 +vn 0.9972 -0.0744 0.0115 +vn 1.0000 0.0026 -0.0004 +vn 0.9835 -0.0325 -0.1781 +vn -0.2706 -0.5160 0.8127 +vn -0.4084 0.8980 -0.1636 +vn -0.2088 0.9621 -0.1753 +vn 0.2088 0.9621 -0.1753 +vn 0.4084 0.8980 -0.1636 +vn 0.7071 0.6957 -0.1268 +vn -0.7071 0.6957 -0.1268 +vn -0.8194 0.5640 -0.1027 +vn 0.9984 -0.0227 0.0516 +vn -0.5034 -0.3952 -0.7684 +vn -0.4923 -0.3987 -0.7737 +vn 0.9984 -0.0230 0.0511 +vn -0.5701 0.4169 0.7080 +vn -0.5599 0.4199 0.7143 +vn -0.5701 0.4169 0.7079 +vn -0.5600 0.4199 0.7142 +vn 0.3758 -0.4743 0.7961 +vn 0.5793 0.2721 -0.7683 +vn 0.8194 0.5640 -0.1027 +vn 0.5276 0.4322 0.7314 +vn 0.5276 -0.4321 -0.7314 +vn 0.5276 -0.4322 -0.7313 +s off +f 16/1/1 17/2/1 18/3/1 +f 19/4/2 20/5/2 21/6/2 +f 22/7/3 23/8/3 24/9/3 +f 25/10/4 26/11/4 27/12/4 +f 28/13/5 29/14/5 30/15/5 +f 31/16/6 32/17/6 33/18/6 +f 34/19/7 35/20/7 36/21/7 +f 37/22/8 38/23/8 39/24/8 +f 40/25/9 41/26/9 42/27/9 +f 43/28/3 44/29/3 45/30/3 +f 46/31/3 47/32/3 48/33/3 +f 49/34/3 50/35/3 51/36/3 +f 52/37/3 53/38/3 54/39/3 +f 55/40/3 56/41/3 57/42/3 +f 58/43/3 59/44/3 60/45/3 +f 83/46/1 84/47/1 85/48/1 +f 86/49/2 87/50/2 88/51/2 +f 89/52/3 90/53/3 91/54/3 +f 92/55/10 93/56/10 94/57/10 +f 95/58/11 96/59/11 97/60/11 +f 98/61/12 99/62/12 100/63/12 +f 101/64/13 102/65/13 103/66/13 +f 104/67/14 105/68/14 106/69/14 +f 107/70/15 108/71/15 109/72/15 +f 110/73/3 111/74/3 112/75/3 +f 113/76/3 114/77/3 115/78/3 +f 116/79/3 117/80/3 118/81/3 +f 119/82/3 120/83/3 121/84/3 +f 122/85/3 123/86/3 124/87/3 +f 125/88/3 126/89/3 127/90/3 +f 69/91/16 146/92/16 147/93/16 +f 168/94/1 169/95/1 170/96/1 +f 168/94/1 170/96/1 171/97/1 +f 172/98/1 173/99/1 174/100/1 +f 172/98/1 174/100/1 175/101/1 +f 176/102/1 177/103/1 178/104/1 +f 176/102/1 178/104/1 179/105/1 +f 184/106/3 185/107/3 186/108/3 +f 184/106/3 186/108/3 187/109/3 +f 192/110/3 193/111/3 185/107/3 +f 192/110/3 185/107/3 184/106/3 +f 203/112/3 204/113/3 193/111/3 +f 203/112/3 193/111/3 192/110/3 +f 217/114/3 218/115/3 204/113/3 +f 217/114/3 204/113/3 203/112/3 +f 224/116/1 225/117/1 226/118/1 +f 224/116/1 226/118/1 227/119/1 +f 225/117/1 224/116/1 245/120/1 +f 225/117/1 245/120/1 246/121/1 +f 246/121/1 245/120/1 257/122/1 +f 246/121/1 257/122/1 258/123/1 +f 258/123/1 257/122/1 266/124/1 +f 258/123/1 266/124/1 267/125/1 +f 269/126/17 290/127/17 291/128/17 +f 295/129/18 297/130/1 298/131/1 +f 298/131/1 297/130/1 299/132/1 +f 298/131/1 299/132/1 300/133/1 +f 301/134/3 302/135/3 303/136/3 +f 301/134/3 303/136/3 304/137/3 +f 302/135/3 305/138/3 306/139/3 +f 302/135/3 306/139/3 303/136/3 +f 324/140/19 325/141/19 326/142/19 +f 324/140/20 326/142/20 327/143/20 +f 357/144/3 358/145/3 359/146/3 +f 357/144/3 359/146/3 360/147/3 +f 358/145/3 361/148/3 362/149/3 +f 358/145/3 362/149/3 359/146/3 +f 363/150/3 364/151/3 362/149/3 +f 363/150/3 362/149/3 361/148/3 +f 399/152/21 400/153/21 401/154/21 +f 399/152/21 401/154/21 402/155/21 +f 403/156/22 404/157/22 405/158/22 +f 403/156/22 405/158/22 406/159/22 +f 407/160/23 408/161/23 409/162/23 +f 407/160/23 409/162/23 410/163/23 +f 411/164/24 412/165/24 413/166/24 +f 411/164/24 413/166/24 414/167/24 +f 415/168/1 416/169/1 417/170/1 +f 415/168/1 417/170/1 418/171/1 +f 419/172/3 420/173/3 421/174/3 +f 419/172/3 421/174/3 422/175/3 +f 423/176/25 424/177/25 425/178/25 +f 423/176/25 425/178/25 426/179/25 +f 427/180/26 428/181/26 429/182/26 +f 427/180/26 429/182/26 430/183/26 +f 431/184/16 432/185/16 433/186/16 +f 431/184/16 433/186/16 434/187/16 +f 435/188/27 436/189/27 437/190/27 +f 435/188/27 437/190/27 438/191/27 +f 511/192/1 512/193/1 513/194/1 +f 511/192/1 513/194/1 514/195/1 +f 515/196/1 511/192/1 514/195/1 +f 515/196/1 514/195/1 516/197/1 +f 517/198/1 515/196/1 516/197/1 +f 517/198/1 516/197/1 518/199/1 +f 519/200/1 517/198/1 518/199/1 +f 519/200/1 518/199/1 520/201/1 +f 521/202/1 522/203/1 523/204/1 +f 521/202/1 523/204/1 524/205/1 +f 525/206/1 521/202/1 524/205/1 +f 525/206/1 524/205/1 526/207/1 +f 527/208/1 525/206/1 526/207/1 +f 527/208/1 526/207/1 528/209/1 +f 512/193/1 527/208/1 528/209/1 +f 512/193/1 528/209/1 513/194/1 +f 48/33/3 551/210/3 552/211/3 +f 48/33/3 552/211/3 46/31/3 +f 571/212/3 572/213/3 573/214/3 +f 571/212/3 573/214/3 574/215/3 +f 572/213/3 575/216/3 576/217/3 +f 572/213/3 576/217/3 573/214/3 +f 575/216/3 577/218/3 578/219/3 +f 575/216/3 578/219/3 576/217/3 +f 577/218/3 579/220/3 580/221/3 +f 577/218/3 580/221/3 578/219/3 +f 581/222/3 582/223/3 583/224/3 +f 581/222/3 583/224/3 584/225/3 +f 582/223/3 585/226/3 586/227/3 +f 582/223/3 586/227/3 583/224/3 +f 585/226/3 587/228/3 588/229/3 +f 585/226/3 588/229/3 586/227/3 +f 587/228/3 571/212/3 574/215/3 +f 587/228/3 574/215/3 588/229/3 +f 711/230/28 713/231/28 714/232/28 +f 711/230/28 714/232/28 712/233/28 +f 713/231/28 715/234/28 716/235/28 +f 713/231/28 716/235/28 714/232/28 +f 715/234/28 683/236/28 686/237/28 +f 715/234/28 686/237/28 716/235/28 +f 718/238/29 721/239/29 722/240/29 +f 718/238/29 722/240/29 719/241/29 +f 721/239/29 723/242/29 724/243/29 +f 721/239/29 724/243/29 722/240/29 +f 723/242/29 725/244/29 726/245/29 +f 723/242/29 726/245/29 724/243/29 +f 725/244/29 727/246/29 728/247/29 +f 725/244/29 728/247/29 726/245/29 +f 727/246/29 729/248/29 730/249/29 +f 727/246/29 730/249/29 728/247/29 +f 729/248/29 731/250/29 732/251/29 +f 729/248/29 732/251/29 730/249/29 +f 867/252/30 868/253/30 869/254/30 +f 867/252/30 869/254/30 870/255/30 +f 45/30/3 871/256/3 872/257/3 +f 45/30/3 872/257/3 43/28/3 +f 887/258/3 888/259/3 889/260/3 +f 887/258/3 889/260/3 890/261/3 +f 891/262/3 892/263/3 893/264/3 +f 891/262/3 893/264/3 894/265/3 +f 895/266/3 896/267/3 897/268/3 +f 895/266/3 897/268/3 898/269/3 +f 899/270/3 900/271/3 901/272/3 +f 899/270/3 901/272/3 902/273/3 +f 903/274/3 904/275/3 905/276/3 +f 903/274/3 905/276/3 906/277/3 +f 907/278/3 908/279/3 909/280/3 +f 907/278/3 909/280/3 910/281/3 +f 911/282/3 912/283/3 913/284/3 +f 911/282/3 913/284/3 914/285/3 +f 915/286/31 916/287/31 917/288/31 +f 915/286/31 917/288/31 918/289/31 +f 919/290/3 920/291/3 921/292/3 +f 919/290/31 921/292/31 922/293/31 +f 923/294/31 924/295/31 925/296/31 +f 923/294/3 925/296/3 926/297/3 +f 927/298/3 928/299/3 929/300/3 +f 927/298/31 929/300/31 930/301/31 +f 931/302/3 932/303/3 933/304/3 +f 931/302/3 933/304/3 934/305/3 +f 935/306/32 936/307/32 937/308/32 +f 935/306/32 937/308/32 938/309/32 +f 939/310/33 940/311/33 941/312/33 +f 939/310/33 941/312/33 942/313/33 +f 943/314/34 944/315/34 945/316/34 +f 943/314/34 945/316/34 946/317/34 +f 947/318/35 948/319/35 949/320/35 +f 947/318/35 949/320/35 950/321/35 +f 951/322/36 952/323/36 953/324/36 +f 951/322/36 953/324/36 954/325/36 +f 955/326/37 956/327/37 957/328/37 +f 955/326/37 957/328/37 958/329/37 +f 959/330/38 960/331/38 961/332/38 +f 959/330/38 961/332/38 962/333/38 +f 963/334/30 964/335/30 965/336/30 +f 963/334/30 965/336/30 966/337/30 +f 967/338/39 968/339/39 969/340/39 +f 967/338/39 969/340/39 970/341/39 +f 971/342/40 972/343/40 973/344/40 +f 971/342/40 973/344/40 974/345/40 +f 975/346/41 976/347/41 977/348/41 +f 975/346/41 977/348/41 978/349/41 +f 979/350/42 980/351/42 981/352/42 +f 979/350/42 981/352/42 982/353/42 +f 997/354/30 998/355/30 999/356/30 +f 997/354/30 999/356/30 1000/357/30 +f 1001/358/3 1002/359/3 1003/360/3 +f 1001/358/3 1003/360/3 1004/361/3 +f 1005/362/3 1006/363/3 1007/364/3 +f 1005/362/3 1007/364/3 1008/365/3 +f 1009/366/3 1010/367/3 1011/368/3 +f 1009/366/3 1011/368/3 1012/369/3 +f 1013/370/3 1014/371/3 1015/372/3 +f 1013/370/3 1015/372/3 1016/373/3 +f 1017/374/3 1018/375/3 1019/376/3 +f 1017/374/3 1019/376/3 1020/377/3 +f 1021/378/3 1022/379/3 1023/380/3 +f 1021/378/3 1023/380/3 1024/381/3 +f 1025/382/43 1026/383/43 1027/384/43 +f 1025/382/43 1027/384/43 1028/385/43 +f 1033/386/44 1034/387/44 1035/388/44 +f 1033/386/44 1035/388/44 1036/389/44 +f 1037/390/45 1038/391/45 1039/392/45 +f 1037/390/45 1039/392/45 1040/393/45 +f 1045/394/46 1046/395/46 1047/396/46 +f 1045/394/46 1047/396/46 1048/397/46 +f 1089/398/26 1090/399/26 1091/400/26 +f 1089/398/26 1091/400/26 1092/401/26 +f 1090/399/26 1093/402/26 1094/403/26 +f 1090/399/26 1094/403/26 1091/400/26 +f 1093/402/26 1095/404/26 1096/405/26 +f 1093/402/26 1096/405/26 1094/403/26 +f 1095/404/26 1097/406/26 1098/407/26 +f 1095/404/26 1098/407/26 1096/405/26 +f 1097/406/26 1099/408/26 1100/409/26 +f 1097/406/26 1100/409/26 1098/407/26 +f 1101/410/26 1102/411/26 1103/412/26 +f 1101/410/26 1103/412/26 1104/413/26 +f 1102/411/26 1105/414/26 1106/415/26 +f 1102/411/26 1106/415/26 1103/412/26 +f 1105/414/26 1089/398/26 1092/401/26 +f 1105/414/26 1092/401/26 1106/415/26 +f 1139/416/47 1140/417/47 1141/418/47 +f 1139/416/48 1141/418/48 1142/419/48 +f 1143/420/49 1144/421/49 1145/422/49 +f 1143/420/50 1145/422/50 1146/423/50 +f 1147/424/51 1148/425/51 1149/426/51 +f 1147/424/51 1149/426/51 1150/427/51 +f 1151/428/52 1152/429/52 1153/430/52 +f 1151/428/52 1153/430/52 1154/431/52 +f 1155/432/53 1156/433/53 1157/434/53 +f 1155/432/53 1157/434/53 1158/435/53 +f 1159/436/54 1160/437/54 1161/438/54 +f 1159/436/54 1161/438/54 1162/439/54 +f 1163/440/55 1164/441/55 1165/442/55 +f 1163/440/55 1165/442/55 1166/443/55 +f 1167/444/56 1168/445/56 1169/446/56 +f 1167/444/56 1169/446/56 1170/447/56 +f 1171/448/57 1172/449/57 1173/450/57 +f 1171/448/57 1173/450/57 1174/451/57 +f 1175/452/57 1176/453/57 1177/454/57 +f 1175/452/57 1177/454/57 1178/455/57 +f 1179/456/57 1180/457/57 1181/458/57 +f 1179/456/57 1181/458/57 1182/459/57 +f 1183/460/57 1184/461/57 1185/462/57 +f 1183/460/57 1185/462/57 1186/463/57 +f 1187/464/57 1188/465/57 1189/466/57 +f 1187/464/57 1189/466/57 1190/467/57 +f 1191/468/57 1192/469/57 1193/470/57 +f 1191/468/57 1193/470/57 1194/471/57 +f 1195/472/57 1196/473/57 1197/474/57 +f 1195/472/57 1197/474/57 1198/475/57 +f 1199/476/58 1200/477/58 1201/478/58 +f 1199/476/57 1201/478/57 1202/479/57 +f 1279/480/59 1280/481/59 1281/482/59 +f 1279/480/59 1281/482/59 1282/483/59 +f 1283/484/60 1284/485/60 1285/486/60 +f 1283/484/61 1285/486/61 1286/487/61 +f 1287/488/62 1288/489/62 1289/490/62 +f 1287/488/62 1289/490/62 1290/491/62 +f 1291/492/63 1292/493/63 1293/494/63 +f 1291/492/63 1293/494/63 1294/495/63 +f 57/42/3 1313/496/3 1314/497/3 +f 57/42/3 1314/497/3 55/40/3 +f 51/36/3 1333/498/3 1334/499/3 +f 51/36/3 1334/499/3 49/34/3 +f 1377/500/64 1378/501/64 1379/502/64 +f 1377/500/64 1379/502/64 1380/503/64 +f 1389/504/65 1390/505/65 1391/506/65 +f 1389/504/65 1391/506/65 1392/507/65 +f 1393/508/66 1394/509/66 1395/510/66 +f 1393/508/66 1395/510/66 1396/511/66 +f 1453/512/67 1455/513/67 1456/514/67 +f 1465/515/68 1466/516/68 1467/517/68 +f 1465/515/69 1467/517/69 1468/518/69 +f 1469/519/70 1471/520/70 1472/521/71 +f 1473/522/72 1475/523/72 1476/524/72 +f 1477/525/73 1478/526/73 1479/527/73 +f 1477/525/73 1479/527/73 1480/528/73 +f 1481/529/74 1482/530/74 1483/531/74 +f 1481/529/74 1483/531/74 1484/532/74 +f 1489/533/75 1490/534/75 1491/535/75 +f 1489/533/75 1491/535/75 1492/536/75 +f 1509/537/26 1510/538/26 1511/539/26 +f 1509/537/26 1511/539/26 1512/540/26 +f 1545/541/28 1546/542/28 1547/543/28 +f 1545/541/28 1547/543/28 1548/544/28 +f 1548/544/28 1547/543/28 1550/545/28 +f 1548/544/28 1550/545/28 1549/546/28 +f 1557/547/3 1558/548/3 23/8/3 +f 1557/547/3 23/8/3 22/7/3 +f 1559/549/3 1560/550/3 872/257/3 +f 1559/549/3 872/257/3 871/256/3 +f 1561/551/3 1562/552/3 552/211/3 +f 1561/551/3 552/211/3 551/210/3 +f 1563/553/3 1564/554/3 1562/552/3 +f 1563/553/3 1562/552/3 1561/551/3 +f 52/37/3 54/39/3 1334/499/3 +f 52/37/3 1334/499/3 1333/498/3 +f 58/43/3 60/45/3 1314/497/3 +f 58/43/3 1314/497/3 1313/496/3 +f 1569/555/3 1570/556/3 1571/557/3 +f 1569/555/3 1571/557/3 1572/558/3 +f 1573/559/3 1574/560/3 1575/561/3 +f 1573/559/3 1575/561/3 1576/562/3 +f 1577/563/3 1578/564/3 1579/565/3 +f 1577/563/3 1579/565/3 1580/566/3 +f 1581/567/3 1582/568/3 1583/569/3 +f 1581/567/3 1583/569/3 1584/570/3 +f 1585/571/3 1586/572/3 1587/573/3 +f 1585/571/3 1587/573/3 1588/574/3 +f 1589/575/3 1590/576/3 1591/577/3 +f 1589/575/3 1591/577/3 1592/578/3 +f 1593/579/3 1594/580/3 1595/581/3 +f 1593/579/3 1595/581/3 1596/582/3 +f 1605/583/3 1606/584/3 1607/585/3 +f 1605/583/3 1607/585/3 1608/586/3 +f 1615/587/16 1616/588/16 135/589/16 +f 1637/590/1 1638/591/1 1639/592/1 +f 1637/590/1 1639/592/1 1640/593/1 +f 1641/594/1 1642/595/1 1643/596/1 +f 1641/594/1 1643/596/1 1644/597/1 +f 1645/598/1 1646/599/1 1647/600/1 +f 1645/598/1 1647/600/1 1648/601/1 +f 1653/602/3 1654/603/3 1655/604/3 +f 1653/602/3 1655/604/3 1656/605/3 +f 1654/603/3 1661/606/3 1662/607/3 +f 1654/603/3 1662/607/3 1655/604/3 +f 1661/606/3 1672/608/3 1673/609/3 +f 1661/606/3 1673/609/3 1662/607/3 +f 1672/608/3 1686/610/3 1687/611/3 +f 1672/608/3 1687/611/3 1673/609/3 +f 1693/612/1 1694/613/1 1695/614/1 +f 1693/612/1 1695/614/1 1696/615/1 +f 1714/616/1 1695/614/1 1694/613/1 +f 1714/616/1 1694/613/1 1715/617/1 +f 1726/618/1 1714/616/1 1715/617/1 +f 1726/618/1 1715/617/1 1727/619/1 +f 1735/620/1 1726/618/1 1727/619/1 +f 1735/620/1 1727/619/1 1736/621/1 +f 1740/622/76 1739/623/76 1759/624/76 +f 1740/622/76 1759/624/76 1760/625/76 +f 1764/626/77 1765/627/1 1766/628/1 +f 1765/627/1 1768/629/1 1769/630/1 +f 1765/627/1 1769/630/1 1766/628/1 +f 1793/631/78 1794/632/78 1795/633/78 +f 1793/631/79 1795/633/79 1796/634/79 +f 1828/635/3 1829/636/3 1830/637/3 +f 1828/635/3 1830/637/3 1831/638/3 +f 1831/638/3 1830/637/3 1832/639/3 +f 1831/638/3 1832/639/3 1833/640/3 +f 1832/639/3 1834/641/3 1835/642/3 +f 1832/639/3 1835/642/3 1833/640/3 +f 1870/643/80 1871/644/80 1872/645/80 +f 1870/643/80 1872/645/80 1873/646/80 +f 1874/647/81 1875/648/81 1876/649/81 +f 1874/647/81 1876/649/81 1877/650/81 +f 1878/651/82 1879/652/82 1880/653/82 +f 1878/651/82 1880/653/82 1881/654/82 +f 1882/655/83 1883/656/83 1884/657/83 +f 1882/655/83 1884/657/83 1885/658/83 +f 1886/659/1 1887/660/1 1888/661/1 +f 1886/659/1 1888/661/1 1889/662/1 +f 1890/663/3 1891/664/3 1892/665/3 +f 1890/663/3 1892/665/3 1893/666/3 +f 1894/667/25 1895/668/25 1896/669/25 +f 1894/667/25 1896/669/25 1897/670/25 +f 1898/671/27 1899/672/27 1900/673/27 +f 1898/671/27 1900/673/27 1901/674/27 +f 1902/675/16 1903/676/16 1904/677/16 +f 1902/675/16 1904/677/16 1905/678/16 +f 1906/679/26 1907/680/26 1908/681/26 +f 1906/679/26 1908/681/26 1909/682/26 +f 1984/683/1 1985/684/1 1986/685/1 +f 1984/683/1 1986/685/1 1987/686/1 +f 1988/687/1 1989/688/1 1985/684/1 +f 1988/687/1 1985/684/1 1984/683/1 +f 1990/689/1 1991/690/1 1989/688/1 +f 1990/689/1 1989/688/1 1988/687/1 +f 1992/691/1 1993/692/1 1991/690/1 +f 1992/691/1 1991/690/1 1990/689/1 +f 1994/693/1 1995/694/1 1996/695/1 +f 1994/693/1 1996/695/1 1997/696/1 +f 1987/686/1 1986/685/1 1999/697/1 +f 2018/698/3 2019/699/3 2020/700/3 +f 2018/698/3 2020/700/3 2021/701/3 +f 2040/702/3 2041/703/3 2042/704/3 +f 2040/702/3 2042/704/3 2043/705/3 +f 2043/705/3 2042/704/3 2044/706/3 +f 2043/705/3 2044/706/3 2045/707/3 +f 2045/707/3 2044/706/3 2046/708/3 +f 2045/707/3 2046/708/3 2047/709/3 +f 2047/709/3 2046/708/3 2048/710/3 +f 2047/709/3 2048/710/3 2049/711/3 +f 2050/712/3 2051/713/3 2052/714/3 +f 2050/712/3 2052/714/3 2053/715/3 +f 2053/715/3 2052/714/3 2054/716/3 +f 2053/715/3 2054/716/3 2055/717/3 +f 2055/717/3 2054/716/3 2056/718/3 +f 2055/717/3 2056/718/3 2057/719/3 +f 2057/719/3 2056/718/3 2041/703/3 +f 2057/719/3 2041/703/3 2040/702/3 +f 2154/720/84 2155/721/84 2156/722/84 +f 2154/720/84 2156/722/84 2157/723/84 +f 2190/724/85 2191/725/85 2192/726/85 +f 2190/724/86 2192/726/86 2193/727/86 +f 2194/728/87 2195/729/87 2196/730/87 +f 2194/728/88 2196/730/88 2197/731/88 +f 2202/732/84 2203/733/84 2204/734/84 +f 2202/732/84 2204/734/84 2205/735/84 +f 2206/736/84 2207/737/84 2208/738/84 +f 2206/736/84 2208/738/84 2209/739/84 +f 2210/740/84 2211/741/84 2212/742/84 +f 2210/740/84 2212/742/84 2213/743/84 +f 2214/744/84 2215/745/84 2216/746/84 +f 2214/744/84 2216/746/84 2217/747/84 +f 2218/748/89 2219/749/89 2220/750/89 +f 2218/748/89 2220/750/89 2221/751/89 +f 2222/752/89 2223/753/89 2224/754/89 +f 2222/752/89 2224/754/89 2225/755/89 +f 2226/756/89 2227/757/89 2228/758/89 +f 2226/756/89 2228/758/89 2229/759/89 +f 2230/760/89 2231/761/89 2232/762/89 +f 2230/760/89 2232/762/89 2233/763/89 +f 2234/764/89 2235/765/89 2236/766/89 +f 2234/764/89 2236/766/89 2237/767/89 +f 2238/768/89 2239/769/89 2240/770/89 +f 2238/768/89 2240/770/89 2241/771/89 +f 2242/772/89 2243/773/89 2244/774/89 +f 2242/772/89 2244/774/89 2245/775/89 +f 2246/776/89 2247/777/89 2248/778/89 +f 2246/776/89 2248/778/89 2249/779/89 +f 2282/780/90 2283/781/90 2284/782/90 +f 2282/780/90 2284/782/90 2285/783/90 +f 2286/784/91 2287/785/91 2288/786/91 +f 2286/784/91 2288/786/91 2289/787/91 +f 2290/788/92 2291/789/92 2292/790/92 +f 2290/788/92 2292/790/92 2293/791/92 +f 2298/792/93 2299/793/93 2300/794/93 +f 2298/792/93 2300/794/93 2301/795/93 +f 2302/796/94 2303/797/94 2304/798/94 +f 2302/796/94 2304/798/94 2305/799/94 +f 2310/800/95 2312/801/95 2313/802/95 +f 2314/803/96 2315/804/96 2316/805/96 +f 2314/803/96 2316/805/96 2317/806/96 +f 2318/807/97 2319/808/97 2320/809/97 +f 2318/807/97 2320/809/97 2321/810/97 +f 2322/811/98 2323/812/98 2324/813/98 +f 2322/811/98 2324/813/98 2325/814/98 +f 2326/815/99 2327/816/99 2328/817/99 +f 2326/815/99 2328/817/99 2329/818/99 +f 2330/819/100 2331/820/100 2332/821/100 +f 2330/819/100 2332/821/100 2333/822/100 +f 2334/823/101 2335/824/101 2336/825/101 +f 2334/823/101 2336/825/101 2337/826/101 +f 2338/827/102 2339/828/102 2340/829/102 +f 2338/827/102 2340/829/102 2341/830/102 +f 2342/831/103 2343/832/103 2344/833/103 +f 2346/834/90 2347/835/90 2348/836/90 +f 2346/834/90 2348/836/90 2349/837/90 +f 2350/838/103 2351/839/103 2352/840/103 +f 2350/838/103 2352/840/103 2353/841/103 +f 2354/842/102 2355/843/102 2356/844/102 +f 2354/842/102 2356/844/102 2357/845/102 +f 2358/846/101 2359/847/101 2360/848/101 +f 2358/846/101 2360/848/101 2361/849/101 +f 2362/850/100 2363/851/100 2364/852/100 +f 2362/850/100 2364/852/100 2365/853/100 +f 2366/854/99 2367/855/99 2368/856/99 +f 2366/854/99 2368/856/99 2369/857/99 +f 2370/858/98 2371/859/98 2372/860/98 +f 2370/858/98 2372/860/98 2373/861/98 +f 2374/862/97 2375/863/97 2376/864/97 +f 2374/862/97 2376/864/97 2377/865/97 +f 2378/866/104 2379/867/104 2380/868/104 +f 2378/866/104 2380/868/104 2381/869/104 +f 2382/870/105 2383/871/105 2384/872/105 +f 2382/870/105 2384/872/105 2385/873/105 +f 2390/874/94 2391/875/94 2392/876/94 +f 2390/874/94 2392/876/94 2393/877/94 +f 2394/878/93 2395/879/93 2396/880/93 +f 2394/878/93 2396/880/93 2397/881/93 +f 2402/882/106 2403/883/106 2404/884/106 +f 2402/882/107 2404/884/107 2405/885/107 +f 2441/886/32 2442/887/32 2443/888/32 +f 2441/886/32 2443/888/32 2444/889/32 +f 2445/890/3 2446/891/3 111/74/3 +f 2445/890/3 111/74/3 110/73/3 +f 2461/892/3 2462/893/3 2463/894/3 +f 2461/892/3 2463/894/3 2464/895/3 +f 2465/896/3 2466/897/3 2467/898/3 +f 2465/896/3 2467/898/3 2468/899/3 +f 2469/900/3 2470/901/3 2471/902/3 +f 2469/900/3 2471/902/3 2472/903/3 +f 2473/904/3 2474/905/3 2475/906/3 +f 2473/904/3 2475/906/3 2476/907/3 +f 2477/908/3 2478/909/3 2479/910/3 +f 2477/908/3 2479/910/3 2480/911/3 +f 2481/912/3 2482/913/3 2483/914/3 +f 2481/912/3 2483/914/3 2484/915/3 +f 2485/916/3 2486/917/3 2487/918/3 +f 2485/916/3 2487/918/3 2488/919/3 +f 2489/920/31 2490/921/31 2491/922/31 +f 2489/920/31 2491/922/31 2492/923/31 +f 2493/924/31 2494/925/31 2495/926/31 +f 2493/924/3 2495/926/3 2496/927/3 +f 2497/928/3 2498/929/3 2499/930/3 +f 2497/928/31 2499/930/31 2500/931/31 +f 2501/932/31 2502/933/31 2503/934/31 +f 2501/932/3 2503/934/3 2504/935/3 +f 2505/936/3 2506/937/3 2507/938/3 +f 2505/936/3 2507/938/3 2508/939/3 +f 2509/940/30 2510/941/30 2511/942/30 +f 2509/940/30 2511/942/30 2512/943/30 +f 2513/944/39 2514/945/39 2515/946/39 +f 2513/944/39 2515/946/39 2516/947/39 +f 2517/948/40 2518/949/40 2519/950/40 +f 2517/948/40 2519/950/40 2520/951/40 +f 2521/952/41 2522/953/41 2523/954/41 +f 2521/952/41 2523/954/41 2524/955/41 +f 2525/956/42 2526/957/42 2527/958/42 +f 2525/956/42 2527/958/42 2528/959/42 +f 2529/960/38 2530/961/38 2531/962/38 +f 2529/960/38 2531/962/38 2532/963/38 +f 2533/964/37 2534/965/37 2535/966/37 +f 2533/964/37 2535/966/37 2536/967/37 +f 2537/968/32 2538/969/32 2539/970/32 +f 2537/968/32 2539/970/32 2540/971/32 +f 2541/972/33 2542/973/33 2543/974/33 +f 2541/972/33 2543/974/33 2544/975/33 +f 2545/976/34 2546/977/34 2547/978/34 +f 2545/976/34 2547/978/34 2548/979/34 +f 2549/980/35 2550/981/35 2551/982/35 +f 2549/980/35 2551/982/35 2552/983/35 +f 2553/984/36 2554/985/36 2555/986/36 +f 2571/987/32 2572/988/32 2573/989/32 +f 2571/987/32 2573/989/32 2574/990/32 +f 2575/991/3 2576/992/3 2577/993/3 +f 2575/991/3 2577/993/3 2578/994/3 +f 2579/995/3 2580/996/3 2581/997/3 +f 2579/995/3 2581/997/3 2582/998/3 +f 2583/999/3 2584/1000/3 2585/1001/3 +f 2583/999/3 2585/1001/3 2586/1002/3 +f 2587/1003/3 2588/1004/3 2589/1005/3 +f 2587/1003/3 2589/1005/3 2590/1006/3 +f 2591/1007/3 2592/1008/3 2593/1009/3 +f 2591/1007/3 2593/1009/3 2594/1010/3 +f 2595/1011/3 2596/1012/3 2597/1013/3 +f 2595/1011/3 2597/1013/3 2598/1014/3 +f 2599/1015/108 2600/1016/108 2601/1017/108 +f 2599/1015/108 2601/1017/108 2602/1018/108 +f 2607/1019/109 2608/1020/109 2609/1021/109 +f 2607/1019/109 2609/1021/109 2610/1022/109 +f 2611/1023/110 2612/1024/110 2613/1025/110 +f 2611/1023/110 2613/1025/110 2614/1026/110 +f 2619/1027/111 2620/1028/111 2621/1029/111 +f 2619/1027/111 2621/1029/111 2622/1030/111 +f 2657/1031/27 2658/1032/27 2659/1033/27 +f 2657/1031/27 2659/1033/27 2660/1034/27 +f 2660/1034/27 2659/1033/27 2661/1035/27 +f 2660/1034/27 2661/1035/27 2662/1036/27 +f 2662/1036/27 2661/1035/27 2663/1037/27 +f 2662/1036/27 2663/1037/27 2664/1038/27 +f 2664/1038/27 2663/1037/27 2665/1039/27 +f 2664/1038/27 2665/1039/27 2666/1040/27 +f 2666/1040/27 2665/1039/27 2667/1041/27 +f 2666/1040/27 2667/1041/27 2668/1042/27 +f 2669/1043/27 2670/1044/27 2671/1045/27 +f 2669/1043/27 2671/1045/27 2672/1046/27 +f 2672/1046/27 2671/1045/27 2673/1047/27 +f 2672/1046/27 2673/1047/27 2674/1048/27 +f 2674/1048/27 2673/1047/27 2658/1032/27 +f 2674/1048/27 2658/1032/27 2657/1031/27 +f 2707/1049/112 2708/1050/112 2709/1051/112 +f 2707/1049/113 2709/1051/113 2710/1052/113 +f 2711/1053/114 2712/1054/114 2713/1055/114 +f 2711/1053/115 2713/1055/115 2714/1056/115 +f 2715/1057/116 2716/1058/116 2717/1059/116 +f 2715/1057/116 2717/1059/116 2718/1060/116 +f 2719/1061/117 2720/1062/117 2721/1063/117 +f 2719/1061/117 2721/1063/117 2722/1064/117 +f 2723/1065/118 2724/1066/118 2725/1067/118 +f 2723/1065/118 2725/1067/118 2726/1068/118 +f 2727/1069/119 2728/1070/119 2729/1071/119 +f 2727/1069/119 2729/1071/119 2730/1072/119 +f 2731/1073/120 2732/1074/120 2733/1075/120 +f 2731/1073/120 2733/1075/120 2734/1076/120 +f 2735/1077/121 2736/1078/121 2737/1079/121 +f 2735/1077/121 2737/1079/121 2738/1080/121 +f 2739/1081/122 2740/1082/122 2741/1083/122 +f 2739/1081/122 2741/1083/122 2742/1084/122 +f 2743/1085/122 2744/1086/122 2745/1087/122 +f 2743/1085/122 2745/1087/122 2746/1088/122 +f 2747/1089/122 2748/1090/122 2749/1091/122 +f 2747/1089/122 2749/1091/122 2750/1092/122 +f 2751/1093/122 2752/1094/122 2753/1095/122 +f 2751/1093/122 2753/1095/122 2754/1096/122 +f 2755/1097/122 2756/1098/122 2757/1099/122 +f 2755/1097/122 2757/1099/122 2758/1100/122 +f 2759/1101/122 2760/1102/122 2761/1103/122 +f 2759/1101/122 2761/1103/122 2762/1104/122 +f 2763/1105/122 2764/1106/122 2765/1107/122 +f 2763/1105/122 2765/1107/122 2766/1108/122 +f 2767/1109/122 2768/1110/122 2769/1111/122 +f 2767/1109/122 2769/1111/122 2770/1112/122 +f 2847/1113/123 2848/1114/123 2849/1115/123 +f 2847/1113/123 2849/1115/123 2850/1116/123 +f 2851/1117/124 2852/1118/124 2853/1119/124 +f 2855/1120/125 2856/1121/125 2857/1122/125 +f 2855/1120/125 2857/1122/125 2858/1123/125 +f 2859/1124/126 2860/1125/126 2861/1126/126 +f 2859/1124/126 2861/1126/126 2862/1127/126 +f 2881/1128/3 2882/1129/3 123/86/3 +f 2881/1128/3 123/86/3 122/85/3 +f 2901/1130/3 2902/1131/3 117/80/3 +f 2901/1130/3 117/80/3 116/79/3 +f 2945/1132/127 2946/1133/127 2947/1134/127 +f 2945/1132/127 2947/1134/127 2948/1135/127 +f 2957/1136/128 2958/1137/128 2959/1138/128 +f 2961/1139/129 2962/1140/129 2963/1141/129 +f 2961/1139/129 2963/1141/129 2964/1142/129 +f 3033/1143/130 3034/1144/130 3035/1145/130 +f 3033/1143/130 3035/1145/130 3036/1146/130 +f 3041/1147/131 3042/1148/131 3043/1149/131 +f 3045/1150/132 3046/1151/132 3047/1152/132 +f 3045/1150/133 3047/1152/133 3048/1153/133 +f 3049/1154/134 3050/1155/134 3051/1156/134 +f 3049/1154/134 3051/1156/134 3052/1157/134 +f 3057/1158/135 3058/1159/135 3059/1160/135 +f 3057/1158/135 3059/1160/135 3060/1161/135 +f 3073/1162/136 3074/1163/136 3075/1164/136 +f 3073/1162/136 3075/1164/136 3076/1165/136 +f 3081/1166/27 3082/1167/27 3083/1168/27 +f 3081/1166/27 3083/1168/27 3084/1169/27 +f 3105/1170/137 3106/1171/137 3107/1172/137 +f 3105/1170/137 3107/1172/137 3108/1173/137 +f 3109/1174/138 3110/1175/138 3111/1176/138 +f 3109/1174/138 3111/1176/138 3112/1177/138 +f 3113/1178/139 3114/1179/139 3115/1180/139 +f 3113/1178/139 3115/1180/139 3116/1181/139 +f 3117/1182/140 3118/1183/140 3119/1184/140 +f 3117/1182/140 3119/1184/140 3120/1185/140 +f 3121/1186/141 3122/1187/141 3123/1188/141 +f 3121/1186/141 3123/1188/141 3124/1189/141 +f 3125/1190/142 3126/1191/142 3127/1192/142 +f 3125/1190/142 3127/1192/142 3128/1193/142 +f 3129/1194/143 3130/1195/143 3131/1196/143 +f 3129/1194/143 3131/1196/143 3132/1197/143 +f 3133/1198/144 3134/1199/144 3135/1200/144 +f 3133/1198/144 3135/1200/144 3136/1201/144 +f 3137/1202/145 3138/1203/145 3139/1204/145 +f 3137/1202/145 3139/1204/145 3140/1205/145 +f 3141/1206/146 3142/1207/146 3143/1208/146 +f 3141/1206/146 3143/1208/146 3144/1209/146 +f 3145/1210/147 3146/1211/147 3147/1212/147 +f 3145/1210/147 3147/1212/147 3148/1213/147 +f 3149/1214/148 3150/1215/148 3151/1216/148 +f 3149/1214/148 3151/1216/148 3152/1217/148 +f 3153/1218/149 3154/1219/149 3155/1220/149 +f 3153/1218/149 3155/1220/149 3156/1221/149 +f 3157/1222/150 3158/1223/150 3159/1224/150 +f 3157/1222/150 3159/1224/150 3160/1225/150 +f 3161/1226/151 3162/1227/151 3163/1228/151 +f 3161/1226/151 3163/1228/151 3164/1229/151 +f 3165/1230/152 3166/1231/152 3167/1232/152 +f 3165/1230/152 3167/1232/152 3168/1233/152 +f 3169/1234/153 3170/1235/153 3171/1236/153 +f 3169/1234/153 3171/1236/153 3172/1237/153 +f 3173/1238/154 3174/1239/154 3175/1240/154 +f 3173/1238/154 3175/1240/154 3176/1241/154 +f 3177/1242/155 3178/1243/155 3179/1244/155 +f 3177/1242/155 3179/1244/155 3180/1245/155 +f 3181/1246/156 3182/1247/156 3183/1248/156 +f 3181/1246/156 3183/1248/156 3184/1249/156 +f 3185/1250/157 3186/1251/157 3187/1252/157 +f 3185/1250/157 3187/1252/157 3188/1253/157 +f 3193/1254/89 3197/1255/89 3198/1256/89 +f 3193/1254/89 3198/1256/89 3194/1257/89 +f 3197/1255/89 3199/1258/89 3200/1259/89 +f 3197/1255/89 3200/1259/89 3198/1256/89 +f 3201/1260/84 3202/1261/84 3203/1262/84 +f 3201/1260/84 3203/1262/84 3204/1263/84 +f 3206/1264/84 3201/1260/84 3204/1263/84 +f 3206/1264/84 3204/1263/84 3207/1265/84 +f 91/54/3 3213/1266/3 3214/1267/3 +f 91/54/3 3214/1267/3 89/52/3 +f 2445/890/3 3215/1268/3 3216/1269/3 +f 2445/890/3 3216/1269/3 2446/891/3 +f 2018/698/3 3217/1270/3 3218/1271/3 +f 2018/698/3 3218/1271/3 2019/699/3 +f 3217/1270/3 3219/1272/3 3220/1273/3 +f 3217/1270/3 3220/1273/3 3218/1271/3 +f 2901/1130/3 120/83/3 119/82/3 +f 2901/1130/3 119/82/3 2902/1131/3 +f 2881/1128/3 126/89/3 125/88/3 +f 2881/1128/3 125/88/3 2882/1129/3 +f 3225/1274/3 3226/1275/3 3227/1276/3 +f 3225/1274/3 3227/1276/3 3228/1277/3 +f 3229/1278/3 3230/1279/3 3231/1280/3 +f 3229/1278/3 3231/1280/3 3232/1281/3 +f 3233/1282/3 3234/1283/3 3235/1284/3 +f 3233/1282/3 3235/1284/3 3236/1285/3 +f 3237/1286/3 3238/1287/3 3239/1288/3 +f 3237/1286/3 3239/1288/3 3240/1289/3 +f 3241/1290/3 3242/1291/3 3243/1292/3 +f 3241/1290/3 3243/1292/3 3244/1293/3 +f 3245/1294/3 3246/1295/3 3247/1296/3 +f 3245/1294/3 3247/1296/3 3248/1297/3 +f 3249/1298/3 3250/1299/3 3251/1300/3 +f 3249/1298/3 3251/1300/3 3252/1301/3 +f 3261/1302/3 3262/1303/3 3263/1304/3 +f 3261/1302/3 3263/1304/3 3264/1305/3 +f 3265/1306/3 3266/1307/3 3267/1308/3 +f 3265/1306/3 3267/1308/3 3268/1309/3 +f 3268/1309/3 3267/1308/3 3269/1310/3 +f 3268/1309/3 3269/1310/3 3270/1311/3 +f 3270/1311/3 3269/1310/3 3271/1312/3 +f 3270/1311/3 3271/1312/3 3272/1313/3 +f 3273/1314/1 3274/1315/1 3275/1316/1 +f 3273/1314/1 3275/1316/1 3276/1317/1 +f 3274/1315/1 3277/1318/1 3278/1319/1 +f 3274/1315/1 3278/1319/1 3275/1316/1 +f 3277/1318/1 3279/1320/1 3280/1321/1 +f 3277/1318/1 3280/1321/1 3278/1319/1 +f 3281/1322/27 3282/1323/27 3283/1324/27 +f 3281/1322/27 3283/1324/27 3284/1325/27 +f 3293/1326/26 3294/1327/26 3295/1328/26 +f 3293/1326/26 3295/1328/26 3296/1329/26 +f 3297/1330/1 3298/1331/1 3299/1332/1 +f 3297/1330/1 3299/1332/1 3300/1333/1 +f 3317/1334/3 3318/1335/3 3319/1336/3 +f 3317/1334/3 3319/1336/3 3320/1337/3 +f 3321/1338/1 3297/1330/1 3300/1333/1 +f 3321/1338/1 3300/1333/1 3322/1339/1 +f 3319/1336/3 3323/1340/3 3324/1341/3 +f 3319/1336/3 3324/1341/3 3320/1337/3 +f 3324/1341/3 3325/1342/3 3326/1343/3 +f 3324/1341/3 3326/1343/3 3320/1337/3 +f 3326/1343/3 3327/1344/3 3317/1334/3 +f 3326/1343/3 3317/1334/3 3320/1337/3 +f 3299/1332/1 3328/1345/1 3329/1346/1 +f 3299/1332/1 3329/1346/1 3300/1333/1 +f 3300/1333/1 3329/1346/1 3330/1347/1 +f 3300/1333/1 3330/1347/1 3322/1339/1 +f 3365/1348/21 3366/1349/21 3367/1350/21 +f 3365/1348/21 3367/1350/21 3368/1351/21 +f 3369/1352/22 3370/1353/22 3371/1354/22 +f 3369/1352/22 3371/1354/22 3372/1355/22 +f 3373/1356/23 3374/1357/23 3375/1358/23 +f 3373/1356/23 3375/1358/23 3376/1359/23 +f 3377/1360/24 3378/1361/24 3379/1362/24 +f 3377/1360/24 3379/1362/24 3380/1363/24 +f 3389/1364/80 3390/1365/80 3391/1366/80 +f 3389/1364/80 3391/1366/80 3392/1367/80 +f 3393/1368/81 3394/1369/81 3395/1370/81 +f 3393/1368/81 3395/1370/81 3396/1371/81 +f 3397/1372/82 3398/1373/82 3399/1374/82 +f 3397/1372/82 3399/1374/82 3400/1375/82 +f 3401/1376/83 3402/1377/83 3403/1378/83 +f 3401/1376/83 3403/1378/83 3404/1379/83 +s 1 +f 1/1380/158 2/1381/159 3/1382/160 +f 4/1383/161 5/1384/162 6/1385/163 +f 7/1386/164 8/1387/165 9/1388/166 +f 10/1389/167 11/1390/168 12/1391/169 +f 13/1392/170 14/1393/171 15/1394/172 +f 61/1395/173 62/1396/174 63/1397/175 +f 64/1398/176 65/1399/177 66/1400/178 +f 67/1401/179 68/1402/180 69/91/16 +f 70/1403/181 71/1404/182 72/1405/183 +f 73/1406/161 74/1407/163 75/1408/184 +f 76/1409/185 77/1410/186 78/1411/187 +f 79/1412/188 80/1413/189 81/1414/190 +f 13/1392/170 82/1415/191 14/1393/171 +f 128/1416/192 129/1417/193 130/1418/194 +f 131/1419/195 132/1420/196 133/1421/197 +f 134/1422/198 135/589/16 136/1423/199 +f 1/1380/158 10/1389/167 12/1391/169 +f 1/1380/158 12/1391/169 2/1381/159 +f 5/1384/162 1/1380/158 3/1382/160 +f 5/1384/162 3/1382/160 6/1385/163 +f 7/1386/164 13/1392/170 15/1394/172 +f 7/1386/164 15/1394/172 8/1387/165 +f 10/1389/167 7/1386/164 9/1388/166 +f 10/1389/167 9/1388/166 11/1390/168 +f 137/1424/200 138/1425/201 2/1381/159 +f 137/1424/200 2/1381/159 12/1391/169 +f 139/1426/202 137/1424/200 12/1391/169 +f 139/1426/202 12/1391/169 11/1390/168 +f 138/1425/201 140/1427/203 3/1382/160 +f 138/1425/201 3/1382/160 2/1381/159 +f 140/1427/203 141/1428/204 6/1385/163 +f 140/1427/203 6/1385/163 3/1382/160 +f 14/1393/171 142/1429/205 64/1398/176 +f 14/1393/171 64/1398/176 15/1394/172 +f 64/1398/176 66/1400/178 8/1387/165 +f 64/1398/176 8/1387/165 15/1394/172 +f 66/1400/178 143/1430/206 9/1388/166 +f 66/1400/178 9/1388/166 8/1387/165 +f 143/1430/206 139/1426/202 11/1390/168 +f 143/1430/206 11/1390/168 9/1388/166 +f 144/1431/207 62/1396/174 61/1395/173 +f 144/1431/207 61/1395/173 145/1432/208 +f 69/91/16 147/93/16 67/1401/179 +f 148/1433/209 149/1434/173 150/1435/210 +f 148/1433/209 150/1435/210 151/1436/180 +f 152/1437/211 153/1438/212 154/1439/213 +f 152/1437/211 154/1439/213 155/1440/213 +f 156/1441/214 157/1442/215 158/1443/31 +f 156/1441/214 158/1443/31 159/1444/3 +f 160/1445/216 161/1446/216 157/1442/215 +f 160/1445/216 157/1442/215 156/1441/214 +f 137/1424/200 162/1447/217 163/1448/218 +f 137/1424/200 163/1448/218 138/1425/201 +f 164/1449/219 162/1447/217 137/1424/200 +f 164/1449/219 137/1424/200 139/1426/202 +f 138/1425/201 163/1448/218 165/1450/220 +f 138/1425/201 165/1450/220 140/1427/203 +f 165/1450/220 166/1451/221 141/1428/204 +f 165/1450/220 141/1428/204 140/1427/203 +f 63/1397/175 167/1452/222 143/1430/206 +f 63/1397/175 143/1430/206 66/1400/178 +f 167/1452/222 164/1449/219 139/1426/202 +f 167/1452/222 139/1426/202 143/1430/206 +f 61/1395/173 63/1397/175 66/1400/178 +f 61/1395/173 66/1400/178 65/1399/177 +f 180/1453/223 181/1454/224 182/1455/225 +f 180/1453/223 182/1455/225 183/1456/226 +f 188/1457/227 189/1458/228 181/1454/224 +f 188/1457/227 181/1454/224 180/1453/223 +f 181/1454/224 190/1459/229 191/1460/230 +f 181/1454/224 191/1460/230 182/1455/225 +f 194/1461/231 195/1462/232 196/1463/233 +f 194/1461/231 196/1463/233 197/1464/234 +f 188/1457/227 198/1465/235 199/1466/236 +f 188/1457/227 199/1466/236 189/1458/228 +f 189/1458/228 200/1467/237 190/1459/229 +f 189/1458/228 190/1459/229 181/1454/224 +f 190/1459/229 201/1468/238 202/1469/239 +f 190/1459/229 202/1469/239 191/1460/230 +f 205/1470/240 206/1471/241 195/1462/232 +f 205/1470/240 195/1462/232 194/1461/231 +f 195/1462/232 207/1472/242 208/1473/243 +f 195/1462/232 208/1473/243 196/1463/233 +f 209/1474/244 210/1475/245 211/1476/246 +f 209/1474/244 211/1476/246 212/1477/247 +f 199/1466/236 213/1478/248 200/1467/237 +f 199/1466/236 200/1467/237 189/1458/228 +f 200/1467/237 214/1479/249 201/1468/238 +f 200/1467/237 201/1468/238 190/1459/229 +f 201/1468/238 215/1480/250 216/1481/251 +f 201/1468/238 216/1481/251 202/1469/239 +f 219/1482/252 220/1483/253 206/1471/241 +f 219/1482/252 206/1471/241 205/1470/240 +f 206/1471/241 221/1484/254 207/1472/242 +f 206/1471/241 207/1472/242 195/1462/232 +f 222/1485/255 223/1486/256 208/1473/243 +f 222/1485/255 208/1473/243 207/1472/242 +f 211/1476/246 228/1487/257 229/1488/258 +f 211/1476/246 229/1488/258 230/1489/259 +f 213/1478/248 231/1490/260 214/1479/249 +f 213/1478/248 214/1479/249 200/1467/237 +f 214/1479/249 232/1491/261 215/1480/250 +f 214/1479/249 215/1480/250 201/1468/238 +f 233/1492/262 234/1493/263 235/1494/264 +f 233/1492/262 235/1494/264 236/1495/264 +f 237/1496/265 238/1497/266 220/1483/253 +f 237/1496/265 220/1483/253 219/1482/252 +f 220/1483/253 239/1498/267 221/1484/254 +f 220/1483/253 221/1484/254 206/1471/241 +f 221/1484/254 240/1499/268 222/1485/255 +f 221/1484/254 222/1485/255 207/1472/242 +f 241/1500/269 242/1501/270 243/1502/271 +f 241/1500/269 243/1502/271 244/1503/272 +f 228/1487/257 247/1504/273 248/1505/274 +f 228/1487/257 248/1505/274 229/1488/258 +f 231/1490/260 249/1506/275 232/1491/261 +f 231/1490/260 232/1491/261 214/1479/249 +f 250/1507/276 251/1508/276 234/1493/263 +f 250/1507/276 234/1493/263 252/1509/262 +f 238/1497/266 253/1510/277 239/1498/267 +f 238/1497/266 239/1498/267 220/1483/253 +f 239/1498/267 254/1511/278 240/1499/268 +f 239/1498/267 240/1499/268 221/1484/254 +f 255/1512/279 256/1513/280 242/1501/270 +f 255/1512/279 242/1501/270 241/1500/269 +f 248/1505/274 247/1504/273 259/1514/281 +f 248/1505/274 259/1514/281 260/1515/282 +f 261/1516/26 262/1517/26 251/1508/276 +f 261/1516/26 251/1508/276 250/1507/276 +f 253/1510/277 263/1518/283 254/1511/278 +f 253/1510/277 254/1511/278 239/1498/267 +f 264/1519/284 265/1520/285 256/1513/280 +f 264/1519/284 256/1513/280 255/1512/279 +f 268/1521/286 269/126/17 270/1522/17 +f 268/1521/286 270/1522/17 271/1523/287 +f 264/1519/284 272/1524/288 273/1525/289 +f 264/1519/284 273/1525/289 265/1520/285 +f 274/1526/1 275/1527/1 276/1528/290 +f 274/1526/1 276/1528/290 277/1529/290 +f 277/1529/290 276/1528/290 278/1530/291 +f 277/1529/290 278/1530/291 279/1531/291 +f 280/1532/292 281/1533/292 282/1534/293 +f 280/1532/292 282/1534/293 283/1535/294 +f 210/1475/245 284/1536/257 228/1487/257 +f 210/1475/245 228/1487/257 211/1476/246 +f 284/1536/257 285/1537/295 247/1504/273 +f 284/1536/257 247/1504/273 228/1487/257 +f 286/1538/280 287/1539/296 242/1501/270 +f 286/1538/280 242/1501/270 256/1513/280 +f 247/1504/273 285/1537/295 288/1540/297 +f 247/1504/273 288/1540/297 259/1514/281 +f 289/1541/298 286/1538/280 256/1513/280 +f 289/1541/298 256/1513/280 265/1520/285 +f 269/126/17 291/128/17 270/1522/17 +f 292/1542/299 289/1541/298 265/1520/285 +f 292/1542/299 265/1520/285 273/1525/289 +f 230/1489/259 229/1488/258 213/1478/248 +f 230/1489/259 213/1478/248 199/1466/236 +f 229/1488/258 248/1505/274 231/1490/260 +f 229/1488/258 231/1490/260 213/1478/248 +f 255/1512/279 241/1500/269 222/1485/255 +f 255/1512/279 222/1485/255 240/1499/268 +f 248/1505/274 260/1515/282 249/1506/275 +f 248/1505/274 249/1506/275 231/1490/260 +f 264/1519/284 255/1512/279 240/1499/268 +f 264/1519/284 240/1499/268 254/1511/278 +f 268/1521/286 271/1523/287 262/1517/26 +f 268/1521/286 262/1517/26 261/1516/26 +f 272/1524/288 264/1519/284 254/1511/278 +f 272/1524/288 254/1511/278 263/1518/283 +f 230/1489/259 293/1543/300 212/1477/247 +f 230/1489/259 212/1477/247 211/1476/246 +f 242/1501/270 287/1539/296 294/1544/301 +f 242/1501/270 294/1544/301 243/1502/271 +f 293/1543/300 230/1489/259 199/1466/236 +f 293/1543/300 199/1466/236 198/1465/235 +f 222/1485/255 241/1500/269 244/1503/272 +f 222/1485/255 244/1503/272 223/1486/256 +f 295/129/302 296/1545/302 297/130/303 +f 307/1546/304 308/1547/305 309/1548/306 +f 307/1546/304 309/1548/306 310/1549/307 +f 311/1550/308 312/1551/309 308/1547/305 +f 311/1550/308 308/1547/305 307/1546/304 +f 313/1552/310 314/1553/311 315/1554/312 +f 313/1552/310 315/1554/312 316/1555/310 +f 317/1556/313 318/1557/314 319/1558/315 +f 317/1556/313 319/1558/315 320/1559/316 +f 321/1560/317 322/1561/318 323/1562/319 +f 321/1560/317 323/1562/319 317/1556/313 +f 328/1563/320 329/1564/321 330/1565/322 +f 328/1563/320 330/1565/322 331/1566/323 +f 332/1567/324 333/1568/325 334/1569/326 +f 332/1567/324 334/1569/326 335/1570/327 +f 336/1571/328 337/1572/328 338/1573/329 +f 336/1571/328 338/1573/329 339/1574/330 +f 340/1575/331 328/1563/320 331/1566/323 +f 340/1575/331 331/1566/323 341/1576/332 +f 334/1569/326 342/1577/333 343/1578/334 +f 334/1569/326 343/1578/334 335/1570/327 +f 344/1579/335 345/1580/336 309/1548/306 +f 344/1579/335 309/1548/306 308/1547/305 +f 346/1581/337 318/1557/314 317/1556/313 +f 346/1581/337 317/1556/313 323/1562/319 +f 347/1582/338 344/1579/335 308/1547/305 +f 347/1582/338 308/1547/305 312/1551/309 +f 348/1583/339 321/1560/317 317/1556/313 +f 348/1583/339 317/1556/313 320/1559/316 +f 339/1574/330 338/1573/329 315/1554/312 +f 339/1574/330 315/1554/312 314/1553/311 +f 335/1570/327 343/1578/334 319/1558/315 +f 335/1570/327 319/1558/315 318/1557/314 +f 331/1566/323 330/1565/322 345/1580/336 +f 331/1566/323 345/1580/336 344/1579/335 +f 332/1567/324 335/1570/327 318/1557/314 +f 332/1567/324 318/1557/314 346/1581/337 +f 341/1576/332 331/1566/323 344/1579/335 +f 341/1576/332 344/1579/335 347/1582/338 +f 349/1584/340 350/1585/341 351/1586/342 +f 349/1584/340 351/1586/342 352/1587/343 +f 353/1588/344 354/1589/345 355/1590/346 +f 353/1588/344 355/1590/346 356/1591/346 +f 365/1592/347 366/1593/348 367/1594/349 +f 365/1592/347 367/1594/349 368/1595/350 +f 369/1596/351 370/1597/352 366/1593/348 +f 369/1596/351 366/1593/348 365/1592/347 +f 371/1598/353 372/1599/354 373/1600/355 +f 371/1598/353 373/1600/355 374/1601/356 +f 375/1602/357 376/1603/358 377/1604/359 +f 375/1602/357 377/1604/359 378/1605/360 +f 379/1606/361 380/1607/361 368/1595/350 +f 379/1606/361 368/1595/350 367/1594/349 +f 370/1597/352 369/1596/351 381/1608/362 +f 370/1597/352 381/1608/362 382/1609/362 +f 371/1598/353 374/1601/356 383/1610/363 +f 371/1598/353 383/1610/363 384/1611/363 +f 372/1599/354 377/1604/359 376/1603/358 +f 372/1599/354 376/1603/358 373/1600/355 +f 385/1612/364 386/1613/365 387/1614/366 +f 385/1612/364 387/1614/366 388/1615/367 +f 354/1589/345 353/1588/344 389/1616/368 +f 354/1589/345 389/1616/368 390/1617/369 +f 390/1617/369 389/1616/368 388/1615/367 +f 390/1617/369 388/1615/367 387/1614/366 +f 391/1618/370 392/1619/371 393/1620/372 +f 391/1618/370 393/1620/372 394/1621/373 +f 351/1586/342 350/1585/341 395/1622/374 +f 351/1586/342 395/1622/374 396/1623/375 +f 396/1623/375 395/1622/374 394/1621/373 +f 396/1623/375 394/1621/373 393/1620/372 +f 385/1612/364 397/1624/376 398/1625/376 +f 385/1612/364 398/1625/376 386/1613/365 +f 439/1626/377 440/1627/377 441/1628/378 +f 439/1626/377 441/1628/378 442/1629/378 +f 443/1630/42 444/1631/42 440/1627/377 +f 443/1630/42 440/1627/377 439/1626/377 +f 445/1632/379 446/1633/379 444/1631/42 +f 445/1632/379 444/1631/42 443/1630/42 +f 447/1634/16 448/1635/16 446/1633/379 +f 447/1634/16 446/1633/379 445/1632/379 +f 449/1636/380 450/1637/380 451/1638/25 +f 449/1636/380 451/1638/25 452/1639/25 +f 453/1640/39 454/1641/39 450/1637/380 +f 453/1640/39 450/1637/380 449/1636/380 +f 455/1642/45 456/1643/45 454/1641/39 +f 455/1642/45 454/1641/39 453/1640/39 +f 442/1629/378 441/1628/378 456/1643/45 +f 442/1629/378 456/1643/45 455/1642/45 +f 457/1644/381 458/1645/382 459/1646/383 +f 457/1644/381 459/1646/383 460/1647/384 +f 461/1648/385 457/1644/381 460/1647/384 +f 461/1648/385 460/1647/384 462/1649/386 +f 463/1650/387 461/1648/385 462/1649/386 +f 463/1650/387 462/1649/386 464/1651/388 +f 465/1652/389 463/1650/387 464/1651/388 +f 465/1652/389 464/1651/388 466/1653/389 +f 467/1654/380 468/1655/25 469/1656/25 +f 467/1654/380 469/1656/25 470/1657/380 +f 471/1658/39 467/1654/380 470/1657/380 +f 471/1658/39 470/1657/380 472/1659/39 +f 473/1660/45 471/1658/39 472/1659/39 +f 473/1660/45 472/1659/39 474/1661/45 +f 458/1645/382 473/1660/45 474/1661/45 +f 458/1645/382 474/1661/45 459/1646/383 +f 475/1662/390 476/1663/391 477/1664/391 +f 475/1662/390 477/1664/391 478/1665/392 +f 479/1666/393 475/1662/390 478/1665/392 +f 479/1666/393 478/1665/392 480/1667/394 +f 481/1668/395 479/1666/393 480/1667/394 +f 481/1668/395 480/1667/394 482/1669/396 +f 483/1670/397 481/1668/395 482/1669/396 +f 483/1670/397 482/1669/396 484/1671/397 +f 485/1672/380 486/1673/25 487/1674/25 +f 485/1672/380 487/1674/25 488/1675/380 +f 489/1676/39 485/1672/380 488/1675/380 +f 489/1676/39 488/1675/380 490/1677/39 +f 491/1678/45 489/1676/39 490/1677/39 +f 491/1678/45 490/1677/39 492/1679/45 +f 476/1663/391 491/1678/45 492/1679/45 +f 476/1663/391 492/1679/45 477/1664/391 +f 493/1680/398 494/1681/399 495/1682/400 +f 493/1680/398 495/1682/400 496/1683/401 +f 497/1684/402 493/1680/398 496/1683/401 +f 497/1684/402 496/1683/401 498/1685/403 +f 499/1686/404 497/1684/402 498/1685/403 +f 499/1686/404 498/1685/403 500/1687/405 +f 501/1688/406 499/1686/404 500/1687/405 +f 501/1688/406 500/1687/405 502/1689/406 +f 503/1690/380 504/1691/25 505/1692/25 +f 503/1690/380 505/1692/25 506/1693/380 +f 507/1694/39 503/1690/380 506/1693/380 +f 507/1694/39 506/1693/380 508/1695/39 +f 509/1696/45 507/1694/39 508/1695/39 +f 509/1696/45 508/1695/39 510/1697/45 +f 494/1681/399 509/1696/45 510/1697/45 +f 494/1681/399 510/1697/45 495/1682/400 +f 529/1698/46 530/1699/46 531/1700/26 +f 529/1698/46 531/1700/26 532/1701/26 +f 533/1702/42 534/1703/42 530/1699/46 +f 533/1702/42 530/1699/46 529/1698/46 +f 535/1704/379 536/1705/379 534/1703/42 +f 535/1704/379 534/1703/42 533/1702/42 +f 537/1706/16 538/1707/16 536/1705/379 +f 537/1706/16 536/1705/379 535/1704/379 +f 539/1708/407 540/1709/407 541/1710/408 +f 539/1708/407 541/1710/408 542/1711/409 +f 543/1712/410 544/1713/411 545/1714/412 +f 543/1712/410 545/1714/412 546/1715/410 +f 547/1716/45 548/1717/45 549/1718/413 +f 547/1716/45 549/1718/413 550/1719/413 +f 532/1701/26 531/1700/26 548/1717/45 +f 532/1701/26 548/1717/45 547/1716/45 +f 553/1720/414 554/1721/414 555/1722/415 +f 553/1720/414 555/1722/415 556/1723/415 +f 557/1724/416 558/1725/416 554/1721/414 +f 557/1724/416 554/1721/414 553/1720/414 +f 559/1726/417 560/1727/417 558/1725/416 +f 559/1726/417 558/1725/416 557/1724/416 +f 561/1728/418 562/1729/418 560/1727/417 +f 561/1728/418 560/1727/417 559/1726/417 +f 563/1730/419 564/1731/419 565/1732/420 +f 563/1730/419 565/1732/420 566/1733/420 +f 567/1734/421 568/1735/421 564/1731/419 +f 567/1734/421 564/1731/419 563/1730/419 +f 569/1736/422 570/1737/422 568/1735/421 +f 569/1736/422 568/1735/421 567/1734/421 +f 556/1723/415 555/1722/415 570/1737/422 +f 556/1723/415 570/1737/422 569/1736/422 +f 589/1738/423 590/1739/424 591/1740/425 +f 589/1738/423 591/1740/425 592/1741/426 +f 593/1742/427 594/1743/428 590/1739/424 +f 593/1742/427 590/1739/424 589/1738/423 +f 595/1744/429 596/1745/430 594/1743/428 +f 595/1744/429 594/1743/428 593/1742/427 +f 597/1746/431 598/1747/432 596/1745/430 +f 597/1746/431 596/1745/430 595/1744/429 +f 599/1748/433 600/1749/434 601/1750/435 +f 599/1748/433 601/1750/435 602/1751/435 +f 603/1752/436 604/1753/437 600/1749/434 +f 603/1752/436 600/1749/434 599/1748/433 +f 605/1754/438 606/1755/439 604/1753/437 +f 605/1754/438 604/1753/437 603/1752/436 +f 592/1741/426 591/1740/425 606/1755/439 +f 592/1741/426 606/1755/439 605/1754/438 +f 607/1756/440 608/1757/441 609/1758/442 +f 607/1756/440 609/1758/442 610/1759/443 +f 611/1760/444 607/1756/440 610/1759/443 +f 611/1760/444 610/1759/443 612/1761/445 +f 613/1762/446 611/1760/444 612/1761/445 +f 613/1762/446 612/1761/445 614/1763/447 +f 615/1764/448 613/1762/446 614/1763/447 +f 615/1764/448 614/1763/447 616/1765/448 +f 617/1766/449 618/1767/450 619/1768/450 +f 617/1766/449 619/1768/450 545/1714/412 +f 620/1769/451 617/1766/449 545/1714/412 +f 620/1769/451 545/1714/412 544/1713/411 +f 621/1770/452 620/1769/451 544/1713/411 +f 621/1770/452 544/1713/411 622/1771/453 +f 608/1757/441 621/1770/452 622/1771/453 +f 608/1757/441 622/1771/453 609/1758/442 +f 623/1772/454 624/1773/455 625/1774/456 +f 623/1772/454 625/1774/456 626/1775/457 +f 627/1776/458 623/1772/454 626/1775/457 +f 627/1776/458 626/1775/457 628/1777/459 +f 629/1778/460 627/1776/458 628/1777/459 +f 629/1778/460 628/1777/459 630/1779/461 +f 631/1780/462 629/1778/460 630/1779/461 +f 631/1780/462 630/1779/461 632/1781/462 +f 633/1782/463 634/1783/464 635/1784/464 +f 633/1782/463 635/1784/464 636/1785/465 +f 637/1786/466 633/1782/463 636/1785/465 +f 637/1786/466 636/1785/465 638/1787/467 +f 639/1788/468 637/1786/466 638/1787/467 +f 639/1788/468 638/1787/467 640/1789/469 +f 624/1773/455 639/1788/468 640/1789/469 +f 624/1773/455 640/1789/469 625/1774/456 +f 641/1790/470 642/1791/471 643/1792/472 +f 641/1790/470 643/1792/472 644/1793/470 +f 645/1794/473 646/1795/474 647/1796/475 +f 645/1794/473 647/1796/475 648/1797/476 +f 649/1798/477 650/1799/478 646/1795/474 +f 649/1798/477 646/1795/474 645/1794/473 +f 651/1800/479 652/1801/480 650/1799/478 +f 651/1800/479 650/1799/478 649/1798/477 +f 653/1802/481 654/1803/481 652/1801/480 +f 653/1802/481 652/1801/480 651/1800/479 +f 655/1804/482 656/1805/483 654/1803/481 +f 655/1804/482 654/1803/481 653/1802/481 +f 657/1806/484 658/1807/485 656/1805/483 +f 657/1806/484 656/1805/483 655/1804/482 +f 659/1808/486 660/1809/487 658/1807/485 +f 659/1808/486 658/1807/485 657/1806/484 +f 661/1810/488 662/1811/489 660/1809/487 +f 661/1810/488 660/1809/487 659/1808/486 +f 663/1812/490 664/1813/491 662/1811/489 +f 663/1812/490 662/1811/489 661/1810/488 +f 665/1814/492 666/1815/493 664/1813/491 +f 665/1814/492 664/1813/491 663/1812/490 +f 667/1816/494 668/1817/495 669/1818/493 +f 667/1816/494 669/1818/493 670/1819/492 +f 671/1820/496 672/1821/497 668/1817/495 +f 671/1820/496 668/1817/495 667/1816/494 +f 673/1822/498 674/1823/499 672/1821/497 +f 673/1822/498 672/1821/497 671/1820/496 +f 675/1824/500 676/1825/501 674/1823/499 +f 675/1824/500 674/1823/499 673/1822/498 +f 677/1826/502 678/1827/503 676/1825/501 +f 677/1826/502 676/1825/501 675/1824/500 +f 648/1797/476 647/1796/475 678/1827/503 +f 648/1797/476 678/1827/503 677/1826/502 +f 679/1828/504 680/1829/505 681/1830/506 +f 679/1828/504 681/1830/506 682/1831/507 +f 683/236/28 684/1832/508 685/1833/509 +f 683/236/28 685/1833/509 686/237/28 +f 684/1832/508 687/1834/510 688/1835/511 +f 684/1832/508 688/1835/511 685/1833/509 +f 687/1834/510 689/1836/512 690/1837/513 +f 687/1834/510 690/1837/513 688/1835/511 +f 689/1836/512 691/1838/514 692/1839/515 +f 689/1836/512 692/1839/515 690/1837/513 +f 691/1838/514 693/1840/516 694/1841/516 +f 691/1838/514 694/1841/516 692/1839/515 +f 693/1840/516 695/1842/517 696/1843/518 +f 693/1840/516 696/1843/518 694/1841/516 +f 695/1842/517 697/1844/519 698/1845/520 +f 695/1842/517 698/1845/520 696/1843/518 +f 699/1846/519 700/1847/521 701/1848/522 +f 699/1846/519 701/1848/522 702/1849/520 +f 700/1847/521 703/1850/523 704/1851/524 +f 700/1847/521 704/1851/524 701/1848/522 +f 703/1850/523 705/1852/525 706/1853/526 +f 703/1850/523 706/1853/526 704/1851/524 +f 705/1852/525 707/1854/527 708/1855/528 +f 705/1852/525 708/1855/528 706/1853/526 +f 707/1854/527 709/1856/529 710/1857/530 +f 707/1854/527 710/1857/530 708/1855/528 +f 709/1856/529 711/230/28 712/233/28 +f 709/1856/529 712/233/28 710/1857/530 +f 717/1858/531 718/238/29 719/241/29 +f 717/1858/531 719/241/29 720/1859/532 +f 731/250/29 733/1860/533 734/1861/533 +f 731/250/29 734/1861/533 732/251/29 +f 733/1860/533 735/1862/534 736/1863/535 +f 733/1860/533 736/1863/535 734/1861/533 +f 735/1862/534 737/1864/536 738/1865/537 +f 735/1862/534 738/1865/537 736/1863/535 +f 739/1866/538 740/1867/539 741/1868/540 +f 739/1866/538 741/1868/540 742/1869/537 +f 740/1867/539 743/1870/541 744/1871/541 +f 740/1867/539 744/1871/541 741/1868/540 +f 743/1870/541 745/1872/542 746/1873/543 +f 743/1870/541 746/1873/543 744/1871/541 +f 745/1872/542 747/1874/544 748/1875/545 +f 745/1872/542 748/1875/545 746/1873/543 +f 747/1874/544 749/1876/546 750/1877/547 +f 747/1874/544 750/1877/547 748/1875/545 +f 749/1876/546 717/1858/531 720/1859/532 +f 749/1876/546 720/1859/532 750/1877/547 +f 751/1878/548 752/1879/549 753/1880/550 +f 751/1878/548 753/1880/550 754/1881/548 +f 752/1879/549 755/1882/551 756/1883/552 +f 752/1879/549 756/1883/552 753/1880/550 +f 755/1882/551 757/1884/553 758/1885/554 +f 755/1882/551 758/1885/554 756/1883/552 +f 757/1884/553 759/1886/555 760/1887/556 +f 757/1884/553 760/1887/556 758/1885/554 +f 759/1886/555 761/1888/557 762/1889/557 +f 759/1886/555 762/1889/557 760/1887/556 +f 761/1888/557 763/1890/558 764/1891/559 +f 761/1888/557 764/1891/559 762/1889/557 +f 763/1890/558 765/1892/560 766/1893/561 +f 763/1890/558 766/1893/561 764/1891/559 +f 767/1894/560 768/1895/562 769/1896/562 +f 767/1894/560 769/1896/562 770/1897/561 +f 768/1895/562 771/1898/563 772/1899/564 +f 768/1895/562 772/1899/564 769/1896/562 +f 771/1898/563 773/1900/565 774/1901/565 +f 771/1898/563 774/1901/565 772/1899/564 +f 773/1900/565 775/1902/566 776/1903/566 +f 773/1900/565 776/1903/566 774/1901/565 +f 775/1902/566 777/1904/567 778/1905/567 +f 775/1902/566 778/1905/567 776/1903/566 +f 777/1904/567 779/1906/568 780/1907/568 +f 777/1904/567 780/1907/568 778/1905/567 +f 779/1906/568 781/1908/569 782/1909/569 +f 779/1906/568 782/1909/569 780/1907/568 +f 781/1908/569 783/1910/570 784/1911/570 +f 781/1908/569 784/1911/570 782/1909/569 +f 783/1910/570 751/1878/548 754/1881/548 +f 783/1910/570 754/1881/548 784/1911/570 +f 785/1912/571 786/1913/548 787/1914/572 +f 785/1912/571 787/1914/572 788/1915/573 +f 786/1913/548 789/1916/570 790/1917/574 +f 786/1913/548 790/1917/574 787/1914/572 +f 789/1916/570 791/1918/569 792/1919/575 +f 789/1916/570 792/1919/575 790/1917/574 +f 791/1918/569 793/1920/568 794/1921/576 +f 791/1918/569 794/1921/576 792/1919/575 +f 793/1920/568 795/1922/567 796/1923/577 +f 793/1920/568 796/1923/577 794/1921/576 +f 795/1922/567 797/1924/566 798/1925/578 +f 795/1922/567 798/1925/578 796/1923/577 +f 797/1924/566 799/1926/565 800/1927/579 +f 797/1924/566 800/1927/579 798/1925/578 +f 799/1926/565 801/1928/580 802/1929/581 +f 799/1926/565 802/1929/581 800/1927/579 +f 801/1928/580 803/1930/582 804/1931/583 +f 801/1928/580 804/1931/583 802/1929/581 +f 803/1930/582 805/1932/584 806/1933/585 +f 803/1930/582 806/1933/585 804/1931/583 +f 807/1934/584 808/1935/586 809/1936/587 +f 807/1934/584 809/1936/587 810/1937/585 +f 808/1935/586 811/1938/557 812/1939/588 +f 808/1935/586 812/1939/588 809/1936/587 +f 811/1938/557 813/1940/589 814/1941/590 +f 811/1938/557 814/1941/590 812/1939/588 +f 813/1940/589 815/1942/591 816/1943/592 +f 813/1940/589 816/1943/592 814/1941/590 +f 815/1942/591 817/1944/593 818/1945/507 +f 815/1942/591 818/1945/507 816/1943/592 +f 817/1944/593 785/1912/571 788/1915/573 +f 817/1944/593 788/1915/573 818/1945/507 +f 819/1946/594 820/1947/595 821/1948/596 +f 819/1946/594 821/1948/596 822/1949/597 +f 823/1950/598 819/1946/594 822/1949/597 +f 823/1950/598 822/1949/597 824/1951/599 +f 825/1952/600 823/1950/598 824/1951/599 +f 825/1952/600 824/1951/599 826/1953/601 +f 827/1954/602 825/1952/600 826/1953/601 +f 827/1954/602 826/1953/601 828/1955/602 +f 829/1956/603 827/1954/602 828/1955/602 +f 829/1956/603 828/1955/602 830/1957/604 +f 831/1958/605 829/1956/603 830/1957/604 +f 831/1958/605 830/1957/604 832/1959/606 +f 833/1960/607 831/1958/605 832/1959/606 +f 833/1960/607 832/1959/606 834/1961/608 +f 835/1962/609 833/1960/607 834/1961/608 +f 835/1962/609 834/1961/608 836/1963/610 +f 837/1964/611 835/1962/609 836/1963/610 +f 837/1964/611 836/1963/610 838/1965/612 +f 839/1966/613 837/1964/611 838/1965/612 +f 839/1966/613 838/1965/612 840/1967/614 +f 841/1968/615 842/1969/613 843/1970/614 +f 841/1968/615 843/1970/614 844/1971/616 +f 845/1972/617 841/1968/615 844/1971/616 +f 845/1972/617 844/1971/616 846/1973/618 +f 847/1974/619 845/1972/617 846/1973/618 +f 847/1974/619 846/1973/618 848/1975/620 +f 849/1976/621 847/1974/619 848/1975/620 +f 849/1976/621 848/1975/620 850/1977/622 +f 851/1978/623 849/1976/621 850/1977/622 +f 851/1978/623 850/1977/622 852/1979/624 +f 820/1947/595 851/1978/623 852/1979/624 +f 820/1947/595 852/1979/624 821/1948/596 +f 853/1980/625 854/1981/625 855/1982/38 +f 853/1980/625 855/1982/38 856/1983/38 +f 857/1984/626 858/1985/626 854/1981/625 +f 857/1984/626 854/1981/625 853/1980/625 +f 859/1986/627 860/1987/627 858/1985/626 +f 859/1986/627 858/1985/626 857/1984/626 +f 861/1988/628 862/1989/628 863/1990/25 +f 861/1988/628 863/1990/25 864/1991/25 +f 865/1992/39 866/1993/39 862/1989/628 +f 865/1992/39 862/1989/628 861/1988/628 +f 873/1994/629 874/1995/630 875/1996/631 +f 873/1994/629 875/1996/631 876/1997/631 +f 877/1998/632 878/1999/632 874/1995/630 +f 877/1998/632 874/1995/630 873/1994/629 +f 879/2000/633 880/2001/633 878/1999/632 +f 879/2000/633 878/1999/632 877/1998/632 +f 881/2002/634 882/2003/634 883/2004/635 +f 881/2002/634 883/2004/635 884/2005/635 +f 885/2006/636 886/2007/636 882/2003/634 +f 885/2006/636 882/2003/634 881/2002/634 +f 876/1997/631 875/1996/631 886/2007/636 +f 876/1997/631 886/2007/636 885/2006/636 +f 983/2008/625 984/2009/38 985/2010/38 +f 983/2008/625 985/2010/38 986/2011/625 +f 987/2012/626 983/2008/625 986/2011/625 +f 987/2012/626 986/2011/625 988/2013/626 +f 989/2014/637 987/2012/626 988/2013/626 +f 989/2014/637 988/2013/626 990/2015/16 +f 991/2016/628 992/2017/25 993/2018/25 +f 991/2016/628 993/2018/25 994/2019/628 +f 995/2020/39 991/2016/628 994/2019/628 +f 995/2020/39 994/2019/628 996/2021/39 +f 1029/2022/638 1030/2023/639 1031/2024/639 +f 1029/2022/638 1031/2024/639 1032/2025/638 +f 1041/2026/16 1042/2027/627 1043/2028/379 +f 1041/2026/16 1043/2028/379 1044/2029/379 +f 1049/2030/640 1050/2031/640 1051/2032/641 +f 1049/2030/640 1051/2032/641 1052/2033/642 +f 1052/2033/642 1051/2032/641 1053/2034/643 +f 1052/2033/642 1053/2034/643 1054/2035/644 +f 1055/2036/645 1056/2037/646 1057/2038/646 +f 1055/2036/645 1057/2038/646 1058/2039/645 +f 1059/2040/647 1060/2041/648 1061/2042/649 +f 1059/2040/647 1061/2042/649 1062/2043/649 +f 1063/2044/650 1064/2045/650 1065/2046/650 +f 1063/2044/650 1065/2046/650 1066/2047/650 +f 1067/2048/651 1068/2049/652 1069/2050/648 +f 1067/2048/651 1069/2050/648 1070/2051/647 +f 1071/2052/653 1072/2053/654 1073/2054/654 +f 1071/2052/653 1073/2054/654 1074/2055/653 +f 1072/2053/654 1075/2056/655 1076/2057/655 +f 1072/2053/654 1076/2057/655 1073/2054/654 +f 1075/2056/655 1077/2058/656 1078/2059/656 +f 1075/2056/655 1078/2059/656 1076/2057/655 +f 1077/2058/656 1079/2060/657 1080/2061/657 +f 1077/2058/656 1080/2061/657 1078/2059/656 +f 1079/2060/657 1081/2062/658 1082/2063/658 +f 1079/2060/657 1082/2063/658 1080/2061/657 +f 1083/2064/658 1084/2065/659 1085/2066/659 +f 1083/2064/658 1085/2066/659 1086/2067/658 +f 1084/2065/659 1087/2068/660 1088/2069/660 +f 1084/2065/659 1088/2069/660 1085/2066/659 +f 1087/2068/660 1071/2052/653 1074/2055/653 +f 1087/2068/660 1074/2055/653 1088/2069/660 +f 1107/2070/661 1108/2071/661 1109/2072/662 +f 1107/2070/661 1109/2072/662 1110/2073/663 +f 1111/2074/664 1112/2075/664 1113/2076/665 +f 1111/2074/664 1113/2076/665 1114/2077/665 +f 1115/2078/666 1116/2079/667 1117/2080/668 +f 1115/2078/666 1117/2080/668 1118/2081/669 +f 1119/2082/670 1120/2083/670 1121/2084/671 +f 1119/2082/670 1121/2084/671 1122/2085/671 +f 1123/2086/672 1124/2087/673 1125/2088/672 +f 1123/2086/672 1125/2088/672 1126/2089/673 +f 1127/2090/674 1128/2091/674 1129/2092/675 +f 1127/2090/674 1129/2092/675 1130/2093/676 +f 1131/2094/677 1132/2095/678 1133/2096/679 +f 1131/2094/677 1133/2096/679 1134/2097/678 +f 1135/2098/680 1136/2099/681 1137/2100/682 +f 1135/2098/680 1137/2100/682 1138/2101/683 +f 1203/2102/26 1204/2103/684 1205/2104/684 +f 1203/2102/26 1205/2104/684 1206/2105/26 +f 1204/2103/684 1207/2106/685 1208/2107/686 +f 1204/2103/684 1208/2107/686 1205/2104/684 +f 1209/2108/685 1203/2102/26 1206/2105/26 +f 1209/2108/685 1206/2105/26 1210/2109/686 +f 1211/2110/687 1212/2111/688 1213/2112/689 +f 1211/2110/687 1213/2112/689 1214/2113/690 +f 1215/2114/688 1216/2115/691 1217/2116/692 +f 1215/2114/688 1217/2116/692 1218/2117/693 +f 1216/2115/691 1211/2110/687 1214/2113/690 +f 1216/2115/691 1214/2113/690 1217/2116/692 +f 1219/2118/694 1220/2119/695 1221/2120/696 +f 1219/2118/694 1221/2120/696 1222/2121/697 +f 1223/2122/698 1224/2123/699 1225/2124/700 +f 1223/2122/698 1225/2124/700 1226/2125/701 +f 1224/2123/699 1219/2118/694 1222/2121/697 +f 1224/2123/699 1222/2121/697 1225/2124/700 +f 1227/2126/26 1228/2127/702 1229/2128/702 +f 1227/2126/26 1229/2128/702 1230/2129/26 +f 1228/2127/702 1231/2130/703 1232/2131/704 +f 1228/2127/702 1232/2131/704 1229/2128/702 +f 1233/2132/705 1227/2126/26 1230/2129/26 +f 1233/2132/705 1230/2129/26 1234/2133/704 +f 1235/2134/706 1236/2135/707 1237/2136/708 +f 1235/2134/706 1237/2136/708 1238/2137/709 +f 1236/2135/707 1239/2138/1 1240/2139/1 +f 1236/2135/707 1240/2139/1 1237/2136/708 +f 1239/2138/1 1241/2140/710 1242/2141/710 +f 1239/2138/1 1242/2141/710 1240/2139/1 +f 1243/2142/710 1244/2143/711 1245/2144/711 +f 1243/2142/710 1245/2144/711 1246/2145/710 +f 1244/2143/711 1247/2146/712 1248/2147/713 +f 1244/2143/711 1248/2147/713 1245/2144/711 +f 1247/2146/712 1249/2148/3 1250/2149/3 +f 1247/2146/712 1250/2149/3 1248/2147/713 +f 1249/2148/3 1251/2150/714 1252/2151/714 +f 1249/2148/3 1252/2151/714 1250/2149/3 +f 1251/2150/714 1235/2134/706 1238/2137/709 +f 1251/2150/714 1238/2137/709 1252/2151/714 +f 1253/2152/715 1254/2153/716 1255/2154/717 +f 1253/2152/715 1255/2154/717 1256/2155/718 +f 1254/2153/716 1257/2156/1 1258/2157/1 +f 1254/2153/716 1258/2157/1 1255/2154/717 +f 1259/2158/3 1260/2159/719 1261/2160/720 +f 1259/2158/3 1261/2160/720 1262/2161/3 +f 1260/2159/719 1253/2152/715 1256/2155/718 +f 1260/2159/719 1256/2155/718 1261/2160/720 +f 1263/2162/721 1264/2163/721 1265/2164/721 +f 1263/2162/721 1265/2164/721 1266/2165/721 +f 1267/2166/722 1268/2167/722 1269/2168/722 +f 1267/2166/722 1269/2168/722 1270/2169/722 +f 1271/2170/723 1272/2171/723 1273/2172/724 +f 1271/2170/723 1273/2172/724 1274/2173/723 +f 1275/2174/725 1276/2175/726 1277/2176/725 +f 1275/2174/725 1277/2176/725 1278/2177/726 +f 1295/2178/26 1296/2179/42 1297/2180/42 +f 1295/2178/26 1297/2180/42 1298/2181/26 +f 1296/2179/42 1299/2182/16 1300/2183/16 +f 1296/2179/42 1300/2183/16 1297/2180/42 +f 1299/2182/16 1301/2184/36 1302/2185/36 +f 1299/2182/16 1302/2185/36 1300/2183/16 +f 1301/2184/36 1303/2186/27 1304/2187/27 +f 1301/2184/36 1304/2187/27 1302/2185/36 +f 1303/2186/27 1305/2188/727 1306/2189/33 +f 1303/2186/27 1306/2189/33 1304/2187/27 +f 1307/2190/728 1308/2191/25 1309/2192/25 +f 1307/2190/728 1309/2192/25 1310/2193/33 +f 1308/2191/25 1311/2194/39 1312/2195/39 +f 1308/2191/25 1312/2195/39 1309/2192/25 +f 1311/2194/39 1295/2178/26 1298/2181/26 +f 1311/2194/39 1298/2181/26 1312/2195/39 +f 1315/2196/26 1316/2197/42 1317/2198/42 +f 1315/2196/26 1317/2198/42 1318/2199/26 +f 1316/2197/42 1319/2200/16 1320/2201/16 +f 1316/2197/42 1320/2201/16 1317/2198/42 +f 1319/2200/16 1321/2202/36 1322/2203/36 +f 1319/2200/16 1322/2203/36 1320/2201/16 +f 1321/2202/36 1323/2204/27 1324/2205/27 +f 1321/2202/36 1324/2205/27 1322/2203/36 +f 1323/2204/27 1325/2206/33 1326/2207/33 +f 1323/2204/27 1326/2207/33 1324/2205/27 +f 1325/2206/33 1327/2208/25 1328/2209/25 +f 1325/2206/33 1328/2209/25 1326/2207/33 +f 1327/2208/25 1329/2210/729 1330/2211/730 +f 1327/2208/25 1330/2211/730 1328/2209/25 +f 1331/2212/731 1315/2196/26 1318/2199/26 +f 1331/2212/731 1318/2199/26 1332/2213/39 +f 1335/2214/732 1336/2215/733 1337/2216/734 +f 1335/2214/732 1337/2216/734 1338/2217/735 +f 1336/2215/733 1339/2218/736 1340/2219/737 +f 1336/2215/733 1340/2219/737 1337/2216/734 +f 1339/2218/736 1341/2220/738 1342/2221/739 +f 1339/2218/736 1342/2221/739 1340/2219/737 +f 1341/2220/738 1343/2222/740 1344/2223/741 +f 1341/2220/738 1344/2223/741 1342/2221/739 +f 1338/2217/735 1337/2216/734 1345/2224/742 +f 1338/2217/735 1345/2224/742 1346/2225/743 +f 1337/2216/734 1340/2219/737 1347/2226/742 +f 1337/2216/734 1347/2226/742 1345/2224/742 +f 1340/2219/737 1342/2221/739 1348/2227/742 +f 1340/2219/737 1348/2227/742 1347/2226/742 +f 1348/2227/742 1342/2221/739 1344/2223/741 +f 1348/2227/742 1344/2223/741 1349/2228/742 +f 1350/2229/744 1351/2230/745 1352/2231/746 +f 1350/2229/744 1352/2231/746 1353/2232/747 +f 1351/2230/745 1354/2233/745 1355/2234/748 +f 1351/2230/745 1355/2234/748 1352/2231/746 +f 1355/2234/748 1354/2233/745 1356/2235/745 +f 1355/2234/748 1356/2235/745 1357/2236/749 +f 1357/2236/749 1356/2235/745 1358/2237/745 +f 1357/2236/749 1358/2237/745 1359/2238/750 +f 1360/2239/751 1361/2240/752 1362/2241/753 +f 1360/2239/751 1362/2241/753 1363/2242/754 +f 1363/2242/754 1362/2241/753 1364/2243/755 +f 1363/2242/754 1364/2243/755 1365/2244/756 +f 1365/2244/756 1364/2243/755 1366/2245/757 +f 1365/2244/756 1366/2245/757 1367/2246/758 +f 1366/2245/757 1368/2247/759 1369/2248/760 +f 1366/2245/757 1369/2248/760 1367/2246/758 +f 1370/2249/761 1371/2250/762 1344/2223/741 +f 1370/2249/761 1344/2223/741 1343/2222/740 +f 1371/2250/762 1372/2251/763 1349/2228/742 +f 1371/2250/762 1349/2228/742 1344/2223/741 +f 1372/2251/763 1373/2252/764 1358/2237/745 +f 1372/2251/763 1358/2237/745 1349/2228/742 +f 1359/2238/750 1374/2253/765 1375/2254/766 +f 1359/2238/750 1375/2254/766 1368/2247/759 +f 1361/2240/752 1353/2232/747 1352/2231/746 +f 1361/2240/752 1352/2231/746 1362/2241/753 +f 1362/2241/753 1352/2231/746 1355/2234/748 +f 1362/2241/753 1355/2234/748 1364/2243/755 +f 1364/2243/755 1355/2234/748 1357/2236/749 +f 1364/2243/755 1357/2236/749 1366/2245/757 +f 1357/2236/749 1359/2238/750 1368/2247/759 +f 1357/2236/749 1368/2247/759 1366/2245/757 +f 1376/2255/767 1369/2248/760 1368/2247/759 +f 1376/2255/767 1368/2247/759 1375/2254/766 +f 1346/2225/743 1345/2224/742 1351/2230/745 +f 1346/2225/743 1351/2230/745 1350/2229/744 +f 1345/2224/742 1347/2226/742 1354/2233/745 +f 1345/2224/742 1354/2233/745 1351/2230/745 +f 1354/2233/745 1347/2226/742 1348/2227/742 +f 1354/2233/745 1348/2227/742 1356/2235/745 +f 1356/2235/745 1348/2227/742 1349/2228/742 +f 1356/2235/745 1349/2228/742 1358/2237/745 +f 1373/2252/764 1374/2253/765 1359/2238/750 +f 1373/2252/764 1359/2238/750 1358/2237/745 +f 1381/2256/768 1382/2257/769 1383/2258/770 +f 1381/2256/768 1383/2258/770 1384/2259/769 +f 1385/2260/771 1386/2261/771 1387/2262/772 +f 1385/2260/771 1387/2262/772 1388/2263/771 +f 1397/2264/773 1398/2265/773 1399/2266/774 +f 1397/2264/773 1399/2266/774 1400/2267/775 +f 1401/2268/776 1402/2269/776 1403/2270/776 +f 1401/2268/776 1403/2270/776 1404/2271/776 +f 1405/2272/777 1406/2273/778 1407/2274/778 +f 1405/2272/777 1407/2274/778 1408/2275/778 +f 1409/2276/779 1410/2277/779 1411/2278/779 +f 1409/2276/779 1411/2278/779 1412/2279/780 +f 1413/2280/781 1414/2281/781 1415/2282/782 +f 1413/2280/781 1415/2282/782 1416/2283/782 +f 1417/2284/783 1418/2285/784 1419/2286/784 +f 1417/2284/783 1419/2286/784 1420/2287/784 +f 1421/2288/785 1422/2289/785 1423/2290/785 +f 1421/2288/785 1423/2290/785 1424/2291/785 +f 1425/2292/786 1426/2293/787 1427/2294/787 +f 1425/2292/786 1427/2294/787 1428/2295/787 +f 1429/2296/788 1430/2297/788 1431/2298/788 +f 1429/2296/788 1431/2298/788 1432/2299/788 +f 1433/2300/789 1434/2301/789 1435/2302/789 +f 1433/2300/789 1435/2302/789 1436/2303/789 +f 1437/2304/790 1438/2305/790 1439/2306/790 +f 1437/2304/790 1439/2306/790 1440/2307/790 +f 1441/2308/791 1442/2309/791 1443/2310/791 +f 1441/2308/791 1443/2310/791 1444/2311/791 +f 1445/2312/792 1446/2313/792 1447/2314/793 +f 1445/2312/792 1447/2314/793 1448/2315/794 +f 1449/2316/795 1450/2317/795 1451/2318/796 +f 1449/2316/795 1451/2318/796 1452/2319/795 +f 1453/512/797 1454/2320/798 1455/513/798 +f 1457/2321/799 1458/2322/800 1459/2323/799 +f 1457/2321/799 1459/2323/799 1460/2324/799 +f 1461/2325/801 1462/2326/801 1463/2327/801 +f 1461/2325/801 1463/2327/801 1464/2328/801 +f 1469/519/802 1470/2329/802 1471/520/802 +f 1473/522/803 1474/2330/804 1475/523/803 +f 1485/2331/805 1486/2332/805 1487/2333/805 +f 1485/2331/805 1487/2333/805 1488/2334/805 +f 1493/2335/806 1494/2336/807 1495/2337/806 +f 1493/2335/806 1495/2337/806 1496/2338/806 +f 1497/2339/808 1498/2340/808 1499/2341/808 +f 1497/2339/808 1499/2341/808 1500/2342/808 +f 1501/2343/809 1502/2344/810 1503/2345/809 +f 1501/2343/809 1503/2345/809 1504/2346/809 +f 1505/2347/811 1506/2348/811 1507/2349/811 +f 1505/2347/811 1507/2349/811 1508/2350/811 +f 1513/2351/812 1514/2352/813 1515/2353/814 +f 1513/2351/812 1515/2353/814 1516/2354/813 +f 1517/2355/815 1518/2356/815 1519/2357/815 +f 1517/2355/815 1519/2357/815 1520/2358/815 +f 1521/2359/816 1522/2360/816 1523/2361/816 +f 1521/2359/816 1523/2361/816 1524/2362/816 +f 1525/2363/817 1526/2364/818 1527/2365/818 +f 1525/2363/817 1527/2365/818 1528/2366/819 +f 1529/2367/820 1530/2368/821 1531/2369/820 +f 1529/2367/820 1531/2369/820 1532/2370/821 +f 1533/2371/572 1534/2372/581 1535/2373/822 +f 1533/2371/572 1535/2373/822 1536/2374/573 +f 1536/2374/573 1535/2373/822 679/1828/504 +f 1536/2374/573 679/1828/504 682/1831/507 +f 1537/2375/823 1538/2376/824 1534/2372/581 +f 1537/2375/823 1534/2372/581 1533/2371/572 +f 680/1829/505 1539/2377/825 1540/2378/826 +f 680/1829/505 1540/2378/826 681/1830/506 +f 1541/2379/827 1542/2380/828 1538/2376/824 +f 1541/2379/827 1538/2376/824 1537/2375/823 +f 1543/2381/576 1544/2382/829 1542/2380/828 +f 1543/2381/576 1542/2380/828 1541/2379/827 +f 1549/546/28 1550/545/28 1551/2383/471 +f 1549/546/28 1551/2383/471 1552/2384/472 +f 1552/2384/472 1551/2383/471 643/1792/472 +f 1552/2384/472 643/1792/472 642/1791/471 +f 1553/2385/830 1554/2386/831 641/1790/470 +f 1553/2385/830 641/1790/470 644/1793/470 +f 1555/2387/832 1556/2388/832 1554/2386/831 +f 1555/2387/832 1554/2386/831 1553/2385/830 +f 352/1587/343 1565/2389/833 1566/2390/833 +f 352/1587/343 1566/2390/833 349/1584/340 +f 278/1530/291 283/1535/834 1567/2391/293 +f 278/1530/291 1567/2391/293 1568/2392/291 +f 1597/2393/835 1598/2394/835 1599/2395/836 +f 1597/2393/835 1599/2395/836 1600/2396/836 +f 1601/2397/380 1602/2398/380 1603/2399/25 +f 1601/2397/380 1603/2399/25 1604/2400/837 +f 70/1403/181 72/1405/183 80/1413/189 +f 70/1403/181 80/1413/189 79/1412/188 +f 75/1408/184 74/1407/163 71/1404/182 +f 75/1408/184 71/1404/182 70/1403/181 +f 76/1409/185 78/1411/187 82/1415/191 +f 76/1409/185 82/1415/191 13/1392/170 +f 79/1412/188 81/1414/190 77/1410/186 +f 79/1412/188 77/1410/186 76/1409/185 +f 72/1405/183 1609/2401/838 1610/2402/839 +f 72/1405/183 1610/2402/839 80/1413/189 +f 80/1413/189 1610/2402/839 1611/2403/840 +f 80/1413/189 1611/2403/840 81/1414/190 +f 71/1404/182 1612/2404/841 1609/2401/838 +f 71/1404/182 1609/2401/838 72/1405/183 +f 74/1407/163 1613/2405/204 1612/2404/841 +f 74/1407/163 1612/2404/841 71/1404/182 +f 14/1393/171 82/1415/191 131/1419/195 +f 14/1393/171 131/1419/195 142/1429/205 +f 78/1411/187 132/1420/196 131/1419/195 +f 78/1411/187 131/1419/195 82/1415/191 +f 77/1410/186 1614/2406/842 132/1420/196 +f 77/1410/186 132/1420/196 78/1411/187 +f 81/1414/190 1611/2403/840 1614/2406/842 +f 81/1414/190 1614/2406/842 77/1410/186 +f 144/1431/207 145/1432/208 128/1416/192 +f 144/1431/207 128/1416/192 130/1418/194 +f 1615/587/16 135/589/16 134/1422/198 +f 1617/2407/843 1618/2408/199 1619/2409/844 +f 1617/2407/843 1619/2409/844 1620/2410/192 +f 1621/2411/845 1622/2412/846 1623/2413/846 +f 1621/2411/845 1623/2413/846 1624/2414/212 +f 1625/2415/847 1626/2416/3 1627/2417/31 +f 1625/2415/847 1627/2417/31 1628/2418/848 +f 1629/2419/849 1625/2415/847 1628/2418/848 +f 1629/2419/849 1628/2418/848 1630/2420/849 +f 1610/2402/839 1609/2401/838 1631/2421/850 +f 1610/2402/839 1631/2421/850 1632/2422/851 +f 1610/2402/839 1632/2422/851 1633/2423/852 +f 1610/2402/839 1633/2423/852 1611/2403/840 +f 1609/2401/838 1612/2404/841 1634/2424/853 +f 1609/2401/838 1634/2424/853 1631/2421/850 +f 1613/2405/204 1635/2425/221 1634/2424/853 +f 1613/2405/204 1634/2424/853 1612/2404/841 +f 1614/2406/842 1636/2426/854 129/1417/193 +f 1614/2406/842 129/1417/193 132/1420/196 +f 1611/2403/840 1633/2423/852 1636/2426/854 +f 1611/2403/840 1636/2426/854 1614/2406/842 +f 132/1420/196 129/1417/193 128/1416/192 +f 132/1420/196 128/1416/192 133/1421/197 +f 1649/2427/855 1650/2428/856 1651/2429/223 +f 1649/2427/855 1651/2429/223 1652/2430/226 +f 1650/2428/856 1657/2431/857 1658/2432/227 +f 1650/2428/856 1658/2432/227 1651/2429/223 +f 1659/2433/858 1660/2434/859 1650/2428/856 +f 1659/2433/858 1650/2428/856 1649/2427/855 +f 1663/2435/233 1664/2436/860 1665/2437/861 +f 1663/2435/233 1665/2437/861 1666/2438/234 +f 1658/2432/227 1657/2431/857 1667/2439/862 +f 1658/2432/227 1667/2439/862 1668/2440/863 +f 1660/2434/859 1669/2441/864 1657/2431/857 +f 1660/2434/859 1657/2431/857 1650/2428/856 +f 1670/2442/865 1671/2443/866 1660/2434/859 +f 1670/2442/865 1660/2434/859 1659/2433/858 +f 1664/2436/860 1674/2444/867 1675/2445/868 +f 1664/2436/860 1675/2445/868 1665/2437/861 +f 1676/2446/243 1677/2447/869 1664/2436/860 +f 1676/2446/243 1664/2436/860 1663/2435/233 +f 1678/2448/870 1679/2449/871 1680/2450/872 +f 1678/2448/870 1680/2450/872 1681/2451/873 +f 1669/2441/864 1682/2452/874 1667/2439/862 +f 1669/2441/864 1667/2439/862 1657/2431/857 +f 1671/2443/866 1683/2453/875 1669/2441/864 +f 1671/2443/866 1669/2441/864 1660/2434/859 +f 1684/2454/876 1685/2455/877 1671/2443/866 +f 1684/2454/876 1671/2443/866 1670/2442/865 +f 1674/2444/867 1688/2456/878 1689/2457/879 +f 1674/2444/867 1689/2457/879 1675/2445/868 +f 1677/2447/869 1690/2458/880 1674/2444/867 +f 1677/2447/869 1674/2444/867 1664/2436/860 +f 1676/2446/243 1691/2459/881 1692/2460/882 +f 1676/2446/243 1692/2460/882 1677/2447/869 +f 1697/2461/883 1698/2462/884 1680/2450/872 +f 1697/2461/883 1680/2450/872 1699/2463/885 +f 1683/2453/875 1700/2464/886 1682/2452/874 +f 1683/2453/875 1682/2452/874 1669/2441/864 +f 1685/2455/877 1701/2465/887 1683/2453/875 +f 1685/2455/877 1683/2453/875 1671/2443/866 +f 1702/2466/888 1703/2467/889 1704/2468/890 +f 1702/2466/888 1704/2468/890 1705/2469/888 +f 1688/2456/878 1706/2470/891 1707/2471/892 +f 1688/2456/878 1707/2471/892 1689/2457/879 +f 1690/2458/880 1708/2472/893 1688/2456/878 +f 1690/2458/880 1688/2456/878 1674/2444/867 +f 1692/2460/882 1709/2473/894 1690/2458/880 +f 1692/2460/882 1690/2458/880 1677/2447/869 +f 1710/2474/895 1711/2475/896 1712/2476/897 +f 1710/2474/895 1712/2476/897 1713/2477/898 +f 1716/2478/899 1717/2479/900 1698/2462/884 +f 1716/2478/899 1698/2462/884 1697/2461/883 +f 1701/2465/887 1718/2480/901 1700/2464/886 +f 1701/2465/887 1700/2464/886 1683/2453/875 +f 1703/2467/889 1719/2481/902 1720/2482/902 +f 1703/2467/889 1720/2482/902 1721/2483/890 +f 1708/2472/893 1722/2484/903 1706/2470/891 +f 1708/2472/893 1706/2470/891 1688/2456/878 +f 1709/2473/894 1723/2485/904 1708/2472/893 +f 1709/2473/894 1708/2472/893 1690/2458/880 +f 1711/2475/896 1724/2486/905 1725/2487/906 +f 1711/2475/896 1725/2487/906 1712/2476/897 +f 1716/2478/899 1728/2488/907 1729/2489/908 +f 1716/2478/899 1729/2489/908 1717/2479/900 +f 1719/2481/902 1730/2490/27 1731/2491/27 +f 1719/2481/902 1731/2491/27 1720/2482/902 +f 1723/2485/904 1732/2492/909 1722/2484/903 +f 1723/2485/904 1722/2484/903 1708/2472/893 +f 1724/2486/905 1733/2493/910 1734/2494/911 +f 1724/2486/905 1734/2494/911 1725/2487/906 +f 1737/2495/912 1738/2496/913 1739/623/76 +f 1737/2495/912 1739/623/76 1740/622/76 +f 1734/2494/911 1733/2493/910 1741/2497/914 +f 1734/2494/911 1741/2497/914 1742/2498/915 +f 1743/2499/916 1744/2500/1 1745/2501/1 +f 1743/2499/916 1745/2501/1 1746/2502/916 +f 1746/2502/916 1747/2503/917 1748/2504/917 +f 1746/2502/916 1748/2504/917 1743/2499/916 +f 1749/2505/918 1750/2506/919 1751/2507/919 +f 1749/2505/918 1751/2507/919 1752/2508/920 +f 1698/2462/884 1753/2509/884 1681/2451/873 +f 1698/2462/884 1681/2451/873 1680/2450/872 +f 1717/2479/900 1754/2510/921 1753/2509/884 +f 1717/2479/900 1753/2509/884 1698/2462/884 +f 1711/2475/896 1755/2511/922 1756/2512/905 +f 1711/2475/896 1756/2512/905 1724/2486/905 +f 1717/2479/900 1729/2489/908 1757/2513/923 +f 1717/2479/900 1757/2513/923 1754/2510/921 +f 1724/2486/905 1756/2512/905 1758/2514/924 +f 1724/2486/905 1758/2514/924 1733/2493/910 +f 1733/2493/910 1758/2514/924 1761/2515/925 +f 1733/2493/910 1761/2515/925 1741/2497/914 +f 1682/2452/874 1697/2461/883 1699/2463/885 +f 1682/2452/874 1699/2463/885 1667/2439/862 +f 1700/2464/886 1716/2478/899 1697/2461/883 +f 1700/2464/886 1697/2461/883 1682/2452/874 +f 1692/2460/882 1712/2476/897 1725/2487/906 +f 1692/2460/882 1725/2487/906 1709/2473/894 +f 1718/2480/901 1728/2488/907 1716/2478/899 +f 1718/2480/901 1716/2478/899 1700/2464/886 +f 1709/2473/894 1725/2487/906 1734/2494/911 +f 1709/2473/894 1734/2494/911 1723/2485/904 +f 1730/2490/27 1738/2496/913 1737/2495/912 +f 1730/2490/27 1737/2495/912 1731/2491/27 +f 1723/2485/904 1734/2494/911 1742/2498/915 +f 1723/2485/904 1742/2498/915 1732/2492/909 +f 1679/2449/871 1762/2516/926 1699/2463/885 +f 1679/2449/871 1699/2463/885 1680/2450/872 +f 1711/2475/896 1710/2474/895 1763/2517/927 +f 1711/2475/896 1763/2517/927 1755/2511/922 +f 1667/2439/862 1699/2463/885 1762/2516/926 +f 1667/2439/862 1762/2516/926 1668/2440/863 +f 1692/2460/882 1691/2459/881 1713/2477/898 +f 1692/2460/882 1713/2477/898 1712/2476/897 +f 1764/626/928 1766/628/303 1767/2518/928 +f 1770/2519/929 1771/2520/930 1772/2521/931 +f 1770/2519/929 1772/2521/931 1773/2522/932 +f 1773/2522/932 1772/2521/931 1774/2523/3 +f 1773/2522/932 1774/2523/3 1775/2524/3 +f 1776/2525/933 1777/2526/934 1778/2527/935 +f 1776/2525/933 1778/2527/935 1779/2528/936 +f 1777/2526/934 1780/2529/937 1781/2530/938 +f 1777/2526/934 1781/2530/938 1778/2527/935 +f 1782/2531/939 1783/2532/940 1784/2533/941 +f 1782/2531/939 1784/2533/941 1785/2534/941 +f 1786/2535/942 1787/2536/943 1788/2537/944 +f 1786/2535/942 1788/2537/944 1789/2538/945 +f 1790/2539/946 1788/2537/944 1791/2540/947 +f 1790/2539/946 1791/2540/947 1792/2541/948 +f 1797/2542/949 1770/2519/929 1773/2522/932 +f 1797/2542/949 1773/2522/932 1798/2543/949 +f 1799/2544/950 1800/2545/950 1772/2521/931 +f 1799/2544/950 1772/2521/931 1771/2520/930 +f 1801/2546/951 1802/2547/952 1803/2548/952 +f 1801/2546/951 1803/2548/952 1804/2549/953 +f 1805/2550/954 1806/2551/955 1807/2552/956 +f 1805/2550/954 1807/2552/956 1808/2553/957 +f 1809/2554/958 1810/2555/959 1811/2556/960 +f 1809/2554/958 1811/2556/960 1812/2557/961 +f 1776/2525/933 1813/2558/962 1814/2559/963 +f 1776/2525/933 1814/2559/963 1777/2526/934 +f 1788/2537/944 1787/2536/943 1815/2560/964 +f 1788/2537/944 1815/2560/964 1791/2540/947 +f 1777/2526/934 1814/2559/963 1816/2561/965 +f 1777/2526/934 1816/2561/965 1780/2529/937 +f 1788/2537/944 1790/2539/946 1817/2562/966 +f 1788/2537/944 1817/2562/966 1789/2538/945 +f 1782/2531/939 1801/2546/951 1804/2549/953 +f 1782/2531/939 1804/2549/953 1783/2532/940 +f 1786/2535/942 1809/2554/958 1812/2557/961 +f 1786/2535/942 1812/2557/961 1787/2536/943 +f 1813/2558/962 1818/2563/967 1805/2550/954 +f 1813/2558/962 1805/2550/954 1814/2559/963 +f 1787/2536/943 1812/2557/961 1819/2564/968 +f 1787/2536/943 1819/2564/968 1815/2560/964 +f 1814/2559/963 1805/2550/954 1808/2553/957 +f 1814/2559/963 1808/2553/957 1816/2561/965 +f 1820/2565/969 1821/2566/970 1822/2567/971 +f 1820/2565/969 1822/2567/971 1823/2568/972 +f 1824/2569/973 1825/2570/346 1826/2571/346 +f 1824/2569/973 1826/2571/346 1827/2572/974 +f 1836/2573/975 1837/2574/976 1838/2575/977 +f 1836/2573/975 1838/2575/977 1839/2576/978 +f 1837/2574/976 1840/2577/979 1841/2578/980 +f 1837/2574/976 1841/2578/980 1838/2575/977 +f 1842/2579/981 1843/2580/982 1844/2581/983 +f 1842/2579/981 1844/2581/983 1845/2582/984 +f 1846/2583/985 1847/2584/986 1848/2585/357 +f 1846/2583/985 1848/2585/357 1849/2586/360 +f 1850/2587/987 1836/2573/975 1839/2576/978 +f 1850/2587/987 1839/2576/978 1851/2588/987 +f 1840/2577/979 1852/2589/988 1853/2590/988 +f 1840/2577/979 1853/2590/988 1841/2578/980 +f 1842/2579/981 1854/2591/989 1855/2592/989 +f 1842/2579/981 1855/2592/989 1843/2580/982 +f 1845/2582/984 1844/2581/983 1847/2584/986 +f 1845/2582/984 1847/2584/986 1846/2583/985 +f 1856/2593/990 1857/2594/991 1858/2595/992 +f 1856/2593/990 1858/2595/992 1859/2596/993 +f 1860/2597/994 1824/2569/973 1827/2572/974 +f 1860/2597/994 1827/2572/974 1861/2598/995 +f 1857/2594/991 1860/2597/994 1861/2598/995 +f 1857/2594/991 1861/2598/995 1858/2595/992 +f 1862/2599/996 1863/2600/997 1864/2601/997 +f 1862/2599/996 1864/2601/997 1865/2602/998 +f 1866/2603/999 1821/2566/970 1820/2565/969 +f 1866/2603/999 1820/2565/969 1867/2604/1000 +f 1865/2602/998 1866/2603/999 1867/2604/1000 +f 1865/2602/998 1867/2604/1000 1862/2599/996 +f 1856/2593/990 1859/2596/993 1868/2605/1001 +f 1856/2593/990 1868/2605/1001 1869/2606/1001 +f 1910/2607/1002 1911/2608/1003 1912/2609/1003 +f 1910/2607/1002 1912/2609/1003 1913/2610/1002 +f 1911/2608/1003 1914/2611/36 1915/2612/36 +f 1911/2608/1003 1915/2612/36 1912/2609/1003 +f 1914/2611/36 1916/2613/1004 1917/2614/1004 +f 1914/2611/36 1917/2614/1004 1915/2612/36 +f 1916/2613/1004 1918/2615/16 1919/2616/16 +f 1916/2613/1004 1919/2616/16 1917/2614/1004 +f 1920/2617/25 1921/2618/1005 1922/2619/1005 +f 1920/2617/25 1922/2619/1005 1923/2620/25 +f 1921/2618/1005 1924/2621/1006 1925/2622/1006 +f 1921/2618/1005 1925/2622/1006 1922/2619/1005 +f 1926/2623/1007 1927/2624/1008 1928/2625/1009 +f 1926/2623/1007 1928/2625/1009 1929/2626/1009 +f 1930/2627/1010 1910/2607/1002 1913/2610/1002 +f 1930/2627/1010 1913/2610/1002 1931/2628/1010 +f 1932/2629/1011 1933/2630/1012 1934/2631/1013 +f 1932/2629/1011 1934/2631/1013 1935/2632/1014 +f 1935/2632/1014 1934/2631/1013 1936/2633/1015 +f 1935/2632/1014 1936/2633/1015 1937/2634/1016 +f 1937/2634/1016 1936/2633/1015 1938/2635/1017 +f 1937/2634/1016 1938/2635/1017 1939/2636/1018 +f 1939/2636/1018 1938/2635/1017 1940/2637/389 +f 1939/2636/1018 1940/2637/389 1941/2638/389 +f 1942/2639/25 1943/2640/25 1944/2641/1005 +f 1942/2639/25 1944/2641/1005 1945/2642/1005 +f 1945/2642/1005 1944/2641/1005 1946/2643/33 +f 1945/2642/1005 1946/2643/33 1926/2623/1007 +f 1926/2623/1007 1946/2643/33 1947/2644/110 +f 1926/2623/1007 1947/2644/110 1927/2624/1008 +f 1927/2624/1008 1947/2644/110 1933/2630/1012 +f 1927/2624/1008 1933/2630/1012 1932/2629/1011 +f 1948/2645/1019 1949/2646/1020 1950/2647/1021 +f 1948/2645/1019 1950/2647/1021 1951/2648/1022 +f 1951/2648/1022 1950/2647/1021 1952/2649/1023 +f 1951/2648/1022 1952/2649/1023 1953/2650/1024 +f 1953/2650/1024 1952/2649/1023 1954/2651/1025 +f 1953/2650/1024 1954/2651/1025 1955/2652/1026 +f 1955/2652/1026 1954/2651/1025 1956/2653/397 +f 1955/2652/1026 1956/2653/397 1957/2654/397 +f 1958/2655/25 1959/2656/25 1960/2657/1005 +f 1958/2655/25 1960/2657/1005 1961/2658/1005 +f 1961/2658/1005 1960/2657/1005 1962/2659/33 +f 1961/2658/1005 1962/2659/33 1963/2660/33 +f 1963/2660/33 1962/2659/33 1964/2661/110 +f 1963/2660/33 1964/2661/110 1965/2662/110 +f 1965/2662/110 1964/2661/110 1949/2646/1020 +f 1965/2662/110 1949/2646/1020 1948/2645/1019 +f 1966/2663/1027 1967/2664/1028 1968/2665/1029 +f 1966/2663/1027 1968/2665/1029 1969/2666/1030 +f 1969/2666/1030 1968/2665/1029 1970/2667/1031 +f 1969/2666/1030 1970/2667/1031 1971/2668/1032 +f 1971/2668/1032 1970/2667/1031 1972/2669/1033 +f 1971/2668/1032 1972/2669/1033 1973/2670/1034 +f 1973/2670/1034 1972/2669/1033 1974/2671/406 +f 1973/2670/1034 1974/2671/406 1975/2672/406 +f 1976/2673/25 1977/2674/25 1978/2675/1005 +f 1976/2673/25 1978/2675/1005 1979/2676/1005 +f 1979/2676/1005 1978/2675/1005 1980/2677/33 +f 1979/2676/1005 1980/2677/33 1981/2678/33 +f 1981/2678/33 1980/2677/33 1982/2679/110 +f 1981/2678/33 1982/2679/110 1983/2680/110 +f 1983/2680/110 1982/2679/110 1967/2664/1028 +f 1983/2680/110 1967/2664/1028 1966/2663/1027 +f 1929/2626/1009 1998/2681/1 1995/694/1 +f 1929/2626/1009 1995/694/1 1994/693/1 +f 1928/2625/1009 1999/697/1 1998/2681/1 +f 1928/2625/1009 1998/2681/1 1929/2626/1009 +f 1987/686/1 1999/697/1 1928/2625/1009 +f 2000/2682/27 2001/2683/111 2002/2684/111 +f 2000/2682/27 2002/2684/111 2003/2685/27 +f 2001/2683/111 2004/2686/36 2005/2687/36 +f 2001/2683/111 2005/2687/36 2002/2684/111 +f 2004/2686/36 2006/2688/1004 2007/2689/1004 +f 2004/2686/36 2007/2689/1004 2005/2687/36 +f 2006/2688/1004 2008/2690/16 2009/2691/16 +f 2006/2688/1004 2009/2691/16 2007/2689/1004 +f 2010/2692/408 2011/2693/1035 2012/2694/1036 +f 2010/2692/408 2012/2694/1036 2013/2695/409 +f 2011/2693/1035 2014/2696/1037 2015/2697/1038 +f 2011/2693/1035 2015/2697/1038 2012/2694/1036 +f 2014/2696/1037 2016/2698/110 2017/2699/110 +f 2014/2696/1037 2017/2699/110 2015/2697/1038 +f 2016/2698/110 2000/2682/27 2003/2685/27 +f 2016/2698/110 2003/2685/27 2017/2699/110 +f 2022/2700/1039 2023/2701/1040 2024/2702/1040 +f 2022/2700/1039 2024/2702/1040 2025/2703/1039 +f 2026/2704/1041 2022/2700/1039 2025/2703/1039 +f 2026/2704/1041 2025/2703/1039 2027/2705/1041 +f 2028/2706/1042 2026/2704/1041 2027/2705/1041 +f 2028/2706/1042 2027/2705/1041 2029/2707/1042 +f 2030/2708/418 2028/2706/1042 2029/2707/1042 +f 2030/2708/418 2029/2707/1042 2031/2709/418 +f 2032/2710/1043 2033/2711/420 2034/2712/420 +f 2032/2710/1043 2034/2712/420 2035/2713/1043 +f 2036/2714/1044 2032/2710/1043 2035/2713/1043 +f 2036/2714/1044 2035/2713/1043 2037/2715/1044 +f 2038/2716/1045 2036/2714/1044 2037/2715/1044 +f 2038/2716/1045 2037/2715/1044 2039/2717/1045 +f 2023/2701/1040 2038/2716/1045 2039/2717/1045 +f 2023/2701/1040 2039/2717/1045 2024/2702/1040 +f 2058/2718/1046 2059/2719/1047 2060/2720/1048 +f 2058/2718/1046 2060/2720/1048 2061/2721/1049 +f 2059/2719/1047 2062/2722/1050 2063/2723/1051 +f 2059/2719/1047 2063/2723/1051 2060/2720/1048 +f 2062/2722/1050 2064/2724/1052 2065/2725/1053 +f 2062/2722/1050 2065/2725/1053 2063/2723/1051 +f 2064/2724/1052 2066/2726/431 2067/2727/432 +f 2064/2724/1052 2067/2727/432 2065/2725/1053 +f 2068/2728/435 2069/2729/1054 2070/2730/1055 +f 2068/2728/435 2070/2730/1055 2071/2731/435 +f 2069/2729/1054 2072/2732/1056 2073/2733/1057 +f 2069/2729/1054 2073/2733/1057 2070/2730/1055 +f 2072/2732/1056 2074/2734/1058 2075/2735/1059 +f 2072/2732/1056 2075/2735/1059 2073/2733/1057 +f 2074/2734/1058 2058/2718/1046 2061/2721/1049 +f 2074/2734/1058 2061/2721/1049 2075/2735/1059 +f 2076/2736/1060 2077/2737/1061 2078/2738/1062 +f 2076/2736/1060 2078/2738/1062 2079/2739/1063 +f 2079/2739/1063 2078/2738/1062 2080/2740/1064 +f 2079/2739/1063 2080/2740/1064 2081/2741/1065 +f 2081/2741/1065 2080/2740/1064 2082/2742/1066 +f 2081/2741/1065 2082/2742/1066 2083/2743/1067 +f 2083/2743/1067 2082/2742/1066 2084/2744/448 +f 2083/2743/1067 2084/2744/448 2085/2745/448 +f 2086/2746/450 2087/2747/450 2088/2748/1068 +f 2086/2746/450 2088/2748/1068 2089/2749/1069 +f 2089/2749/1069 2088/2748/1068 2090/2750/1070 +f 2089/2749/1069 2090/2750/1070 2091/2751/1071 +f 2091/2751/1071 2090/2750/1070 2092/2752/1072 +f 2091/2751/1071 2092/2752/1072 2093/2753/1073 +f 2093/2753/1073 2092/2752/1072 2077/2737/1061 +f 2093/2753/1073 2077/2737/1061 2076/2736/1060 +f 2094/2754/1074 2095/2755/1075 2096/2756/1076 +f 2094/2754/1074 2096/2756/1076 2097/2757/1077 +f 2097/2757/1077 2096/2756/1076 2098/2758/1078 +f 2097/2757/1077 2098/2758/1078 2099/2759/1079 +f 2099/2759/1079 2098/2758/1078 2100/2760/1080 +f 2099/2759/1079 2100/2760/1080 2101/2761/1081 +f 2101/2761/1081 2100/2760/1080 2102/2762/462 +f 2101/2761/1081 2102/2762/462 2103/2763/462 +f 2104/2764/464 2105/2765/464 2106/2766/1082 +f 2104/2764/464 2106/2766/1082 2107/2767/1083 +f 2107/2767/1083 2106/2766/1082 2108/2768/1084 +f 2107/2767/1083 2108/2768/1084 2109/2769/1085 +f 2109/2769/1085 2108/2768/1084 2110/2770/1086 +f 2109/2769/1085 2110/2770/1086 2111/2771/1087 +f 2111/2771/1087 2110/2770/1086 2095/2755/1075 +f 2111/2771/1087 2095/2755/1075 2094/2754/1074 +f 2112/2772/1088 2113/2773/1089 2114/2774/1090 +f 2112/2772/1088 2114/2774/1090 2115/2775/1090 +f 2116/2776/1091 2117/2777/1092 2118/2778/1093 +f 2116/2776/1091 2118/2778/1093 2119/2779/1094 +f 2117/2777/1092 2120/2780/1095 2121/2781/1096 +f 2117/2777/1092 2121/2781/1096 2118/2778/1093 +f 2120/2780/1095 2122/2782/1097 2123/2783/1098 +f 2120/2780/1095 2123/2783/1098 2121/2781/1096 +f 2122/2782/1097 2124/2784/1099 2125/2785/1100 +f 2122/2782/1097 2125/2785/1100 2123/2783/1098 +f 2124/2784/1099 2126/2786/1101 2127/2787/1102 +f 2124/2784/1099 2127/2787/1102 2125/2785/1100 +f 2126/2786/1101 2128/2788/1103 2129/2789/1104 +f 2126/2786/1101 2129/2789/1104 2127/2787/1102 +f 2128/2788/1103 2130/2790/1105 2131/2791/1106 +f 2128/2788/1103 2131/2791/1106 2129/2789/1104 +f 2130/2790/1105 2132/2792/1107 2133/2793/1108 +f 2130/2790/1105 2133/2793/1108 2131/2791/1106 +f 2132/2792/1107 2134/2794/1109 2135/2795/1110 +f 2132/2792/1107 2135/2795/1110 2133/2793/1108 +f 2134/2794/1109 2136/2796/1111 2137/2797/1112 +f 2134/2794/1109 2137/2797/1112 2135/2795/1110 +f 2138/2798/1113 2139/2799/1114 2140/2800/1115 +f 2138/2798/1113 2140/2800/1115 2141/2801/1112 +f 2139/2799/1114 2142/2802/1116 2143/2803/1117 +f 2139/2799/1114 2143/2803/1117 2140/2800/1115 +f 2142/2802/1116 2144/2804/1118 2145/2805/1119 +f 2142/2802/1116 2145/2805/1119 2143/2803/1117 +f 2144/2804/1118 2146/2806/1120 2147/2807/1121 +f 2144/2804/1118 2147/2807/1121 2145/2805/1119 +f 2146/2806/1120 2148/2808/1122 2149/2809/1123 +f 2146/2806/1120 2149/2809/1123 2147/2807/1121 +f 2148/2808/1122 2116/2776/1091 2119/2779/1094 +f 2148/2808/1122 2119/2779/1094 2149/2809/1123 +f 2150/2810/1124 2151/2811/1125 2152/2812/1126 +f 2150/2810/1124 2152/2812/1126 2153/2813/1127 +f 2158/2814/1128 2159/2815/1128 2160/2816/1128 +f 2158/2814/1128 2160/2816/1128 2161/2817/1128 +f 2162/2818/1129 2163/2819/1129 2164/2820/1129 +f 2162/2818/1129 2164/2820/1129 2165/2821/1129 +f 2166/2822/1130 2167/2823/1130 2168/2824/1131 +f 2166/2822/1130 2168/2824/1131 2169/2825/1130 +f 2170/2826/1132 2171/2827/1132 2172/2828/1133 +f 2170/2826/1132 2172/2828/1133 2173/2829/1132 +f 2174/2830/1134 2175/2831/1134 2176/2832/1135 +f 2174/2830/1134 2176/2832/1135 2177/2833/1135 +f 2178/2834/1136 2179/2835/1136 2180/2836/1136 +f 2178/2834/1136 2180/2836/1136 2181/2837/1137 +f 2182/2838/1138 2183/2839/1138 2184/2840/1138 +f 2182/2838/1138 2184/2840/1138 2185/2841/1138 +f 2186/2842/1139 2187/2843/1139 2188/2844/1139 +f 2186/2842/1139 2188/2844/1139 2189/2845/1139 +f 2198/2846/1140 2199/2847/1140 2200/2848/1140 +f 2198/2846/1140 2200/2848/1140 2201/2849/1140 +f 2250/2850/1141 2251/2851/1141 2252/2852/1142 +f 2250/2850/1141 2252/2852/1142 2253/2853/1141 +f 2254/2854/1143 2255/2855/1143 2256/2856/1143 +f 2254/2854/1143 2256/2856/1143 2257/2857/1143 +f 2258/2858/1144 2259/2859/1144 2260/2860/1145 +f 2258/2858/1144 2260/2860/1145 2261/2861/1145 +f 2262/2862/1146 2263/2863/1147 2264/2864/1147 +f 2262/2862/1146 2264/2864/1147 2265/2865/1147 +f 2266/2866/1148 2267/2867/1148 2268/2868/1148 +f 2266/2866/1148 2268/2868/1148 2269/2869/1149 +f 2270/2870/1150 2271/2871/1150 2272/2872/1150 +f 2270/2870/1150 2272/2872/1150 2273/2873/1150 +f 2274/2874/1151 2275/2875/1151 2276/2876/1151 +f 2274/2874/1151 2276/2876/1151 2277/2877/1151 +f 2278/2878/1152 2279/2879/1153 2280/2880/1153 +f 2278/2878/1152 2280/2880/1153 2281/2881/1153 +f 2294/2882/1154 2295/2883/1155 2296/2884/1155 +f 2294/2882/1154 2296/2884/1155 2297/2885/1154 +f 2306/2886/1156 2307/2887/1156 2308/2888/1156 +f 2306/2886/1156 2308/2888/1156 2309/2889/1156 +f 2310/800/95 2311/2890/95 2312/801/95 +f 2342/831/103 2344/833/103 2345/2891/103 +f 2386/2892/1157 2387/2893/1157 2388/2894/1157 +f 2386/2892/1157 2388/2894/1157 2389/2895/1157 +f 2398/2896/1158 2399/2897/1158 2400/2898/1158 +f 2398/2896/1158 2400/2898/1158 2401/2899/1158 +f 2406/2900/1159 2407/2901/1159 2408/2902/1159 +f 2406/2900/1159 2408/2902/1159 2409/2903/1159 +f 2116/2776/1091 2410/2904/1160 2411/2905/1161 +f 2116/2776/1091 2411/2905/1161 2117/2777/1092 +f 2117/2777/1092 2411/2905/1161 2412/2906/1162 +f 2117/2777/1092 2412/2906/1162 2120/2780/1095 +f 2120/2780/1095 2412/2906/1162 2413/2907/1163 +f 2120/2780/1095 2413/2907/1163 2122/2782/1097 +f 2122/2782/1097 2413/2907/1163 2414/2908/1164 +f 2122/2782/1097 2414/2908/1164 2124/2784/1099 +f 2124/2784/1099 2414/2908/1164 2415/2909/1165 +f 2124/2784/1099 2415/2909/1165 2126/2786/1101 +f 2126/2786/1101 2415/2909/1165 2416/2910/1166 +f 2126/2786/1101 2416/2910/1166 2128/2788/1103 +f 2128/2788/1103 2416/2910/1166 2417/2911/1167 +f 2128/2788/1103 2417/2911/1167 2130/2790/1105 +f 2130/2790/1105 2417/2911/1167 2418/2912/1168 +f 2130/2790/1105 2418/2912/1168 2132/2792/1107 +f 2132/2792/1107 2418/2912/1168 2419/2913/1169 +f 2132/2792/1107 2419/2913/1169 2134/2794/1109 +f 2134/2794/1109 2419/2913/1169 2420/2914/1170 +f 2134/2794/1109 2420/2914/1170 2136/2796/1111 +f 2138/2798/1113 2421/2915/1170 2422/2916/1171 +f 2138/2798/1113 2422/2916/1171 2139/2799/1114 +f 2139/2799/1114 2422/2916/1171 2423/2917/1172 +f 2139/2799/1114 2423/2917/1172 2142/2802/1116 +f 2142/2802/1116 2423/2917/1172 2424/2918/1173 +f 2142/2802/1116 2424/2918/1173 2144/2804/1118 +f 2144/2804/1118 2424/2918/1173 2425/2919/1174 +f 2144/2804/1118 2425/2919/1174 2146/2806/1120 +f 2146/2806/1120 2425/2919/1174 2426/2920/1175 +f 2146/2806/1120 2426/2920/1175 2148/2808/1122 +f 2148/2808/1122 2426/2920/1175 2410/2904/1160 +f 2148/2808/1122 2410/2904/1160 2116/2776/1091 +f 2427/2921/37 2428/2922/1176 2429/2923/1176 +f 2427/2921/37 2429/2923/1176 2430/2924/37 +f 2428/2922/1176 2431/2925/1177 2432/2926/1177 +f 2428/2922/1176 2432/2926/1177 2429/2923/1176 +f 2431/2925/1177 2433/2927/16 2434/2928/627 +f 2431/2925/1177 2434/2928/627 2432/2926/1177 +f 2435/2929/25 2436/2930/1178 2437/2931/1178 +f 2435/2929/25 2437/2931/1178 2438/2932/25 +f 2436/2930/1178 2439/2933/33 2440/2934/33 +f 2436/2930/1178 2440/2934/33 2437/2931/1178 +f 2447/2935/1179 2448/2936/1180 2449/2937/1180 +f 2447/2935/1179 2449/2937/1180 2450/2938/1181 +f 2451/2939/1182 2447/2935/1179 2450/2938/1181 +f 2451/2939/1182 2450/2938/1181 2452/2940/1182 +f 2453/2941/633 2451/2939/1182 2452/2940/1182 +f 2453/2941/633 2452/2940/1182 2454/2942/633 +f 2455/2943/1183 2456/2944/635 2457/2945/635 +f 2455/2943/1183 2457/2945/635 2458/2946/1183 +f 2459/2947/1184 2455/2943/1183 2458/2946/1183 +f 2459/2947/1184 2458/2946/1183 2460/2948/1184 +f 2448/2936/1180 2459/2947/1184 2460/2948/1184 +f 2448/2936/1180 2460/2948/1184 2449/2937/1180 +f 2553/984/36 2555/986/36 2556/2949/36 +f 2557/2950/37 2558/2951/37 2559/2952/1176 +f 2557/2950/37 2559/2952/1176 2560/2953/1176 +f 2560/2953/1176 2559/2952/1176 2561/2954/1177 +f 2560/2953/1176 2561/2954/1177 2562/2955/1177 +f 2562/2955/1177 2561/2954/1177 2563/2956/627 +f 2562/2955/1177 2563/2956/627 2564/2957/16 +f 2565/2958/25 2566/2959/25 2567/2960/1178 +f 2565/2958/25 2567/2960/1178 2568/2961/1178 +f 2568/2961/1178 2567/2960/1178 2569/2962/33 +f 2568/2961/1178 2569/2962/33 2570/2963/33 +f 2603/2964/639 2604/2965/639 2605/2966/1185 +f 2603/2964/639 2605/2966/1185 2606/2967/1185 +f 2615/2968/1004 2616/2969/627 2617/2970/16 +f 2615/2968/1004 2617/2970/16 2618/2971/1004 +f 2623/2972/1186 2624/2973/1187 2625/2974/1188 +f 2623/2972/1186 2625/2974/1188 2626/2975/1189 +f 2624/2973/1187 2627/2976/1190 2628/2977/1191 +f 2624/2973/1187 2628/2977/1191 2625/2974/1188 +f 2627/2976/1190 2629/2978/1192 2630/2979/1193 +f 2627/2976/1190 2630/2979/1193 2628/2977/1191 +f 2631/2980/1194 2632/2981/1195 2633/2982/1196 +f 2631/2980/1194 2633/2982/1196 2634/2983/1197 +f 2632/2981/1195 2635/2984/1198 2636/2985/1199 +f 2632/2981/1195 2636/2985/1199 2633/2982/1196 +f 2635/2984/1198 2637/2986/1194 2638/2987/1197 +f 2635/2984/1198 2638/2987/1197 2636/2985/1199 +f 2639/2988/653 2640/2989/653 2641/2990/654 +f 2639/2988/653 2641/2990/654 2642/2991/654 +f 2642/2991/654 2641/2990/654 2643/2992/655 +f 2642/2991/654 2643/2992/655 2644/2993/655 +f 2644/2993/655 2643/2992/655 2645/2994/656 +f 2644/2993/655 2645/2994/656 2646/2995/656 +f 2646/2995/656 2645/2994/656 2647/2996/657 +f 2646/2995/656 2647/2996/657 2648/2997/657 +f 2648/2997/657 2647/2996/657 2649/2998/658 +f 2648/2997/657 2649/2998/658 2650/2999/658 +f 2651/3000/658 2652/3001/658 2653/3002/659 +f 2651/3000/658 2653/3002/659 2654/3003/659 +f 2654/3003/659 2653/3002/659 2655/3004/660 +f 2654/3003/659 2655/3004/660 2656/3005/660 +f 2656/3005/660 2655/3004/660 2640/2989/653 +f 2656/3005/660 2640/2989/653 2639/2988/653 +f 2675/3006/1200 2676/3007/1201 2677/3008/1200 +f 2675/3006/1200 2677/3008/1200 2678/3009/1202 +f 2679/3010/1203 2680/3011/1204 2681/3012/1205 +f 2679/3010/1203 2681/3012/1205 2682/3013/1205 +f 2683/3014/1206 2684/3015/1206 2685/3016/1207 +f 2683/3014/1206 2685/3016/1207 2686/3017/1208 +f 2687/3018/1209 2688/3019/1210 2689/3020/1211 +f 2687/3018/1209 2689/3020/1211 2690/3021/1212 +f 2691/3022/1213 2692/3023/1214 2693/3024/1215 +f 2691/3022/1213 2693/3024/1215 2694/3025/1213 +f 2695/3026/1216 2696/3027/1217 2697/3028/1218 +f 2695/3026/1216 2697/3028/1218 2698/3029/1219 +f 2699/3030/1220 2700/3031/1221 2701/3032/1222 +f 2699/3030/1220 2701/3032/1222 2702/3033/1223 +f 2703/3034/1224 2704/3035/1225 2705/3036/1226 +f 2703/3034/1224 2705/3036/1226 2706/3037/1227 +f 2771/3038/27 2772/3039/27 2773/3040/1228 +f 2771/3038/27 2773/3040/1228 2774/3041/1228 +f 2774/3041/1228 2773/3040/1228 2775/3042/1229 +f 2774/3041/1228 2775/3042/1229 2776/3043/1230 +f 2777/3044/1230 2778/3045/1229 2772/3039/27 +f 2777/3044/1230 2772/3039/27 2771/3038/27 +f 2779/3046/1231 2780/3047/1232 2781/3048/1233 +f 2779/3046/1231 2781/3048/1233 2782/3049/1234 +f 2783/3050/1234 2784/3051/1235 2785/3052/1236 +f 2783/3050/1234 2785/3052/1236 2786/3053/1237 +f 2786/3053/1237 2785/3052/1236 2780/3047/1232 +f 2786/3053/1237 2780/3047/1232 2779/3046/1231 +f 2787/3054/1238 2788/3055/1239 2789/3056/1240 +f 2787/3054/1238 2789/3056/1240 2790/3057/1241 +f 2791/3058/1242 2792/3059/1243 2793/3060/1244 +f 2791/3058/1242 2793/3060/1244 2794/3061/1245 +f 2794/3061/1245 2793/3060/1244 2788/3055/1239 +f 2794/3061/1245 2788/3055/1239 2787/3054/1238 +f 2795/3062/27 2796/3063/27 2797/3064/1246 +f 2795/3062/27 2797/3064/1246 2798/3065/1246 +f 2798/3065/1246 2797/3064/1246 2799/3066/1247 +f 2798/3065/1246 2799/3066/1247 2800/3067/1248 +f 2801/3068/1249 2802/3069/1247 2796/3063/27 +f 2801/3068/1249 2796/3063/27 2795/3062/27 +f 2803/3070/1250 2804/3071/1251 2805/3072/1252 +f 2803/3070/1250 2805/3072/1252 2806/3073/1253 +f 2806/3073/1253 2805/3072/1252 2807/3074/1 +f 2806/3073/1253 2807/3074/1 2808/3075/1 +f 2808/3075/1 2807/3074/1 2809/3076/1254 +f 2808/3075/1 2809/3076/1254 2810/3077/1254 +f 2811/3078/1254 2812/3079/1255 2813/3080/1256 +f 2811/3078/1254 2813/3080/1256 2814/3081/1256 +f 2814/3081/1256 2813/3080/1256 2815/3082/1257 +f 2814/3081/1256 2815/3082/1257 2816/3083/1258 +f 2816/3083/1258 2815/3082/1257 2817/3084/3 +f 2816/3083/1258 2817/3084/3 2818/3085/3 +f 2818/3085/3 2817/3084/3 2819/3086/1259 +f 2818/3085/3 2819/3086/1259 2820/3087/1259 +f 2820/3087/1259 2819/3086/1259 2804/3071/1251 +f 2820/3087/1259 2804/3071/1251 2803/3070/1250 +f 2821/3088/1260 2822/3089/1261 2823/3090/1262 +f 2821/3088/1260 2823/3090/1262 2824/3091/1263 +f 2824/3091/1263 2823/3090/1262 2825/3092/1 +f 2824/3091/1263 2825/3092/1 2826/3093/1 +f 2827/3094/3 2828/3095/3 2829/3096/1264 +f 2827/3094/3 2829/3096/1264 2830/3097/1265 +f 2830/3097/1265 2829/3096/1264 2822/3089/1261 +f 2830/3097/1265 2822/3089/1261 2821/3088/1260 +f 2831/3098/1266 2832/3099/1266 2833/3100/1266 +f 2831/3098/1266 2833/3100/1266 2834/3101/1266 +f 2835/3102/1267 2836/3103/1267 2837/3104/1267 +f 2835/3102/1267 2837/3104/1267 2838/3105/1267 +f 2839/3106/1268 2840/3107/1268 2841/3108/1269 +f 2839/3106/1268 2841/3108/1269 2842/3109/1268 +f 2843/3110/1270 2844/3111/1271 2845/3112/1270 +f 2843/3110/1270 2845/3112/1270 2846/3113/1271 +f 2851/1117/124 2853/1119/124 2854/3114/124 +f 2863/3115/27 2864/3116/27 2865/3117/36 +f 2863/3115/27 2865/3117/36 2866/3118/36 +f 2866/3118/36 2865/3117/36 2867/3119/16 +f 2866/3118/36 2867/3119/16 2868/3120/16 +f 2868/3120/16 2867/3119/16 2869/3121/42 +f 2868/3120/16 2869/3121/42 2870/3122/42 +f 2870/3122/42 2869/3121/42 2871/3123/26 +f 2870/3122/42 2871/3123/26 2872/3124/26 +f 2872/3124/26 2871/3123/26 2873/3125/39 +f 2872/3124/26 2873/3125/39 2874/3126/731 +f 2875/3127/729 2876/3128/39 2877/3129/25 +f 2875/3127/729 2877/3129/25 2878/3130/25 +f 2878/3130/25 2877/3129/25 2879/3131/33 +f 2878/3130/25 2879/3131/33 2880/3132/33 +f 2880/3132/33 2879/3131/33 2864/3116/27 +f 2880/3132/33 2864/3116/27 2863/3115/27 +f 2883/3133/27 2884/3134/27 2885/3135/36 +f 2883/3133/27 2885/3135/36 2886/3136/36 +f 2886/3136/36 2885/3135/36 2887/3137/16 +f 2886/3136/36 2887/3137/16 2888/3138/16 +f 2888/3138/16 2887/3137/16 2889/3139/42 +f 2888/3138/16 2889/3139/42 2890/3140/42 +f 2890/3140/42 2889/3139/42 2891/3141/26 +f 2890/3140/42 2891/3141/26 2892/3142/26 +f 2892/3142/26 2891/3141/26 2893/3143/39 +f 2892/3142/26 2893/3143/39 2894/3144/39 +f 2894/3144/39 2893/3143/39 2895/3145/25 +f 2894/3144/39 2895/3145/25 2896/3146/25 +f 2896/3146/25 2895/3145/25 2897/3147/33 +f 2896/3146/25 2897/3147/33 2898/3148/1272 +f 2899/3149/727 2900/3150/33 2884/3134/27 +f 2899/3149/727 2884/3134/27 2883/3133/27 +f 2903/3151/1273 2904/3152/1274 2905/3153/1275 +f 2903/3151/1273 2905/3153/1275 2906/3154/1276 +f 2907/3155/1277 2908/3156/1278 2904/3152/1274 +f 2907/3155/1277 2904/3152/1274 2903/3151/1273 +f 2909/3157/1279 2910/3158/1280 2908/3156/1278 +f 2909/3157/1279 2908/3156/1278 2907/3155/1277 +f 2911/3159/1281 2912/3160/1282 2910/3158/1280 +f 2911/3159/1281 2910/3158/1280 2909/3157/1279 +f 2913/3161/1283 2903/3151/1273 2906/3154/1276 +f 2913/3161/1283 2906/3154/1276 2914/3162/1284 +f 2915/3163/1283 2907/3155/1277 2903/3151/1273 +f 2915/3163/1283 2903/3151/1273 2913/3161/1283 +f 2916/3164/1283 2909/3157/1279 2907/3155/1277 +f 2916/3164/1283 2907/3155/1277 2915/3163/1283 +f 2916/3164/1283 2917/3165/1283 2911/3159/1281 +f 2916/3164/1283 2911/3159/1281 2909/3157/1279 +f 2918/3166/1285 2919/3167/1286 2920/3168/1287 +f 2918/3166/1285 2920/3168/1287 2921/3169/1288 +f 2922/3170/1289 2923/3171/1286 2919/3167/1286 +f 2922/3170/1289 2919/3167/1286 2918/3166/1285 +f 2922/3170/1289 2924/3172/1290 2925/3173/1286 +f 2922/3170/1289 2925/3173/1286 2923/3171/1286 +f 2924/3172/1290 2926/3174/1291 2927/3175/1286 +f 2924/3172/1290 2927/3175/1286 2925/3173/1286 +f 2928/3176/1292 2929/3177/1293 2930/3178/1294 +f 2928/3176/1292 2930/3178/1294 2931/3179/1295 +f 2929/3177/1293 2932/3180/1296 2933/3181/1297 +f 2929/3177/1293 2933/3181/1297 2930/3178/1294 +f 2932/3180/1296 2934/3182/1298 2935/3183/1299 +f 2932/3180/1296 2935/3183/1299 2933/3181/1297 +f 2936/3184/1300 2937/3185/1301 2935/3183/1299 +f 2936/3184/1300 2935/3183/1299 2934/3182/1298 +f 2911/3159/1281 2938/3186/1302 2939/3187/1303 +f 2911/3159/1281 2939/3187/1303 2912/3160/1282 +f 2917/3165/1283 2940/3188/1304 2938/3186/1302 +f 2917/3165/1283 2938/3186/1302 2911/3159/1281 +f 2927/3175/1286 2941/3189/1305 2940/3188/1304 +f 2927/3175/1286 2940/3188/1304 2917/3165/1283 +f 2926/3174/1291 2937/3185/1301 2942/3190/1306 +f 2926/3174/1291 2942/3190/1306 2943/3191/1307 +f 2931/3179/1295 2930/3178/1294 2918/3166/1285 +f 2931/3179/1295 2918/3166/1285 2921/3169/1288 +f 2930/3178/1294 2933/3181/1297 2922/3170/1289 +f 2930/3178/1294 2922/3170/1289 2918/3166/1285 +f 2933/3181/1297 2935/3183/1299 2924/3172/1290 +f 2933/3181/1297 2924/3172/1290 2922/3170/1289 +f 2937/3185/1301 2926/3174/1291 2924/3172/1290 +f 2937/3185/1301 2924/3172/1290 2935/3183/1299 +f 2937/3185/1301 2936/3184/1300 2944/3192/1308 +f 2937/3185/1301 2944/3192/1308 2942/3190/1306 +f 2919/3167/1286 2913/3161/1283 2914/3162/1284 +f 2919/3167/1286 2914/3162/1284 2920/3168/1287 +f 2923/3171/1286 2915/3163/1283 2913/3161/1283 +f 2923/3171/1286 2913/3161/1283 2919/3167/1286 +f 2923/3171/1286 2925/3173/1286 2916/3164/1283 +f 2923/3171/1286 2916/3164/1283 2915/3163/1283 +f 2925/3173/1286 2927/3175/1286 2917/3165/1283 +f 2925/3173/1286 2917/3165/1283 2916/3164/1283 +f 2941/3189/1305 2927/3175/1286 2926/3174/1291 +f 2941/3189/1305 2926/3174/1291 2943/3191/1307 +f 2949/3193/1309 2950/3194/1310 2951/3195/1311 +f 2949/3193/1309 2951/3195/1311 2952/3196/1312 +f 2953/3197/1313 2954/3198/1314 2955/3199/1314 +f 2953/3197/1313 2955/3199/1314 2956/3200/1314 +f 2957/1136/128 2959/1138/128 2960/3201/128 +f 2965/3202/1315 2966/3203/1316 2967/3204/1317 +f 2965/3202/1315 2967/3204/1317 2968/3205/1316 +f 2969/3206/1318 2970/3207/1318 2971/3208/1318 +f 2969/3206/1318 2971/3208/1318 2972/3209/1318 +f 2973/3210/1319 2974/3211/1319 2975/3212/1320 +f 2973/3210/1319 2975/3212/1320 2976/3213/1319 +f 2977/3214/1321 2978/3215/1321 2979/3216/1321 +f 2977/3214/1321 2979/3216/1321 2980/3217/1321 +f 2981/3218/1322 2982/3219/1323 2983/3220/1323 +f 2981/3218/1322 2983/3220/1323 2984/3221/1322 +f 2985/3222/1324 2986/3223/1324 2987/3224/1324 +f 2985/3222/1324 2987/3224/1324 2988/3225/1324 +f 2989/3226/1325 2990/3227/1325 2991/3228/1325 +f 2989/3226/1325 2991/3228/1325 2992/3229/1325 +f 2993/3230/1326 2994/3231/1326 2995/3232/1326 +f 2993/3230/1326 2995/3232/1326 2996/3233/1326 +f 2997/3234/1327 2998/3235/1328 2999/3236/1328 +f 2997/3234/1327 2999/3236/1328 3000/3237/1328 +f 3001/3238/1329 3002/3239/1330 3003/3240/1330 +f 3001/3238/1329 3003/3240/1330 3004/3241/1330 +f 3005/3242/1331 3006/3243/1331 3007/3244/1331 +f 3005/3242/1331 3007/3244/1331 3008/3245/1331 +f 3009/3246/1332 3010/3247/1332 3011/3248/1332 +f 3009/3246/1332 3011/3248/1332 3012/3249/1332 +f 3013/3250/1333 3014/3251/1333 3015/3252/1334 +f 3013/3250/1333 3015/3252/1334 3016/3253/1334 +f 3017/3254/1335 3018/3255/1335 3019/3256/1336 +f 3017/3254/1335 3019/3256/1336 3020/3257/1335 +f 3021/3258/1337 3022/3259/1338 3023/3260/1339 +f 3021/3258/1337 3023/3260/1339 3024/3261/1338 +f 3025/3262/1340 3026/3263/1340 3027/3264/1341 +f 3025/3262/1340 3027/3264/1341 3028/3265/1342 +f 3029/3266/1343 3030/3267/1344 3031/3268/1343 +f 3029/3266/1343 3031/3268/1343 3032/3269/1343 +f 3037/3270/1345 3038/3271/1345 3039/3272/1346 +f 3037/3270/1345 3039/3272/1346 3040/3273/1347 +f 3041/1147/1348 3043/1149/1349 3044/3274/1349 +f 3053/3275/1350 3054/3276/1350 3055/3277/1350 +f 3053/3275/1350 3055/3277/1350 3056/3278/1350 +f 3061/3279/1351 3062/3280/1352 3063/3281/1351 +f 3061/3279/1351 3063/3281/1351 3064/3282/1351 +f 3065/3283/1353 3066/3284/1354 3067/3285/1354 +f 3065/3283/1353 3067/3285/1354 3068/3286/1353 +f 3069/3287/1355 3070/3288/1356 3071/3289/1355 +f 3069/3287/1355 3071/3289/1355 3072/3290/1355 +f 3077/3291/1357 3078/3292/1357 3079/3293/1357 +f 3077/3291/1357 3079/3293/1357 3080/3294/1357 +f 3085/3295/1358 3086/3296/1359 3087/3297/1360 +f 3085/3295/1358 3087/3297/1360 3088/3298/1359 +f 3089/3299/1361 3090/3300/1362 3091/3301/1361 +f 3089/3299/1361 3091/3301/1361 3092/3302/1361 +f 3093/3303/1363 3094/3304/1363 3095/3305/1363 +f 3093/3303/1363 3095/3305/1363 3096/3306/1363 +f 3097/3307/1364 3098/3308/1364 3099/3309/1365 +f 3097/3307/1364 3099/3309/1365 3100/3310/1364 +f 3101/3311/1366 3102/3312/1367 3103/3313/1366 +f 3101/3311/1366 3103/3313/1366 3104/3314/1367 +f 3189/3315/1368 3190/3316/1369 3191/3317/1370 +f 3189/3315/1368 3191/3317/1370 3192/3318/1369 +f 2152/2812/1126 3189/3315/1368 3192/3318/1369 +f 2152/2812/1126 3192/3318/1369 2153/2813/1127 +f 3190/3316/1369 3193/1254/89 3194/1257/89 +f 3190/3316/1369 3194/1257/89 3191/3317/1370 +f 2151/2811/1125 2150/2810/1124 3195/3319/1371 +f 2151/2811/1125 3195/3319/1371 3196/3320/1371 +f 3205/3321/1089 3206/1264/84 3207/1265/84 +f 3205/3321/1089 3207/1265/84 3208/3322/1088 +f 2112/2772/1088 3205/3321/1089 3208/3322/1088 +f 2112/2772/1088 3208/3322/1088 2113/2773/1089 +f 2114/2774/1090 3209/3323/1372 3210/3324/1373 +f 2114/2774/1090 3210/3324/1373 2115/2775/1090 +f 3209/3323/1372 3211/3325/1374 3212/3326/1374 +f 3209/3323/1372 3212/3326/1374 3210/3324/1373 +f 3221/3327/833 3222/3328/833 1823/2568/972 +f 3221/3327/833 1823/2568/972 1822/2567/971 +f 1748/2504/917 3223/3329/917 3224/3330/918 +f 1748/2504/917 3224/3330/918 1752/2508/1375 +f 3253/3331/836 3254/3332/1376 3255/3333/1376 +f 3253/3331/836 3255/3333/1376 3256/3334/836 +f 3257/3335/25 3258/3336/1005 3259/3337/1005 +f 3257/3335/25 3259/3337/1005 3260/3338/837 +f 3285/3339/1377 3286/3340/1378 3287/3341/1378 +f 3285/3339/1377 3287/3341/1378 3288/3342/1377 +f 3286/3340/1378 3289/3343/1379 3290/3344/1379 +f 3286/3340/1378 3290/3344/1379 3287/3341/1378 +f 3289/3343/1379 3291/3345/1380 3292/3346/1380 +f 3289/3343/1379 3292/3346/1380 3290/3344/1379 +f 3301/3347/26 3302/3348/1381 3303/3349/1381 +f 3301/3347/26 3303/3349/1381 3304/3350/26 +f 3302/3348/1381 3305/3351/16 3306/3352/16 +f 3302/3348/1381 3306/3352/16 3303/3349/1381 +f 3305/3351/16 3307/3353/1382 3308/3354/1382 +f 3305/3351/16 3308/3354/1382 3306/3352/16 +f 3307/3353/1382 3309/3355/27 3310/3356/27 +f 3307/3353/1382 3310/3356/27 3308/3354/1382 +f 3309/3355/27 3311/3357/33 3312/3358/33 +f 3309/3355/27 3312/3358/33 3310/3356/27 +f 3311/3357/33 3313/3359/837 3314/3360/837 +f 3311/3357/33 3314/3360/837 3312/3358/33 +f 3313/3359/837 3315/3361/39 3316/3362/39 +f 3313/3359/837 3316/3362/39 3314/3360/837 +f 3315/3361/39 3301/3347/26 3304/3350/26 +f 3315/3361/39 3304/3350/26 3316/3362/39 +f 3331/3363/687 3332/3364/688 3333/3365/689 +f 3331/3363/687 3333/3365/689 3334/3366/690 +f 3335/3367/688 3336/3368/691 3337/3369/692 +f 3335/3367/688 3337/3369/692 3338/3370/693 +f 3336/3368/691 3331/3363/687 3334/3366/690 +f 3336/3368/691 3334/3366/690 3337/3369/692 +f 3339/3371/694 3340/3372/695 3341/3373/696 +f 3339/3371/694 3341/3373/696 3342/3374/697 +f 3343/3375/698 3344/3376/699 3345/3377/700 +f 3343/3375/698 3345/3377/700 3346/3378/701 +f 3344/3376/699 3339/3371/694 3342/3374/697 +f 3344/3376/699 3342/3374/697 3345/3377/700 +f 3347/3379/706 3348/3380/707 3349/3381/707 +f 3347/3379/706 3349/3381/707 3350/3382/709 +f 3348/3380/707 3351/3383/1 3352/3384/1 +f 3348/3380/707 3352/3384/1 3349/3381/707 +f 3351/3383/1 3353/3385/710 3354/3386/710 +f 3351/3383/1 3354/3386/710 3352/3384/1 +f 3355/3387/710 3356/3388/711 3357/3389/1383 +f 3355/3387/710 3357/3389/1383 3358/3390/710 +f 3356/3388/711 3359/3391/713 3360/3392/712 +f 3356/3388/711 3360/3392/712 3357/3389/1383 +f 3359/3391/713 3361/3393/3 3362/3394/3 +f 3359/3391/713 3362/3394/3 3360/3392/712 +f 3361/3393/3 3363/3395/714 3364/3396/714 +f 3361/3393/3 3364/3396/714 3362/3394/3 +f 3363/3395/714 3347/3379/706 3350/3382/709 +f 3363/3395/714 3350/3382/709 3364/3396/714 +f 3381/3397/1384 3382/3398/1385 3383/3399/1386 +f 3381/3397/1384 3383/3399/1386 3384/3400/1387 +f 3382/3398/1385 3385/3401/1388 3386/3402/1389 +f 3382/3398/1385 3386/3402/1389 3383/3399/1386 +f 3387/3403/1390 3381/3397/1384 3384/3400/1387 +f 3387/3403/1390 3384/3400/1387 3388/3404/1391 +f 3405/3405/1231 3406/3406/1232 3407/3407/1233 +f 3405/3405/1231 3407/3407/1233 3408/3408/1234 +f 3409/3409/1234 3410/3410/1235 3411/3411/1392 +f 3409/3409/1234 3411/3411/1392 3412/3412/1237 +f 3412/3412/1237 3411/3411/1392 3406/3406/1232 +f 3412/3412/1237 3406/3406/1232 3405/3405/1231 +f 3413/3413/1238 3414/3414/1239 3415/3415/1240 +f 3413/3413/1238 3415/3415/1240 3416/3416/1241 +f 3417/3417/1242 3418/3418/1243 3419/3419/1244 +f 3417/3417/1242 3419/3419/1244 3420/3420/1245 +f 3420/3420/1245 3419/3419/1244 3414/3414/1239 +f 3420/3420/1245 3414/3414/1239 3413/3413/1238 +f 3421/3421/1251 3422/3422/1251 3423/3423/1252 +f 3421/3421/1251 3423/3423/1252 3424/3424/1253 +f 3424/3424/1253 3423/3423/1252 3425/3425/1 +f 3424/3424/1253 3425/3425/1 3426/3426/1 +f 3426/3426/1 3425/3425/1 3427/3427/1254 +f 3426/3426/1 3427/3427/1254 3428/3428/1254 +f 3429/3429/1393 3430/3430/1254 3431/3431/1394 +f 3429/3429/1393 3431/3431/1394 3432/3432/1256 +f 3432/3432/1256 3431/3431/1394 3433/3433/1257 +f 3432/3432/1256 3433/3433/1257 3434/3434/1257 +f 3434/3434/1257 3433/3433/1257 3435/3435/3 +f 3434/3434/1257 3435/3435/3 3436/3436/3 +f 3436/3436/3 3435/3435/3 3437/3437/1259 +f 3436/3436/3 3437/3437/1259 3438/3438/1259 +f 3438/3438/1259 3437/3437/1259 3422/3422/1251 +f 3438/3438/1259 3422/3422/1251 3421/3421/1251 +f 3439/3439/27 3440/3440/27 3441/3441/1395 +f 3439/3439/27 3441/3441/1395 3442/3442/1395 +f 3442/3442/1395 3441/3441/1395 3443/3443/1396 +f 3442/3442/1395 3443/3443/1396 3444/3444/1397 +f 3445/3445/1397 3446/3446/1396 3440/3440/27 +f 3445/3445/1397 3440/3440/27 3439/3439/27 diff --git a/examples/models/resources/models/obj/plane_diffuse.png b/examples/models/resources/models/obj/plane_diffuse.png new file mode 100644 index 0000000..07371c0 Binary files /dev/null and b/examples/models/resources/models/obj/plane_diffuse.png differ diff --git a/examples/models/resources/models/obj/turret.obj b/examples/models/resources/models/obj/turret.obj new file mode 100644 index 0000000..bf7caac --- /dev/null +++ b/examples/models/resources/models/obj/turret.obj @@ -0,0 +1,1888 @@ +# (c) 2018 Medieval Assets Pack by Alberto Cano +# Licensed as Creative Commons Attribution-NonCommercial 4.0 + +# +# object turret +# + +v 0.0000 13.3010 3.5973 +v 0.0000 12.1596 2.3386 +v 2.5639 12.1596 2.3386 +v 3.4913 13.3010 3.5973 +v 3.5203 14.0462 3.0738 +v 3.9444 14.0450 3.1421 +v 3.9444 14.0369 -0.0000 +v 3.4351 14.0369 -0.0000 +v 3.4352 14.0462 2.9719 +v 3.3643 13.3303 2.9127 +v 0.0000 13.3303 2.9127 +v 0.0000 13.3010 2.9740 +v 3.4352 13.3010 2.9740 +v 0.0000 14.0462 2.9719 +v 3.9444 13.2918 -0.0000 +v 3.9444 13.2998 3.1441 +v 3.4913 14.0462 3.5952 +v 3.3643 13.3303 -0.0000 +v 0.0000 13.3303 -0.0000 +v 0.0000 14.0462 3.5952 +v 2.5639 12.1504 -0.0000 +v 3.4352 13.2918 -0.0000 +v 3.5237 14.9316 3.0740 +v 3.9478 14.9305 3.1422 +v 3.4947 14.9316 3.5953 +v 3.5271 16.4764 1.4274 +v 3.9512 16.4752 1.4274 +v 3.9512 15.9080 2.0774 +v 3.5271 15.9092 2.0092 +v 1.8327 16.4815 3.5953 +v 1.8617 16.4815 3.0742 +v 2.5117 15.9086 3.0742 +v 2.4725 15.9086 3.5953 +v 3.9512 16.4757 3.1424 +v 3.4981 16.4769 3.5955 +v 3.5271 16.4769 3.0742 +v 2.5639 12.1596 -2.3386 +v 0.0000 12.1596 -2.3386 +v 0.0000 13.3010 -3.5973 +v 3.4913 13.3010 -3.5973 +v 3.5203 14.0462 -3.0738 +v 3.4351 14.0462 -2.9720 +v 3.9444 14.0450 -3.1421 +v 0.0000 13.3010 -2.9740 +v 0.0000 13.3303 -2.9127 +v 3.3643 13.3303 -2.9127 +v 3.4352 13.3010 -2.9740 +v 0.0000 14.0462 -2.9719 +v 3.9444 13.2998 -3.1441 +v 3.4913 14.0462 -3.5952 +v 0.0000 14.0462 -3.5952 +v 3.9478 14.9305 -3.1422 +v 3.5237 14.9316 -3.0740 +v 3.4947 14.9316 -3.5953 +v 3.9512 15.9080 -2.0774 +v 3.9512 16.4752 -1.4274 +v 3.5271 16.4764 -1.4274 +v 3.5271 15.9092 -2.0092 +v 2.5117 15.9086 -3.0742 +v 1.8617 16.4815 -3.0742 +v 1.8327 16.4815 -3.5954 +v 2.4725 15.9086 -3.5953 +v 3.4981 16.4769 -3.5955 +v 3.9512 16.4757 -3.1424 +v 3.5271 16.4769 -3.0742 +v -2.5639 12.1596 2.3386 +v -3.4913 13.3010 3.5973 +v -3.5203 14.0462 3.0738 +v -3.4351 14.0462 2.9720 +v -3.4351 14.0369 0.0000 +v -3.9444 14.0369 0.0000 +v -3.9444 14.0450 3.1421 +v -3.3643 13.3303 2.9127 +v -3.4351 13.3010 2.9740 +v -3.9444 13.2918 0.0000 +v -3.9444 13.2998 3.1441 +v -3.4913 14.0462 3.5952 +v -3.3643 13.3303 0.0000 +v -2.5639 12.1504 0.0000 +v -3.4351 13.2918 0.0000 +v -3.9478 14.9305 3.1422 +v -3.5237 14.9316 3.0740 +v -3.4947 14.9316 3.5954 +v -3.9512 15.9080 2.0774 +v -3.9512 16.4752 1.4274 +v -3.5271 16.4764 1.4274 +v -3.5271 15.9092 2.0092 +v -2.5117 15.9086 3.0742 +v -1.8617 16.4815 3.0742 +v -1.8327 16.4815 3.5954 +v -2.4725 15.9086 3.5953 +v -3.4981 16.4769 3.5955 +v -3.9512 16.4757 3.1424 +v -3.5271 16.4769 3.0742 +v -2.5639 12.1596 -2.3386 +v -3.4913 13.3010 -3.5972 +v -3.5203 14.0462 -3.0738 +v -3.9444 14.0450 -3.1421 +v -3.4351 14.0462 -2.9719 +v -3.3643 13.3303 -2.9127 +v -3.4351 13.3010 -2.9740 +v -3.9444 13.2998 -3.1441 +v -3.4913 14.0462 -3.5952 +v -3.5237 14.9316 -3.0740 +v -3.9478 14.9305 -3.1422 +v -3.4947 14.9316 -3.5953 +v -3.5271 16.4764 -1.4274 +v -3.9512 16.4752 -1.4274 +v -3.9512 15.9080 -2.0774 +v -3.5271 15.9092 -2.0092 +v -1.8327 16.4815 -3.5953 +v -1.8617 16.4815 -3.0742 +v -2.5117 15.9086 -3.0742 +v -2.4725 15.9086 -3.5953 +v -3.9512 16.4757 -3.1424 +v -3.4981 16.4769 -3.5955 +v -3.5271 16.4769 -3.0742 +v 0.1550 14.0277 -3.1544 +v 0.1550 14.0277 -3.5335 +v 0.1550 16.9018 -3.5335 +v 0.1550 16.9018 -3.1544 +v -0.5341 14.0277 -3.5335 +v -0.5341 16.9018 -3.5335 +v -0.5341 14.0277 -3.1544 +v -0.5341 16.9018 -3.1544 +v -3.5170 14.0277 -0.3456 +v -3.8961 14.0277 -0.3456 +v -3.8961 16.9018 -0.3456 +v -3.5170 16.9018 -0.3456 +v -3.8961 14.0277 0.3435 +v -3.8961 16.9018 0.3435 +v -3.5170 14.0277 0.3435 +v -3.5170 16.9018 0.3435 +v -0.3446 14.0277 3.1662 +v -0.3446 14.0277 3.5453 +v -0.3446 16.9018 3.5453 +v -0.3446 16.9018 3.1662 +v 0.3445 14.0277 3.5453 +v 0.3445 16.9018 3.5453 +v 0.3445 14.0277 3.1662 +v 0.3445 16.9018 3.1662 +v 3.5160 14.0277 0.3435 +v 3.8951 14.0277 0.3435 +v 3.8951 16.9018 0.3435 +v 3.5160 16.9018 0.3435 +v 3.8951 14.0277 -0.3456 +v 3.8951 16.9018 -0.3456 +v 3.5160 14.0277 -0.3456 +v 3.5160 16.9018 -0.3456 +v 0.0000 8.6187 2.3766 +v 0.4715 8.6467 2.3766 +v 0.4598 9.7167 2.3896 +v -0.0117 10.0591 2.3896 +v 0.8403 8.5183 2.4160 +v 0.8403 8.5183 2.3077 +v 0.8403 8.6724 2.3077 +v 0.8403 8.6724 2.4160 +v 0.7068 9.8138 2.4290 +v 0.7068 9.8138 2.3207 +v -0.0117 10.3117 2.3207 +v -0.0117 10.3117 2.4290 +v -0.8403 8.6724 2.4160 +v -0.8403 8.6724 2.3077 +v -0.8403 8.5183 2.3077 +v -0.8403 8.5183 2.4160 +v -0.7186 8.5183 2.4160 +v -0.7186 8.5183 2.3077 +v -0.0000 8.4646 2.3077 +v -0.0000 8.4646 2.4160 +v 0.7185 8.5183 2.5347 +v 0.7185 8.6724 2.5347 +v 0.4715 8.6467 2.5347 +v 0.4598 9.7167 2.4290 +v -0.0117 10.0591 2.4290 +v -0.7186 8.6724 2.5347 +v -0.7186 8.5183 2.5347 +v -0.4715 8.6567 2.5347 +v -0.0000 8.4646 2.5347 +v -0.0000 8.6187 2.5347 +v -0.4833 9.7167 2.3896 +v -0.4715 8.6567 2.3766 +v -0.7303 9.8138 2.3207 +v -0.7302 9.8138 2.4290 +v 0.7185 8.5183 2.3077 +v 0.7185 8.5183 2.4160 +v -0.4832 9.7167 2.4290 +v 0.4715 8.6467 2.4160 +v -0.4716 8.6567 2.4160 +v -0.0000 8.6187 2.4160 +v -0.7186 8.6724 2.4160 +v -0.7186 8.6724 2.3077 +v 0.7185 8.6724 2.4160 +v 0.7185 8.6724 2.3077 +v 0.8403 8.5183 2.5347 +v 0.8403 8.6724 2.5347 +v -0.8403 8.6724 2.5347 +v -0.8403 8.5183 2.5347 +v 2.6080 8.6187 -0.0010 +v 2.6080 8.6467 -0.4725 +v 2.6210 9.7167 -0.4608 +v 2.6210 10.0591 0.0107 +v 2.6474 8.5183 -0.8413 +v 2.5392 8.5183 -0.8413 +v 2.5392 8.6724 -0.8413 +v 2.6474 8.6724 -0.8413 +v 2.6604 9.8138 -0.7079 +v 2.5522 9.8138 -0.7078 +v 2.5522 10.3117 0.0107 +v 2.6604 10.3117 0.0107 +v 2.6474 8.6724 0.8393 +v 2.5392 8.6724 0.8393 +v 2.5392 8.5183 0.8393 +v 2.6474 8.5183 0.8393 +v 2.6474 8.5183 0.7175 +v 2.5392 8.5183 0.7175 +v 2.5392 8.4646 -0.0010 +v 2.6474 8.4646 -0.0010 +v 2.7661 8.5183 -0.7195 +v 2.7661 8.6724 -0.7195 +v 2.7661 8.6467 -0.4725 +v 2.6604 9.7167 -0.4609 +v 2.6604 10.0591 0.0107 +v 2.7661 8.6724 0.7175 +v 2.7661 8.5183 0.7175 +v 2.7661 8.6567 0.4705 +v 2.7661 8.4646 -0.0010 +v 2.7661 8.6187 -0.0010 +v 2.6210 9.7167 0.4822 +v 2.6080 8.6567 0.4705 +v 2.5522 9.8138 0.7292 +v 2.6604 9.8138 0.7292 +v 2.5392 8.5183 -0.7196 +v 2.6474 8.5183 -0.7195 +v 2.6604 9.7167 0.4822 +v 2.6474 8.6467 -0.4725 +v 2.6474 8.6567 0.4705 +v 2.6474 8.6187 -0.0010 +v 2.6474 8.6724 0.7175 +v 2.5392 8.6724 0.7175 +v 2.6474 8.6724 -0.7195 +v 2.5392 8.6724 -0.7196 +v 2.7661 8.5183 -0.8413 +v 2.7661 8.6724 -0.8413 +v 2.7661 8.6724 0.8393 +v 2.7661 8.5183 0.8393 +v -2.6159 8.6187 -0.0010 +v -2.6159 8.6467 0.4705 +v -2.6289 9.7167 0.4588 +v -2.6289 10.0591 -0.0127 +v -2.6553 8.5183 0.8393 +v -2.5470 8.5183 0.8393 +v -2.5470 8.6724 0.8393 +v -2.6553 8.6724 0.8393 +v -2.6683 9.8138 0.7058 +v -2.5600 9.8138 0.7058 +v -2.5600 10.3117 -0.0127 +v -2.6683 10.3117 -0.0127 +v -2.6553 8.6724 -0.8413 +v -2.5470 8.6724 -0.8413 +v -2.5470 8.5183 -0.8413 +v -2.6553 8.5183 -0.8413 +v -2.6553 8.5183 -0.7195 +v -2.5470 8.5183 -0.7195 +v -2.5470 8.4646 -0.0010 +v -2.6553 8.4646 -0.0010 +v -2.7740 8.5183 0.7175 +v -2.7740 8.6724 0.7175 +v -2.7740 8.6467 0.4705 +v -2.6683 9.7167 0.4589 +v -2.6683 10.0591 -0.0127 +v -2.7740 8.6724 -0.7195 +v -2.7740 8.5183 -0.7195 +v -2.7740 8.6567 -0.4725 +v -2.7740 8.4646 -0.0010 +v -2.7740 8.6187 -0.0010 +v -2.6289 9.7167 -0.4843 +v -2.6159 8.6567 -0.4725 +v -2.5600 9.8138 -0.7312 +v -2.6683 9.8138 -0.7312 +v -2.5470 8.5183 0.7175 +v -2.6553 8.5183 0.7175 +v -2.6683 9.7167 -0.4842 +v -2.6553 8.6467 0.4705 +v -2.6553 8.6567 -0.4725 +v -2.6553 8.6187 -0.0010 +v -2.6553 8.6724 -0.7195 +v -2.5470 8.6724 -0.7195 +v -2.6553 8.6724 0.7175 +v -2.5470 8.6724 0.7175 +v -2.7740 8.5183 0.8393 +v -2.7740 8.6724 0.8393 +v -2.7740 8.6724 -0.8413 +v -2.7740 8.5183 -0.8413 +v -2.5639 0.0000 -2.3386 +v -2.5639 0.0000 2.3365 +v -2.5639 12.1411 2.3365 +v 2.5639 -0.0000 2.3365 +v 2.5639 12.1411 2.3365 +v 2.5639 -0.0000 -2.3386 +v -3.3222 12.8680 -0.0010 +v -3.3222 12.8680 -2.9994 +v -3.3222 11.9932 -2.9994 +v -3.3222 11.8321 -0.0010 +v -0.0000 12.8680 2.9974 +v -3.3222 12.8680 2.9974 +v -3.3222 11.9932 2.9974 +v -0.0000 11.8320 2.9974 +v 3.3221 12.8680 -0.0010 +v 3.3221 12.8680 2.9974 +v 3.3221 11.9932 2.9974 +v 3.3221 11.8320 -0.0010 +v -0.0000 12.8680 -2.9994 +v 3.3221 12.8680 -2.9994 +v 3.3221 11.9932 -2.9994 +v -0.0000 11.8320 -2.9994 +v -2.5639 11.9932 -2.3386 +v -0.0000 11.8320 -2.3386 +v 2.5639 11.9932 -2.3386 +v 2.5639 11.8321 -0.0010 +v 2.5639 11.9932 2.3365 +v -0.0000 11.8321 2.3365 +v -2.5639 11.9932 2.3365 +v -2.5639 11.8321 -0.0010 +v -2.5639 12.8680 -2.3386 +v -2.5639 12.8680 -0.0010 +v -2.5639 12.8680 2.3365 +v -0.0000 12.8680 2.3365 +v 2.5639 12.8680 2.3365 +v 2.5639 12.8680 -0.0010 +v 2.5639 12.8680 -2.3386 +v -0.0000 12.8680 -2.3386 +v -3.3222 6.6605 -0.0010 +v -3.3222 6.6605 -2.9994 +v -3.3222 5.7858 -2.9994 +v -3.3222 5.6246 -0.0010 +v -0.0000 6.6605 2.9974 +v -3.3222 6.6605 2.9974 +v -3.3222 5.7858 2.9974 +v -0.0000 5.6246 2.9974 +v 3.3221 6.6605 -0.0010 +v 3.3221 6.6605 2.9974 +v 3.3221 5.7858 2.9974 +v 3.3221 5.6246 -0.0010 +v -0.0000 6.6605 -2.9994 +v 3.3221 6.6605 -2.9994 +v 3.3221 5.7858 -2.9994 +v -0.0000 5.6246 -2.9994 +v -2.5639 5.7858 -2.3386 +v -0.0000 5.6246 -2.3386 +v 2.5639 5.7858 -2.3386 +v 2.5639 5.6246 -0.0010 +v 2.5639 5.7858 2.3365 +v -0.0000 5.6246 2.3365 +v -2.5639 5.7858 2.3365 +v -2.5639 5.6246 -0.0010 +v -2.5639 6.6605 -2.3386 +v -2.5639 6.6605 -0.0010 +v -2.5639 6.6605 2.3365 +v -0.0000 6.6605 2.3365 +v 2.5639 6.6605 2.3365 +v 2.5639 6.6605 -0.0010 +v 2.5639 6.6605 -2.3386 +v -0.0000 6.6605 -2.3386 +v -2.6103 9.3882 2.4561 +v -2.6767 9.3882 1.9558 +v -2.9138 6.4859 1.8341 +v -2.9138 6.4859 2.7406 +v -2.9138 12.2904 1.8341 +v -2.9138 12.2904 2.7406 +v -1.9967 6.4859 2.7406 +v -2.0923 9.3882 2.4561 +v -1.9967 11.6821 2.7406 +v -1.9967 6.4859 1.8341 +v -2.1587 9.3882 1.9558 +v -1.9967 11.6821 1.8341 +v -2.6103 9.4353 -2.4582 +v -2.9138 6.5331 -2.7426 +v -2.9138 6.5331 -1.8362 +v -2.6767 9.4353 -1.9578 +v -2.9138 12.3375 -1.8362 +v -2.9138 12.3375 -2.7426 +v -2.0923 9.4353 -2.4581 +v -1.9967 6.5331 -2.7426 +v -1.9967 11.7293 -2.7426 +v -2.1587 9.4353 -1.9578 +v -1.9967 6.5331 -1.8362 +v -1.9967 11.7293 -1.8362 +v -2.6103 2.9022 -2.4582 +v -2.9138 0.0000 -2.7426 +v -2.9138 0.0000 -1.8362 +v -2.6767 2.9022 -1.9578 +v -2.9138 5.8044 -1.8362 +v -2.9138 5.8044 -2.7426 +v -2.0923 2.9022 -2.4581 +v -1.9967 0.0000 -2.7426 +v -1.9967 6.4231 -2.7426 +v -2.1587 2.9022 -1.9578 +v -1.9967 0.0000 -1.8362 +v -1.9967 6.4231 -1.8362 +v 2.6103 9.4517 2.4561 +v 2.9138 6.5495 2.7406 +v 2.9138 6.5495 1.8341 +v 2.6767 9.4517 1.9558 +v 2.9138 12.3539 1.8341 +v 2.9138 12.3539 2.7406 +v 2.0923 9.4517 2.4561 +v 1.9967 6.5495 2.7406 +v 1.9967 11.7456 2.7406 +v 2.1587 9.4517 1.9558 +v 1.9967 6.5495 1.8341 +v 1.9967 11.7456 1.8341 +v 2.6103 2.9022 -2.4581 +v 2.6767 2.9022 -1.9578 +v 2.9138 -0.0000 -1.8362 +v 2.9138 -0.0000 -2.7426 +v 2.9138 5.8044 -1.8362 +v 2.9138 5.8044 -2.7426 +v 1.9967 -0.0000 -2.7426 +v 2.0923 2.9022 -2.4581 +v 1.9967 6.4231 -2.7426 +v 1.9967 -0.0000 -1.8362 +v 2.1587 2.9022 -1.9578 +v 1.9967 6.4231 -1.8362 +v 2.6103 9.4353 -2.4582 +v 2.6767 9.4353 -1.9578 +v 2.9138 6.5331 -1.8362 +v 2.9138 6.5331 -2.7427 +v 2.9138 12.3375 -1.8362 +v 2.9138 12.3375 -2.7427 +v 1.9967 6.5331 -2.7427 +v 2.0923 9.4353 -2.4581 +v 1.9967 11.7293 -2.7427 +v 1.9967 6.5331 -1.8362 +v 2.1587 9.4353 -1.9578 +v 1.9967 11.7293 -1.8362 +v 2.6103 2.9022 2.4561 +v 2.9138 -0.0000 2.7406 +v 2.9138 -0.0000 1.8341 +v 2.6767 2.9022 1.9558 +v 2.9138 5.8044 1.8341 +v 2.9138 5.8044 2.7406 +v 2.0923 2.9022 2.4561 +v 1.9967 -0.0000 2.7406 +v 1.9967 6.4231 2.7406 +v 2.1587 2.9022 1.9558 +v 1.9967 -0.0000 1.8341 +v 1.9967 6.4231 1.8341 +v -2.6103 2.9022 2.4561 +v -2.6767 2.9022 1.9558 +v -2.9138 0.0000 1.8341 +v -2.9138 0.0000 2.7406 +v -2.9138 5.8044 1.8341 +v -2.9138 5.8044 2.7406 +v -1.9967 0.0000 2.7406 +v -2.0923 2.9022 2.4561 +v -1.9967 6.4231 2.7406 +v -1.9967 0.0000 1.8341 +v -2.1587 2.9022 1.9558 +v -1.9967 6.4231 1.8341 +v -1.5453 5.6703 -3.5469 +v -1.5453 7.5835 -3.4309 +v -0.7727 7.5835 -3.4309 +v -0.7727 4.7854 -3.5469 +v -1.5453 9.4968 -3.2987 +v -0.7727 9.4968 -3.2987 +v -1.5453 11.4101 -3.3804 +v -0.7727 11.4101 -3.3804 +v -1.5453 13.3234 -3.5469 +v -0.7727 13.3234 -3.5469 +v -0.0000 7.5835 -3.4309 +v -0.0000 4.2830 -3.5469 +v -0.0000 9.4968 -3.2987 +v -0.0000 11.4101 -3.3804 +v -0.0000 13.3234 -3.5469 +v 0.7726 7.5835 -3.4309 +v 0.7726 4.7854 -3.5469 +v 0.7726 9.4968 -3.2987 +v 0.7726 11.4101 -3.3804 +v 0.7726 13.3234 -3.5469 +v 1.5453 7.5835 -3.4309 +v 1.5453 5.6702 -3.5469 +v 1.5453 9.4968 -3.2987 +v 1.5453 11.4101 -3.3804 +v 1.5453 13.3234 -3.5469 +v 0.0000 23.5750 -0.0000 +v -4.1897 16.4768 -3.9339 +v -4.1897 16.4768 3.9339 +v 4.1897 16.4768 3.9339 +v 4.1897 16.4768 -3.9339 +v -1.2971 3.7738 -2.1572 +v -1.2971 3.7738 -2.6666 +v -1.7173 3.6544 -2.6666 +v -1.7173 3.6544 -2.1572 +v -1.2971 -0.0000 -2.6666 +v -1.2971 3.3171 -2.6666 +v -1.2971 3.3171 -2.4156 +v -1.2971 -0.0000 -2.4156 +v -1.7173 -0.0000 -2.6666 +v -1.7173 3.3171 -2.6666 +v -1.7173 -0.0000 -2.1572 +v -1.7173 3.3171 -2.1572 +v 1.2970 3.7738 -2.6666 +v 1.2970 3.7738 -2.1572 +v 1.7173 3.6544 -2.1572 +v 1.7173 3.6544 -2.6666 +v 1.2970 -0.0000 -2.4156 +v 1.2970 3.3171 -2.4156 +v 1.2970 3.3171 -2.6666 +v 1.2970 -0.0000 -2.6666 +v 1.7173 -0.0000 -2.6666 +v 1.7173 3.3171 -2.6666 +v 1.7173 3.3171 -2.1572 +v 1.7173 -0.0000 -2.1572 +v -0.0000 4.3176 -2.6666 +v -0.0000 4.3176 -2.1572 +v -0.0000 3.7437 -2.6666 +v -0.0000 3.7437 -2.4156 +v -0.0000 -0.0000 -2.4156 +# 518 vertices + +vn 0.0000 -0.7408 0.6718 +vn 0.0016 1.0000 -0.0028 +vn -0.0000 0.9024 0.4309 +vn 0.0000 -0.0028 -1.0000 +vn 1.0000 0.0000 -0.0000 +vn 0.4189 -0.8046 0.4210 +vn 0.7071 0.0020 0.7071 +vn -0.0000 1.0000 -0.0000 +vn 0.0000 0.0028 1.0000 +vn 0.6366 -0.7712 0.0024 +vn 0.4322 0.9018 -0.0014 +vn -1.0000 -0.0000 0.0000 +vn 0.1589 -0.0004 -0.9873 +vn -0.9985 0.0039 -0.0555 +vn 0.7071 -0.0029 0.7071 +vn 0.0524 -0.7346 -0.6765 +vn -0.6635 -0.7469 -0.0434 +vn 0.7071 -0.0016 0.7071 +vn -1.0000 0.0014 -0.0007 +vn 1.0000 -0.0014 0.0007 +vn 0.1062 -0.7327 -0.6723 +vn -0.0001 -0.0001 1.0000 +vn -0.0000 0.0001 -1.0000 +vn -0.6920 -0.7204 -0.0452 +vn 0.0000 -0.7408 -0.6718 +vn 0.0016 1.0000 0.0028 +vn -0.0000 0.9024 -0.4309 +vn 0.0000 -0.0028 1.0000 +vn 0.4189 -0.8046 -0.4210 +vn 0.7071 0.0020 -0.7071 +vn -0.0000 1.0000 0.0000 +vn -0.0000 0.0028 -1.0000 +vn 0.6366 -0.7712 -0.0024 +vn 0.4322 0.9018 0.0014 +vn 0.1589 -0.0004 0.9873 +vn -0.9985 0.0039 0.0555 +vn 0.7071 -0.0029 -0.7071 +vn 0.0524 -0.7346 0.6765 +vn -0.6635 -0.7469 0.0434 +vn 0.7071 -0.0016 -0.7071 +vn -1.0000 0.0014 0.0007 +vn 1.0000 -0.0014 -0.0007 +vn 0.1062 -0.7327 0.6723 +vn -0.0001 -0.0001 -1.0000 +vn -0.0000 0.0001 1.0000 +vn -0.6920 -0.7204 0.0452 +vn -0.0000 -0.7408 0.6718 +vn -0.0016 1.0000 -0.0028 +vn 0.0000 0.9024 0.4309 +vn -0.0000 -0.0028 -1.0000 +vn -1.0000 0.0000 0.0000 +vn -0.4189 -0.8046 0.4210 +vn -0.7071 0.0020 0.7071 +vn 0.0000 1.0000 -0.0000 +vn -0.6366 -0.7712 0.0024 +vn -0.4322 0.9018 -0.0014 +vn -0.4321 0.9018 -0.0014 +vn 1.0000 -0.0000 -0.0000 +vn -0.1589 -0.0004 -0.9873 +vn 0.9985 0.0039 -0.0555 +vn -0.7071 -0.0029 0.7071 +vn -0.0524 -0.7346 -0.6765 +vn 0.6635 -0.7469 -0.0434 +vn -0.7071 -0.0016 0.7071 +vn 1.0000 0.0014 -0.0007 +vn -1.0000 -0.0014 0.0007 +vn -0.1062 -0.7327 -0.6723 +vn 0.0001 -0.0001 1.0000 +vn 0.0000 0.0001 -1.0000 +vn 0.6920 -0.7204 -0.0452 +vn -0.0000 -0.7408 -0.6718 +vn -0.0016 1.0000 0.0028 +vn 0.0000 0.9024 -0.4309 +vn -0.0000 -0.0028 1.0000 +vn -0.4189 -0.8046 -0.4210 +vn -0.7071 0.0020 -0.7071 +vn 0.0000 1.0000 0.0000 +vn -0.6366 -0.7712 -0.0024 +vn -0.4321 0.9018 0.0014 +vn -0.4322 0.9018 0.0014 +vn -0.1589 -0.0004 0.9873 +vn 0.9985 0.0039 0.0555 +vn -0.7071 -0.0029 -0.7071 +vn -0.0524 -0.7346 0.6765 +vn 0.6635 -0.7469 0.0434 +vn -0.7071 -0.0016 -0.7071 +vn 1.0000 0.0014 0.0007 +vn -1.0000 -0.0014 -0.0007 +vn -0.1062 -0.7327 0.6723 +vn 0.0001 -0.0001 -1.0000 +vn 0.0000 0.0001 1.0000 +vn 0.6920 -0.7204 0.0452 +vn -0.0000 0.0000 -1.0000 +vn 0.0000 0.0000 1.0000 +vn -0.0035 -0.0104 0.9999 +vn 1.0000 -0.0000 -0.0002 +vn 0.5696 0.8219 -0.0001 +vn -0.0745 -0.9972 0.0000 +vn -0.0000 -0.0000 1.0000 +vn -0.0000 0.0000 1.0000 +vn 0.0033 -0.0104 0.9999 +vn -0.5696 0.8219 0.0001 +vn 0.0745 -0.9972 0.0000 +vn 0.0000 -0.0000 1.0000 +vn -0.9999 -0.0109 0.0008 +vn -0.5875 -0.8092 0.0009 +vn 0.5875 -0.8092 -0.0008 +vn 0.9999 0.0111 -0.0004 +vn 0.0803 0.9968 0.0001 +vn -0.0593 0.9982 -0.0000 +vn -0.0027 -0.0118 0.9999 +vn -0.9999 -0.0102 0.0001 +vn 0.9999 0.0103 -0.0002 +vn 0.0029 -0.0117 0.9999 +vn 1.0000 -0.0000 0.0001 +vn -0.1034 0.9946 0.0000 +vn -0.0593 0.9982 0.0000 +vn 0.0803 0.9968 -0.0000 +vn 0.0634 0.9980 -0.0000 +vn -1.0000 0.0000 0.0001 +vn -0.0000 -1.0000 0.0000 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 -1.0000 -0.0000 +vn -0.0001 0.0000 1.0000 +vn 0.9999 -0.0104 0.0035 +vn -0.0001 0.0000 -1.0000 +vn -0.0001 0.8219 -0.5696 +vn -0.0000 -0.9972 0.0745 +vn 1.0000 -0.0000 0.0000 +vn 0.9999 -0.0104 -0.0034 +vn 0.0001 0.8219 0.5696 +vn 0.0000 -0.9972 -0.0745 +vn 0.0008 -0.0109 0.9999 +vn 0.0008 -0.8092 0.5875 +vn -0.0008 -0.8092 -0.5875 +vn -0.0004 0.0111 -0.9999 +vn 0.0000 0.9968 -0.0803 +vn -0.0000 0.9982 0.0593 +vn 0.9999 -0.0118 0.0027 +vn 0.0001 -0.0102 0.9999 +vn -0.0002 0.0103 -0.9999 +vn 0.9999 -0.0117 -0.0029 +vn 0.0001 -0.0000 -1.0000 +vn 0.0000 0.9946 0.1034 +vn 0.0000 0.9982 0.0593 +vn 0.0000 0.9968 -0.0804 +vn 0.0000 0.9980 -0.0634 +vn 0.0001 -0.0000 1.0000 +vn -0.0000 -0.9972 -0.0745 +vn -0.0000 -1.0000 -0.0000 +vn -0.9999 -0.0104 -0.0035 +vn 0.0002 -0.0000 1.0000 +vn -1.0000 0.0000 -0.0000 +vn -0.9999 -0.0104 0.0033 +vn -0.0008 -0.0109 -0.9999 +vn -0.0009 -0.8092 -0.5875 +vn 0.0007 -0.8092 0.5875 +vn 0.0004 0.0111 0.9999 +vn -0.0001 0.9968 0.0803 +vn 0.0000 0.9982 -0.0593 +vn -0.9999 -0.0118 -0.0027 +vn -0.0001 -0.0102 -0.9999 +vn 0.0002 0.0103 0.9999 +vn -0.9999 -0.0117 0.0029 +vn -0.0001 -0.0000 1.0000 +vn 0.0000 0.9946 -0.1034 +vn 0.0000 0.9968 0.0803 +vn 0.0000 0.9980 0.0634 +vn -1.0000 0.0000 -0.0001 +vn 0.0000 -0.0000 -1.0000 +vn -0.0547 -0.9980 0.0314 +vn -0.0263 -0.9978 -0.0603 +vn 0.0547 -0.9980 -0.0314 +vn 0.0263 -0.9978 0.0603 +vn 0.0547 -0.9980 0.0314 +vn -0.0263 -0.9978 0.0603 +vn -0.0547 -0.9980 -0.0314 +vn 0.0263 -0.9978 -0.0603 +vn -0.9945 0.0939 0.0469 +vn -0.9945 -0.0939 0.0469 +vn 0.0000 0.0976 0.9952 +vn -0.0469 -0.1106 0.9928 +vn 0.9980 0.0430 -0.0471 +vn 0.9974 -0.0543 -0.0471 +vn -0.0000 0.0419 -0.9991 +vn -0.0199 -0.0471 -0.9987 +vn -0.9945 0.0939 -0.0469 +vn -0.9945 -0.0939 -0.0469 +vn 0.0000 0.0976 -0.9952 +vn -0.0469 -0.1106 -0.9928 +vn 0.9980 0.0430 0.0471 +vn 0.9974 -0.0543 0.0471 +vn 0.0000 0.0419 0.9991 +vn -0.0199 -0.0471 0.9987 +vn 0.0375 -0.0870 -0.9955 +vn 0.9983 -0.0354 0.0471 +vn 0.0162 -0.0377 0.9992 +vn 0.9945 0.0939 0.0469 +vn 0.9945 -0.0939 0.0469 +vn -0.0000 0.0976 0.9952 +vn 0.0469 -0.1106 0.9928 +vn -0.9980 0.0430 -0.0471 +vn -0.9974 -0.0543 -0.0471 +vn 0.0199 -0.0471 -0.9987 +vn 0.9945 0.0939 -0.0469 +vn 0.9945 -0.0939 -0.0469 +vn -0.0000 0.0976 -0.9952 +vn -0.0375 -0.0870 -0.9955 +vn -0.9980 0.0430 0.0471 +vn -0.9983 -0.0354 0.0471 +vn -0.0162 -0.0377 0.9992 +vn 0.0469 -0.1106 -0.9928 +vn -0.9974 -0.0543 0.0471 +vn 0.0199 -0.0471 0.9987 +vn -0.0375 -0.0870 0.9955 +vn -0.9983 -0.0354 -0.0471 +vn -0.0162 -0.0377 -0.9992 +vn 0.0375 -0.0870 0.9955 +vn 0.9983 -0.0354 -0.0471 +vn 0.0162 -0.0377 -0.9992 +vn 0.0281 0.0492 -0.9984 +vn 0.0141 0.0591 -0.9982 +vn 0.0101 0.0563 -0.9984 +vn 0.0163 0.0408 -0.9990 +vn -0.0000 0.0132 -0.9999 +vn -0.0000 -0.0647 -0.9979 +vn -0.0000 -0.0867 -0.9962 +vn -0.0000 0.0535 -0.9986 +vn -0.0000 0.0380 -0.9993 +vn -0.0101 0.0563 -0.9984 +vn -0.0163 0.0408 -0.9990 +vn -0.0141 0.0591 -0.9982 +vn -0.0281 0.0492 -0.9984 +vn -0.8612 0.5083 0.0000 +vn 0.0000 0.4847 0.8747 +vn 0.8612 0.5083 -0.0000 +vn -0.0000 0.4847 -0.8747 +vn -0.2731 0.9620 0.0000 +vn 0.2731 0.9620 0.0000 +vn 0.3867 0.9222 0.0000 +vn -0.0000 -0.0000 -1.0000 +vn 0.3124 -0.9499 -0.0000 +vn -0.3867 0.9222 0.0000 +vn -0.3124 -0.9499 0.0000 +# 244 vertex normals + +vt 0.4672 0.7287 0.0000 +vt 0.4672 0.6812 0.0000 +vt 0.5381 0.6812 0.0000 +vt 0.5637 0.7287 0.0000 +vt 0.4511 0.6743 0.0000 +vt 0.4498 0.6669 0.0000 +vt 0.5101 0.6669 0.0000 +vt 0.5101 0.6758 0.0000 +vt 0.4531 0.6758 0.0000 +vt 0.6996 0.8663 0.0000 +vt 0.6083 0.8663 0.0000 +vt 0.6083 0.8881 0.0000 +vt 0.6996 0.8881 0.0000 +vt 0.6083 0.9203 0.0000 +vt 0.6996 0.9203 0.0000 +vt 0.6348 0.6259 0.0000 +vt 0.6348 0.6557 0.0000 +vt 0.5033 0.6557 0.0000 +vt 0.5033 0.6259 0.0000 +vt 0.4860 0.7374 0.0000 +vt 0.4587 0.8045 0.0000 +vt 0.4433 0.8046 0.0000 +vt 0.7663 0.6259 0.0000 +vt 0.7905 0.6258 0.0000 +vt 0.7905 0.6557 0.0000 +vt 0.7664 0.6557 0.0000 +vt 0.5578 0.5104 0.0000 +vt 0.6319 0.5104 0.0000 +vt 0.6319 0.6024 0.0000 +vt 0.5578 0.6024 0.0000 +vt 0.4411 0.6748 0.0000 +vt 0.4531 0.7357 0.0000 +vt 0.4411 0.7357 0.0000 +vt 0.5654 0.8042 0.0000 +vt 0.5654 0.7371 0.0000 +vt 0.5169 0.8663 0.0000 +vt 0.5169 0.8881 0.0000 +vt 0.5169 0.9203 0.0000 +vt 0.7344 0.2540 0.0000 +vt 0.7344 0.2807 0.0000 +vt 0.7215 0.2807 0.0000 +vt 0.7215 0.2540 0.0000 +vt 0.7532 0.2524 0.0000 +vt 0.7532 0.2800 0.0000 +vt 0.7370 0.2800 0.0000 +vt 0.7370 0.2524 0.0000 +vt 0.8440 0.5063 0.0000 +vt 0.8440 0.5248 0.0000 +vt 0.8307 0.5248 0.0000 +vt 0.8307 0.5063 0.0000 +vt 0.7344 0.3486 0.0000 +vt 0.7215 0.3486 0.0000 +vt 0.7215 0.3237 0.0000 +vt 0.7344 0.3237 0.0000 +vt 0.7532 0.3506 0.0000 +vt 0.7370 0.3506 0.0000 +vt 0.7370 0.3238 0.0000 +vt 0.7532 0.3238 0.0000 +vt 0.8440 0.5570 0.0000 +vt 0.8307 0.5570 0.0000 +vt 0.8364 0.5997 0.0000 +vt 0.7950 0.5997 0.0000 +vt 0.8096 0.5854 0.0000 +vt 0.8364 0.5608 0.0000 +vt 0.8663 0.5452 0.0000 +vt 0.8798 0.5570 0.0000 +vt 0.8093 0.5451 0.0000 +vt 0.7959 0.5570 0.0000 +vt 0.8620 0.5854 0.0000 +vt 0.8784 0.5997 0.0000 +vt 0.6756 0.2660 0.0000 +vt 0.6505 0.2660 0.0000 +vt 0.6505 0.4622 0.0000 +vt 0.6756 0.4622 0.0000 +vt 0.6058 0.3002 0.0000 +vt 0.6440 0.3002 0.0000 +vt 0.6440 0.4741 0.0000 +vt 0.6058 0.4741 0.0000 +vt 0.6280 0.0055 0.0000 +vt 0.6545 0.0069 0.0000 +vt 0.6548 0.0671 0.0000 +vt 0.6284 0.0865 0.0000 +vt 0.6000 0.2239 0.0000 +vt 0.6163 0.2239 0.0000 +vt 0.6163 0.2472 0.0000 +vt 0.6000 0.2472 0.0000 +vt 0.6822 0.1033 0.0000 +vt 0.6903 0.1033 0.0000 +vt 0.6903 0.1767 0.0000 +vt 0.6822 0.1767 0.0000 +vt 0.5852 0.2472 0.0000 +vt 0.5852 0.2239 0.0000 +vt 0.6098 0.1405 0.0000 +vt 0.6145 0.1405 0.0000 +vt 0.6140 0.1724 0.0000 +vt 0.6093 0.1724 0.0000 +vt 0.6552 0.1246 0.0000 +vt 0.6681 0.1246 0.0000 +vt 0.6659 0.1454 0.0000 +vt 0.6571 0.0825 0.0000 +vt 0.6723 0.0885 0.0000 +vt 0.6279 0.1193 0.0000 +vt 0.6279 0.1037 0.0000 +vt 0.6681 0.2453 0.0000 +vt 0.6552 0.2453 0.0000 +vt 0.6668 0.2246 0.0000 +vt 0.6507 0.1850 0.0000 +vt 0.6636 0.1850 0.0000 +vt 0.6018 0.0674 0.0000 +vt 0.6015 0.0077 0.0000 +vt 0.6903 0.2501 0.0000 +vt 0.6822 0.2501 0.0000 +vt 0.6135 0.2044 0.0000 +vt 0.6089 0.2043 0.0000 +vt 0.5834 0.0885 0.0000 +vt 0.5987 0.0825 0.0000 +vt 0.6955 0.1208 0.0000 +vt 0.6955 0.0105 0.0000 +vt 0.7028 0.0105 0.0000 +vt 0.7028 0.1208 0.0000 +vt 0.7028 0.1808 0.0000 +vt 0.6955 0.1808 0.0000 +vt 0.7028 0.2409 0.0000 +vt 0.6955 0.2409 0.0000 +vt 0.7028 0.3501 0.0000 +vt 0.6955 0.3501 0.0000 +vt 0.6375 0.2580 0.0000 +vt 0.6331 0.2581 0.0000 +vt 0.6322 0.2120 0.0000 +vt 0.6366 0.2119 0.0000 +vt 0.6312 0.1659 0.0000 +vt 0.6356 0.1658 0.0000 +vt 0.5834 0.0179 0.0000 +vt 0.5987 0.0169 0.0000 +vt 0.6903 0.3459 0.0000 +vt 0.6822 0.3459 0.0000 +vt 0.6822 0.0075 0.0000 +vt 0.6903 0.0075 0.0000 +vt 0.6571 0.0163 0.0000 +vt 0.6723 0.0179 0.0000 +vt 0.6242 0.1418 0.0000 +vt 0.6307 0.1417 0.0000 +vt 0.6247 0.1661 0.0000 +vt 0.6256 0.2121 0.0000 +vt 0.6265 0.2583 0.0000 +vt 0.6335 0.2823 0.0000 +vt 0.6270 0.2824 0.0000 +vt 0.6047 0.1405 0.0000 +vt 0.6042 0.1724 0.0000 +vt 0.6038 0.2043 0.0000 +vt 0.6365 0.1297 0.0000 +vt 0.6367 0.1416 0.0000 +vt 0.6305 0.1298 0.0000 +vt 0.6240 0.1300 0.0000 +vt 0.6681 0.1144 0.0000 +vt 0.6552 0.1144 0.0000 +vt 0.6037 0.2097 0.0000 +vt 0.6088 0.2097 0.0000 +vt 0.6135 0.2098 0.0000 +vt 0.6145 0.1351 0.0000 +vt 0.6099 0.1351 0.0000 +vt 0.6048 0.1351 0.0000 +vt 0.6552 0.2555 0.0000 +vt 0.6681 0.2555 0.0000 +vt 0.6272 0.2943 0.0000 +vt 0.6337 0.2942 0.0000 +vt 0.6395 0.2822 0.0000 +vt 0.6397 0.2940 0.0000 +vt 0.1601 0.2593 0.0000 +vt 0.1601 0.0045 0.0000 +vt 0.2454 0.0045 0.0000 +vt 0.2454 0.2590 0.0000 +vt 0.2838 0.5470 0.0000 +vt 0.2838 0.2690 0.0000 +vt 0.1765 0.2690 0.0000 +vt 0.1765 0.5470 0.0000 +vt 0.1150 0.3564 0.0000 +vt 0.1150 0.0538 0.0000 +vt 0.0116 0.0538 0.0000 +vt 0.0116 0.3569 0.0000 +vt 0.0100 0.6667 0.0000 +vt 0.0100 0.3673 0.0000 +vt 0.1291 0.3673 0.0000 +vt 0.1291 0.6667 0.0000 +vt 0.9942 0.1083 0.0000 +vt 0.9942 0.2099 0.0000 +vt 0.9659 0.2099 0.0000 +vt 0.9607 0.1083 0.0000 +vt 0.9942 0.0068 0.0000 +vt 0.9659 0.0068 0.0000 +vt 0.3004 0.5798 0.0000 +vt 0.2911 0.5701 0.0000 +vt 0.2911 0.6124 0.0000 +vt 0.3004 0.6124 0.0000 +vt 0.3004 0.6450 0.0000 +vt 0.2911 0.6547 0.0000 +vt 0.3334 0.6547 0.0000 +vt 0.3334 0.6450 0.0000 +vt 0.3663 0.6450 0.0000 +vt 0.3757 0.6547 0.0000 +vt 0.3757 0.6124 0.0000 +vt 0.3663 0.6124 0.0000 +vt 0.3663 0.5798 0.0000 +vt 0.3757 0.5701 0.0000 +vt 0.3334 0.5701 0.0000 +vt 0.3334 0.5798 0.0000 +vt 0.2876 0.5671 0.0000 +vt 0.2747 0.5537 0.0000 +vt 0.3334 0.5537 0.0000 +vt 0.3334 0.5671 0.0000 +vt 0.3793 0.5671 0.0000 +vt 0.3922 0.5537 0.0000 +vt 0.3922 0.6125 0.0000 +vt 0.3793 0.6125 0.0000 +vt 0.3793 0.6578 0.0000 +vt 0.3922 0.6712 0.0000 +vt 0.3334 0.6712 0.0000 +vt 0.3334 0.6578 0.0000 +vt 0.2876 0.6578 0.0000 +vt 0.2747 0.6712 0.0000 +vt 0.2747 0.6125 0.0000 +vt 0.2876 0.6125 0.0000 +vt 0.9513 0.1060 0.0000 +vt 0.9513 0.0044 0.0000 +vt 0.9230 0.0044 0.0000 +vt 0.9178 0.1060 0.0000 +vt 0.9097 0.1060 0.0000 +vt 0.9097 0.0044 0.0000 +vt 0.8814 0.0044 0.0000 +vt 0.8762 0.1060 0.0000 +vt 0.8814 0.2076 0.0000 +vt 0.9097 0.2076 0.0000 +vt 0.9230 0.2075 0.0000 +vt 0.9513 0.2075 0.0000 +vt 0.8658 0.1132 0.0000 +vt 0.8487 0.1132 0.0000 +vt 0.8445 0.0044 0.0000 +vt 0.8755 0.0044 0.0000 +vt 0.8445 0.2221 0.0000 +vt 0.8755 0.2221 0.0000 +vt 0.7801 0.1104 0.0000 +vt 0.7912 0.0058 0.0000 +vt 0.7576 0.0058 0.0000 +vt 0.7611 0.1104 0.0000 +vt 0.7912 0.2151 0.0000 +vt 0.7576 0.2374 0.0000 +vt 0.7362 0.1124 0.0000 +vt 0.7464 0.0064 0.0000 +vt 0.7139 0.0064 0.0000 +vt 0.7182 0.1124 0.0000 +vt 0.7139 0.2409 0.0000 +vt 0.7464 0.2409 0.0000 +vt 0.8231 0.1080 0.0000 +vt 0.8044 0.1080 0.0000 +vt 0.7986 0.0056 0.0000 +vt 0.8316 0.0056 0.0000 +vt 0.8316 0.2103 0.0000 +vt 0.7986 0.2321 0.0000 +vt 0.3996 0.1076 0.0000 +vt 0.3999 0.1680 0.0000 +vt 0.3755 0.1681 0.0000 +vt 0.3751 0.0799 0.0000 +vt 0.4002 0.2285 0.0000 +vt 0.3758 0.2286 0.0000 +vt 0.4005 0.2888 0.0000 +vt 0.3761 0.2890 0.0000 +vt 0.4008 0.3494 0.0000 +vt 0.3764 0.3495 0.0000 +vt 0.3512 0.1683 0.0000 +vt 0.3507 0.0641 0.0000 +vt 0.3515 0.2287 0.0000 +vt 0.3518 0.2891 0.0000 +vt 0.3521 0.3496 0.0000 +vt 0.3268 0.1684 0.0000 +vt 0.3264 0.0801 0.0000 +vt 0.3271 0.2288 0.0000 +vt 0.3274 0.2892 0.0000 +vt 0.3277 0.3497 0.0000 +vt 0.3025 0.1685 0.0000 +vt 0.3022 0.1081 0.0000 +vt 0.3028 0.2289 0.0000 +vt 0.3031 0.2893 0.0000 +vt 0.3033 0.3498 0.0000 +vt 0.1505 0.9738 0.0000 +vt 0.0042 0.6813 0.0000 +vt 0.2968 0.6813 0.0000 +vt 0.9446 0.3902 0.0000 +vt 0.9268 0.3902 0.0000 +vt 0.9268 0.3744 0.0000 +vt 0.9446 0.3744 0.0000 +vt 0.8974 0.3747 0.0000 +vt 0.8974 0.4922 0.0000 +vt 0.9065 0.4922 0.0000 +vt 0.9065 0.3747 0.0000 +vt 0.9924 0.3882 0.0000 +vt 0.9924 0.5080 0.0000 +vt 0.9766 0.5080 0.0000 +vt 0.9766 0.3882 0.0000 +vt 0.9160 0.3747 0.0000 +vt 0.9160 0.4922 0.0000 +vt 0.9924 0.5202 0.0000 +vt 0.9766 0.5245 0.0000 +vt 0.9160 0.5041 0.0000 +vt 0.8974 0.5041 0.0000 +vt 0.9268 0.4879 0.0000 +vt 0.9446 0.4879 0.0000 +vt 0.9446 0.5038 0.0000 +vt 0.9268 0.5038 0.0000 +vt 0.8789 0.3882 0.0000 +vt 0.8789 0.5080 0.0000 +vt 0.8630 0.5080 0.0000 +vt 0.8630 0.3882 0.0000 +vt 0.8789 0.5245 0.0000 +vt 0.8630 0.5202 0.0000 +vt 0.9268 0.4391 0.0000 +vt 0.9446 0.4391 0.0000 +vt 0.9277 0.5235 0.0000 +vt 0.9277 0.5442 0.0000 +vt 0.9356 0.4391 0.0000 +vt 0.9356 0.3902 0.0000 +vt 0.9356 0.4879 0.0000 +vt 0.4150 0.4926 0.0000 +vt 0.3619 0.5102 0.0000 +vt 0.3617 0.3568 0.0000 +vt 0.4148 0.3567 0.0000 +vt 0.3087 0.4928 0.0000 +vt 0.3085 0.3569 0.0000 +# 327 texture coords + +o turret +g turret +f 1/1/1 2/2/1 3/3/1 +f 3/3/1 4/4/1 1/1/1 +f 5/5/2 6/6/2 7/7/2 +f 5/5/2 7/7/2 8/8/2 +f 5/5/2 8/8/2 9/9/2 +f 10/10/3 11/11/3 12/12/3 +f 12/12/3 13/13/3 10/10/3 +f 12/12/4 14/14/4 9/15/4 +f 9/15/4 13/13/4 12/12/4 +f 15/16/5 7/17/5 6/18/5 +f 6/18/5 16/19/5 15/16/5 +f 3/20/6 16/21/6 4/22/6 +f 4/23/7 16/24/7 6/25/7 +f 6/25/7 17/26/7 4/23/7 +f 10/27/8 18/28/8 19/29/8 +f 19/29/8 11/30/8 10/27/8 +f 17/31/8 5/5/8 9/9/8 +f 17/31/8 9/9/8 14/32/8 +f 17/31/8 14/32/8 20/33/8 +f 4/23/9 17/26/9 20/17/9 +f 20/17/9 1/16/9 4/23/9 +f 15/34/10 16/21/10 3/20/10 +f 3/20/10 21/35/10 15/34/10 +f 10/36/11 13/37/11 22/12/11 +f 22/12/11 18/11/11 10/36/11 +f 13/37/12 9/38/12 8/14/12 +f 8/14/12 22/12/12 13/37/12 +f 5/39/13 23/40/13 24/41/13 +f 24/41/13 6/42/13 5/39/13 +f 17/43/14 25/44/14 23/45/14 +f 23/45/14 5/46/14 17/43/14 +f 6/47/15 24/48/15 25/49/15 +f 25/49/15 17/50/15 6/47/15 +f 26/51/16 27/52/16 28/53/16 +f 28/53/16 29/54/16 26/51/16 +f 30/55/17 31/56/17 32/57/17 +f 32/57/17 33/58/17 30/55/17 +f 34/59/18 35/60/18 25/49/18 +f 25/49/18 24/48/18 34/59/18 +f 36/61/19 26/62/19 29/63/19 +f 29/63/19 23/64/19 36/61/19 +f 28/65/20 27/66/20 34/59/20 +f 34/59/20 24/48/20 28/65/20 +f 24/41/21 23/40/21 29/54/21 +f 29/54/21 28/53/21 24/41/21 +f 33/67/22 25/49/22 35/60/22 +f 35/60/22 30/68/22 33/67/22 +f 32/69/23 31/70/23 36/61/23 +f 36/61/23 23/64/23 32/69/23 +f 23/45/24 25/44/24 33/58/24 +f 33/58/24 32/57/24 23/45/24 +f 37/3/25 38/2/25 39/1/25 +f 39/1/25 40/4/25 37/3/25 +f 41/5/26 42/9/26 8/8/26 +f 41/5/26 8/8/26 7/7/26 +f 41/5/26 7/7/26 43/6/26 +f 44/12/27 45/11/27 46/10/27 +f 46/10/27 47/13/27 44/12/27 +f 42/15/28 48/14/28 44/12/28 +f 44/12/28 47/13/28 42/15/28 +f 43/18/5 7/17/5 15/16/5 +f 15/16/5 49/19/5 43/18/5 +f 37/20/29 40/22/29 49/21/29 +f 40/23/30 50/26/30 43/25/30 +f 43/25/30 49/24/30 40/23/30 +f 19/29/31 18/28/31 46/27/31 +f 46/27/31 45/30/31 19/29/31 +f 50/31/31 51/33/31 48/32/31 +f 50/31/31 48/32/31 42/9/31 +f 50/31/31 42/9/31 41/5/31 +f 51/17/32 50/26/32 40/23/32 +f 40/23/32 39/16/32 51/17/32 +f 15/34/33 21/35/33 37/20/33 +f 37/20/33 49/21/33 15/34/33 +f 22/12/34 47/37/34 46/36/34 +f 46/36/34 18/11/34 22/12/34 +f 8/14/12 42/38/12 47/37/12 +f 47/37/12 22/12/12 8/14/12 +f 52/41/35 53/40/35 41/39/35 +f 41/39/35 43/42/35 52/41/35 +f 53/45/36 54/44/36 50/43/36 +f 50/43/36 41/46/36 53/45/36 +f 54/49/37 52/48/37 43/47/37 +f 43/47/37 50/50/37 54/49/37 +f 55/53/38 56/52/38 57/51/38 +f 57/51/38 58/54/38 55/53/38 +f 59/57/39 60/56/39 61/55/39 +f 61/55/39 62/58/39 59/57/39 +f 54/49/40 63/60/40 64/59/40 +f 64/59/40 52/48/40 54/49/40 +f 58/63/41 57/62/41 65/61/41 +f 65/61/41 53/64/41 58/63/41 +f 55/65/42 52/48/42 64/59/42 +f 64/59/42 56/66/42 55/65/42 +f 52/41/43 55/53/43 58/54/43 +f 58/54/43 53/40/43 52/41/43 +f 63/60/44 54/49/44 62/67/44 +f 62/67/44 61/68/44 63/60/44 +f 59/69/45 53/64/45 65/61/45 +f 65/61/45 60/70/45 59/69/45 +f 53/45/46 59/57/46 62/58/46 +f 62/58/46 54/44/46 53/45/46 +f 66/3/47 2/2/47 1/1/47 +f 1/1/47 67/4/47 66/3/47 +f 68/5/48 69/9/48 70/8/48 +f 68/5/48 70/8/48 71/7/48 +f 68/5/48 71/7/48 72/6/48 +f 12/12/49 11/11/49 73/10/49 +f 73/10/49 74/13/49 12/12/49 +f 69/15/50 14/14/50 12/12/50 +f 12/12/50 74/13/50 69/15/50 +f 72/18/51 71/17/51 75/16/51 +f 75/16/51 76/19/51 72/18/51 +f 66/20/52 67/22/52 76/21/52 +f 67/23/53 77/26/53 72/25/53 +f 72/25/53 76/24/53 67/23/53 +f 19/29/54 78/28/54 73/27/54 +f 73/27/54 11/30/54 19/29/54 +f 77/31/54 20/33/54 14/32/54 +f 77/31/54 14/32/54 69/9/54 +f 77/31/54 69/9/54 68/5/54 +f 20/17/9 77/26/9 67/23/9 +f 67/23/9 1/16/9 20/17/9 +f 75/34/55 79/35/55 66/20/55 +f 66/20/55 76/21/55 75/34/55 +f 80/12/56 74/37/57 73/36/57 +f 73/36/57 78/11/56 80/12/56 +f 70/14/58 69/38/58 74/37/58 +f 74/37/58 80/12/58 70/14/58 +f 81/41/59 82/40/59 68/39/59 +f 68/39/59 72/42/59 81/41/59 +f 82/45/60 83/44/60 77/43/60 +f 77/43/60 68/46/60 82/45/60 +f 83/49/61 81/48/61 72/47/61 +f 72/47/61 77/50/61 83/49/61 +f 84/53/62 85/52/62 86/51/62 +f 86/51/62 87/54/62 84/53/62 +f 88/57/63 89/56/63 90/55/63 +f 90/55/63 91/58/63 88/57/63 +f 83/49/64 92/60/64 93/59/64 +f 93/59/64 81/48/64 83/49/64 +f 87/63/65 86/62/65 94/61/65 +f 94/61/65 82/64/65 87/63/65 +f 84/65/66 81/48/66 93/59/66 +f 93/59/66 85/66/66 84/65/66 +f 81/41/67 84/53/67 87/54/67 +f 87/54/67 82/40/67 81/41/67 +f 92/60/68 83/49/68 91/67/68 +f 91/67/68 90/68/68 92/60/68 +f 88/69/69 82/64/69 94/61/69 +f 94/61/69 89/70/69 88/69/69 +f 82/45/70 88/57/70 91/58/70 +f 91/58/70 83/44/70 82/45/70 +f 39/1/71 38/2/71 95/3/71 +f 95/3/71 96/4/71 39/1/71 +f 97/5/72 98/6/72 71/7/72 +f 97/5/72 71/7/72 70/8/72 +f 97/5/72 70/8/72 99/9/72 +f 100/10/73 45/11/73 44/12/73 +f 44/12/73 101/13/73 100/10/73 +f 44/12/74 48/14/74 99/15/74 +f 99/15/74 101/13/74 44/12/74 +f 75/16/51 71/17/51 98/18/51 +f 98/18/51 102/19/51 75/16/51 +f 95/20/75 102/21/75 96/22/75 +f 96/23/76 102/24/76 98/25/76 +f 98/25/76 103/26/76 96/23/76 +f 100/27/77 78/28/77 19/29/77 +f 19/29/77 45/30/77 100/27/77 +f 103/31/77 97/5/77 99/9/77 +f 103/31/77 99/9/77 48/32/77 +f 103/31/77 48/32/77 51/33/77 +f 96/23/32 103/26/32 51/17/32 +f 51/17/32 39/16/32 96/23/32 +f 75/34/78 102/21/78 95/20/78 +f 95/20/78 79/35/78 75/34/78 +f 100/36/79 101/37/79 80/12/80 +f 80/12/80 78/11/80 100/36/79 +f 101/37/58 99/38/58 70/14/58 +f 70/14/58 80/12/58 101/37/58 +f 97/39/81 104/40/81 105/41/81 +f 105/41/81 98/42/81 97/39/81 +f 103/43/82 106/44/82 104/45/82 +f 104/45/82 97/46/82 103/43/82 +f 98/47/83 105/48/83 106/49/83 +f 106/49/83 103/50/83 98/47/83 +f 107/51/84 108/52/84 109/53/84 +f 109/53/84 110/54/84 107/51/84 +f 111/55/85 112/56/85 113/57/85 +f 113/57/85 114/58/85 111/55/85 +f 115/59/86 116/60/86 106/49/86 +f 106/49/86 105/48/86 115/59/86 +f 117/61/87 107/62/87 110/63/87 +f 110/63/87 104/64/87 117/61/87 +f 109/65/88 108/66/88 115/59/88 +f 115/59/88 105/48/88 109/65/88 +f 105/41/89 104/40/89 110/54/89 +f 110/54/89 109/53/89 105/41/89 +f 114/67/90 106/49/90 116/60/90 +f 116/60/90 111/68/90 114/67/90 +f 113/69/91 112/70/91 117/61/91 +f 117/61/91 104/64/91 113/69/91 +f 104/45/92 106/44/92 114/58/92 +f 114/58/92 113/57/92 104/45/92 +f 118/71/58 119/72/58 120/73/58 +f 120/73/58 121/74/58 118/71/58 +f 119/75/93 122/76/93 123/77/93 +f 123/77/93 120/78/93 119/75/93 +f 122/72/51 124/71/51 125/74/51 +f 125/74/51 123/73/51 122/72/51 +f 126/71/93 127/72/93 128/73/93 +f 128/73/93 129/74/93 126/71/93 +f 127/75/51 130/76/51 131/77/51 +f 131/77/51 128/78/51 127/75/51 +f 130/72/94 132/71/94 133/74/94 +f 133/74/94 131/73/94 130/72/94 +f 134/71/51 135/72/51 136/73/51 +f 136/73/51 137/74/51 134/71/51 +f 135/75/94 138/76/94 139/77/94 +f 139/77/94 136/78/94 135/75/94 +f 138/72/58 140/71/58 141/74/58 +f 141/74/58 139/73/58 138/72/58 +f 142/71/94 143/72/94 144/73/94 +f 144/73/94 145/74/94 142/71/94 +f 143/75/58 146/76/58 147/77/58 +f 147/77/58 144/78/58 143/75/58 +f 146/72/93 148/71/93 149/74/93 +f 149/74/93 147/73/93 146/72/93 +f 150/79/95 151/80/95 152/81/95 +f 152/81/95 153/82/95 150/79/95 +f 154/83/96 155/84/96 156/85/96 +f 156/85/96 157/86/96 154/83/96 +f 158/87/97 159/88/97 160/89/97 +f 160/89/97 161/90/97 158/87/97 +f 162/86/51 163/91/51 164/92/51 +f 164/92/51 165/83/51 162/86/51 +f 166/93/98 167/94/98 168/95/98 +f 168/95/98 169/96/98 166/93/98 +f 170/97/99 171/98/99 172/99/99 +f 173/100/99 158/101/99 161/102/99 +f 161/102/99 174/103/99 173/100/99 +f 175/104/100 176/105/100 177/106/100 +f 177/106/99 176/105/99 178/107/99 +f 178/107/99 179/108/99 177/106/99 +f 150/79/101 153/82/101 180/109/101 +f 180/109/101 181/110/101 150/79/101 +f 161/90/102 160/89/102 182/111/102 +f 182/111/102 183/112/102 161/90/102 +f 169/96/103 168/95/103 184/113/103 +f 184/113/103 185/114/103 169/96/103 +f 174/103/100 161/102/100 183/115/100 +f 183/115/100 186/116/100 174/103/100 +f 172/99/104 179/108/104 178/107/104 +f 178/107/104 170/97/104 172/99/104 +f 152/117/105 151/118/105 187/119/105 +f 187/119/105 173/120/105 152/117/105 +f 152/117/106 173/120/106 174/121/106 +f 174/121/106 153/122/106 152/117/106 +f 153/122/107 174/121/107 186/123/107 +f 186/123/107 180/124/107 153/122/107 +f 180/124/108 186/123/108 188/125/108 +f 188/125/108 181/126/108 180/124/108 +f 181/127/109 188/128/109 189/129/109 +f 189/129/109 150/130/109 181/127/109 +f 150/130/110 189/129/110 187/131/110 +f 187/131/110 151/132/110 150/130/110 +f 190/133/111 188/134/111 186/116/111 +f 186/116/111 183/115/111 190/133/111 +f 182/111/112 191/135/112 190/136/112 +f 190/136/112 183/112/112 182/111/112 +f 192/137/113 193/138/113 159/88/113 +f 159/88/113 158/87/113 192/137/113 +f 173/100/114 187/139/114 192/140/114 +f 192/140/114 158/101/114 173/100/114 +f 194/92/115 154/83/115 157/86/115 +f 157/86/115 195/91/115 194/92/115 +f 171/141/116 192/142/116 187/131/116 +f 187/131/116 172/143/116 171/141/116 +f 172/143/117 187/131/117 189/129/117 +f 189/129/117 179/144/117 172/143/117 +f 179/144/118 189/129/118 188/128/118 +f 188/128/118 177/145/118 179/144/118 +f 177/145/119 188/128/119 190/146/119 +f 190/146/119 175/147/119 177/145/119 +f 196/85/120 162/86/120 165/83/120 +f 165/83/120 197/84/120 196/85/120 +f 176/148/98 166/93/98 169/96/98 +f 169/96/98 178/149/98 176/148/98 +f 178/149/103 169/96/103 185/114/103 +f 185/114/103 170/150/103 178/149/103 +f 156/151/54 193/152/54 192/142/54 +f 192/142/54 157/153/54 156/151/54 +f 157/153/8 192/142/8 171/141/8 +f 171/141/8 195/154/8 157/153/8 +f 195/155/104 171/98/104 170/97/104 +f 170/97/104 194/156/104 195/155/104 +f 194/157/121 170/150/121 185/114/121 +f 185/114/121 154/158/121 194/157/121 +f 154/158/121 185/114/121 184/113/121 +f 184/113/121 155/159/121 154/158/121 +f 164/160/122 167/94/122 166/93/122 +f 166/93/122 165/161/122 164/160/122 +f 165/161/123 166/93/123 176/148/123 +f 176/148/123 197/162/123 165/161/123 +f 197/163/124 176/105/124 175/104/124 +f 175/104/124 196/164/124 197/163/124 +f 196/165/54 175/147/54 190/146/54 +f 190/146/54 162/166/54 196/165/54 +f 162/166/54 190/146/54 191/167/54 +f 191/167/54 163/168/54 162/166/54 +f 198/79/125 199/80/125 200/81/125 +f 200/81/125 201/82/125 198/79/125 +f 202/83/126 203/84/126 204/85/126 +f 204/85/126 205/86/126 202/83/126 +f 206/87/127 207/88/127 208/89/127 +f 208/89/127 209/90/127 206/87/127 +f 210/86/104 211/91/104 212/92/104 +f 212/92/104 213/83/104 210/86/104 +f 214/93/128 215/94/128 216/95/128 +f 216/95/128 217/96/128 214/93/128 +f 218/97/58 219/98/58 220/99/58 +f 221/100/129 206/101/129 209/102/129 +f 209/102/129 222/103/129 221/100/129 +f 223/104/129 224/105/129 225/106/129 +f 225/106/58 224/105/58 226/107/58 +f 226/107/58 227/108/58 225/106/58 +f 198/79/130 201/82/130 228/109/130 +f 228/109/130 229/110/130 198/79/130 +f 209/90/131 208/89/131 230/111/131 +f 230/111/131 231/112/131 209/90/131 +f 217/96/132 216/95/132 232/113/132 +f 232/113/132 233/114/132 217/96/132 +f 222/103/58 209/102/58 231/115/58 +f 231/115/58 234/116/58 222/103/58 +f 220/99/5 227/108/5 226/107/5 +f 226/107/5 218/97/5 220/99/5 +f 200/117/133 199/118/133 235/119/133 +f 235/119/133 221/120/133 200/117/133 +f 200/117/134 221/120/134 222/121/134 +f 222/121/134 201/122/134 200/117/134 +f 201/122/135 222/121/135 234/123/135 +f 234/123/135 228/124/135 201/122/135 +f 228/124/136 234/123/136 236/125/136 +f 236/125/136 229/126/136 228/124/136 +f 229/127/137 236/128/137 237/129/137 +f 237/129/137 198/130/137 229/127/137 +f 198/130/138 237/129/138 235/131/138 +f 235/131/138 199/132/138 198/130/138 +f 238/133/139 236/134/139 234/116/139 +f 234/116/139 231/115/139 238/133/139 +f 230/111/140 239/135/140 238/136/140 +f 238/136/140 231/112/140 230/111/140 +f 240/137/141 241/138/141 207/88/141 +f 207/88/141 206/87/141 240/137/141 +f 221/100/142 235/139/142 240/140/142 +f 240/140/142 206/101/142 221/100/142 +f 242/92/143 202/83/143 205/86/143 +f 205/86/143 243/91/143 242/92/143 +f 219/141/144 240/142/144 235/131/144 +f 235/131/144 220/143/144 219/141/144 +f 220/143/145 235/131/145 237/129/145 +f 237/129/145 227/144/145 220/143/145 +f 227/144/146 237/129/146 236/128/146 +f 236/128/146 225/145/146 227/144/146 +f 225/145/147 236/128/147 238/146/147 +f 238/146/147 223/147/147 225/145/147 +f 244/85/148 210/86/148 213/83/148 +f 213/83/148 245/84/148 244/85/148 +f 224/148/128 214/93/128 217/96/128 +f 217/96/128 226/149/128 224/148/128 +f 226/149/149 217/96/149 233/114/149 +f 233/114/149 218/150/149 226/149/149 +f 204/151/8 241/152/8 240/142/8 +f 240/142/8 205/153/8 204/151/8 +f 205/153/8 240/142/8 219/141/8 +f 219/141/8 243/154/8 205/153/8 +f 243/155/58 219/98/58 218/97/58 +f 218/97/58 242/156/58 243/155/58 +f 242/157/121 218/150/121 233/114/121 +f 233/114/121 202/158/121 242/157/121 +f 202/158/122 233/114/122 232/113/122 +f 232/113/122 203/159/122 202/158/122 +f 212/160/121 215/94/121 214/93/121 +f 214/93/121 213/161/121 212/160/121 +f 213/161/150 214/93/150 224/148/150 +f 224/148/150 245/162/150 213/161/150 +f 245/163/115 224/105/115 223/104/115 +f 223/104/115 244/164/115 245/163/115 +f 244/165/54 223/147/54 238/146/54 +f 238/146/54 210/166/54 244/165/54 +f 210/166/54 238/146/54 239/167/54 +f 239/167/54 211/168/54 210/166/54 +f 246/79/151 247/80/151 248/81/151 +f 248/81/151 249/82/151 246/79/151 +f 250/83/152 251/84/152 252/85/152 +f 252/85/152 253/86/152 250/83/152 +f 254/87/131 255/88/131 256/89/131 +f 256/89/131 257/90/131 254/87/131 +f 258/86/93 259/91/93 260/92/93 +f 260/92/93 261/83/93 258/86/93 +f 262/93/149 263/94/149 264/95/149 +f 264/95/149 265/96/149 262/93/149 +f 266/97/51 267/98/51 268/99/51 +f 269/100/12 254/101/12 257/102/12 +f 257/102/12 270/103/12 269/100/12 +f 271/104/153 272/105/153 273/106/153 +f 273/106/12 272/105/12 274/107/12 +f 274/107/12 275/108/12 273/106/12 +f 246/79/154 249/82/154 276/109/154 +f 276/109/154 277/110/154 246/79/154 +f 257/90/127 256/89/127 278/111/127 +f 278/111/127 279/112/127 257/90/127 +f 265/96/128 264/95/128 280/113/128 +f 280/113/128 281/114/128 265/96/128 +f 270/103/12 257/102/12 279/115/12 +f 279/115/12 282/116/12 270/103/12 +f 268/99/51 275/108/51 274/107/51 +f 274/107/51 266/97/51 268/99/51 +f 248/117/155 247/118/155 283/119/155 +f 283/119/155 269/120/155 248/117/155 +f 248/117/156 269/120/156 270/121/156 +f 270/121/156 249/122/156 248/117/156 +f 249/122/157 270/121/157 282/123/157 +f 282/123/157 276/124/157 249/122/157 +f 276/124/158 282/123/158 284/125/158 +f 284/125/158 277/126/158 276/124/158 +f 277/127/159 284/128/159 285/129/159 +f 285/129/159 246/130/159 277/127/159 +f 246/130/160 285/129/160 283/131/160 +f 283/131/160 247/132/160 246/130/160 +f 286/133/161 284/134/161 282/116/161 +f 282/116/161 279/115/161 286/133/161 +f 278/111/162 287/135/162 286/136/162 +f 286/136/162 279/112/162 278/111/162 +f 288/137/163 289/138/163 255/88/163 +f 255/88/163 254/87/163 288/137/163 +f 269/100/164 283/139/164 288/140/164 +f 288/140/164 254/101/164 269/100/164 +f 290/92/165 250/83/165 253/86/165 +f 253/86/165 291/91/165 290/92/165 +f 267/141/166 288/142/166 283/131/166 +f 283/131/166 268/143/166 267/141/166 +f 268/143/160 283/131/160 285/129/160 +f 285/129/160 275/144/160 268/143/160 +f 275/144/167 285/129/167 284/128/167 +f 284/128/167 273/145/167 275/144/167 +f 273/145/168 284/128/168 286/146/168 +f 286/146/168 271/147/168 273/145/168 +f 292/85/126 258/86/126 261/83/126 +f 261/83/126 293/84/126 292/85/126 +f 272/148/149 262/93/149 265/96/149 +f 265/96/149 274/149/149 272/148/149 +f 274/149/128 265/96/128 281/114/128 +f 281/114/128 266/150/128 274/149/128 +f 252/151/54 289/152/54 288/142/54 +f 288/142/54 253/153/54 252/151/54 +f 253/153/54 288/142/54 267/141/54 +f 267/141/54 291/154/54 253/153/54 +f 291/155/51 267/98/51 266/97/51 +f 266/97/51 290/156/51 291/155/51 +f 290/157/123 266/150/123 281/114/123 +f 281/114/123 250/158/123 290/157/123 +f 250/158/121 281/114/121 280/113/121 +f 280/113/121 251/159/121 250/158/121 +f 260/160/121 263/94/121 262/93/121 +f 262/93/121 261/161/121 260/160/121 +f 261/161/121 262/93/121 272/148/121 +f 272/148/121 293/162/121 261/161/121 +f 293/163/169 272/105/169 271/104/169 +f 271/104/169 292/164/169 293/163/169 +f 292/165/54 271/147/54 286/146/54 +f 286/146/54 258/166/54 292/165/54 +f 258/166/54 286/146/54 287/167/54 +f 287/167/54 259/168/54 258/166/54 +f 95/169/51 294/170/51 295/171/51 +f 295/171/51 296/172/51 95/169/51 +f 296/173/94 295/174/94 297/175/94 +f 297/175/94 298/176/94 296/173/94 +f 298/177/58 297/178/58 299/179/58 +f 299/179/58 37/180/58 298/177/58 +f 37/181/170 299/182/170 294/183/170 +f 294/183/170 95/184/170 37/181/170 +f 300/185/51 301/186/51 302/187/51 +f 302/187/51 303/188/51 300/185/51 +f 304/185/100 305/189/100 306/190/100 +f 306/190/100 307/188/100 304/185/100 +f 308/185/58 309/189/58 310/190/58 +f 310/190/58 311/188/58 308/185/58 +f 312/185/93 313/186/93 314/187/93 +f 314/187/93 315/188/93 312/185/93 +f 316/191/171 302/192/171 315/193/171 +f 315/193/171 317/194/171 316/191/171 +f 318/195/172 314/196/172 311/197/172 +f 311/197/172 319/198/172 318/195/172 +f 320/199/173 310/200/173 307/201/173 +f 307/201/173 321/202/173 320/199/173 +f 322/203/174 306/204/174 303/205/174 +f 303/205/174 323/206/174 322/203/174 +f 324/207/54 301/208/54 300/209/54 +f 300/209/54 325/210/54 324/207/54 +f 326/211/8 305/212/8 304/213/8 +f 304/213/8 327/214/8 326/211/8 +f 328/215/77 309/216/77 308/217/77 +f 308/217/77 329/218/77 328/215/77 +f 330/219/77 313/220/77 312/221/77 +f 312/221/77 331/222/77 330/219/77 +f 308/185/58 311/188/58 314/187/58 +f 314/187/58 313/186/58 308/185/58 +f 312/185/93 315/188/93 302/190/93 +f 302/190/93 301/189/93 312/185/93 +f 318/195/175 317/194/175 315/193/175 +f 315/193/175 314/196/175 318/195/175 +f 320/199/176 319/198/176 311/197/176 +f 311/197/176 310/200/176 320/199/176 +f 322/203/177 321/202/177 307/201/177 +f 307/201/177 306/204/177 322/203/177 +f 330/219/54 329/218/54 308/217/54 +f 308/217/54 313/220/54 330/219/54 +f 324/207/31 331/222/31 312/221/31 +f 312/221/31 301/208/31 324/207/31 +f 300/185/51 303/188/51 306/190/51 +f 306/190/51 305/189/51 300/185/51 +f 304/185/94 307/188/94 310/187/94 +f 310/187/94 309/186/94 304/185/94 +f 316/191/178 323/206/178 303/205/178 +f 303/205/178 302/192/178 316/191/178 +f 326/211/77 325/210/77 300/209/77 +f 300/209/77 305/212/77 326/211/77 +f 328/215/77 327/214/77 304/213/77 +f 304/213/77 309/216/77 328/215/77 +f 332/185/51 333/186/51 334/187/51 +f 334/187/51 335/188/51 332/185/51 +f 336/223/94 337/224/94 338/225/94 +f 338/225/94 339/226/94 336/223/94 +f 340/227/58 341/228/58 342/229/58 +f 342/229/58 343/230/58 340/227/58 +f 344/185/93 345/186/93 346/187/93 +f 346/187/93 347/188/93 344/185/93 +f 348/191/171 334/192/171 347/193/171 +f 347/193/171 349/194/171 348/191/171 +f 350/195/172 346/196/172 343/197/172 +f 343/197/172 351/198/172 350/195/172 +f 352/199/173 342/200/173 339/201/173 +f 339/201/173 353/202/173 352/199/173 +f 354/203/174 338/204/174 335/205/174 +f 335/205/174 355/206/174 354/203/174 +f 356/207/54 333/208/54 332/209/54 +f 332/209/54 357/210/54 356/207/54 +f 358/211/8 337/212/8 336/213/8 +f 336/213/8 359/214/8 358/211/8 +f 360/215/54 341/216/54 340/217/54 +f 340/217/54 361/218/54 360/215/54 +f 362/219/77 345/220/77 344/221/77 +f 344/221/77 363/222/77 362/219/77 +f 340/227/58 343/230/58 346/231/58 +f 346/231/58 345/232/58 340/227/58 +f 344/185/93 347/188/93 334/190/93 +f 334/190/93 333/189/93 344/185/93 +f 350/195/175 349/194/175 347/193/175 +f 347/193/175 346/196/175 350/195/175 +f 352/199/176 351/198/176 343/197/176 +f 343/197/176 342/200/176 352/199/176 +f 354/203/177 353/202/177 339/201/177 +f 339/201/177 338/204/177 354/203/177 +f 362/219/54 361/218/54 340/217/54 +f 340/217/54 345/220/54 362/219/54 +f 356/207/31 363/222/31 344/221/31 +f 344/221/31 333/208/31 356/207/31 +f 332/185/51 335/188/51 338/190/51 +f 338/190/51 337/189/51 332/185/51 +f 336/223/94 339/226/94 342/233/94 +f 342/233/94 341/234/94 336/223/94 +f 348/191/178 355/206/178 335/205/178 +f 335/205/178 334/192/178 348/191/178 +f 358/211/77 357/210/77 332/209/77 +f 332/209/77 337/212/77 358/211/77 +f 360/215/54 359/214/54 336/213/54 +f 336/213/54 341/216/54 360/215/54 +f 364/235/179 365/236/179 366/237/179 +f 366/237/179 367/238/179 364/235/179 +f 368/239/180 365/236/180 364/235/180 +f 364/235/180 369/240/180 368/239/180 +f 364/241/181 367/242/181 370/243/181 +f 370/243/181 371/244/181 364/241/181 +f 369/245/182 364/241/182 371/244/182 +f 371/244/182 372/246/182 369/245/182 +f 371/247/183 370/248/183 373/249/183 +f 373/249/183 374/250/183 371/247/183 +f 375/251/184 372/252/184 371/247/184 +f 371/247/184 374/250/184 375/251/184 +f 365/253/185 374/254/185 373/255/185 +f 373/255/185 366/256/185 365/253/185 +f 368/257/186 375/258/186 374/254/186 +f 374/254/186 365/253/186 368/257/186 +f 376/235/187 377/238/187 378/237/187 +f 378/237/187 379/236/187 376/235/187 +f 380/239/188 381/240/188 376/235/188 +f 376/235/188 379/236/188 380/239/188 +f 376/241/189 382/244/189 383/243/189 +f 383/243/189 377/242/189 376/241/189 +f 381/245/190 384/246/190 382/244/190 +f 382/244/190 376/241/190 381/245/190 +f 382/247/191 385/250/191 386/249/191 +f 386/249/191 383/248/191 382/247/191 +f 387/251/192 385/250/192 382/247/192 +f 382/247/192 384/252/192 387/251/192 +f 379/253/193 378/256/193 386/255/193 +f 386/255/193 385/254/193 379/253/193 +f 380/257/194 379/253/194 385/254/194 +f 385/254/194 387/258/194 380/257/194 +f 388/235/187 389/238/187 390/237/187 +f 390/237/187 391/236/187 388/235/187 +f 392/239/188 393/240/188 388/235/188 +f 388/235/188 391/236/188 392/239/188 +f 388/241/189 394/244/189 395/243/189 +f 395/243/189 389/242/189 388/241/189 +f 393/245/195 396/246/195 394/244/195 +f 394/244/195 388/241/195 393/245/195 +f 394/247/191 397/250/191 398/249/191 +f 398/249/191 395/248/191 394/247/191 +f 399/251/196 397/250/196 394/247/196 +f 394/247/196 396/252/196 399/251/196 +f 391/253/193 390/256/193 398/255/193 +f 398/255/193 397/254/193 391/253/193 +f 392/257/197 391/253/197 397/254/197 +f 397/254/197 399/258/197 392/257/197 +f 400/235/198 401/238/198 402/237/198 +f 402/237/198 403/236/198 400/235/198 +f 404/239/199 405/240/199 400/235/199 +f 400/235/199 403/236/199 404/239/199 +f 400/241/200 406/244/200 407/243/200 +f 407/243/200 401/242/200 400/241/200 +f 405/245/201 408/246/201 406/244/201 +f 406/244/201 400/241/201 405/245/201 +f 406/247/202 409/250/202 410/249/202 +f 410/249/202 407/248/202 406/247/202 +f 411/251/203 409/250/203 406/247/203 +f 406/247/203 408/252/203 411/251/203 +f 403/253/185 402/256/185 410/255/185 +f 410/255/185 409/254/185 403/253/185 +f 404/257/204 403/253/204 409/254/204 +f 409/254/204 411/258/204 404/257/204 +f 412/235/205 413/236/205 414/237/205 +f 414/237/205 415/238/205 412/235/205 +f 416/239/206 413/236/206 412/235/206 +f 412/235/206 417/240/206 416/239/206 +f 412/241/207 415/242/207 418/243/207 +f 418/243/207 419/244/207 412/241/207 +f 417/245/208 412/241/208 419/244/208 +f 419/244/208 420/246/208 417/245/208 +f 419/247/209 418/248/209 421/249/209 +f 421/249/209 422/250/209 419/247/209 +f 423/251/210 420/252/210 419/247/210 +f 419/247/210 422/250/210 423/251/210 +f 413/253/193 422/254/193 421/255/193 +f 421/255/193 414/256/193 413/253/193 +f 416/257/211 423/258/211 422/254/211 +f 422/254/211 413/253/211 416/257/211 +f 424/235/205 425/236/205 426/237/205 +f 426/237/205 427/238/205 424/235/205 +f 428/239/206 425/236/206 424/235/206 +f 424/235/206 429/240/206 428/239/206 +f 424/241/207 427/242/207 430/243/207 +f 430/243/207 431/244/207 424/241/207 +f 429/245/212 424/241/212 431/244/212 +f 431/244/212 432/246/212 429/245/212 +f 431/247/209 430/248/209 433/249/209 +f 433/249/209 434/250/209 431/247/209 +f 435/251/213 432/252/213 431/247/213 +f 431/247/213 434/250/213 435/251/213 +f 425/253/193 434/254/193 433/255/193 +f 433/255/193 426/256/193 425/253/193 +f 428/257/214 435/258/214 434/254/214 +f 434/254/214 425/253/214 428/257/214 +f 436/235/198 437/238/198 438/237/198 +f 438/237/198 439/236/198 436/235/198 +f 440/239/199 441/240/199 436/235/199 +f 436/235/199 439/236/199 440/239/199 +f 436/241/200 442/244/200 443/243/200 +f 443/243/200 437/242/200 436/241/200 +f 441/245/215 444/246/215 442/244/215 +f 442/244/215 436/241/215 441/245/215 +f 442/247/202 445/250/202 446/249/202 +f 446/249/202 443/248/202 442/247/202 +f 447/251/216 445/250/216 442/247/216 +f 442/247/216 444/252/216 447/251/216 +f 439/253/185 438/256/185 446/255/185 +f 446/255/185 445/254/185 439/253/185 +f 440/257/217 439/253/217 445/254/217 +f 445/254/217 447/258/217 440/257/217 +f 448/235/179 449/236/179 450/237/179 +f 450/237/179 451/238/179 448/235/179 +f 452/239/180 449/236/180 448/235/180 +f 448/235/180 453/240/180 452/239/180 +f 448/241/181 451/242/181 454/243/181 +f 454/243/181 455/244/181 448/241/181 +f 453/245/218 448/241/218 455/244/218 +f 455/244/218 456/246/218 453/245/218 +f 455/247/183 454/248/183 457/249/183 +f 457/249/183 458/250/183 455/247/183 +f 459/251/219 456/252/219 455/247/219 +f 455/247/219 458/250/219 459/251/219 +f 449/253/185 458/254/185 457/255/185 +f 457/255/185 450/256/185 449/253/185 +f 452/257/220 459/258/220 458/254/220 +f 458/254/220 449/253/220 452/257/220 +f 460/259/221 461/260/222 462/261/223 +f 462/261/223 463/262/224 460/259/221 +f 461/260/222 464/263/225 465/264/225 +f 465/264/225 462/261/223 461/260/222 +f 464/263/225 466/265/226 467/266/226 +f 467/266/226 465/264/225 464/263/225 +f 466/265/226 468/267/227 469/268/227 +f 469/268/227 467/266/226 466/265/226 +f 463/262/224 462/261/223 470/269/228 +f 470/269/228 471/270/229 463/262/224 +f 462/261/223 465/264/225 472/271/225 +f 472/271/225 470/269/228 462/261/223 +f 465/264/225 467/266/226 473/272/226 +f 473/272/226 472/271/225 465/264/225 +f 467/266/226 469/268/227 474/273/227 +f 474/273/227 473/272/226 467/266/226 +f 471/270/229 470/269/228 475/274/230 +f 475/274/230 476/275/231 471/270/229 +f 470/269/228 472/271/225 477/276/225 +f 477/276/225 475/274/230 470/269/228 +f 472/271/225 473/272/226 478/277/226 +f 478/277/226 477/276/225 472/271/225 +f 473/272/226 474/273/227 479/278/227 +f 479/278/227 478/277/226 473/272/226 +f 476/275/231 475/274/230 480/279/232 +f 480/279/232 481/280/233 476/275/231 +f 475/274/230 477/276/225 482/281/225 +f 482/281/225 480/279/232 475/274/230 +f 477/276/225 478/277/226 483/282/226 +f 483/282/226 482/281/225 477/276/225 +f 478/277/226 479/278/227 484/283/227 +f 484/283/227 483/282/226 478/277/226 +f 485/284/234 486/285/234 487/286/234 +f 485/284/235 487/285/235 488/286/235 +f 485/284/236 488/285/236 489/286/236 +f 485/284/237 489/285/237 486/286/237 +f 490/287/238 491/288/238 492/289/238 +f 492/289/238 493/290/238 490/287/238 +f 494/291/58 495/292/58 496/293/58 +f 496/293/58 497/294/58 494/291/58 +f 498/295/93 499/296/93 495/297/93 +f 495/297/93 494/298/93 498/295/93 +f 500/299/153 501/300/153 499/292/153 +f 499/292/153 498/291/153 500/299/153 +f 492/301/93 491/302/93 495/297/93 +f 495/297/93 499/296/93 492/301/93 +f 493/303/153 492/304/153 499/292/153 +f 499/292/153 501/300/153 493/303/153 +f 502/305/239 503/306/239 504/307/239 +f 504/307/239 505/308/239 502/305/239 +f 506/294/153 507/293/153 508/292/153 +f 508/292/153 509/291/153 506/294/153 +f 510/291/129 511/292/129 512/300/129 +f 512/300/129 513/299/129 510/291/129 +f 509/309/93 508/310/93 511/311/93 +f 511/311/93 510/312/93 509/309/93 +f 505/304/129 504/303/129 512/300/129 +f 512/300/129 511/292/129 505/304/129 +f 502/313/93 505/314/93 511/311/93 +f 511/311/93 508/310/93 502/313/93 +f 502/305/240 514/315/77 515/316/77 +f 515/316/77 503/306/240 502/305/240 +f 508/310/93 516/317/241 514/318/241 +f 514/318/241 502/313/93 508/310/93 +f 516/315/242 517/319/242 496/320/242 +f 496/320/242 495/288/242 516/315/242 +f 491/288/243 490/287/243 515/316/77 +f 515/316/77 514/315/77 491/288/243 +f 495/297/170 491/302/170 514/318/241 +f 514/318/241 516/317/241 495/297/170 +f 508/305/244 507/321/244 517/319/244 +f 517/319/244 516/315/244 508/305/244 +f 496/322/170 517/323/170 518/324/170 +f 518/324/170 497/325/170 496/322/170 +f 517/323/93 507/326/93 506/327/93 +f 506/327/93 518/324/93 517/323/93 +# 782 faces + diff --git a/examples/models/resources/models/obj/turret_diffuse.png b/examples/models/resources/models/obj/turret_diffuse.png new file mode 100644 index 0000000..33628e3 Binary files /dev/null and b/examples/models/resources/models/obj/turret_diffuse.png differ diff --git a/examples/models/resources/models/obj/well.obj b/examples/models/resources/models/obj/well.obj new file mode 100644 index 0000000..9f26e58 --- /dev/null +++ b/examples/models/resources/models/obj/well.obj @@ -0,0 +1,1030 @@ +# (c) 2018 Medieval Assets Pack by Alberto Cano +# Licensed as Creative Commons Attribution-NonCommercial 4.0 + +# +# object well +# + +v 2.4349 0.3719 -0.9996 +v 2.4286 0.3719 1.0149 +v 2.4526 -0.0641 1.0250 +v 2.4590 -0.0641 -1.0095 +v 1.3014 0.7560 -0.5342 +v 1.2980 0.7560 0.5425 +v 1.2552 1.8149 0.5246 +v 1.2585 1.8149 -0.5166 +v 0.9996 0.3719 2.4349 +v 1.0095 -0.0641 2.4590 +v 0.5342 0.7560 1.3014 +v 0.5166 1.8149 1.2585 +v -1.0149 0.3719 2.4286 +v -1.0250 -0.0641 2.4526 +v -0.5425 0.7560 1.2980 +v -0.5246 1.8149 1.2552 +v -2.4349 0.3719 0.9996 +v -2.4590 -0.0641 1.0095 +v -1.3014 0.7560 0.5342 +v -1.2585 1.8149 0.5166 +v -2.4286 0.3719 -1.0149 +v -2.4526 -0.0641 -1.0250 +v -1.2980 0.7560 -0.5425 +v -1.2552 1.8149 -0.5246 +v -0.9996 0.3719 -2.4349 +v -1.0095 -0.0641 -2.4590 +v -0.5342 0.7560 -1.3014 +v -0.5166 1.8149 -1.2585 +v 1.0149 0.3719 -2.4286 +v 1.0250 -0.0641 -2.4526 +v 0.5425 0.7560 -1.2980 +v 0.5246 1.8149 -1.2552 +v 2.1428 1.8318 -0.8796 +v 2.1372 1.8318 0.8932 +v 2.0129 1.4147 0.8412 +v 2.0182 1.4147 -0.8285 +v 0.8796 1.8318 2.1428 +v 0.8285 1.4147 2.0182 +v -0.8932 1.8318 2.1372 +v -0.8412 1.4147 2.0129 +v -2.1428 1.8318 0.8796 +v -2.0182 1.4147 0.8285 +v -2.1372 1.8318 -0.8932 +v -2.0129 1.4147 -0.8412 +v -0.8796 1.8318 -2.1428 +v -0.8285 1.4147 -2.0182 +v 0.8932 1.8318 -2.1372 +v 0.8412 1.4147 -2.0129 +v 0.4215 2.1696 1.0809 +v 0.8827 2.1696 1.3472 +v 0.8143 1.8149 1.3867 +v 0.4215 1.8149 1.1599 +v 0.4215 2.5243 1.1599 +v 0.4215 2.5243 1.2443 +v 0.7412 2.5243 1.4289 +v 0.8143 2.5243 1.3867 +v 0.4215 1.8149 1.2443 +v 0.7412 1.8149 1.4289 +v 0.8827 2.1696 1.8798 +v 0.8143 1.8149 1.8403 +v 0.7412 2.5243 1.7981 +v 0.8143 2.5243 1.8403 +v 0.7412 1.8149 1.7981 +v 0.4215 2.1696 2.1461 +v 0.4215 1.8149 2.0671 +v 0.4215 2.5243 1.9827 +v 0.4215 2.5243 2.0671 +v 0.4215 1.8149 1.9827 +v -0.0397 2.1696 1.8798 +v 0.0287 1.8149 1.8403 +v 0.1017 2.5243 1.7981 +v 0.0287 2.5243 1.8403 +v 0.1017 1.8149 1.7981 +v -0.0397 2.1696 1.3472 +v 0.0287 1.8149 1.3867 +v 0.1017 2.5243 1.4289 +v 0.0287 2.5243 1.3867 +v 0.1017 1.8149 1.4289 +v 0.8059 2.5243 1.6104 +v 0.7586 2.5265 1.5850 +v 0.7735 2.5748 1.5456 +v 0.8229 2.5963 1.5597 +v 0.7586 2.5220 1.6358 +v 0.7735 2.6139 1.5784 +v 0.8398 2.6683 1.4739 +v 0.7884 2.6449 1.4621 +v 0.7016 2.7447 1.3431 +v 0.7409 2.7822 1.3381 +v 0.7884 2.6839 1.4949 +v 0.7016 2.7838 1.3758 +v 0.5259 2.8041 1.2723 +v 0.5405 2.8499 1.2575 +v 0.5259 2.8432 1.3051 +v 0.3171 2.8041 1.2723 +v 0.3024 2.8499 1.2575 +v 0.3171 2.8432 1.3051 +v 0.1414 2.7447 1.3431 +v 0.1021 2.7822 1.3381 +v 0.1414 2.7838 1.3758 +v 0.0546 2.6449 1.4621 +v 0.0032 2.6683 1.4739 +v 0.0546 2.6839 1.4949 +v 0.0695 2.5748 1.5456 +v 0.0201 2.5963 1.5597 +v 0.0695 2.6139 1.5784 +v 0.0843 2.5265 1.5850 +v 0.0370 2.5243 1.6104 +v 0.0843 2.5220 1.6358 +v 0.0235 3.7677 0.2755 +v 0.0235 3.7677 0.2601 +v 0.0081 3.7677 0.2601 +v 0.0081 3.7677 0.2755 +v -1.5438 3.5501 0.2185 +v -1.3084 4.6406 1.4987 +v -1.7540 4.6406 1.4987 +v -1.9516 3.5501 0.2185 +v -1.7540 4.6406 1.1371 +v -1.9631 3.9325 0.2185 +v -1.3084 4.6406 1.1371 +v -1.5551 3.9325 0.2185 +v -1.7540 4.6406 -1.4441 +v -1.3084 4.6406 -1.4441 +v -1.5438 3.5501 -0.1639 +v -1.9516 3.5501 -0.1639 +v -1.7540 4.6406 -1.0825 +v -1.9631 3.9325 -0.1639 +v -1.3084 4.6406 -1.0825 +v -1.5551 3.9325 -0.1639 +v -1.5544 3.8720 0.2185 +v -1.9999 3.8720 0.2185 +v -1.7540 1.7269 0.2185 +v -1.3084 1.7269 0.2185 +v -1.9999 3.8720 -0.1639 +v -1.7540 1.7269 -0.1639 +v -1.5544 3.8720 -0.1639 +v -1.3084 1.7269 -0.1639 +v -1.3084 5.9529 0.2185 +v -1.7540 6.0405 0.2185 +v -1.7540 6.0405 -0.1639 +v -1.3084 5.9529 -0.1639 +v -1.3084 4.6406 -1.5881 +v -1.3084 4.6406 1.6293 +v -1.7540 4.6406 1.6293 +v -1.7540 4.6406 -1.5881 +v -1.7540 5.0230 1.2025 +v -1.7540 5.0230 -1.0636 +v -1.3084 5.0230 1.2025 +v -1.3084 5.0230 -1.0636 +v 1.7856 4.6406 1.4987 +v 1.3401 4.6406 1.4987 +v 1.5755 3.5501 0.2185 +v 1.9832 3.5501 0.2185 +v 1.7856 4.6406 1.1371 +v 1.9947 3.9325 0.2185 +v 1.3401 4.6406 1.1371 +v 1.5867 3.9325 0.2185 +v 1.5755 3.5501 -0.1639 +v 1.3401 4.6406 -1.4441 +v 1.7856 4.6406 -1.4441 +v 1.9832 3.5501 -0.1639 +v 1.7856 4.6406 -1.0825 +v 1.9947 3.9325 -0.1639 +v 1.3401 4.6406 -1.0825 +v 1.5867 3.9325 -0.1639 +v 1.7856 1.7269 0.2185 +v 2.0315 3.8720 0.2185 +v 1.5860 3.8720 0.2185 +v 1.3401 1.7269 0.2185 +v 1.7856 1.7269 -0.1639 +v 2.0315 3.8720 -0.1639 +v 1.3401 1.7269 -0.1639 +v 1.5860 3.8720 -0.1639 +v 1.7856 6.0405 0.2185 +v 1.3401 5.9529 0.2185 +v 1.7856 6.0405 -0.1639 +v 1.3401 5.9529 -0.1639 +v 1.3401 4.6406 -1.5881 +v 1.7856 4.6406 -1.5881 +v 1.7856 4.6406 1.6293 +v 1.3401 4.6406 1.6293 +v 1.7856 5.0230 -1.0636 +v 1.7856 5.0230 1.2025 +v 1.3401 5.0230 -1.0636 +v 1.3401 5.0230 1.2025 +v 0.0158 3.3853 -0.1777 +v 0.0158 3.3853 0.2678 +v -1.5551 3.6592 0.1980 +v -1.5551 3.6592 -0.1317 +v 0.0158 3.7677 0.2678 +v -1.5551 4.0416 0.1980 +v 0.0158 3.7677 -0.1777 +v -1.5551 4.0416 -0.1317 +v 1.5798 3.6592 -0.1190 +v 1.5798 3.6592 0.1925 +v 1.5977 4.0416 0.1982 +v 1.5978 4.0416 -0.1247 +v 2.3235 4.2740 -2.1877 +v 2.3235 6.4188 0.0227 +v 2.3257 6.1975 0.0227 +v 2.3235 4.0678 -2.1877 +v -0.0629 5.6948 0.0227 +v -0.0629 3.7727 -2.1877 +v -0.0629 3.9789 -2.1877 +v -0.0629 5.9161 0.0227 +v -2.4516 6.1975 0.0227 +v -2.4494 6.4188 0.0227 +v -2.4494 4.2740 -2.1877 +v -2.4494 4.0678 -2.1877 +v 1.8518 1.4319 -0.7602 +v 1.8470 1.4319 0.7719 +v 1.7317 0.9075 0.7237 +v 1.7363 0.9075 -0.7128 +v 0.7719 1.4319 -1.8470 +v 0.7237 0.9075 -1.7317 +v -0.7602 1.4319 -1.8518 +v -0.7128 0.9075 -1.7363 +v -1.8470 1.4319 -0.7719 +v -1.7317 0.9075 -0.7237 +v -1.8518 1.4319 0.7602 +v -1.7363 0.9075 0.7128 +v -0.7719 1.4319 1.8470 +v -0.7237 0.9075 1.7317 +v 0.7602 1.4319 1.8518 +v 0.7128 0.9075 1.7363 +v 0.7058 0.3719 1.7193 +v 1.7148 0.3719 0.7166 +v -0.7166 0.3719 1.7148 +v -1.7193 0.3719 0.7058 +v -1.7148 0.3719 -0.7166 +v -0.7058 0.3719 -1.7193 +v 0.7166 0.3719 -1.7148 +v 1.7193 0.3719 -0.7058 +v -2.4494 4.2740 2.2332 +v -2.4494 4.0678 2.2332 +v -0.0629 3.7727 2.2332 +v -0.0629 3.9789 2.2332 +v 2.3235 4.2740 2.2332 +v 2.3235 4.0678 2.2332 +# 238 vertices + +vn 0.9985 0.0551 0.0032 +vn -0.9992 -0.0404 -0.0032 +vn 0.7038 0.0551 0.7083 +vn -0.7043 -0.0404 -0.7088 +vn -0.0032 0.0551 0.9985 +vn 0.0032 -0.0404 -0.9992 +vn -0.7083 0.0551 0.7038 +vn 0.7088 -0.0404 -0.7043 +vn -0.9985 0.0551 -0.0032 +vn 0.9992 -0.0404 0.0032 +vn -0.7038 0.0551 -0.7083 +vn 0.7043 -0.0404 0.7088 +vn 0.0032 0.0551 -0.9985 +vn -0.0032 -0.0404 0.9992 +vn 0.7083 0.0551 -0.7038 +vn -0.7088 -0.0404 0.7043 +vn 0.9583 -0.2859 0.0030 +vn 0.6755 -0.2859 0.6797 +vn -0.0030 -0.2859 0.9583 +vn -0.6797 -0.2859 0.6755 +vn -0.9583 -0.2859 -0.0030 +vn -0.6755 -0.2859 -0.6797 +vn 0.0030 -0.2859 -0.9583 +vn 0.6797 -0.2859 -0.6755 +vn 0.0000 1.0000 0.0000 +vn 0.4910 -0.1894 -0.8504 +vn -0.5000 -0.0000 0.8660 +vn 0.9819 -0.1894 -0.0000 +vn -1.0000 0.0000 -0.0000 +vn 0.4910 -0.1894 0.8504 +vn -0.5000 -0.0000 -0.8660 +vn -0.4910 -0.1894 0.8504 +vn -0.0000 1.0000 0.0000 +vn 0.5000 -0.0000 -0.8660 +vn -0.9819 -0.1894 0.0000 +vn 1.0000 0.0000 -0.0000 +vn -0.4910 -0.1894 -0.8504 +vn 0.5000 -0.0000 0.8660 +vn 0.4910 0.1894 -0.8504 +vn 0.9819 0.1894 -0.0000 +vn 0.4910 0.1894 0.8504 +vn -0.4910 0.1894 0.8504 +vn -0.9819 0.1894 0.0000 +vn -0.4910 0.1894 -0.8504 +vn 0.4000 -0.6147 -0.6798 +vn -0.9844 0.1624 -0.0673 +vn 0.4299 0.4376 0.7897 +vn 0.4104 -0.5289 -0.7429 +vn -0.8731 -0.3134 0.3735 +vn 0.4104 0.8234 0.3918 +vn 0.2376 -0.3681 -0.8989 +vn -0.4653 -0.5690 0.6781 +vn 0.2376 0.9492 0.2064 +vn 0.0000 -0.3090 -0.9511 +vn 0.0000 -0.6428 0.7660 +vn -0.0000 0.9903 0.1392 +vn -0.2376 -0.3681 -0.8989 +vn 0.4653 -0.5690 0.6781 +vn -0.2376 0.9492 0.2064 +vn -0.4104 -0.5289 -0.7429 +vn 0.8731 -0.3134 0.3734 +vn -0.4104 0.8234 0.3918 +vn -0.4550 -0.7224 -0.5207 +vn 0.9908 0.0868 -0.1035 +vn -0.4550 0.6382 0.6210 +vn 0.4550 -0.7224 -0.5207 +vn -0.9908 0.0868 -0.1035 +vn 0.4550 0.6382 0.6210 +vn -0.4000 -0.6147 -0.6798 +vn 0.9844 0.1624 -0.0673 +vn -0.4299 0.4376 0.7897 +vn -0.0000 -0.7612 0.6485 +vn -0.9898 0.0808 0.1170 +vn 0.0000 0.7920 -0.6105 +vn 0.9859 -0.0989 -0.1353 +vn 0.0000 -0.7612 -0.6485 +vn -0.9898 0.0808 -0.1170 +vn 0.0000 0.7920 0.6105 +vn 0.9859 -0.0989 0.1353 +vn 0.0000 -0.0000 1.0000 +vn -0.9935 -0.1139 -0.0000 +vn 0.0000 0.0000 -1.0000 +vn 0.9935 0.1139 -0.0000 +vn -0.0000 -0.0000 1.0000 +vn -0.9936 0.1127 0.0000 +vn -0.0000 0.0000 -1.0000 +vn 0.9931 -0.1174 0.0000 +vn 0.0000 -1.0000 -0.0000 +vn -1.0000 -0.0000 -0.0000 +vn 1.0000 -0.0000 0.0000 +vn 0.0000 -0.7612 0.6485 +vn 0.9898 0.0808 0.1170 +vn -0.9859 -0.0989 -0.1353 +vn 0.9898 0.0808 -0.1170 +vn -0.9859 -0.0989 0.1353 +vn 0.9935 -0.1139 0.0000 +vn -0.9935 0.1139 0.0000 +vn 0.9936 0.1127 0.0000 +vn -0.9931 -0.1174 -0.0000 +vn -1.0000 -0.0000 0.0000 +vn -0.1717 -0.9851 0.0000 +vn -0.0444 -0.0000 0.9990 +vn 0.1717 0.9851 0.0000 +vn -0.0293 0.0000 -0.9996 +vn 0.1725 -0.9850 0.0000 +vn 0.0475 -0.0086 0.9988 +vn -0.1706 0.9853 -0.0000 +vn 0.0369 -0.0083 -0.9993 +vn 1.0000 0.0053 -0.0056 +vn 0.1223 -0.7317 0.6705 +vn -0.1219 0.7292 -0.6733 +vn -1.0000 0.0053 -0.0056 +vn -0.1223 -0.7317 0.6705 +vn 0.1219 0.7292 -0.6733 +vn 0.9766 -0.2148 0.0031 +vn 0.6928 -0.2148 -0.6884 +vn 0.0031 -0.2148 -0.9766 +vn -0.6884 -0.2148 -0.6928 +vn -0.9766 -0.2148 -0.0031 +vn -0.6928 -0.2148 0.6884 +vn -0.0031 -0.2148 0.9766 +vn 0.6884 -0.2148 0.6928 +vn -0.1030 -0.9947 -0.0003 +vn -0.0726 -0.9947 -0.0731 +vn 0.0003 -0.9947 -0.1030 +vn 0.0731 -0.9947 -0.0726 +vn 0.1030 -0.9947 0.0003 +vn 0.0726 -0.9947 0.0731 +vn -0.0003 -0.9947 0.1030 +vn -0.0731 -0.9947 0.0726 +vn 0.7045 -0.0317 0.7090 +vn -0.0032 -0.0317 0.9995 +vn -0.7090 -0.0317 0.7045 +vn -0.9995 -0.0317 -0.0032 +vn -0.7045 -0.0317 -0.7090 +vn 0.0032 -0.0317 -0.9995 +vn 0.7090 -0.0317 -0.7045 +vn 0.9995 -0.0317 0.0032 +vn 0.0000 1.0000 -0.0000 +vn -0.0000 1.0000 -0.0000 +vn 0.0135 0.9998 -0.0134 +vn 0.0001 0.9998 -0.0190 +vn -0.0134 0.9998 -0.0135 +vn -0.0190 0.9998 -0.0001 +vn -0.0135 0.9998 0.0134 +vn -0.0001 0.9998 0.0190 +vn 0.0134 0.9998 0.0135 +vn 0.0190 0.9998 0.0001 +vn -1.0000 0.0053 0.0056 +vn -0.1223 -0.7317 -0.6705 +vn 0.1219 0.7292 0.6733 +vn 1.0000 0.0053 0.0056 +vn 0.1223 -0.7317 -0.6705 +vn -0.1219 0.7292 0.6733 +# 154 vertex normals + +vt 0.2239 0.9582 0.0000 +vt 0.2956 0.9582 0.0000 +vt 0.2956 0.9813 0.0000 +vt 0.2239 0.9813 0.0000 +vt 0.6981 0.4745 0.0000 +vt 0.6481 0.4745 0.0000 +vt 0.6481 0.4250 0.0000 +vt 0.6981 0.4250 0.0000 +vt 0.0089 0.9582 0.0000 +vt 0.0805 0.9582 0.0000 +vt 0.0805 0.9813 0.0000 +vt 0.0089 0.9813 0.0000 +vt 0.1500 0.9582 0.0000 +vt 0.1500 0.9813 0.0000 +vt 0.2217 0.9582 0.0000 +vt 0.2217 0.9813 0.0000 +vt 0.1522 0.9582 0.0000 +vt 0.1522 0.9813 0.0000 +vt 0.2694 0.8091 0.0000 +vt 0.3575 0.8091 0.0000 +vt 0.3575 0.8362 0.0000 +vt 0.2694 0.8362 0.0000 +vt 0.0050 0.8091 0.0000 +vt 0.0931 0.8091 0.0000 +vt 0.0931 0.8362 0.0000 +vt 0.0050 0.8362 0.0000 +vt 0.1813 0.8091 0.0000 +vt 0.1813 0.8362 0.0000 +vt 0.9021 0.7436 0.0000 +vt 0.9884 0.7433 0.0000 +vt 0.9886 0.7791 0.0000 +vt 0.9022 0.7794 0.0000 +vt 0.9273 0.7182 0.0000 +vt 0.9631 0.7181 0.0000 +vt 0.9633 0.8045 0.0000 +vt 0.9276 0.8046 0.0000 +vt 0.4225 0.7567 0.0000 +vt 0.3739 0.7478 0.0000 +vt 0.3792 0.7144 0.0000 +vt 0.4236 0.7209 0.0000 +vt 0.4096 0.7906 0.0000 +vt 0.4029 0.7965 0.0000 +vt 0.3668 0.7872 0.0000 +vt 0.3687 0.7804 0.0000 +vt 0.9628 0.8255 0.0000 +vt 0.9859 0.8256 0.0000 +vt 0.9856 0.8700 0.0000 +vt 0.9625 0.8699 0.0000 +vt 0.3297 0.7421 0.0000 +vt 0.3319 0.7086 0.0000 +vt 0.3267 0.7831 0.0000 +vt 0.3273 0.7760 0.0000 +vt 0.2845 0.7412 0.0000 +vt 0.2835 0.7076 0.0000 +vt 0.2858 0.7825 0.0000 +vt 0.2856 0.7753 0.0000 +vt 0.2860 0.7825 0.0000 +vt 0.0756 0.6646 0.0000 +vt 0.0832 0.6680 0.0000 +vt 0.0803 0.6775 0.0000 +vt 0.0716 0.6780 0.0000 +vt 0.3119 0.6839 0.0000 +vt 0.2977 0.6888 0.0000 +vt 0.2975 0.6818 0.0000 +vt 0.3061 0.6799 0.0000 +vt 0.2061 0.7218 0.0000 +vt 0.1979 0.7267 0.0000 +vt 0.1950 0.7215 0.0000 +vt 0.2058 0.7160 0.0000 +vt 0.0693 0.6955 0.0000 +vt 0.0782 0.6946 0.0000 +vt 0.0903 0.7196 0.0000 +vt 0.0830 0.7239 0.0000 +vt 0.2823 0.6822 0.0000 +vt 0.2824 0.6892 0.0000 +vt 0.2578 0.6899 0.0000 +vt 0.2577 0.6828 0.0000 +vt 0.1859 0.7298 0.0000 +vt 0.1894 0.7350 0.0000 +vt 0.1688 0.7416 0.0000 +vt 0.1672 0.7359 0.0000 +vt 0.1153 0.7380 0.0000 +vt 0.1113 0.7447 0.0000 +vt 0.2304 0.6905 0.0000 +vt 0.2302 0.6834 0.0000 +vt 0.1447 0.7400 0.0000 +vt 0.1453 0.7346 0.0000 +vt 0.1469 0.7465 0.0000 +vt 0.1468 0.7543 0.0000 +vt 0.2016 0.6916 0.0000 +vt 0.2013 0.6846 0.0000 +vt 0.1206 0.7317 0.0000 +vt 0.1235 0.7271 0.0000 +vt 0.1781 0.7441 0.0000 +vt 0.1816 0.7517 0.0000 +vt 0.1742 0.6930 0.0000 +vt 0.1738 0.6860 0.0000 +vt 0.1006 0.7183 0.0000 +vt 0.1053 0.7147 0.0000 +vt 0.2030 0.7310 0.0000 +vt 0.2093 0.7374 0.0000 +vt 0.1496 0.6944 0.0000 +vt 0.1492 0.6874 0.0000 +vt 0.0874 0.7010 0.0000 +vt 0.0934 0.6991 0.0000 +vt 0.2133 0.7170 0.0000 +vt 0.2193 0.7232 0.0000 +vt 0.1344 0.6954 0.0000 +vt 0.1340 0.6883 0.0000 +vt 0.0867 0.6887 0.0000 +vt 0.0925 0.6872 0.0000 +vt 0.2177 0.7080 0.0000 +vt 0.2256 0.7108 0.0000 +vt 0.1198 0.6917 0.0000 +vt 0.1252 0.6872 0.0000 +vt 0.0853 0.6791 0.0000 +vt 0.0900 0.6756 0.0000 +vt 0.8686 0.4503 0.0000 +vt 0.8602 0.4537 0.0000 +vt 0.8568 0.4454 0.0000 +vt 0.8652 0.4419 0.0000 +vt 0.4316 0.2725 0.0000 +vt 0.4412 0.4245 0.0000 +vt 0.4715 0.4254 0.0000 +vt 0.4631 0.2738 0.0000 +vt 0.4354 0.4803 0.0000 +vt 0.6812 0.4986 0.0000 +vt 0.6391 0.5296 0.0000 +vt 0.4677 0.5253 0.0000 +vt 0.7540 0.7227 0.0000 +vt 0.7259 0.7227 0.0000 +vt 0.7104 0.5721 0.0000 +vt 0.7385 0.5721 0.0000 +vt 0.7328 0.3910 0.0000 +vt 0.7072 0.3910 0.0000 +vt 0.7072 0.2553 0.0000 +vt 0.7328 0.2553 0.0000 +vt 0.7385 0.8750 0.0000 +vt 0.7104 0.8689 0.0000 +vt 0.7328 0.5281 0.0000 +vt 0.7072 0.5281 0.0000 +vt 0.4336 0.8157 0.0000 +vt 0.5568 0.8159 0.0000 +vt 0.5567 0.8330 0.0000 +vt 0.4336 0.8328 0.0000 +vt 0.6156 0.5421 0.0000 +vt 0.5880 0.5670 0.0000 +vt 0.4416 0.5670 0.0000 +vt 0.4077 0.5421 0.0000 +vt 0.5414 0.8438 0.0000 +vt 0.5414 0.8626 0.0000 +vt 0.4454 0.8625 0.0000 +vt 0.4454 0.8436 0.0000 +vt 0.5880 0.5650 0.0000 +vt 0.6156 0.5400 0.0000 +vt 0.4077 0.5400 0.0000 +vt 0.4416 0.5650 0.0000 +vt 0.8568 0.8820 0.0000 +vt 0.8568 0.8568 0.0000 +vt 0.7762 0.8607 0.0000 +vt 0.7762 0.8794 0.0000 +vt 0.8579 0.8109 0.0000 +vt 0.8579 0.8320 0.0000 +vt 0.7705 0.8472 0.0000 +vt 0.7705 0.8260 0.0000 +vt 0.9371 0.8787 0.0000 +vt 0.9371 0.8610 0.0000 +vt 0.9450 0.8260 0.0000 +vt 0.9460 0.8472 0.0000 +vt 0.9380 0.8607 0.0000 +vt 0.9380 0.8790 0.0000 +vt 0.0988 0.4994 0.0000 +vt 0.0988 0.6767 0.0000 +vt 0.0897 0.6679 0.0000 +vt 0.0903 0.4912 0.0000 +vt 0.8296 0.5549 0.0000 +vt 0.8296 0.4722 0.0000 +vt 0.8972 0.4776 0.0000 +vt 0.8978 0.5642 0.0000 +vt 0.2369 0.4875 0.0000 +vt 0.0992 0.4876 0.0000 +vt 0.2368 0.4756 0.0000 +vt 0.2377 0.6567 0.0000 +vt 0.3859 0.6664 0.0000 +vt 0.3768 0.6754 0.0000 +vt 0.3751 0.4981 0.0000 +vt 0.3835 0.4897 0.0000 +vt 0.7620 0.4776 0.0000 +vt 0.7613 0.5642 0.0000 +vt 0.3746 0.4863 0.0000 +vt 0.2718 0.8593 0.0000 +vt 0.3599 0.8593 0.0000 +vt 0.3599 0.8934 0.0000 +vt 0.2718 0.8934 0.0000 +vt 0.1836 0.8593 0.0000 +vt 0.1836 0.8934 0.0000 +vt 0.0955 0.8593 0.0000 +vt 0.0955 0.8934 0.0000 +vt 0.0073 0.8593 0.0000 +vt 0.0073 0.8934 0.0000 +vt 0.6906 0.6470 0.0000 +vt 0.6907 0.6100 0.0000 +vt 0.6947 0.6083 0.0000 +vt 0.6946 0.6487 0.0000 +vt 0.6643 0.6730 0.0000 +vt 0.6660 0.6771 0.0000 +vt 0.6273 0.6729 0.0000 +vt 0.6256 0.6769 0.0000 +vt 0.6012 0.6467 0.0000 +vt 0.5972 0.6483 0.0000 +vt 0.6014 0.6097 0.0000 +vt 0.5973 0.6080 0.0000 +vt 0.6276 0.5836 0.0000 +vt 0.6260 0.5796 0.0000 +vt 0.6646 0.5837 0.0000 +vt 0.6663 0.5797 0.0000 +vt 0.0955 0.9283 0.0000 +vt 0.0073 0.9283 0.0000 +vt 0.1836 0.9283 0.0000 +vt 0.2718 0.9283 0.0000 +vt 0.3599 0.9283 0.0000 +vt 0.6553 0.7336 0.0000 +vt 0.6147 0.7338 0.0000 +vt 0.6062 0.7134 0.0000 +vt 0.6637 0.7132 0.0000 +vt 0.5861 0.7626 0.0000 +vt 0.5656 0.7542 0.0000 +vt 0.5862 0.8032 0.0000 +vt 0.5658 0.8117 0.0000 +vt 0.6150 0.8318 0.0000 +vt 0.6066 0.8522 0.0000 +vt 0.6556 0.8317 0.0000 +vt 0.6641 0.8521 0.0000 +vt 0.6842 0.8029 0.0000 +vt 0.7047 0.8113 0.0000 +vt 0.6841 0.7623 0.0000 +vt 0.7045 0.7537 0.0000 +vt 0.4901 0.7084 0.0000 +vt 0.5278 0.7080 0.0000 +vt 0.5414 0.7398 0.0000 +vt 0.4772 0.7405 0.0000 +vt 0.4632 0.6821 0.0000 +vt 0.4314 0.6956 0.0000 +vt 0.4628 0.6444 0.0000 +vt 0.4307 0.6315 0.0000 +vt 0.4891 0.6175 0.0000 +vt 0.4755 0.5857 0.0000 +vt 0.5268 0.6171 0.0000 +vt 0.5397 0.5850 0.0000 +vt 0.5537 0.6434 0.0000 +vt 0.5855 0.6298 0.0000 +vt 0.5541 0.6811 0.0000 +vt 0.5862 0.6939 0.0000 +# 253 texture coords + +o well +g well +f 1/1/1 2/2/1 3/3/1 +f 3/3/1 4/4/1 1/1/1 +f 5/5/2 6/6/2 7/7/2 +f 7/7/2 8/8/2 5/5/2 +f 2/9/3 9/10/3 10/11/3 +f 10/11/3 3/12/3 2/9/3 +f 6/5/4 11/6/4 12/7/4 +f 12/7/4 7/8/4 6/5/4 +f 9/10/5 13/13/5 14/14/5 +f 14/14/5 10/11/5 9/10/5 +f 11/5/6 15/6/6 16/7/6 +f 16/7/6 12/8/6 11/5/6 +f 13/13/7 17/15/7 18/16/7 +f 18/16/7 14/14/7 13/13/7 +f 15/5/8 19/6/8 20/7/8 +f 20/7/8 16/8/8 15/5/8 +f 17/15/9 21/2/9 22/3/9 +f 22/3/9 18/16/9 17/15/9 +f 19/5/10 23/6/10 24/7/10 +f 24/7/10 20/8/10 19/5/10 +f 21/9/11 25/10/11 26/11/11 +f 26/11/11 22/12/11 21/9/11 +f 23/5/12 27/6/12 28/7/12 +f 28/7/12 24/8/12 23/5/12 +f 25/10/13 29/17/13 30/18/13 +f 30/18/13 26/11/13 25/10/13 +f 28/8/14 27/5/14 31/6/14 +f 31/6/14 32/7/14 28/8/14 +f 29/17/15 1/1/15 4/4/15 +f 4/4/15 30/18/15 29/17/15 +f 32/8/16 31/5/16 5/6/16 +f 5/6/16 8/7/16 32/8/16 +f 33/19/17 34/20/17 35/21/17 +f 35/21/17 36/22/17 33/19/17 +f 34/23/18 37/24/18 38/25/18 +f 38/25/18 35/26/18 34/23/18 +f 37/24/19 39/27/19 40/28/19 +f 40/28/19 38/25/19 37/24/19 +f 39/27/20 41/19/20 42/22/20 +f 42/22/20 40/28/20 39/27/20 +f 41/19/21 43/20/21 44/21/21 +f 44/21/21 42/22/21 41/19/21 +f 43/23/22 45/24/22 46/25/22 +f 46/25/22 44/26/22 43/23/22 +f 45/24/23 47/27/23 48/28/23 +f 48/28/23 46/25/23 45/24/23 +f 47/27/24 33/19/24 36/22/24 +f 36/22/24 48/28/24 47/27/24 +f 19/29/25 6/30/25 5/31/25 +f 5/31/25 23/32/25 19/29/25 +f 6/30/25 19/29/25 15/33/25 +f 15/33/25 11/34/25 6/30/25 +f 23/32/25 5/31/25 31/35/25 +f 31/35/25 27/36/25 23/32/25 +f 49/37/26 50/38/26 51/39/26 +f 51/39/26 52/40/26 49/37/26 +f 53/41/25 54/42/25 55/43/25 +f 55/43/25 56/44/25 53/41/25 +f 57/45/27 58/46/27 55/47/27 +f 55/47/27 54/48/27 57/45/27 +f 50/38/28 59/49/28 60/50/28 +f 60/50/28 51/39/28 50/38/28 +f 56/44/25 55/43/25 61/51/25 +f 61/51/25 62/52/25 56/44/25 +f 58/45/29 63/46/29 61/47/29 +f 61/47/29 55/48/29 58/45/29 +f 59/49/30 64/53/30 65/54/30 +f 65/54/30 60/50/30 59/49/30 +f 62/52/25 61/51/25 66/55/25 +f 66/55/25 67/56/25 62/52/25 +f 63/45/31 68/46/31 66/47/31 +f 66/47/31 61/48/31 63/45/31 +f 64/53/32 69/49/32 70/50/32 +f 70/50/32 65/54/32 64/53/32 +f 67/56/33 66/57/33 71/51/33 +f 71/51/33 72/52/33 67/56/33 +f 68/45/34 73/46/34 71/47/34 +f 71/47/34 66/48/34 68/45/34 +f 69/49/35 74/38/35 75/39/35 +f 75/39/35 70/50/35 69/49/35 +f 72/52/25 71/51/25 76/43/25 +f 76/43/25 77/44/25 72/52/25 +f 73/45/36 78/46/36 76/47/36 +f 76/47/36 71/48/36 73/45/36 +f 74/38/37 49/37/37 52/40/37 +f 52/40/37 75/39/37 74/38/37 +f 77/44/25 76/43/25 54/42/25 +f 54/42/25 53/41/25 77/44/25 +f 76/48/38 78/45/38 57/46/38 +f 57/46/38 54/47/38 76/48/38 +f 53/41/39 56/44/39 50/38/39 +f 50/38/39 49/37/39 53/41/39 +f 56/44/40 62/52/40 59/49/40 +f 59/49/40 50/38/40 56/44/40 +f 62/52/41 67/56/41 64/53/41 +f 64/53/41 59/49/41 62/52/41 +f 67/56/42 72/52/42 69/49/42 +f 69/49/42 64/53/42 67/56/42 +f 72/52/43 77/44/43 74/38/43 +f 74/38/43 69/49/43 72/52/43 +f 77/44/44 53/41/44 49/37/44 +f 49/37/44 74/38/44 77/44/44 +f 79/58/45 80/59/45 81/60/45 +f 81/60/45 82/61/45 79/58/45 +f 83/62/46 84/63/46 81/64/46 +f 81/64/46 80/65/46 83/62/46 +f 79/66/47 82/67/47 84/68/47 +f 84/68/47 83/69/47 79/66/47 +f 85/70/48 86/71/48 87/72/48 +f 87/72/48 88/73/48 85/70/48 +f 86/74/49 89/75/49 90/76/49 +f 90/76/49 87/77/49 86/74/49 +f 89/78/50 85/79/50 88/80/50 +f 88/80/50 90/81/50 89/78/50 +f 88/73/51 87/72/51 91/82/51 +f 91/82/51 92/83/51 88/73/51 +f 87/77/52 90/76/52 93/84/52 +f 93/84/52 91/85/52 87/77/52 +f 90/81/53 88/80/53 92/86/53 +f 92/86/53 93/87/53 90/81/53 +f 92/83/54 91/82/54 94/88/54 +f 94/88/54 95/89/54 92/83/54 +f 91/85/55 93/84/55 96/90/55 +f 96/90/55 94/91/55 91/85/55 +f 93/87/56 92/86/56 95/92/56 +f 95/92/56 96/93/56 93/87/56 +f 95/89/57 94/88/57 97/94/57 +f 97/94/57 98/95/57 95/89/57 +f 94/91/58 96/90/58 99/96/58 +f 99/96/58 97/97/58 94/91/58 +f 96/93/59 95/92/59 98/98/59 +f 98/98/59 99/99/59 96/93/59 +f 98/95/60 97/94/60 100/100/60 +f 100/100/60 101/101/60 98/95/60 +f 97/97/61 99/96/61 102/102/61 +f 102/102/61 100/103/61 97/97/61 +f 99/99/62 98/98/62 101/104/62 +f 101/104/62 102/105/62 99/99/62 +f 100/100/63 103/106/63 104/107/63 +f 104/107/63 101/101/63 100/100/63 +f 102/102/64 105/108/64 103/109/64 +f 103/109/64 100/103/64 102/102/64 +f 102/105/65 101/104/65 104/110/65 +f 104/110/65 105/111/65 102/105/65 +f 86/71/66 85/70/66 82/61/66 +f 82/61/66 81/60/66 86/71/66 +f 89/75/67 86/74/67 81/64/67 +f 81/64/67 84/63/67 89/75/67 +f 82/67/68 85/79/68 89/78/68 +f 89/78/68 84/68/68 82/67/68 +f 103/106/69 106/112/69 107/113/69 +f 107/113/69 104/107/69 103/106/69 +f 108/114/70 106/115/70 103/109/70 +f 103/109/70 105/108/70 108/114/70 +f 107/116/71 108/117/71 105/111/71 +f 105/111/71 104/110/71 107/116/71 +f 109/118/25 110/119/25 111/120/25 +f 111/120/25 112/121/25 109/118/25 +f 109/118/25 110/119/25 111/120/25 +f 111/120/25 112/121/25 109/118/25 +f 113/122/72 114/123/72 115/124/72 +f 115/124/72 116/125/72 113/122/72 +f 116/126/73 115/127/73 117/128/73 +f 117/128/73 118/129/73 116/126/73 +f 118/122/74 117/123/74 119/124/74 +f 119/124/74 120/125/74 118/122/74 +f 120/129/75 119/128/75 114/127/75 +f 114/127/75 113/126/75 120/129/75 +f 121/123/76 122/124/76 123/125/76 +f 123/125/76 124/122/76 121/123/76 +f 125/128/77 121/127/77 124/126/77 +f 124/126/77 126/129/77 125/128/77 +f 127/124/78 125/123/78 126/122/78 +f 126/122/78 128/125/78 127/124/78 +f 122/127/79 127/128/79 128/129/79 +f 128/129/79 123/126/79 122/127/79 +f 129/130/80 130/131/80 131/132/80 +f 131/132/80 132/133/80 129/130/80 +f 130/134/81 133/135/81 134/136/81 +f 134/136/81 131/137/81 130/134/81 +f 133/131/82 135/130/82 136/133/82 +f 136/133/82 134/132/82 133/131/82 +f 135/135/83 129/134/83 132/137/83 +f 132/137/83 136/136/83 135/135/83 +f 129/130/84 137/138/84 138/139/84 +f 138/139/84 130/131/84 129/130/84 +f 130/134/85 138/140/85 139/141/85 +f 139/141/85 133/135/85 130/134/85 +f 133/131/86 139/139/86 140/138/86 +f 140/138/86 135/130/86 133/131/86 +f 135/135/87 140/141/87 137/140/87 +f 137/140/87 129/134/87 135/135/87 +f 141/142/88 142/143/88 143/144/88 +f 143/144/88 144/145/88 141/142/88 +f 143/146/89 145/147/89 146/148/89 +f 146/148/89 144/149/89 143/146/89 +f 145/150/25 147/151/25 148/152/25 +f 148/152/25 146/153/25 145/150/25 +f 147/154/90 142/155/90 141/156/90 +f 141/156/90 148/157/90 147/154/90 +f 149/123/91 150/124/91 151/125/91 +f 151/125/91 152/122/91 149/123/91 +f 153/128/92 149/127/92 152/126/92 +f 152/126/92 154/129/92 153/128/92 +f 155/124/74 153/123/74 154/122/74 +f 154/122/74 156/125/74 155/124/74 +f 150/127/93 155/128/93 156/129/93 +f 156/129/93 151/126/93 150/127/93 +f 157/125/76 158/124/76 159/123/76 +f 159/123/76 160/122/76 157/125/76 +f 160/126/94 159/127/94 161/128/94 +f 161/128/94 162/129/94 160/126/94 +f 162/122/78 161/123/78 163/124/78 +f 163/124/78 164/125/78 162/122/78 +f 164/129/95 163/128/95 158/127/95 +f 158/127/95 157/126/95 164/129/95 +f 165/133/84 166/130/84 167/131/84 +f 167/131/84 168/132/84 165/133/84 +f 169/136/96 170/135/96 166/134/96 +f 166/134/96 165/137/96 169/136/96 +f 171/132/82 172/131/82 170/130/82 +f 170/130/82 169/133/82 171/132/82 +f 168/137/97 167/134/97 172/135/97 +f 172/135/97 171/136/97 168/137/97 +f 173/138/80 174/139/80 167/131/80 +f 167/131/80 166/130/80 173/138/80 +f 175/141/98 173/140/98 166/134/98 +f 166/134/98 170/135/98 175/141/98 +f 176/139/82 175/138/82 170/130/82 +f 170/130/82 172/131/82 176/139/82 +f 174/140/99 176/141/99 172/135/99 +f 172/135/99 167/134/99 174/140/99 +f 177/143/88 178/144/88 179/145/88 +f 179/145/88 180/142/88 177/143/88 +f 181/157/36 182/154/36 179/155/36 +f 179/155/36 178/156/36 181/157/36 +f 183/151/25 184/152/25 182/153/25 +f 182/153/25 181/150/25 183/151/25 +f 177/156/100 180/155/100 184/154/100 +f 184/154/100 183/157/100 177/156/100 +f 185/158/101 186/159/101 187/160/101 +f 187/160/101 188/161/101 185/158/101 +f 186/162/102 189/163/102 190/164/102 +f 190/164/102 187/165/102 186/162/102 +f 189/159/103 191/158/103 192/161/103 +f 192/161/103 190/160/103 189/159/103 +f 191/163/104 185/162/104 188/165/104 +f 188/165/104 192/164/104 191/163/104 +f 185/158/105 193/166/105 194/167/105 +f 194/167/105 186/159/105 185/158/105 +f 186/162/106 194/168/106 195/169/106 +f 195/169/106 189/163/106 186/162/106 +f 189/159/107 195/170/107 196/171/107 +f 196/171/107 191/158/107 189/159/107 +f 191/163/108 196/169/108 193/168/108 +f 193/168/108 185/162/108 191/163/108 +f 197/172/109 198/173/109 199/174/109 +f 199/174/109 200/175/109 197/172/109 +f 201/176/110 202/177/110 200/178/110 +f 200/178/110 199/179/110 201/176/110 +f 203/180/82 197/172/82 200/181/82 +f 200/181/82 202/182/82 203/180/82 +f 204/183/111 198/173/111 197/172/111 +f 197/172/111 203/180/111 204/183/111 +f 205/184/112 206/185/112 207/186/112 +f 207/186/112 208/187/112 205/184/112 +f 208/188/113 202/177/113 201/176/113 +f 201/176/113 205/189/113 208/188/113 +f 208/190/82 207/186/82 203/180/82 +f 203/180/82 202/182/82 208/190/82 +f 207/186/114 206/185/114 204/183/114 +f 204/183/114 203/180/114 207/186/114 +f 209/191/115 210/192/115 211/193/115 +f 211/193/115 212/194/115 209/191/115 +f 213/195/116 209/191/116 212/194/116 +f 212/194/116 214/196/116 213/195/116 +f 215/197/117 213/195/117 214/196/117 +f 214/196/117 216/198/117 215/197/117 +f 217/199/118 215/197/118 216/198/118 +f 216/198/118 218/200/118 217/199/118 +f 219/191/119 217/192/119 218/193/119 +f 218/193/119 220/194/119 219/191/119 +f 221/195/120 219/191/120 220/194/120 +f 220/194/120 222/196/120 221/195/120 +f 223/197/121 221/195/121 222/196/121 +f 222/196/121 224/198/121 223/197/121 +f 210/199/122 223/197/122 224/198/122 +f 224/198/122 211/200/122 210/199/122 +f 210/201/123 209/202/123 36/203/123 +f 36/203/123 35/204/123 210/201/123 +f 223/205/124 210/201/124 35/204/124 +f 35/204/124 38/206/124 223/205/124 +f 221/207/125 223/205/125 38/206/125 +f 38/206/125 40/208/125 221/207/125 +f 219/209/126 221/207/126 40/208/126 +f 40/208/126 42/210/126 219/209/126 +f 217/211/127 219/209/127 42/210/127 +f 42/210/127 44/212/127 217/211/127 +f 215/213/128 217/211/128 44/212/128 +f 44/212/128 46/214/128 215/213/128 +f 213/215/129 215/213/129 46/214/129 +f 46/214/129 48/216/129 213/215/129 +f 209/202/130 213/215/130 48/216/130 +f 48/216/130 36/203/130 209/202/130 +f 211/200/131 224/198/131 225/217/131 +f 225/217/131 226/218/131 211/200/131 +f 224/198/132 222/196/132 227/219/132 +f 227/219/132 225/217/132 224/198/132 +f 222/196/133 220/194/133 228/220/133 +f 228/220/133 227/219/133 222/196/133 +f 220/194/134 218/193/134 229/221/134 +f 229/221/134 228/220/134 220/194/134 +f 218/200/135 216/198/135 230/217/135 +f 230/217/135 229/218/135 218/200/135 +f 216/198/136 214/196/136 231/219/136 +f 231/219/136 230/217/136 216/198/136 +f 214/196/137 212/194/137 232/220/137 +f 232/220/137 231/219/137 214/196/137 +f 212/194/138 211/193/138 226/221/138 +f 226/221/138 232/220/138 212/194/138 +f 232/222/33 226/223/33 2/224/33 +f 2/224/33 1/225/33 232/222/33 +f 226/223/139 225/226/139 9/227/139 +f 9/227/139 2/224/139 226/223/139 +f 225/226/33 227/228/33 13/229/33 +f 13/229/33 9/227/33 225/226/33 +f 227/228/25 228/230/25 17/231/25 +f 17/231/25 13/229/25 227/228/25 +f 228/230/139 229/232/139 21/233/139 +f 21/233/139 17/231/139 228/230/139 +f 229/232/25 230/234/25 25/235/25 +f 25/235/25 21/233/25 229/232/25 +f 230/234/25 231/236/25 29/237/25 +f 29/237/25 25/235/25 230/234/25 +f 231/236/140 232/222/140 1/225/140 +f 1/225/140 29/237/140 231/236/140 +f 16/238/141 20/239/141 41/240/141 +f 41/240/141 39/241/141 16/238/141 +f 12/242/142 16/238/142 39/241/142 +f 39/241/142 37/243/142 12/242/142 +f 7/244/143 12/242/143 37/243/143 +f 37/243/143 34/245/143 7/244/143 +f 8/246/144 7/244/144 34/245/144 +f 34/245/144 33/247/144 8/246/144 +f 32/248/145 8/246/145 33/247/145 +f 33/247/145 47/249/145 32/248/145 +f 28/250/146 32/248/146 47/249/146 +f 47/249/146 45/251/146 28/250/146 +f 24/252/147 28/250/147 45/251/147 +f 45/251/147 43/253/147 24/252/147 +f 20/239/148 24/252/148 43/253/148 +f 43/253/148 41/240/148 20/239/148 +f 233/172/149 206/173/149 205/174/149 +f 205/174/149 234/175/149 233/172/149 +f 201/176/150 235/177/150 234/178/150 +f 234/178/150 205/179/150 201/176/150 +f 236/180/84 233/172/84 234/181/84 +f 234/181/84 235/182/84 236/180/84 +f 204/183/151 206/173/151 233/172/151 +f 233/172/151 236/180/151 204/183/151 +f 199/184/152 198/185/152 237/186/152 +f 237/186/152 238/187/152 199/184/152 +f 238/188/153 235/177/153 201/176/153 +f 201/176/153 199/189/153 238/188/153 +f 238/190/84 237/186/84 236/180/84 +f 236/180/84 235/182/84 238/190/84 +f 237/186/154 198/185/154 204/183/154 +f 204/183/154 236/180/154 237/186/154 +# 368 faces + diff --git a/examples/models/resources/models/obj/well_diffuse.png b/examples/models/resources/models/obj/well_diffuse.png new file mode 100644 index 0000000..f8f6686 Binary files /dev/null and b/examples/models/resources/models/obj/well_diffuse.png differ diff --git a/examples/models/resources/models/vox/LICENSE b/examples/models/resources/models/vox/LICENSE new file mode 100644 index 0000000..afb6608 --- /dev/null +++ b/examples/models/resources/models/vox/LICENSE @@ -0,0 +1,9 @@ +The following models are provided by the official github repo of voxel-model format by MagikaVoxel developer @ephtracy + +GitHub official repo: https://github.com/ephtracy/voxel-model + + - chr_knight.vox - https://github.com/ephtracy/voxel-model/blob/master/vox/character/chr_knight.vox + - chr_sword.vox - https://github.com/ephtracy/voxel-model/blob/master/vox/character/chr_sword.vox + - monu9.vox - https://github.com/ephtracy/voxel-model/blob/master/vox/monument/monu9.vox + +Worth mentioning there is no license specified for the models yet: https://github.com/ephtracy/voxel-model/issues/22 diff --git a/examples/models/resources/models/vox/chr_knight.vox b/examples/models/resources/models/vox/chr_knight.vox new file mode 100644 index 0000000..c921bf5 Binary files /dev/null and b/examples/models/resources/models/vox/chr_knight.vox differ diff --git a/examples/models/resources/models/vox/chr_sword.vox b/examples/models/resources/models/vox/chr_sword.vox new file mode 100644 index 0000000..05fc482 Binary files /dev/null and b/examples/models/resources/models/vox/chr_sword.vox differ diff --git a/examples/models/resources/models/vox/monu9.vox b/examples/models/resources/models/vox/monu9.vox new file mode 100644 index 0000000..fd77111 Binary files /dev/null and b/examples/models/resources/models/vox/monu9.vox differ diff --git a/examples/models/resources/shaders/glsl100/cubemap.fs b/examples/models/resources/shaders/glsl100/cubemap.fs new file mode 100644 index 0000000..7d1bde0 --- /dev/null +++ b/examples/models/resources/shaders/glsl100/cubemap.fs @@ -0,0 +1,29 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec3 fragPosition; + +// Input uniform values +uniform sampler2D equirectangularMap; + +vec2 SampleSphericalMap(vec3 v) +{ + vec2 uv = vec2(atan(v.z, v.x), asin(v.y)); + uv *= vec2(0.1591, 0.3183); + uv += 0.5; + return uv; +} + +void main() +{ + // Normalize local position + vec2 uv = SampleSphericalMap(normalize(fragPosition)); + + // Fetch color from texture map + vec3 color = texture2D(equirectangularMap, uv).rgb; + + // Calculate final fragment color + gl_FragColor = vec4(color, 1.0); +} diff --git a/examples/models/resources/shaders/glsl100/cubemap.vs b/examples/models/resources/shaders/glsl100/cubemap.vs new file mode 100644 index 0000000..6f486fb --- /dev/null +++ b/examples/models/resources/shaders/glsl100/cubemap.vs @@ -0,0 +1,20 @@ +#version 100 + +// Input vertex attributes +attribute vec3 vertexPosition; + +// Input uniform values +uniform mat4 matProjection; +uniform mat4 matView; + +// Output vertex attributes (to fragment shader) +varying vec3 fragPosition; + +void main() +{ + // Calculate fragment position based on model transformations + fragPosition = vertexPosition; + + // Calculate final vertex position + gl_Position = matProjection*matView*vec4(vertexPosition, 1.0); +} diff --git a/examples/models/resources/shaders/glsl100/skybox.fs b/examples/models/resources/shaders/glsl100/skybox.fs new file mode 100644 index 0000000..0ea6876 --- /dev/null +++ b/examples/models/resources/shaders/glsl100/skybox.fs @@ -0,0 +1,31 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec3 fragPosition; + +// Input uniform values +uniform samplerCube environmentMap; +uniform bool vflipped; +uniform bool doGamma; + +void main() +{ + // Fetch color from texture map + vec4 texelColor = vec4(0.0); + + if (vflipped) texelColor = textureCube(environmentMap, vec3(fragPosition.x, -fragPosition.y, fragPosition.z)); + else texelColor = textureCube(environmentMap, fragPosition); + + vec3 color = vec3(texelColor.x, texelColor.y, texelColor.z); + + if (doGamma) // Apply gamma correction + { + color = color/(color + vec3(1.0)); + color = pow(color, vec3(1.0/2.2)); + } + + // Calculate final fragment color + gl_FragColor = vec4(color, 1.0); +} diff --git a/examples/models/resources/shaders/glsl100/skybox.vs b/examples/models/resources/shaders/glsl100/skybox.vs new file mode 100644 index 0000000..e440ace --- /dev/null +++ b/examples/models/resources/shaders/glsl100/skybox.vs @@ -0,0 +1,24 @@ +#version 100 + +// Input vertex attributes +attribute vec3 vertexPosition; + +// Input uniform values +uniform mat4 matProjection; +uniform mat4 matView; + +// Output vertex attributes (to fragment shader) +varying vec3 fragPosition; + +void main() +{ + // Calculate fragment position based on model transformations + fragPosition = vertexPosition; + + // Remove translation from the view matrix + mat4 rotView = mat4(mat3(matView)); + vec4 clipPos = matProjection*rotView*vec4(vertexPosition, 1.0); + + // Calculate final vertex position + gl_Position = clipPos; +} diff --git a/examples/models/resources/shaders/glsl330/cubemap.fs b/examples/models/resources/shaders/glsl330/cubemap.fs new file mode 100644 index 0000000..f59003f --- /dev/null +++ b/examples/models/resources/shaders/glsl330/cubemap.fs @@ -0,0 +1,30 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec3 fragPosition; + +// Input uniform values +uniform sampler2D equirectangularMap; + +// Output fragment color +out vec4 finalColor; + +vec2 SampleSphericalMap(vec3 v) +{ + vec2 uv = vec2(atan(v.z, v.x), asin(v.y)); + uv *= vec2(0.1591, 0.3183); + uv += 0.5; + return uv; +} + +void main() +{ + // Normalize local position + vec2 uv = SampleSphericalMap(normalize(fragPosition)); + + // Fetch color from texture map + vec3 color = texture(equirectangularMap, uv).rgb; + + // Calculate final fragment color + finalColor = vec4(color, 1.0); +} diff --git a/examples/models/resources/shaders/glsl330/cubemap.vs b/examples/models/resources/shaders/glsl330/cubemap.vs new file mode 100644 index 0000000..d71f808 --- /dev/null +++ b/examples/models/resources/shaders/glsl330/cubemap.vs @@ -0,0 +1,20 @@ +#version 330 + +// Input vertex attributes +in vec3 vertexPosition; + +// Input uniform values +uniform mat4 matProjection; +uniform mat4 matView; + +// Output vertex attributes (to fragment shader) +out vec3 fragPosition; + +void main() +{ + // Calculate fragment position based on model transformations + fragPosition = vertexPosition; + + // Calculate final vertex position + gl_Position = matProjection*matView*vec4(vertexPosition, 1.0); +} diff --git a/examples/models/resources/shaders/glsl330/skybox.fs b/examples/models/resources/shaders/glsl330/skybox.fs new file mode 100644 index 0000000..d71fef0 --- /dev/null +++ b/examples/models/resources/shaders/glsl330/skybox.fs @@ -0,0 +1,30 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec3 fragPosition; + +// Input uniform values +uniform samplerCube environmentMap; +uniform bool vflipped; +uniform bool doGamma; + +// Output fragment color +out vec4 finalColor; + +void main() +{ + // Fetch color from texture map + vec3 color = vec3(0.0); + + if (vflipped) color = texture(environmentMap, vec3(fragPosition.x, -fragPosition.y, fragPosition.z)).rgb; + else color = texture(environmentMap, fragPosition).rgb; + + if (doGamma)// Apply gamma correction + { + color = color/(color + vec3(1.0)); + color = pow(color, vec3(1.0/2.2)); + } + + // Calculate final fragment color + finalColor = vec4(color, 1.0); +} diff --git a/examples/models/resources/shaders/glsl330/skybox.vs b/examples/models/resources/shaders/glsl330/skybox.vs new file mode 100644 index 0000000..f41d469 --- /dev/null +++ b/examples/models/resources/shaders/glsl330/skybox.vs @@ -0,0 +1,24 @@ +#version 330 + +// Input vertex attributes +in vec3 vertexPosition; + +// Input uniform values +uniform mat4 matProjection; +uniform mat4 matView; + +// Output vertex attributes (to fragment shader) +out vec3 fragPosition; + +void main() +{ + // Calculate fragment position based on model transformations + fragPosition = vertexPosition; + + // Remove translation from the view matrix + mat4 rotView = mat4(mat3(matView)); + vec4 clipPos = matProjection*rotView*vec4(vertexPosition, 1.0); + + // Calculate final vertex position + gl_Position = clipPos; +} diff --git a/examples/models/resources/skybox.png b/examples/models/resources/skybox.png new file mode 100644 index 0000000..36a79b2 Binary files /dev/null and b/examples/models/resources/skybox.png differ diff --git a/examples/shaders/resources/LICENSE.md b/examples/shaders/resources/LICENSE.md new file mode 100644 index 0000000..96458ec --- /dev/null +++ b/examples/shaders/resources/LICENSE.md @@ -0,0 +1,11 @@ +| resource | author | licence | notes | +| :----------------- | :-----------: | :------ | :---- | +| models/barracks.obj,
models/barracks_diffuse.png | [Alberto Cano](https://www.artstation.com/albertocano) | [CC-BY-NC](https://creativecommons.org/licenses/by-nc/4.0/legalcode) | - | +| models/church.obj,
models/church_diffuse.png | [Alberto Cano](https://www.artstation.com/albertocano) | [CC-BY-NC](https://creativecommons.org/licenses/by-nc/4.0/legalcode) | - | +| models/watermill.obj,
models/watermill_diffuse.png | [Alberto Cano](https://www.artstation.com/albertocano) | [CC-BY-NC](https://creativecommons.org/licenses/by-nc/4.0/legalcode) | - | +| fudesumi.png | [Eiden Marsal](https://www.artstation.com/marshall_z) | [CC-BY-NC](https://creativecommons.org/licenses/by-nc/4.0/) | - | +| mask.png | [@raysan5](https://github.com/raysan5) | [CC0](https://creativecommons.org/publicdomain/zero/1.0/) | Made with [EffectTextureMaker](https://mebiusbox.github.io/contents/EffectTextureMaker/) | +| plasma.png | [@chriscamacho](https://github.com/chriscamacho) | [CC0](https://creativecommons.org/publicdomain/zero/1.0/) | - | +| raysan.png | [@raysan5](https://github.com/raysan5) | [CC0](https://creativecommons.org/publicdomain/zero/1.0/) | - | +| space.png | ❔ | ❔ | - | +| texel_checker.png | [@raysan5](https://github.com/raysan5) | [CC0](https://creativecommons.org/publicdomain/zero/1.0/) | Made with [UV Checker Map Maker](http://uvchecker.byvalle.com/) | diff --git a/examples/shaders/resources/fudesumi.png b/examples/shaders/resources/fudesumi.png new file mode 100644 index 0000000..1bf4ab7 Binary files /dev/null and b/examples/shaders/resources/fudesumi.png differ diff --git a/examples/shaders/resources/mask.png b/examples/shaders/resources/mask.png new file mode 100644 index 0000000..6fb5ded Binary files /dev/null and b/examples/shaders/resources/mask.png differ diff --git a/examples/shaders/resources/models/barracks.obj b/examples/shaders/resources/models/barracks.obj new file mode 100644 index 0000000..c462233 --- /dev/null +++ b/examples/shaders/resources/models/barracks.obj @@ -0,0 +1,22251 @@ +# (c) 2018 Medieval Assets Pack by Alberto Cano +# Licensed as Creative Commons Attribution-NonCommercial 4.0 + +# +# object barracks +# + +v -8.9771 5.2854 3.5742 +v -8.9771 -0.0497 3.5742 +v -8.9771 -0.0497 7.1735 +v -9.5268 8.3033 7.1735 +v -8.9770 5.2854 10.7728 +v -8.9770 -0.0497 10.7728 +v 4.0289 -0.0497 10.7728 +v 4.0289 5.2854 10.7728 +v 4.0289 5.2854 3.5742 +v 4.0289 -0.0497 3.5742 +v 4.0289 -0.0497 7.1735 +v 4.0289 8.3033 7.1735 +v -9.2884 4.0591 7.1735 +v -9.2884 4.0831 7.5774 +v -9.3565 4.9996 7.5774 +v -9.3565 5.2929 7.1735 +v -9.3222 3.9731 7.8933 +v -9.2295 3.9731 7.8933 +v -9.2295 4.1051 7.8933 +v -9.3222 4.1051 7.8933 +v -9.3902 5.0827 7.7890 +v -9.2975 5.0827 7.7890 +v -9.2975 5.5092 7.1735 +v -9.3902 5.5092 7.1735 +v -9.3222 4.1051 6.4537 +v -9.2295 4.1051 6.4537 +v -9.2295 3.9731 6.4537 +v -9.3222 3.9731 6.4537 +v -9.3222 3.9731 6.5581 +v -9.2295 3.9731 6.5581 +v -9.2295 3.9271 7.1735 +v -9.3222 3.9271 7.1735 +v -9.4239 3.9731 7.7890 +v -9.4239 4.1051 7.7890 +v -9.4239 4.0831 7.5774 +v -9.3902 4.9996 7.5774 +v -9.3902 5.2929 7.1735 +v -9.4239 4.1051 6.5581 +v -9.4239 3.9731 6.5581 +v -9.4239 4.0917 6.7696 +v -9.4239 3.9271 7.1735 +v -9.4239 4.0591 7.1735 +v -9.3565 4.9996 6.7696 +v -9.2884 4.0917 6.7696 +v -9.2975 5.0827 6.5581 +v -9.3902 5.0827 6.5581 +v -9.2295 3.9731 7.7890 +v -9.3222 3.9731 7.7890 +v -9.3902 4.9996 6.7696 +v -9.3222 4.0831 7.5774 +v -9.3222 4.0917 6.7696 +v -9.3222 4.0591 7.1735 +v -9.3222 4.1051 6.5581 +v -9.2295 4.1051 6.5581 +v -9.3222 4.1051 7.7890 +v -9.2295 4.1051 7.7890 +v -9.4239 3.9731 7.8933 +v -9.4239 4.1051 7.8933 +v -9.4239 4.1051 6.4537 +v -9.4239 3.9731 6.4537 +v -8.7325 0.3307 10.8308 +v -8.7325 0.3307 10.9332 +v 3.8501 0.3307 10.9332 +v 3.8501 0.3307 10.8308 +v -8.7325 -0.0497 10.9332 +v 3.8501 -0.0497 10.9332 +v -9.0350 0.3307 3.6224 +v -9.1375 0.3307 3.6224 +v -9.1375 0.3307 10.7569 +v -9.0350 0.3307 10.7569 +v -9.1375 -0.0497 3.6224 +v -9.1375 -0.0497 10.7569 +v 0.8922 7.8216 7.1735 +v 1.0445 5.3128 3.2348 +v -2.5490 5.2357 3.2348 +v -2.8536 7.3417 7.1735 +v -6.5995 7.8216 7.1735 +v -6.1424 5.0816 11.1122 +v -2.5490 5.0816 11.1122 +v 1.0316 4.9710 3.2348 +v -2.5747 4.8939 3.2348 +v -9.7359 5.0816 3.2348 +v -9.7875 4.7398 3.2348 +v -10.3453 8.4824 7.1735 +v -10.3453 8.8242 7.1735 +v -9.7359 5.0816 11.1122 +v -9.7359 4.7398 11.1122 +v 4.6380 5.0816 11.1122 +v 4.6380 4.7398 11.1122 +v 4.6380 8.4824 7.1735 +v 4.6380 8.8242 7.1735 +v 0.8922 7.4798 7.1735 +v -2.8536 6.9999 7.1735 +v -6.1424 5.1587 3.2348 +v 4.6380 5.3898 3.2348 +v 1.0445 5.0816 11.1122 +v -6.1811 4.8169 3.2348 +v 4.6380 5.0480 3.2348 +v 1.0445 4.7398 11.1122 +v -6.1424 4.7398 11.1122 +v -6.5995 7.4798 7.1735 +v -11.3392 8.6350 7.5749 +v -11.3392 8.6350 6.7721 +v -11.3392 7.8323 6.7721 +v -11.3392 7.8323 7.5749 +v -10.3540 7.4474 6.8345 +v -10.3540 8.1255 6.8345 +v -9.3564 7.9260 6.8671 +v -9.3564 7.3131 6.8671 +v -9.3564 7.3131 7.4800 +v -10.3540 7.4474 7.5126 +v -9.3564 7.9260 7.4800 +v -10.3540 8.1255 7.5126 +v 4.0029 0.3307 10.4457 +v 4.1053 0.3307 10.4457 +v 4.1053 0.3307 7.9969 +v 4.0029 0.3307 7.9969 +v 4.1053 -0.0497 10.4457 +v 4.1053 -0.0497 7.9969 +v -10.2556 8.5899 7.7509 +v -10.2924 8.4159 7.7509 +v -9.2822 8.2024 7.7509 +v -9.2454 8.3764 7.7509 +v -9.2064 8.5611 7.2760 +v -9.1696 8.7351 7.2760 +v -10.1798 8.9486 7.2760 +v -10.2166 8.7745 7.2760 +v -9.2039 8.5728 7.1735 +v -9.1672 8.7468 7.1735 +v -10.1773 8.9603 7.1735 +v -10.2141 8.7863 7.1735 +v -9.2822 8.2024 6.5962 +v -10.2924 8.4159 6.5962 +v -10.2556 8.5899 6.5962 +v -9.2454 8.3764 6.5962 +v -9.2064 8.5611 7.0711 +v -9.1696 8.7351 7.0711 +v -10.1798 8.9486 7.0711 +v -10.2166 8.7745 7.0711 +v -9.3847 8.1121 7.7509 +v -8.3745 7.8986 7.7509 +v -8.3377 8.0727 7.7509 +v -9.3479 8.2862 7.7509 +v -8.2619 8.4314 7.2760 +v -9.2721 8.6448 7.2760 +v -8.2987 8.2573 7.2760 +v -8.2594 8.4431 7.1735 +v -9.2696 8.6566 7.1735 +v -8.2962 8.2690 7.1735 +v -8.3377 8.0727 6.5962 +v -8.3745 7.8986 6.5962 +v -9.3847 8.1121 6.5962 +v -9.3479 8.2862 6.5962 +v -8.2619 8.4314 7.0711 +v -9.2721 8.6448 7.0711 +v -8.2987 8.2573 7.0711 +v -8.5801 7.8589 7.7509 +v -7.5630 7.6811 7.7509 +v -7.5324 7.8564 7.7509 +v -8.5495 8.0341 7.7509 +v -7.4693 8.2175 7.2760 +v -8.4864 8.3952 7.2760 +v -7.4999 8.0423 7.2760 +v -7.4672 8.2293 7.1735 +v -8.4843 8.4070 7.1735 +v -7.4978 8.0541 7.1735 +v -7.5324 7.8564 6.5962 +v -7.5630 7.6811 6.5962 +v -8.5801 7.8589 6.5962 +v -8.5495 8.0341 6.5962 +v -7.4693 8.2175 7.0711 +v -8.4864 8.3952 7.0711 +v -7.4999 8.0423 7.0711 +v -7.6752 7.6154 7.7509 +v -6.6503 7.4907 7.7509 +v -6.6288 7.6673 7.7509 +v -7.6538 7.7920 7.7509 +v -6.5846 8.0312 7.2760 +v -7.6095 8.1559 7.2760 +v -6.6061 7.8546 7.2760 +v -6.5831 8.0431 7.1735 +v -7.6081 8.1678 7.1735 +v -6.6046 7.8665 7.1735 +v -6.6288 7.6673 6.5962 +v -6.6503 7.4907 6.5962 +v -7.6752 7.6154 6.5962 +v -7.6538 7.7920 6.5962 +v -6.5846 8.0312 7.0711 +v -7.6095 8.1559 7.0711 +v -6.6061 7.8546 7.0711 +v -6.7532 7.4096 7.7509 +v -5.7283 7.2850 7.7509 +v -5.7068 7.4616 7.7509 +v -6.7318 7.5862 7.7509 +v -5.6626 7.8255 7.2760 +v -6.6875 7.9502 7.2760 +v -5.6840 7.6489 7.2760 +v -5.6611 7.8374 7.1735 +v -6.6861 7.9620 7.1735 +v -5.6826 7.6608 7.1735 +v -5.7068 7.4616 6.5962 +v -5.7283 7.2850 6.5962 +v -6.7532 7.4096 6.5962 +v -6.7318 7.5862 6.5962 +v -5.6626 7.8255 7.0711 +v -6.6875 7.9502 7.0711 +v -5.6840 7.6489 7.0711 +v -5.7708 7.2429 7.7509 +v -4.7459 7.1183 7.7509 +v -4.7244 7.2949 7.7509 +v -5.7493 7.4196 7.7509 +v -4.6801 7.6588 7.2760 +v -5.7051 7.7835 7.2760 +v -4.7016 7.4822 7.2760 +v -4.6787 7.6707 7.1735 +v -5.7036 7.7954 7.1735 +v -4.7002 7.4941 7.1735 +v -4.7244 7.2949 6.5962 +v -4.7459 7.1183 6.5962 +v -5.7708 7.2429 6.5962 +v -5.7493 7.4196 6.5962 +v -4.6801 7.6588 7.0711 +v -5.7051 7.7835 7.0711 +v -4.7016 7.4822 7.0711 +v -5.0398 7.1215 7.7509 +v -4.0088 7.0662 7.7509 +v -3.9993 7.2439 7.7509 +v -5.0303 7.2991 7.7509 +v -3.9796 7.6099 7.2760 +v -5.0107 7.6652 7.2760 +v -3.9892 7.4323 7.2760 +v -3.9790 7.6219 7.1735 +v -5.0100 7.6771 7.1735 +v -3.9885 7.4443 7.1735 +v -3.9993 7.2439 6.5962 +v -4.0088 7.0662 6.5962 +v -5.0398 7.1215 6.5962 +v -5.0303 7.2991 6.5962 +v -3.9796 7.6099 7.0711 +v -5.0107 7.6652 7.0711 +v -3.9892 7.4323 7.0711 +v 1.5002 7.7939 7.7509 +v 2.5251 7.9185 7.7508 +v 2.5036 8.0951 7.7508 +v 1.4787 7.9704 7.7509 +v 1.4344 8.3344 7.2760 +v 1.4559 8.1578 7.2760 +v 2.4594 8.4590 7.2760 +v 2.4809 8.2824 7.2760 +v 1.4545 8.1696 7.1735 +v 1.4330 8.3463 7.1735 +v 2.4579 8.4709 7.1735 +v 2.4794 8.2943 7.1735 +v 2.5036 8.0951 6.5962 +v 2.5251 7.9185 6.5962 +v 1.5002 7.7939 6.5962 +v 1.4787 7.9704 6.5962 +v 1.4559 8.1578 7.0711 +v 1.4344 8.3344 7.0711 +v 2.4594 8.4590 7.0711 +v 2.4809 8.2824 7.0711 +v 0.5583 7.8497 7.7509 +v 0.5643 7.6719 7.7509 +v 1.5962 7.7068 7.7509 +v 1.5902 7.8846 7.7509 +v 1.5778 8.2509 7.2760 +v 0.5459 8.2161 7.2760 +v 0.5519 8.0383 7.2760 +v 1.5774 8.2629 7.1735 +v 0.5455 8.2281 7.1735 +v 0.5515 8.0503 7.1735 +v 1.5962 7.7068 6.5962 +v 0.5643 7.6719 6.5962 +v 0.5583 7.8498 6.5962 +v 1.5902 7.8846 6.5962 +v 0.5459 8.2161 7.0711 +v 1.5778 8.2509 7.0711 +v 0.5519 8.0383 7.0711 +v -0.4450 7.6654 7.7509 +v -0.4298 7.4881 7.7509 +v 0.5989 7.5765 7.7509 +v 0.5837 7.7538 7.7509 +v 0.5523 8.1190 7.2760 +v -0.4764 8.0306 7.2760 +v -0.4612 7.8534 7.2760 +v 0.5513 8.1310 7.1735 +v -0.4774 8.0426 7.1735 +v -0.4622 7.8653 7.1735 +v 0.5989 7.5765 6.5962 +v -0.4298 7.4881 6.5962 +v -0.4450 7.6654 6.5962 +v 0.5837 7.7538 6.5962 +v -0.4764 8.0306 7.0711 +v 0.5523 8.1190 7.0711 +v -0.4612 7.8534 7.0711 +v -1.3304 7.4633 7.7509 +v -1.3090 7.2867 7.7509 +v -0.2840 7.4113 7.7509 +v -0.3055 7.5879 7.7509 +v -0.3498 7.9518 7.2760 +v -1.3747 7.8272 7.2760 +v -1.3532 7.6506 7.2760 +v -0.3512 7.9637 7.1735 +v -1.3761 7.8391 7.1735 +v -1.3547 7.6625 7.1735 +v -0.2840 7.4113 6.5962 +v -1.3090 7.2867 6.5962 +v -1.3304 7.4633 6.5962 +v -0.3055 7.5879 6.5962 +v -1.3747 7.8272 7.0711 +v -0.3498 7.9518 7.0711 +v -1.3532 7.6506 7.0711 +v -2.2525 7.2647 7.7509 +v -2.2310 7.0881 7.7509 +v -1.2061 7.2127 7.7509 +v -1.2275 7.3893 7.7509 +v -1.2718 7.7532 7.2760 +v -2.2967 7.6286 7.2760 +v -2.2752 7.4520 7.2760 +v -1.2732 7.7651 7.1735 +v -2.2982 7.6405 7.1735 +v -2.2767 7.4639 7.1735 +v -1.2061 7.2127 6.5962 +v -2.2310 7.0881 6.5962 +v -2.2525 7.2647 6.5962 +v -1.2275 7.3893 6.5962 +v -2.2967 7.6286 7.0711 +v -1.2718 7.7532 7.0711 +v -2.2752 7.4520 7.0711 +v -3.2517 7.1204 7.7509 +v -3.2457 6.9426 7.7509 +v -2.2138 6.9774 7.7509 +v -2.2198 7.1552 7.7509 +v -2.2321 7.5216 7.2760 +v -3.2640 7.4868 7.2760 +v -3.2580 7.3090 7.2760 +v -2.2325 7.5336 7.1735 +v -3.2644 7.4988 7.1735 +v -3.2584 7.3210 7.1735 +v -2.2138 6.9774 6.5962 +v -3.2457 6.9426 6.5962 +v -3.2517 7.1204 6.5962 +v -2.2198 7.1552 6.5962 +v -3.2640 7.4868 7.0711 +v -2.2321 7.5216 7.0711 +v -3.2580 7.3090 7.0711 +v -4.0502 7.1836 7.7509 +v -4.0717 7.0070 7.7509 +v -3.0468 6.8823 7.7509 +v -3.0253 7.0589 7.7509 +v -2.9810 7.4229 7.2760 +v -4.0060 7.5475 7.2760 +v -4.0275 7.3709 7.2760 +v -2.9796 7.4347 7.1735 +v -4.0045 7.5594 7.1735 +v -4.0260 7.3828 7.1735 +v -3.0468 6.8823 6.5962 +v -4.0717 7.0070 6.5962 +v -4.0502 7.1836 6.5962 +v -3.0253 7.0589 6.5962 +v -4.0060 7.5475 7.0711 +v -2.9810 7.4229 7.0711 +v -4.0275 7.3709 7.0711 +v 2.5178 8.0423 7.7509 +v 3.5427 8.1670 7.7508 +v 3.5213 8.3436 7.7508 +v 2.4963 8.2189 7.7509 +v 2.4521 8.5829 7.2760 +v 2.4735 8.4063 7.2760 +v 3.4770 8.7075 7.2760 +v 3.4985 8.5309 7.2760 +v 2.4721 8.4181 7.1735 +v 2.4506 8.5947 7.1735 +v 3.4756 8.7194 7.1735 +v 3.4970 8.5428 7.1735 +v 3.5213 8.3436 6.5962 +v 3.5427 8.1670 6.5962 +v 2.5178 8.0423 6.5962 +v 2.4963 8.2189 6.5962 +v 2.4735 8.4063 7.0711 +v 2.4521 8.5829 7.0711 +v 3.4770 8.7075 7.0711 +v 3.4985 8.5309 7.0711 +v 3.3558 8.2956 7.7509 +v 4.3808 8.4202 7.7508 +v 4.3593 8.5968 7.7508 +v 3.3344 8.4722 7.7509 +v 3.2901 8.8361 7.2760 +v 3.3116 8.6595 7.2760 +v 4.3150 8.9607 7.2760 +v 4.3365 8.7841 7.2760 +v 3.3101 8.6714 7.1735 +v 3.2887 8.8480 7.1735 +v 4.3136 8.9726 7.1735 +v 4.3351 8.7960 7.1735 +v 4.3593 8.5968 6.5962 +v 4.3808 8.4202 6.5962 +v 3.3558 8.2956 6.5962 +v 3.3344 8.4722 6.5962 +v 3.3116 8.6595 7.0711 +v 3.2901 8.8361 7.0711 +v 4.3150 8.9607 7.0711 +v 4.3365 8.7841 7.0711 +v -6.1361 2.4706 3.5553 +v -6.5400 2.4946 3.5553 +v -6.5299 3.4112 3.5442 +v -6.1261 3.7044 3.5442 +v -6.8559 2.3847 3.5216 +v -6.8559 2.3847 3.6143 +v -6.8559 2.5166 3.6143 +v -6.8559 2.5166 3.5216 +v -6.7415 3.4943 3.5105 +v -6.7415 3.4943 3.6032 +v -6.1261 3.9208 3.6032 +v -6.1261 3.9208 3.5105 +v -5.4163 2.5166 3.5216 +v -5.4163 2.5166 3.6143 +v -5.4163 2.3847 3.6143 +v -5.4163 2.3847 3.5216 +v -5.5207 2.3847 3.5216 +v -5.5207 2.3847 3.6143 +v -6.1361 2.3387 3.6143 +v -6.1361 2.3387 3.5216 +v -6.7515 2.3847 3.4199 +v -6.7515 2.5166 3.4199 +v -6.5400 2.4946 3.4199 +v -6.5300 3.4112 3.5105 +v -6.1261 3.7044 3.5105 +v -5.5207 2.5166 3.4199 +v -5.5207 2.3847 3.4199 +v -5.7322 2.5032 3.4199 +v -6.1361 2.3387 3.4199 +v -6.1361 2.4706 3.4199 +v -5.7222 3.4112 3.5442 +v -5.7322 2.5032 3.5553 +v -5.5106 3.4943 3.6032 +v -5.5106 3.4943 3.5105 +v -6.7516 2.3847 3.6143 +v -6.7515 2.3847 3.5216 +v -5.7222 3.4112 3.5105 +v -6.5400 2.4946 3.5216 +v -5.7322 2.5032 3.5216 +v -6.1361 2.4706 3.5216 +v -5.5207 2.5166 3.5216 +v -5.5207 2.5166 3.6143 +v -6.7515 2.5166 3.5216 +v -6.7516 2.5166 3.6143 +v -6.8559 2.3847 3.4199 +v -6.8559 2.5166 3.4199 +v -5.4164 2.5166 3.4199 +v -5.4164 2.3847 3.4199 +v 1.0773 2.4706 3.5553 +v 0.6735 2.4946 3.5553 +v 0.6835 3.4112 3.5442 +v 1.0874 3.7044 3.5442 +v 0.3576 2.3847 3.5216 +v 0.3576 2.3847 3.6143 +v 0.3576 2.5166 3.6143 +v 0.3576 2.5166 3.5216 +v 0.4719 3.4943 3.5105 +v 0.4720 3.4943 3.6032 +v 1.0874 3.9208 3.6032 +v 1.0874 3.9208 3.5105 +v 1.7971 2.5166 3.5216 +v 1.7971 2.5166 3.6143 +v 1.7971 2.3847 3.6143 +v 1.7971 2.3847 3.5216 +v 1.6928 2.3847 3.5216 +v 1.6928 2.3847 3.6143 +v 1.0774 2.3387 3.6143 +v 1.0774 2.3387 3.5216 +v 0.4619 2.3847 3.4199 +v 0.4619 2.5166 3.4199 +v 0.6735 2.4946 3.4199 +v 0.6835 3.4112 3.5105 +v 1.0874 3.7044 3.5105 +v 1.6928 2.5166 3.4199 +v 1.6928 2.3847 3.4199 +v 1.4812 2.5032 3.4199 +v 1.0774 2.3387 3.4199 +v 1.0774 2.4706 3.4199 +v 1.4913 3.4112 3.5442 +v 1.4812 2.5032 3.5553 +v 1.7028 3.4943 3.6032 +v 1.7028 3.4943 3.5105 +v 0.4619 2.3847 3.6143 +v 0.4619 2.3847 3.5216 +v 1.4913 3.4112 3.5105 +v 0.6735 2.4946 3.5216 +v 1.4812 2.5032 3.5216 +v 1.0774 2.4706 3.5216 +v 1.6928 2.5166 3.5216 +v 1.6928 2.5166 3.6143 +v 0.4619 2.5166 3.5216 +v 0.4619 2.5166 3.6143 +v 0.3576 2.3847 3.4199 +v 0.3576 2.5166 3.4199 +v 1.7971 2.5166 3.4199 +v 1.7971 2.3847 3.4199 +v 11.6321 5.5867 2.0069 +v 11.4477 5.5867 0.6063 +v 10.0464 4.2732 0.3535 +v 10.0937 4.2732 2.8951 +v 12.7529 5.5867 2.8669 +v 12.2931 4.2732 4.5828 +v 14.1534 5.5867 2.6825 +v 15.0416 4.2732 4.2209 +v 15.0134 5.5867 1.5617 +v 16.7293 4.2732 2.0215 +v 14.8290 5.5867 0.1612 +v 16.3674 4.2732 -0.7270 +v 13.7083 5.5867 -0.6988 +v 14.1680 4.2732 -2.4147 +v 12.3077 5.5867 -0.5144 +v 11.7340 4.2732 -1.8459 +v 13.2306 7.5569 1.0840 +v 10.0464 3.6592 0.3535 +v 10.0937 3.6592 2.8951 +v 12.2931 3.6592 4.5828 +v 15.0416 3.6592 4.2209 +v 16.7293 3.6592 2.0215 +v 16.3674 3.6592 -0.7270 +v 14.1680 3.6592 -2.4147 +v 11.7340 3.6592 -1.8459 +v 10.4802 3.0597 -1.8219 +v 11.4558 3.7400 -1.1388 +v 11.8295 3.7400 -1.6724 +v 10.8539 3.0597 -2.3556 +v 9.5046 2.8306 -2.5051 +v 9.8782 2.8306 -3.0387 +v 8.5289 3.2758 -3.1882 +v 8.9026 3.2758 -3.7219 +v 8.5036 2.6341 -3.2059 +v 8.8772 2.6341 -3.7396 +v 10.1065 3.0597 -1.2883 +v 11.0822 3.7400 -0.6051 +v 9.1309 2.8306 -1.9714 +v 8.1552 3.2758 -2.6546 +v 8.1299 2.6341 -2.6723 +v 9.7329 3.0597 -0.7546 +v 10.7085 3.7400 -0.0715 +v 8.7572 2.8306 -1.4378 +v 7.7816 3.2759 -2.1209 +v 7.7562 2.6341 -2.1386 +v 9.3592 3.0597 -0.2210 +v 10.3348 3.7400 0.4622 +v 8.3836 2.8306 -0.9041 +v 7.4079 3.2758 -1.5873 +v 7.3826 2.6341 -1.6050 +v 8.9361 3.5898 -3.5906 +v 9.1688 3.5898 -3.4277 +v 9.2794 3.5898 -3.5855 +v 9.0466 3.5898 -3.7485 +v 9.3343 1.7644 -3.4331 +v 9.3018 -0.0611 -3.5852 +v 9.0386 -0.0611 -3.7695 +v 9.1687 1.7644 -3.5491 +v 8.9136 -0.0611 -3.5910 +v 9.0900 1.7644 -3.4367 +v 9.1768 -0.0611 -3.4067 +v 9.2556 1.7644 -3.3207 +v 7.5317 3.5898 -1.5850 +v 7.4211 3.5898 -1.4271 +v 7.6539 3.5898 -1.2641 +v 7.7644 3.5898 -1.4220 +v 7.8160 1.7644 -1.2646 +v 7.6503 1.7644 -1.3806 +v 7.3987 -0.0611 -1.4275 +v 7.6619 -0.0611 -1.2432 +v 7.7290 1.7644 -1.4930 +v 7.5237 -0.0611 -1.6059 +v 7.8946 1.7644 -1.3770 +v 7.7869 -0.0611 -1.4217 +v 9.8150 0.4345 3.0119 +v 9.5352 -0.0497 3.1542 +v 12.0931 -0.0497 5.1170 +v 12.1868 0.4345 4.8318 +v 10.2280 1.4030 2.8047 +v 12.3265 1.4030 4.4150 +v 10.3166 2.8558 2.7664 +v 12.3597 2.8558 4.3342 +v 10.3166 3.8243 2.7664 +v 12.3597 3.8243 4.3342 +v 10.3166 4.3085 2.7664 +v 12.3597 4.3085 4.3342 +v 10.6981 0.4345 -0.6231 +v 10.6263 -0.0497 -0.6781 +v 10.8311 1.4030 -0.5770 +v 10.8994 2.8558 -0.6186 +v 10.9903 3.8243 -0.7370 +v 11.0670 4.3085 -0.7188 +v 14.2087 0.4345 -2.7141 +v 14.2737 -0.0497 -3.0212 +v 11.0309 -0.0497 -1.2054 +v 11.1026 0.4345 -1.1503 +v 14.1155 1.4030 -2.2615 +v 11.1816 1.4030 -1.0338 +v 14.1014 2.8558 -2.1661 +v 11.1591 2.8558 -0.9570 +v 14.1014 3.8243 -2.1661 +v 11.0683 3.8243 -0.8386 +v 14.1014 4.3085 -2.1661 +v 16.5805 0.4345 -0.8942 +v 16.8317 -0.0497 -1.0584 +v 16.2140 1.4030 -0.6513 +v 16.1445 2.8558 -0.5983 +v 16.1445 3.8243 -0.5983 +v 16.1445 4.3085 -0.5983 +v 16.9707 0.4345 2.0698 +v 17.2525 -0.0497 2.1382 +v 16.5592 1.4030 1.9712 +v 16.4807 2.8558 1.9549 +v 16.4807 3.8243 1.9549 +v 16.4807 4.3085 1.9549 +v 15.1508 0.4345 4.4416 +v 15.2897 -0.0497 4.6961 +v 14.9490 1.4030 4.0697 +v 14.9129 2.8558 3.9980 +v 14.9129 3.8243 3.9980 +v 14.9129 4.3085 3.9980 +v 3.7753 0.3307 3.5742 +v 3.7753 0.3307 3.4718 +v -0.7192 0.3307 3.4718 +v -0.7192 0.3307 3.5742 +v -8.5752 0.3307 3.4718 +v -8.5752 0.3307 3.5742 +v -4.0878 0.3307 3.5742 +v -4.0878 0.3307 3.4718 +v 3.7753 -0.0497 3.4718 +v -0.7192 -0.0497 3.4718 +v -8.5752 -0.0497 3.4718 +v -4.0878 -0.0497 3.4718 +v -0.6234 3.0645 3.1779 +v -4.1805 3.0645 3.1779 +v -4.1805 3.0645 3.5523 +v -0.6234 3.0645 3.5523 +v -4.1805 -0.0767 3.1779 +v -4.1805 -0.0767 3.5523 +v -0.6234 -0.0767 3.5523 +v -0.6234 -0.0767 3.1779 +v -3.7941 2.7616 3.1779 +v -3.7941 -0.0767 3.1779 +v -1.0098 2.7616 3.1779 +v -1.0098 -0.0767 3.1779 +v -3.7941 2.7616 3.5523 +v -3.7941 -0.0767 3.5523 +v -1.0098 2.7616 3.5523 +v -1.0098 -0.0767 3.5523 +v -4.7283 2.7086 0.8535 +v -4.8864 2.0913 1.4841 +v -4.9701 2.9149 1.4841 +v -4.7752 3.3618 0.6425 +v -4.8307 2.0913 1.4841 +v -4.6726 2.7086 0.8535 +v -4.7194 3.3618 2.3257 +v -4.7752 3.3618 2.3257 +v -4.7283 2.7086 2.1147 +v -4.6726 2.7086 2.1147 +v -4.9144 3.7385 1.4841 +v -4.9701 3.7385 1.4841 +v -4.8607 3.9096 2.1147 +v -4.8049 3.9096 2.1147 +v -4.7195 3.3618 0.6425 +v -4.8607 3.9096 0.8535 +v -4.8049 3.9096 0.8535 +v -4.4872 2.7086 2.1147 +v -4.3292 2.0913 1.4841 +v -4.2455 2.9149 1.4841 +v -4.4404 3.3618 2.3257 +v -4.3849 2.0913 1.4841 +v -4.5429 2.7086 2.1147 +v -4.4961 3.3618 0.6425 +v -4.4404 3.3618 0.6425 +v -4.4872 2.7086 0.8535 +v -4.5429 2.7086 0.8535 +v -4.3012 3.7385 1.4841 +v -4.2455 3.7385 1.4841 +v -4.3549 3.9096 0.8535 +v -4.4106 3.9096 0.8535 +v -4.4961 3.3618 2.3257 +v -4.3549 3.9096 2.1147 +v -4.4106 3.9096 2.1147 +v -4.8751 4.9001 3.5979 +v -4.8751 4.6254 2.3101 +v -4.8751 4.2747 2.3101 +v -4.8751 4.5494 3.5979 +v -4.3656 4.9001 3.5979 +v -4.3656 4.6254 2.3101 +v -4.3656 4.5494 3.5979 +v -4.3656 4.2747 2.3101 +v -4.8751 4.5494 1.0224 +v -4.3656 4.5494 1.0224 +v -4.8751 4.9001 1.0224 +v -4.3656 4.9001 1.0224 +v -4.8480 3.6715 1.2143 +v -4.8790 4.8495 1.2143 +v -4.9390 4.8495 1.1797 +v -4.9080 3.6715 1.1797 +v -4.8480 3.6715 1.1450 +v -4.8790 4.8495 1.1450 +v -4.7435 4.8672 1.1450 +v -4.7435 4.9272 1.1797 +v -4.7435 4.8672 1.2143 +v -4.8290 4.8723 1.2143 +v -4.8590 4.9023 1.1797 +v -4.8290 4.8723 1.1450 +v -4.3907 3.5246 1.8443 +v -4.3596 4.7026 1.8443 +v -4.2996 4.7026 1.8790 +v -4.3306 3.5246 1.8790 +v -4.3907 3.5246 1.9136 +v -4.3596 4.7026 1.9136 +v -4.4951 4.7203 1.9136 +v -4.4951 4.7803 1.8790 +v -4.4951 4.7203 1.8443 +v -4.4096 4.7254 1.8443 +v -4.3796 4.7554 1.8790 +v -4.4096 4.7254 1.9136 +v 7.6091 11.2223 7.4926 +v 7.6091 11.2223 3.6675 +v 4.2986 11.2223 3.6675 +v 4.2986 11.2223 7.4926 +v 4.2039 11.6538 3.3840 +v 7.7038 11.6676 3.3840 +v 7.9561 11.4163 3.3840 +v 3.9517 11.4005 3.3840 +v 3.9517 -0.0497 3.3840 +v 7.9561 -0.0497 3.3840 +v 3.9517 11.6528 7.5239 +v 3.9517 11.6528 3.6363 +v 3.9517 11.4005 7.7761 +v 3.9517 -0.0497 7.7761 +v 7.7038 11.6676 7.7761 +v 4.2039 11.6538 7.7761 +v 7.9561 11.4163 7.7761 +v 7.9561 -0.0497 7.7761 +v 7.9561 11.6686 3.6363 +v 7.9561 11.6686 7.5239 +v 4.2384 12.2911 3.6246 +v 4.2975 12.2911 3.6675 +v 7.6079 12.3069 3.6675 +v 7.6647 12.3069 3.6201 +v 7.7027 12.3059 3.3840 +v 4.2028 12.2921 3.3840 +v 4.2411 12.2911 7.5354 +v 4.2975 12.2911 7.4926 +v 3.9505 12.2911 3.6363 +v 3.9505 12.2911 7.5239 +v 7.6834 12.3069 7.5403 +v 7.6079 12.3069 7.4926 +v 4.2028 12.2921 7.7761 +v 7.7027 12.3059 7.7761 +v 7.9549 12.3069 7.5239 +v 7.9549 12.3069 3.6363 +v 4.2986 11.6528 3.6675 +v 7.6091 11.6686 3.6675 +v 7.6091 11.6686 7.4926 +v 4.2986 11.6528 7.4926 +v 5.9539 11.1742 2.7345 +v 8.5221 11.1742 2.7345 +v 8.5221 10.4250 2.7345 +v 5.9539 10.2869 2.7345 +v 3.3856 11.1742 5.5801 +v 3.3856 11.1742 2.7345 +v 3.3856 10.4250 2.7345 +v 3.3856 10.2869 5.5801 +v 5.9539 11.1742 8.4256 +v 3.3856 11.1742 8.4256 +v 3.3856 10.4250 8.4256 +v 5.9539 10.2869 8.4256 +v 8.5221 11.1742 5.5801 +v 8.5221 11.1742 8.4256 +v 8.5221 10.4250 8.4256 +v 8.5221 10.2869 5.5801 +v 7.9561 10.4250 3.3840 +v 7.9561 10.2869 5.5801 +v 7.9561 10.4250 7.7761 +v 5.9539 10.2869 7.7761 +v 3.9516 10.4250 7.7761 +v 3.9516 10.2869 5.5801 +v 3.9516 10.4250 3.3840 +v 5.9539 10.2869 3.3840 +v 7.9561 11.1742 3.3840 +v 5.9539 11.1742 3.3840 +v 3.9516 11.1742 3.3840 +v 3.9516 11.1742 5.5801 +v 3.9516 11.1742 7.7761 +v 5.9539 11.1742 7.7761 +v 7.9561 11.1742 7.7761 +v 7.9561 11.1742 5.5801 +v 5.9538 2.4706 3.3529 +v 5.5500 2.4946 3.3529 +v 5.5600 3.4112 3.3417 +v 5.9639 3.7044 3.3417 +v 5.2341 2.3847 3.3191 +v 5.2341 2.3847 3.4119 +v 5.2341 2.5166 3.4119 +v 5.2341 2.5166 3.3191 +v 5.3484 3.4943 3.3080 +v 5.3484 3.4943 3.4007 +v 5.9638 3.9208 3.4007 +v 5.9638 3.9208 3.3080 +v 6.6736 2.5166 3.3191 +v 6.6736 2.5166 3.4118 +v 6.6736 2.3847 3.4118 +v 6.6736 2.3847 3.3191 +v 6.5693 2.3847 3.3191 +v 6.5693 2.3847 3.4118 +v 5.9538 2.3387 3.4119 +v 5.9538 2.3387 3.3191 +v 5.3384 2.3847 3.2174 +v 5.3384 2.5166 3.2174 +v 5.5500 2.4946 3.2174 +v 5.5600 3.4112 3.3080 +v 5.9638 3.7044 3.3080 +v 6.5693 2.5166 3.2174 +v 6.5693 2.3847 3.2174 +v 6.3577 2.5032 3.2174 +v 5.9538 2.3387 3.2174 +v 5.9538 2.4706 3.2174 +v 6.3678 3.4112 3.3417 +v 6.3577 2.5032 3.3529 +v 6.5793 3.4943 3.4007 +v 6.5793 3.4943 3.3080 +v 5.3384 2.3847 3.4119 +v 5.3384 2.3847 3.3191 +v 6.3677 3.4112 3.3080 +v 5.5500 2.4946 3.3191 +v 6.3577 2.5032 3.3191 +v 5.9538 2.4706 3.3191 +v 6.5693 2.5166 3.3191 +v 6.5693 2.5166 3.4118 +v 5.3384 2.5166 3.3191 +v 5.3384 2.5166 3.4119 +v 5.2341 2.3847 3.2174 +v 5.2341 2.5166 3.2174 +v 6.6736 2.5166 3.2175 +v 6.6736 2.3847 3.2175 +v 7.7029 12.7510 3.3802 +v 7.6649 12.7520 3.6163 +v 7.9551 12.7520 3.6325 +v 3.9507 12.7362 3.6400 +v 4.2385 12.7362 3.6284 +v 4.2029 12.7372 3.3877 +v 4.2029 12.7372 7.7724 +v 4.2412 12.7362 7.5316 +v 3.9507 12.7362 7.5201 +v 7.9552 12.7520 7.5277 +v 7.6836 12.7520 7.5441 +v 7.7029 12.7510 7.7800 +v 5.9539 5.6553 2.7345 +v 8.5221 5.6552 2.7345 +v 8.5221 4.9060 2.7345 +v 5.9539 4.7680 2.7345 +v 3.3856 5.6553 5.5801 +v 3.3856 5.6552 2.7345 +v 3.3856 4.9060 2.7345 +v 3.3856 4.7680 5.5801 +v 5.9539 5.6552 8.4256 +v 3.3856 5.6552 8.4256 +v 3.3856 4.9060 8.4256 +v 5.9539 4.7680 8.4256 +v 8.5221 5.6553 5.5801 +v 8.5221 5.6552 8.4256 +v 8.5221 4.9060 8.4256 +v 8.5221 4.7680 5.5801 +v 7.9561 4.9060 3.3840 +v 7.9561 4.7680 5.5801 +v 7.9561 4.9060 7.7761 +v 5.9539 4.7680 7.7761 +v 3.9516 4.9060 7.7761 +v 3.9516 4.7680 5.5801 +v 3.9516 4.9060 3.3840 +v 5.9539 4.7680 3.3840 +v 7.9561 5.6552 3.3840 +v 5.9539 5.6553 3.3840 +v 3.9516 5.6552 3.3840 +v 3.9516 5.6553 5.5801 +v 3.9516 5.6552 7.7761 +v 5.9539 5.6552 7.7761 +v 7.9561 5.6552 7.7761 +v 7.9561 5.6553 5.5801 +v 3.8492 7.9916 3.3442 +v 4.2778 7.9916 3.2874 +v 4.3820 5.5057 3.0843 +v 3.6056 5.5057 3.0843 +v 4.3820 10.4775 3.0843 +v 3.6056 10.4775 3.0843 +v 3.6056 5.5057 3.8698 +v 3.8492 7.9916 3.7879 +v 3.6056 11.0073 3.8698 +v 4.3820 5.5057 3.8698 +v 4.2778 7.9916 3.7311 +v 4.3820 11.0073 3.8698 +v 8.0585 8.0320 3.3442 +v 8.3022 5.5461 3.0843 +v 7.5257 5.5461 3.0843 +v 7.6299 8.0320 3.2874 +v 7.5257 10.5178 3.0843 +v 8.3022 10.5178 3.0843 +v 8.0585 8.0320 3.7879 +v 8.3022 5.5461 3.8698 +v 8.3022 11.0477 3.8698 +v 7.6299 8.0320 3.7311 +v 7.5257 5.5461 3.8698 +v 7.5257 11.0477 3.8698 +v 8.0585 2.4361 3.3442 +v 8.3022 -0.0497 3.0843 +v 7.5257 -0.0497 3.0843 +v 7.6299 2.4361 3.2874 +v 7.5257 4.9220 3.0843 +v 8.3022 4.9220 3.0843 +v 8.0585 2.4361 3.7879 +v 8.3022 -0.0497 3.8698 +v 8.3022 5.4519 3.8698 +v 7.6299 2.4361 3.7311 +v 7.5257 -0.0497 3.8698 +v 7.5257 5.4519 3.8698 +v 3.8492 8.0460 7.8159 +v 3.6056 5.5601 8.0758 +v 4.3820 5.5601 8.0758 +v 4.2778 8.0460 7.8728 +v 4.3820 10.5319 8.0758 +v 3.6056 10.5319 8.0758 +v 3.8492 8.0460 7.3722 +v 3.6056 5.5601 7.2903 +v 3.6056 11.0617 7.2903 +v 4.2778 8.0460 7.4291 +v 4.3820 5.5601 7.2903 +v 4.3820 11.0617 7.2903 +v -6.1483 5.2854 13.8904 +v -6.1483 -0.0497 13.8904 +v -2.5490 -0.0497 13.8904 +v -2.5490 8.3033 14.4402 +v -6.1483 5.2854 9.5363 +v -6.1483 -0.0497 9.5363 +v 1.0503 5.2854 13.8904 +v 1.0503 -0.0497 13.8904 +v -2.5490 4.0591 14.2018 +v -2.1451 4.0831 14.2018 +v -2.1451 4.9996 14.2698 +v -2.5490 5.2929 14.2698 +v -1.8292 3.9731 14.2355 +v -1.8292 3.9731 14.1428 +v -1.8292 4.1051 14.1428 +v -1.8292 4.1051 14.2355 +v -1.9335 5.0827 14.3036 +v -1.9335 5.0827 14.2108 +v -2.5490 5.5092 14.2108 +v -2.5490 5.5092 14.3036 +v -3.2687 4.1051 14.2355 +v -3.2687 4.1051 14.1428 +v -3.2687 3.9731 14.1428 +v -3.2687 3.9731 14.2355 +v -3.1644 3.9731 14.2355 +v -3.1644 3.9731 14.1428 +v -2.5490 3.9271 14.1428 +v -2.5490 3.9271 14.2355 +v -1.9335 3.9731 14.3372 +v -1.9335 4.1051 14.3372 +v -2.1451 4.0831 14.3372 +v -2.1451 4.9996 14.3036 +v -2.5490 5.2929 14.3036 +v -3.1644 4.1051 14.3372 +v -3.1644 3.9731 14.3372 +v -2.9528 4.0916 14.3372 +v -2.5490 3.9271 14.3372 +v -2.5490 4.0591 14.3372 +v -2.9528 4.9996 14.2698 +v -2.9528 4.0916 14.2018 +v -3.1644 5.0827 14.2108 +v -3.1644 5.0827 14.3036 +v -1.9335 3.9731 14.1428 +v -1.9335 3.9731 14.2355 +v -2.9528 4.9996 14.3036 +v -2.1451 4.0831 14.2355 +v -2.9528 4.0916 14.2355 +v -2.5490 4.0591 14.2355 +v -3.1644 4.1051 14.2355 +v -3.1644 4.1051 14.1428 +v -1.9335 4.1051 14.2355 +v -1.9335 4.1051 14.1428 +v -1.8292 3.9731 14.3372 +v -1.8292 4.1051 14.3372 +v -3.2687 4.1051 14.3372 +v -3.2687 3.9731 14.3372 +v -6.1001 0.3307 13.9484 +v -6.1001 0.3307 14.0508 +v 1.0344 0.3307 14.0508 +v 1.0344 0.3307 13.9484 +v -6.1001 -0.0497 14.0508 +v 1.0344 -0.0497 14.0508 +v -2.5490 7.3417 7.3874 +v -2.5490 7.8216 11.5128 +v 1.3897 5.0816 11.0558 +v 1.3897 5.0816 9.5363 +v -6.4877 5.1674 14.6493 +v -6.4877 4.8256 14.7008 +v -2.5490 8.4824 15.2587 +v -2.5490 8.8242 15.2587 +v 1.3897 5.1674 14.6493 +v 1.3897 4.8256 14.6493 +v -6.4877 5.1587 11.0558 +v -6.4877 5.2357 9.5363 +v -6.4877 4.8169 11.0945 +v 1.3897 4.7398 11.0558 +v -2.5490 7.4798 11.5128 +v -2.1476 8.6350 16.2525 +v -2.9503 8.6350 16.2525 +v -2.9503 7.8323 16.2525 +v -2.1476 7.8323 16.2525 +v -2.8880 7.4474 15.2674 +v -2.8880 8.1255 15.2674 +v -2.8554 7.9260 14.2697 +v -2.8554 7.3131 14.2697 +v -2.2425 7.3131 14.2697 +v -2.2099 7.4474 15.2674 +v -2.2425 7.9260 14.2697 +v -2.2099 8.1255 15.2674 +v -1.9716 8.5899 15.1690 +v -1.9716 8.4159 15.2058 +v -1.9716 8.2024 14.1956 +v -1.9716 8.3764 14.1588 +v -2.4465 8.5610 14.1198 +v -2.4465 8.7351 14.0830 +v -2.4465 8.9486 15.0932 +v -2.4465 8.7745 15.1300 +v -2.5490 8.5728 14.1173 +v -2.5490 8.7468 14.0805 +v -2.5490 8.9603 15.0907 +v -2.5490 8.7863 15.1275 +v -3.1263 8.2024 14.1956 +v -3.1263 8.4159 15.2058 +v -3.1263 8.5899 15.1690 +v -3.1263 8.3764 14.1588 +v -2.6514 8.5610 14.1198 +v -2.6514 8.7351 14.0830 +v -2.6514 8.9486 15.0932 +v -2.6514 8.7745 15.1300 +v -1.9716 8.1121 14.2980 +v -1.9716 7.8986 13.2878 +v -1.9716 8.0727 13.2511 +v -1.9716 8.2862 14.2612 +v -2.4465 8.4313 13.1752 +v -2.4465 8.6448 14.1854 +v -2.4465 8.2573 13.2120 +v -2.5490 8.4431 13.1728 +v -2.5490 8.6566 14.1830 +v -2.5490 8.2690 13.2096 +v -3.1263 8.0727 13.2511 +v -3.1263 7.8986 13.2878 +v -3.1263 8.1121 14.2980 +v -3.1263 8.2862 14.2612 +v -2.6514 8.4313 13.1752 +v -2.6514 8.6448 14.1854 +v -2.6514 8.2573 13.2120 +v -1.9716 7.8588 13.4934 +v -1.9716 7.6811 12.4763 +v -1.9716 7.8564 12.4457 +v -1.9716 8.0341 13.4628 +v -2.4465 8.2175 12.3826 +v -2.4465 8.3952 13.3997 +v -2.4465 8.0423 12.4133 +v -2.5490 8.2293 12.3806 +v -2.5490 8.4070 13.3977 +v -2.5490 8.0541 12.4112 +v -3.1263 7.8564 12.4457 +v -3.1263 7.6811 12.4763 +v -3.1263 7.8588 13.4934 +v -3.1263 8.0341 13.4628 +v -2.6514 8.2175 12.3826 +v -2.6514 8.3952 13.3997 +v -2.6514 8.0423 12.4133 +v -1.9716 7.6154 12.5886 +v -1.9716 7.4907 11.5637 +v -1.9716 7.6673 11.5422 +v -1.9716 7.7920 12.5671 +v -2.4465 8.0312 11.4979 +v -2.4465 8.1559 12.5229 +v -2.4465 7.8546 11.5194 +v -2.5490 8.0431 11.4965 +v -2.5490 8.1678 12.5214 +v -2.5490 7.8665 11.5180 +v -3.1263 7.6673 11.5422 +v -3.1263 7.4907 11.5637 +v -3.1263 7.6154 12.5886 +v -3.1263 7.7920 12.5671 +v -2.6514 8.0312 11.4979 +v -2.6514 8.1559 12.5229 +v -2.6514 7.8546 11.5194 +v -1.9716 7.4096 11.6666 +v -1.9716 7.2850 10.6417 +v -1.9716 7.4616 10.6202 +v -1.9716 7.5862 11.6451 +v -2.4465 7.8255 10.5759 +v -2.4465 7.9502 11.6009 +v -2.4465 7.6489 10.5974 +v -2.5490 7.8374 10.5745 +v -2.5490 7.9620 11.5994 +v -2.5490 7.6608 10.5960 +v -3.1263 7.4616 10.6202 +v -3.1263 7.2850 10.6417 +v -3.1263 7.4096 11.6666 +v -3.1263 7.5862 11.6451 +v -2.6514 7.8255 10.5759 +v -2.6514 7.9502 11.6009 +v -2.6514 7.6489 10.5974 +v -1.9716 7.2429 10.6842 +v -1.9716 7.1183 9.6592 +v -1.9716 7.2949 9.6378 +v -1.9716 7.4195 10.6627 +v -2.4465 7.6588 9.5935 +v -2.4465 7.7835 10.6185 +v -2.4465 7.4822 9.6150 +v -2.5490 7.6707 9.5921 +v -2.5490 7.7954 10.6170 +v -2.5490 7.4941 9.6135 +v -3.1263 7.2949 9.6378 +v -3.1263 7.1183 9.6592 +v -3.1263 7.2429 10.6842 +v -3.1263 7.4195 10.6627 +v -2.6514 7.6588 9.5935 +v -2.6514 7.7835 10.6185 +v -2.6514 7.4822 9.6150 +v -1.9716 7.1215 9.9531 +v -1.9716 7.0662 8.9221 +v -1.9716 7.2439 8.9126 +v -1.9716 7.2991 9.9436 +v -2.4465 7.6099 8.8930 +v -2.4465 7.6652 9.9240 +v -2.4465 7.4323 8.9025 +v -2.5490 7.6219 8.8924 +v -2.5490 7.6771 9.9234 +v -2.5490 7.4443 8.9019 +v -3.1263 7.2439 8.9126 +v -3.1263 7.0662 8.9221 +v -3.1263 7.1215 9.9531 +v -3.1263 7.2991 9.9436 +v -2.6514 7.6099 8.8930 +v -2.6514 7.6652 9.9240 +v -2.6514 7.4323 8.9025 +v -1.9716 7.1204 8.1650 +v -1.9716 6.9426 8.1590 +v -1.9716 6.9774 7.3778 +v -1.9716 7.1552 7.3838 +v -2.4465 7.5216 7.3962 +v -2.4465 7.4868 8.1774 +v -2.4465 7.3090 8.1714 +v -2.5490 7.5336 7.3966 +v -2.5490 7.4987 8.1778 +v -2.5490 7.3210 8.1718 +v -3.1263 6.9774 7.3778 +v -3.1263 6.9426 8.1590 +v -3.1263 7.1204 8.1650 +v -3.1263 7.1552 7.3838 +v -2.6514 7.4868 8.1774 +v -2.6514 7.5216 7.3962 +v -2.6514 7.3090 8.1714 +v -1.9716 7.1836 8.9636 +v -1.9716 7.0070 8.9851 +v -1.9716 6.8823 7.9601 +v -1.9716 7.0589 7.9387 +v -2.4465 7.4228 7.8944 +v -2.4465 7.5475 8.9193 +v -2.4465 7.3709 8.9408 +v -2.5490 7.4347 7.8930 +v -2.5490 7.5594 8.9179 +v -2.5490 7.3828 8.9394 +v -3.1263 6.8823 7.9601 +v -3.1263 7.0070 8.9851 +v -3.1263 7.1836 8.9636 +v -3.1263 7.0589 7.9387 +v -2.6514 7.5475 8.9193 +v -2.6514 7.4228 7.8944 +v -2.6514 7.3709 8.9408 +v -6.2507 0.3307 13.4886 +v -6.1483 0.3307 13.4886 +v -6.1483 0.3307 9.5363 +v -6.2507 0.3307 9.5363 +v -6.2507 -0.0497 13.4886 +v -6.2507 -0.0497 9.5363 +v 1.0503 -0.0497 9.5363 +v 1.0503 5.2854 9.5363 +v 1.1083 0.3307 13.6458 +v 1.2107 0.3307 13.6458 +v 1.2107 0.3307 9.5034 +v 1.1083 0.3307 9.5034 +v 1.2107 -0.0497 13.6458 +v 1.2107 -0.0497 9.5034 +v -6.1581 2.4361 13.9934 +v -6.2150 2.4361 13.5648 +v -6.4181 -0.0497 13.4606 +v -6.4181 -0.0497 14.2371 +v -6.4181 4.9220 13.4606 +v -6.4181 4.9220 14.2371 +v -5.6326 -0.0497 14.2371 +v -5.7144 2.4361 13.9934 +v -5.6326 5.4519 14.2371 +v -5.6326 -0.0497 13.4606 +v -5.7713 2.4361 13.5648 +v -5.6326 5.4519 13.4606 +v 1.0602 2.4361 13.9934 +v 1.3202 -0.0497 14.2371 +v 1.3202 -0.0497 13.4606 +v 1.1171 2.4361 13.5648 +v 1.3202 4.9220 13.4606 +v 1.3202 4.9220 14.2371 +v 0.6165 2.4361 13.9934 +v 0.5347 -0.0497 14.2371 +v 0.5347 5.4519 14.2371 +v 0.6734 2.4361 13.5648 +v 0.5347 -0.0497 13.4606 +v 0.5347 5.4519 13.4606 +v -9.0259 2.4361 10.7880 +v -9.2695 -0.0497 11.0480 +v -8.4931 -0.0497 11.0480 +v -8.5973 2.4361 10.8449 +v -8.4931 4.9220 11.0480 +v -9.2695 4.9220 11.0480 +v -9.0258 2.4361 10.3443 +v -9.2695 -0.0497 10.2625 +v -9.2695 5.4519 10.2625 +v -8.5973 2.4361 10.4012 +v -8.4931 -0.0497 10.2625 +v -8.4931 5.4519 10.2625 +v -9.0258 2.4361 3.5590 +v -8.5973 2.4361 3.5021 +v -8.4931 -0.0497 3.2991 +v -9.2695 -0.0497 3.2991 +v -8.4931 4.9220 3.2991 +v -9.2695 4.9220 3.2991 +v -9.2695 -0.0497 4.0846 +v -9.0258 2.4361 4.0027 +v -9.2695 5.4519 4.0846 +v -8.4931 -0.0497 4.0846 +v -8.5973 2.4361 3.9458 +v -8.4931 5.4519 4.0846 +v 8.0585 2.4361 7.8159 +v 7.6299 2.4361 7.8728 +v 7.5257 -0.0497 8.0758 +v 8.3022 -0.0497 8.0758 +v 7.5257 4.9220 8.0758 +v 8.3022 4.9220 8.0758 +v 8.3022 -0.0497 7.2903 +v 8.0585 2.4361 7.3722 +v 8.3022 5.4519 7.2903 +v 7.5257 -0.0497 7.2903 +v 7.6299 2.4361 7.4291 +v 7.5257 5.4519 7.2903 +v 8.0585 8.0320 7.8159 +v 7.6299 8.0320 7.8728 +v 7.5257 5.5461 8.0758 +v 8.3022 5.5461 8.0758 +v 7.5257 10.5178 8.0758 +v 8.3022 10.5178 8.0758 +v 8.3022 5.5461 7.2903 +v 8.0585 8.0320 7.3722 +v 8.3022 11.0477 7.2903 +v 7.5257 5.5461 7.2903 +v 7.6299 8.0320 7.4291 +v 7.5257 11.0477 7.2903 +v 4.0787 2.4361 10.7880 +v 3.6501 2.4361 10.8449 +v 3.5459 -0.0497 11.0480 +v 4.3223 -0.0497 11.0480 +v 3.5459 4.9220 11.0480 +v 4.3223 4.9220 11.0480 +v 4.3223 -0.0497 10.2625 +v 4.0787 2.4361 10.3443 +v 4.3223 5.4519 10.2625 +v 3.5459 -0.0497 10.2625 +v 3.6501 2.4361 10.4012 +v 3.5459 5.4519 10.2625 +v 3.8492 2.4361 7.8159 +v 3.6056 -0.0497 8.0758 +v 4.3820 -0.0497 8.0758 +v 4.2778 2.4361 7.8728 +v 4.3820 4.9220 8.0758 +v 3.6056 4.9220 8.0758 +v 3.8492 2.4361 7.3722 +v 3.6056 -0.0497 7.2903 +v 3.6056 5.4519 7.2903 +v 4.2778 2.4361 7.4291 +v 4.3820 -0.0497 7.2903 +v 4.3820 5.4519 7.2903 +v 3.8492 2.4361 3.3442 +v 4.2778 2.4361 3.2874 +v 4.3820 -0.0497 3.0843 +v 3.6056 -0.0497 3.0843 +v 4.3820 4.9220 3.0843 +v 3.6056 4.9220 3.0843 +v 3.6056 -0.0497 3.8698 +v 3.8492 2.4361 3.7879 +v 3.6056 5.4519 3.8698 +v 4.3820 -0.0497 3.8698 +v 4.2778 2.4361 3.7311 +v 4.3820 5.4519 3.8698 +v -8.8369 0.3836 2.7871 +v -9.6622 0.0369 2.7377 +v -9.3873 0.7742 2.9950 +v -8.4314 0.9276 2.9011 +v -9.6420 0.0080 2.7808 +v -8.8167 0.3547 2.8302 +v -9.8499 1.1425 3.7831 +v -9.8702 1.1714 3.7400 +v -9.9150 0.5663 3.4157 +v -9.8947 0.5374 3.4588 +v -9.0617 1.4391 3.3601 +v -9.0819 1.4680 3.3170 +v -9.5178 1.6467 3.7829 +v -9.4975 1.6178 3.8260 +v -8.4112 0.8987 2.9442 +v -8.4397 1.4640 3.1543 +v -8.4195 1.4351 3.1975 +v -4.8751 4.0741 3.5979 +v -4.8107 4.3886 2.8279 +v -4.8107 4.3414 2.3081 +v -4.8751 3.7234 3.5979 +v -4.3656 4.0741 3.5979 +v -4.4300 4.3886 2.8279 +v -4.3656 3.7234 3.5979 +v -4.4300 4.3414 2.3081 +v -14.7300 1.7089 -16.2260 +v -14.7320 1.7089 -15.9598 +v -14.5329 1.7089 -15.9532 +v -14.5309 1.7089 -16.2194 +v -14.5148 0.8805 -16.1713 +v -14.5162 0.8805 -15.9847 +v -14.5328 0.0000 -15.9656 +v -14.5309 0.0000 -16.2070 +v -14.6657 0.8805 -16.1763 +v -14.7301 0.0000 -16.2136 +v -14.6672 0.8805 -15.9897 +v -14.7319 0.0000 -15.9722 +v -14.2891 1.8182 -16.1558 +v -14.2903 1.8182 -15.9976 +v -14.0912 1.8182 -15.9911 +v -14.0900 1.8182 -16.1492 +v -14.0714 0.8805 -16.2411 +v -14.0723 0.8805 -16.1212 +v -14.0442 0.0000 -15.9911 +v -14.0430 0.0000 -16.1492 +v -14.2223 0.8805 -16.2461 +v -14.2421 0.0000 -16.1558 +v -14.2233 0.8805 -16.1262 +v -14.2433 0.0000 -15.9976 +v -13.7487 1.4149 -16.2523 +v -13.7496 1.4149 -16.1324 +v -12.8465 1.4917 -15.9514 +v -12.8453 1.4917 -16.1096 +v -14.6517 1.5530 -16.1694 +v -14.6529 1.5530 -16.0112 +v -13.7552 1.2339 -16.2525 +v -12.8538 1.2529 -16.1099 +v -14.6603 1.3141 -16.1697 +v -13.7561 1.2339 -16.1326 +v -12.8550 1.2529 -15.9517 +v -14.6615 1.3141 -16.0115 +v -13.7507 0.5144 -15.9900 +v -13.7516 0.5144 -15.8701 +v -12.8465 0.5972 -15.9514 +v -12.8453 0.5972 -16.1096 +v -14.6517 0.6584 -16.1694 +v -14.6529 0.6584 -16.0112 +v -13.7572 0.3333 -15.9902 +v -12.8538 0.3583 -16.1099 +v -14.6603 0.4196 -16.1697 +v -13.7581 0.3333 -15.8703 +v -12.8550 0.3583 -15.9517 +v -14.6615 0.4196 -16.0115 +v -13.8315 1.8814 -16.1422 +v -13.8327 1.8814 -15.9841 +v -13.6336 1.8814 -15.9775 +v -13.6323 1.8814 -16.1356 +v -13.6560 0.8805 -16.1897 +v -13.6570 0.8805 -16.0698 +v -13.6336 0.0000 -15.9775 +v -13.6323 0.0000 -16.1356 +v -13.8070 0.8805 -16.1947 +v -13.8315 0.0000 -16.1422 +v -13.8079 0.8805 -16.0748 +v -13.8327 0.0000 -15.9841 +v -13.3832 1.6654 -16.1274 +v -13.3844 1.6654 -15.9692 +v -13.1853 1.6654 -15.9626 +v -13.1841 1.6654 -16.1208 +v -13.2307 0.8805 -16.0068 +v -13.2316 0.8805 -15.8869 +v -13.1853 0.0000 -15.9626 +v -13.1841 0.0000 -16.1208 +v -13.3816 0.8805 -16.0118 +v -13.3832 0.0000 -16.1274 +v -13.3825 0.8805 -15.8919 +v -13.3844 0.0000 -15.9692 +v -12.9829 1.7611 -16.1723 +v -12.9850 1.7611 -15.8978 +v -12.7859 1.7611 -15.8912 +v -12.7838 1.7611 -16.1657 +v -12.8386 0.8805 -16.0902 +v -12.8395 0.8805 -15.9703 +v -12.7855 0.0000 -15.9494 +v -12.7842 0.0000 -16.1076 +v -12.9896 0.8805 -16.0952 +v -12.9834 0.0000 -16.1141 +v -12.9905 0.8805 -15.9753 +v -12.9846 0.0000 -15.9560 +v -12.6474 1.7089 -16.2260 +v -12.6494 1.7089 -15.9598 +v -12.4503 1.7089 -15.9532 +v -12.4482 1.7089 -16.2194 +v -12.4322 0.8805 -16.1713 +v -12.4336 0.8805 -15.9847 +v -12.4502 0.0000 -15.9656 +v -12.4483 0.0000 -16.2070 +v -12.5831 0.8805 -16.1763 +v -12.6475 0.0000 -16.2136 +v -12.5846 0.8805 -15.9897 +v -12.6493 0.0000 -15.9722 +v -12.2065 1.8182 -16.1558 +v -12.2077 1.8182 -15.9976 +v -12.0086 1.8182 -15.9911 +v -12.0074 1.8182 -16.1492 +v -11.9888 0.8805 -16.2411 +v -11.9897 0.8805 -16.1212 +v -11.9616 0.0000 -15.9911 +v -11.9604 0.0000 -16.1492 +v -12.1397 0.8805 -16.2461 +v -12.1595 0.0000 -16.1558 +v -12.1407 0.8805 -16.1262 +v -12.1607 0.0000 -15.9976 +v -11.6661 1.4149 -16.2523 +v -11.6670 1.4149 -16.1324 +v -10.7639 1.4917 -15.9514 +v -10.7627 1.4917 -16.1096 +v -12.5691 1.5530 -16.1694 +v -12.5703 1.5530 -16.0112 +v -11.6726 1.2339 -16.2525 +v -10.7712 1.2529 -16.1099 +v -12.5777 1.3141 -16.1697 +v -11.6735 1.2339 -16.1326 +v -10.7724 1.2529 -15.9517 +v -12.5789 1.3141 -16.0115 +v -11.6681 0.5144 -15.9900 +v -11.6690 0.5144 -15.8701 +v -10.7639 0.5972 -15.9514 +v -10.7627 0.5972 -16.1096 +v -12.5691 0.6584 -16.1694 +v -12.5703 0.6584 -16.0112 +v -11.6746 0.3333 -15.9902 +v -10.7712 0.3583 -16.1099 +v -12.5777 0.4196 -16.1697 +v -11.6755 0.3333 -15.8703 +v -10.7724 0.3583 -15.9517 +v -12.5789 0.4196 -16.0115 +v -11.7489 1.8814 -16.1422 +v -11.7501 1.8814 -15.9841 +v -11.5510 1.8814 -15.9775 +v -11.5497 1.8814 -16.1356 +v -11.5734 0.8805 -16.1897 +v -11.5744 0.8805 -16.0698 +v -11.5510 0.0000 -15.9775 +v -11.5497 0.0000 -16.1356 +v -11.7244 0.8805 -16.1947 +v -11.7489 0.0000 -16.1422 +v -11.7253 0.8805 -16.0748 +v -11.7501 0.0000 -15.9841 +v -11.3006 1.6654 -16.1274 +v -11.3018 1.6654 -15.9692 +v -11.1027 1.6654 -15.9626 +v -11.1015 1.6654 -16.1208 +v -11.1481 0.8805 -16.0068 +v -11.1490 0.8805 -15.8869 +v -11.1027 0.0000 -15.9626 +v -11.1015 0.0000 -16.1208 +v -11.2990 0.8805 -16.0118 +v -11.3006 0.0000 -16.1274 +v -11.2999 0.8805 -15.8919 +v -11.3018 0.0000 -15.9692 +v -10.9003 1.7611 -16.1723 +v -10.9024 1.7611 -15.8978 +v -10.7033 1.7611 -15.8912 +v -10.7012 1.7611 -16.1657 +v -10.7560 0.8805 -16.0902 +v -10.7569 0.8805 -15.9703 +v -10.7029 0.0000 -15.9494 +v -10.7016 0.0000 -16.1076 +v -10.9069 0.8805 -16.0952 +v -10.9008 0.0000 -16.1141 +v -10.9079 0.8805 -15.9753 +v -10.9020 0.0000 -15.9560 +v -10.5648 1.7089 -16.2260 +v -10.5668 1.7089 -15.9598 +v -10.3677 1.7089 -15.9532 +v -10.3657 1.7089 -16.2194 +v -10.3496 0.8805 -16.1713 +v -10.3510 0.8805 -15.9847 +v -10.3676 0.0000 -15.9656 +v -10.3657 0.0000 -16.2070 +v -10.5005 0.8805 -16.1763 +v -10.5649 0.0000 -16.2136 +v -10.5020 0.8805 -15.9897 +v -10.5667 0.0000 -15.9722 +v -10.1239 1.8182 -16.1558 +v -10.1251 1.8182 -15.9976 +v -9.9260 1.8182 -15.9911 +v -9.9248 1.8182 -16.1492 +v -9.9062 0.8805 -16.2411 +v -9.9071 0.8805 -16.1212 +v -9.8790 0.0000 -15.9911 +v -9.8778 0.0000 -16.1492 +v -10.0571 0.8805 -16.2461 +v -10.0769 0.0000 -16.1558 +v -10.0581 0.8805 -16.1262 +v -10.0781 0.0000 -15.9976 +v -9.5835 1.4149 -16.2523 +v -9.5844 1.4149 -16.1324 +v -8.6813 1.4917 -15.9514 +v -8.6801 1.4917 -16.1096 +v -10.4865 1.5530 -16.1694 +v -10.4877 1.5530 -16.0112 +v -9.5900 1.2339 -16.2525 +v -8.6886 1.2529 -16.1099 +v -10.4951 1.3141 -16.1697 +v -9.5909 1.2339 -16.1326 +v -8.6898 1.2529 -15.9517 +v -10.4963 1.3141 -16.0115 +v -9.5855 0.5144 -15.9900 +v -9.5864 0.5144 -15.8701 +v -8.6813 0.5972 -15.9514 +v -8.6801 0.5972 -16.1096 +v -10.4865 0.6584 -16.1694 +v -10.4877 0.6584 -16.0112 +v -9.5920 0.3333 -15.9902 +v -8.6886 0.3583 -16.1099 +v -10.4951 0.4196 -16.1697 +v -9.5929 0.3333 -15.8703 +v -8.6898 0.3583 -15.9517 +v -10.4963 0.4196 -16.0115 +v -9.6663 1.8814 -16.1422 +v -9.6675 1.8814 -15.9841 +v -9.4684 1.8814 -15.9775 +v -9.4671 1.8814 -16.1356 +v -9.4908 0.8805 -16.1897 +v -9.4918 0.8805 -16.0698 +v -9.4684 0.0000 -15.9775 +v -9.4671 0.0000 -16.1356 +v -9.6418 0.8805 -16.1947 +v -9.6663 0.0000 -16.1422 +v -9.6427 0.8805 -16.0748 +v -9.6675 0.0000 -15.9841 +v -9.2180 1.6654 -16.1274 +v -9.2192 1.6654 -15.9692 +v -9.0201 1.6654 -15.9626 +v -9.0189 1.6654 -16.1208 +v -9.0655 0.8805 -16.0068 +v -9.0664 0.8805 -15.8869 +v -9.0201 0.0000 -15.9626 +v -9.0189 0.0000 -16.1208 +v -9.2164 0.8805 -16.0118 +v -9.2180 0.0000 -16.1274 +v -9.2173 0.8805 -15.8919 +v -9.2192 0.0000 -15.9692 +v -8.8177 1.7611 -16.1723 +v -8.8198 1.7611 -15.8978 +v -8.6207 1.7611 -15.8912 +v -8.6186 1.7611 -16.1657 +v -8.6734 0.8805 -16.0902 +v -8.6743 0.8805 -15.9703 +v -8.6203 0.0000 -15.9494 +v -8.6190 0.0000 -16.1076 +v -8.8243 0.8805 -16.0952 +v -8.8182 0.0000 -16.1141 +v -8.8253 0.8805 -15.9753 +v -8.8194 0.0000 -15.9560 +v -8.4822 1.7089 -16.2260 +v -8.4842 1.7089 -15.9598 +v -8.2851 1.7089 -15.9532 +v -8.2830 1.7089 -16.2194 +v -8.2670 0.8805 -16.1713 +v -8.2684 0.8805 -15.9847 +v -8.2850 0.0000 -15.9656 +v -8.2831 0.0000 -16.2070 +v -8.4179 0.8805 -16.1763 +v -8.4823 0.0000 -16.2136 +v -8.4194 0.8805 -15.9897 +v -8.4841 0.0000 -15.9722 +v -8.0413 1.8182 -16.1558 +v -8.0425 1.8182 -15.9976 +v -7.8434 1.8182 -15.9911 +v -7.8422 1.8182 -16.1492 +v -7.8236 0.8805 -16.2411 +v -7.8245 0.8805 -16.1212 +v -7.7964 0.0000 -15.9911 +v -7.7952 0.0000 -16.1492 +v -7.9745 0.8805 -16.2461 +v -7.9943 0.0000 -16.1558 +v -7.9755 0.8805 -16.1262 +v -7.9955 0.0000 -15.9976 +v -7.5009 1.4149 -16.2523 +v -7.5018 1.4149 -16.1324 +v -6.5987 1.4917 -15.9514 +v -6.5975 1.4917 -16.1096 +v -8.4039 1.5530 -16.1694 +v -8.4051 1.5530 -16.0112 +v -7.5073 1.2339 -16.2525 +v -6.6060 1.2529 -16.1099 +v -8.4125 1.3141 -16.1697 +v -7.5083 1.2339 -16.1326 +v -6.6072 1.2529 -15.9517 +v -8.4137 1.3141 -16.0115 +v -7.5029 0.5144 -15.9900 +v -7.5038 0.5144 -15.8701 +v -6.5987 0.5972 -15.9514 +v -6.5975 0.5972 -16.1096 +v -8.4039 0.6584 -16.1694 +v -8.4051 0.6584 -16.0112 +v -7.5094 0.3333 -15.9902 +v -6.6060 0.3583 -16.1099 +v -8.4125 0.4196 -16.1697 +v -7.5103 0.3333 -15.8703 +v -6.6072 0.3583 -15.9517 +v -8.4137 0.4196 -16.0115 +v -7.5837 1.8814 -16.1422 +v -7.5849 1.8814 -15.9841 +v -7.3858 1.8814 -15.9775 +v -7.3845 1.8814 -16.1356 +v -7.4082 0.8805 -16.1897 +v -7.4091 0.8805 -16.0698 +v -7.3858 0.0000 -15.9775 +v -7.3845 0.0000 -16.1356 +v -7.5592 0.8805 -16.1947 +v -7.5837 0.0000 -16.1422 +v -7.5601 0.8805 -16.0748 +v -7.5849 0.0000 -15.9841 +v -7.1354 1.6654 -16.1274 +v -7.1366 1.6654 -15.9692 +v -6.9375 1.6654 -15.9626 +v -6.9363 1.6654 -16.1208 +v -6.9829 0.8805 -16.0068 +v -6.9838 0.8805 -15.8869 +v -6.9375 0.0000 -15.9626 +v -6.9363 0.0000 -16.1208 +v -7.1338 0.8805 -16.0118 +v -7.1354 0.0000 -16.1274 +v -7.1347 0.8805 -15.8919 +v -7.1366 0.0000 -15.9692 +v -6.7351 1.7611 -16.1723 +v -6.7372 1.7611 -15.8978 +v -6.5381 1.7611 -15.8912 +v -6.5360 1.7611 -16.1657 +v -6.5908 0.8805 -16.0902 +v -6.5917 0.8805 -15.9703 +v -6.5377 0.0000 -15.9494 +v -6.5364 0.0000 -16.1076 +v -6.7417 0.8805 -16.0952 +v -6.7356 0.0000 -16.1141 +v -6.7427 0.8805 -15.9753 +v -6.7368 0.0000 -15.9560 +v -6.3996 1.7089 -16.2260 +v -6.4016 1.7089 -15.9598 +v -6.2025 1.7089 -15.9532 +v -6.2004 1.7089 -16.2194 +v -6.1844 0.8805 -16.1713 +v -6.1858 0.8805 -15.9847 +v -6.2024 0.0000 -15.9656 +v -6.2005 0.0000 -16.2070 +v -6.3353 0.8805 -16.1763 +v -6.3997 0.0000 -16.2136 +v -6.3368 0.8805 -15.9897 +v -6.4015 0.0000 -15.9722 +v -5.9587 1.8182 -16.1558 +v -5.9599 1.8182 -15.9976 +v -5.7608 1.8182 -15.9911 +v -5.7596 1.8182 -16.1492 +v -5.7410 0.8805 -16.2411 +v -5.7419 0.8805 -16.1212 +v -5.7138 0.0000 -15.9911 +v -5.7126 0.0000 -16.1492 +v -5.8919 0.8805 -16.2461 +v -5.9117 0.0000 -16.1558 +v -5.8929 0.8805 -16.1262 +v -5.9129 0.0000 -15.9976 +v -5.4183 1.4149 -16.2523 +v -5.4192 1.4149 -16.1324 +v -4.5161 1.4917 -15.9514 +v -4.5149 1.4917 -16.1096 +v -6.3213 1.5530 -16.1694 +v -6.3225 1.5530 -16.0112 +v -5.4248 1.2339 -16.2525 +v -4.5234 1.2529 -16.1099 +v -6.3299 1.3141 -16.1697 +v -5.4257 1.2339 -16.1326 +v -4.5246 1.2529 -15.9517 +v -6.3311 1.3141 -16.0115 +v -5.4203 0.5144 -15.9900 +v -5.4212 0.5144 -15.8701 +v -4.5161 0.5972 -15.9514 +v -4.5149 0.5972 -16.1096 +v -6.3213 0.6584 -16.1694 +v -6.3225 0.6584 -16.0112 +v -5.4268 0.3333 -15.9902 +v -4.5234 0.3583 -16.1099 +v -6.3299 0.4196 -16.1697 +v -5.4277 0.3333 -15.8703 +v -4.5246 0.3583 -15.9517 +v -6.3311 0.4196 -16.0115 +v -5.5011 1.8814 -16.1422 +v -5.5023 1.8814 -15.9841 +v -5.3032 1.8814 -15.9775 +v -5.3019 1.8814 -16.1356 +v -5.3256 0.8805 -16.1897 +v -5.3265 0.8805 -16.0698 +v -5.3032 0.0000 -15.9775 +v -5.3019 0.0000 -16.1356 +v -5.4766 0.8805 -16.1947 +v -5.5011 0.0000 -16.1422 +v -5.4775 0.8805 -16.0748 +v -5.5023 0.0000 -15.9841 +v -5.0528 1.6654 -16.1274 +v -5.0540 1.6654 -15.9692 +v -4.8549 1.6654 -15.9626 +v -4.8537 1.6654 -16.1208 +v -4.9003 0.8805 -16.0068 +v -4.9012 0.8805 -15.8869 +v -4.8549 0.0000 -15.9626 +v -4.8537 0.0000 -16.1208 +v -5.0512 0.8805 -16.0118 +v -5.0528 0.0000 -16.1274 +v -5.0521 0.8805 -15.8919 +v -5.0540 0.0000 -15.9692 +v -4.6525 1.7611 -16.1723 +v -4.6546 1.7611 -15.8978 +v -4.4555 1.7611 -15.8912 +v -4.4534 1.7611 -16.1657 +v -4.5082 0.8805 -16.0902 +v -4.5091 0.8805 -15.9703 +v -4.4551 0.0000 -15.9494 +v -4.4538 0.0000 -16.1076 +v -4.6591 0.8805 -16.0952 +v -4.6530 0.0000 -16.1141 +v -4.6601 0.8805 -15.9753 +v -4.6542 0.0000 -15.9560 +v -4.3170 1.7089 -16.2260 +v -4.3190 1.7089 -15.9598 +v -4.1199 1.7089 -15.9532 +v -4.1179 1.7089 -16.2194 +v -4.1018 0.8805 -16.1713 +v -4.1032 0.8805 -15.9847 +v -4.1198 0.0000 -15.9656 +v -4.1179 0.0000 -16.2070 +v -4.2527 0.8805 -16.1763 +v -4.3171 0.0000 -16.2136 +v -4.2542 0.8805 -15.9897 +v -4.3189 0.0000 -15.9722 +v -3.8761 1.8182 -16.1558 +v -3.8773 1.8182 -15.9976 +v -3.6782 1.8182 -15.9911 +v -3.6770 1.8182 -16.1492 +v -3.6584 0.8805 -16.2411 +v -3.6593 0.8805 -16.1212 +v -3.6312 0.0000 -15.9911 +v -3.6300 0.0000 -16.1492 +v -3.8093 0.8805 -16.2461 +v -3.8291 0.0000 -16.1558 +v -3.8103 0.8805 -16.1262 +v -3.8303 0.0000 -15.9976 +v -3.3357 1.4149 -16.2523 +v -3.3366 1.4149 -16.1324 +v -2.4335 1.4917 -15.9514 +v -2.4323 1.4917 -16.1096 +v -4.2387 1.5530 -16.1694 +v -4.2399 1.5530 -16.0112 +v -3.3422 1.2339 -16.2525 +v -2.4408 1.2529 -16.1099 +v -4.2473 1.3141 -16.1697 +v -3.3431 1.2339 -16.1326 +v -2.4420 1.2529 -15.9517 +v -4.2485 1.3141 -16.0115 +v -3.3377 0.5144 -15.9900 +v -3.3386 0.5144 -15.8701 +v -2.4335 0.5972 -15.9514 +v -2.4323 0.5972 -16.1096 +v -4.2387 0.6584 -16.1694 +v -4.2399 0.6584 -16.0112 +v -3.3442 0.3333 -15.9902 +v -2.4408 0.3583 -16.1099 +v -4.2473 0.4196 -16.1697 +v -3.3451 0.3333 -15.8703 +v -2.4420 0.3583 -15.9517 +v -4.2485 0.4196 -16.0115 +v -3.4185 1.8814 -16.1422 +v -3.4197 1.8814 -15.9841 +v -3.2206 1.8814 -15.9775 +v -3.2193 1.8814 -16.1356 +v -3.2430 0.8805 -16.1897 +v -3.2440 0.8805 -16.0698 +v -3.2206 0.0000 -15.9775 +v -3.2193 0.0000 -16.1356 +v -3.3940 0.8805 -16.1947 +v -3.4185 0.0000 -16.1422 +v -3.3949 0.8805 -16.0748 +v -3.4197 0.0000 -15.9841 +v -2.9702 1.6654 -16.1274 +v -2.9714 1.6654 -15.9692 +v -2.7723 1.6654 -15.9626 +v -2.7711 1.6654 -16.1208 +v -2.8177 0.8805 -16.0068 +v -2.8186 0.8805 -15.8869 +v -2.7723 0.0000 -15.9626 +v -2.7711 0.0000 -16.1208 +v -2.9686 0.8805 -16.0118 +v -2.9702 0.0000 -16.1274 +v -2.9695 0.8805 -15.8919 +v -2.9714 0.0000 -15.9692 +v -2.5699 1.7611 -16.1723 +v -2.5720 1.7611 -15.8978 +v -2.3729 1.7611 -15.8912 +v -2.3708 1.7611 -16.1657 +v -2.4256 0.8805 -16.0902 +v -2.4265 0.8805 -15.9703 +v -2.3725 0.0000 -15.9494 +v -2.3712 0.0000 -16.1076 +v -2.5765 0.8805 -16.0952 +v -2.5704 0.0000 -16.1141 +v -2.5775 0.8805 -15.9753 +v -2.5716 0.0000 -15.9560 +v -2.2344 1.7089 -16.2260 +v -2.2364 1.7089 -15.9598 +v -2.0373 1.7089 -15.9532 +v -2.0352 1.7089 -16.2194 +v -2.0192 0.8805 -16.1713 +v -2.0206 0.8805 -15.9847 +v -2.0372 0.0000 -15.9656 +v -2.0353 0.0000 -16.2070 +v -2.1701 0.8805 -16.1763 +v -2.2345 0.0000 -16.2136 +v -2.1716 0.8805 -15.9897 +v -2.2363 0.0000 -15.9722 +v -1.7935 1.8182 -16.1558 +v -1.7947 1.8182 -15.9976 +v -1.5956 1.8182 -15.9911 +v -1.5944 1.8182 -16.1492 +v -1.5758 0.8805 -16.2411 +v -1.5767 0.8805 -16.1212 +v -1.5486 0.0000 -15.9911 +v -1.5474 0.0000 -16.1492 +v -1.7267 0.8805 -16.2461 +v -1.7465 0.0000 -16.1558 +v -1.7277 0.8805 -16.1262 +v -1.7477 0.0000 -15.9976 +v -1.2531 1.4149 -16.2523 +v -1.2540 1.4149 -16.1324 +v -0.3509 1.4917 -15.9514 +v -0.3497 1.4917 -16.1096 +v -2.1561 1.5530 -16.1694 +v -2.1573 1.5530 -16.0112 +v -1.2595 1.2339 -16.2525 +v -0.3582 1.2529 -16.1099 +v -2.1647 1.3141 -16.1697 +v -1.2605 1.2339 -16.1326 +v -0.3594 1.2529 -15.9517 +v -2.1659 1.3141 -16.0115 +v -1.2551 0.5144 -15.9900 +v -1.2560 0.5144 -15.8701 +v -0.3509 0.5972 -15.9514 +v -0.3497 0.5972 -16.1096 +v -2.1561 0.6584 -16.1694 +v -2.1573 0.6584 -16.0112 +v -1.2616 0.3333 -15.9902 +v -0.3582 0.3583 -16.1099 +v -2.1647 0.4196 -16.1697 +v -1.2625 0.3333 -15.8703 +v -0.3594 0.3583 -15.9517 +v -2.1659 0.4196 -16.0115 +v -1.3359 1.8814 -16.1422 +v -1.3371 1.8814 -15.9841 +v -1.1380 1.8814 -15.9775 +v -1.1367 1.8814 -16.1356 +v -1.1604 0.8805 -16.1897 +v -1.1613 0.8805 -16.0698 +v -1.1380 0.0000 -15.9775 +v -1.1367 0.0000 -16.1356 +v -1.3114 0.8805 -16.1947 +v -1.3359 0.0000 -16.1422 +v -1.3123 0.8805 -16.0748 +v -1.3371 0.0000 -15.9841 +v -0.8876 1.6654 -16.1274 +v -0.8888 1.6654 -15.9692 +v -0.6897 1.6654 -15.9626 +v -0.6885 1.6654 -16.1208 +v -0.7351 0.8805 -16.0068 +v -0.7360 0.8805 -15.8869 +v -0.6897 0.0000 -15.9626 +v -0.6885 0.0000 -16.1208 +v -0.8860 0.8805 -16.0118 +v -0.8876 0.0000 -16.1274 +v -0.8869 0.8805 -15.8919 +v -0.8888 0.0000 -15.9692 +v -0.4873 1.7611 -16.1723 +v -0.4894 1.7611 -15.8978 +v -0.2903 1.7611 -15.8912 +v -0.2882 1.7611 -16.1657 +v -0.3430 0.8805 -16.0902 +v -0.3439 0.8805 -15.9703 +v -0.2898 0.0000 -15.9494 +v -0.2886 0.0000 -16.1076 +v -0.4939 0.8805 -16.0952 +v -0.4878 0.0000 -16.1141 +v -0.4949 0.8805 -15.9753 +v -0.4890 0.0000 -15.9560 +v -0.1518 1.7089 -16.2260 +v -0.1538 1.7089 -15.9598 +v 0.0453 1.7089 -15.9532 +v 0.0474 1.7089 -16.2194 +v 0.0634 0.8805 -16.1713 +v 0.0620 0.8805 -15.9847 +v 0.0454 0.0000 -15.9656 +v 0.0473 0.0000 -16.2070 +v -0.0875 0.8805 -16.1763 +v -0.1519 0.0000 -16.2136 +v -0.0890 0.8805 -15.9897 +v -0.1537 0.0000 -15.9722 +v 0.2891 1.8182 -16.1558 +v 0.2879 1.8182 -15.9976 +v 0.4870 1.8182 -15.9911 +v 0.4882 1.8182 -16.1492 +v 0.5068 0.8805 -16.2411 +v 0.5059 0.8805 -16.1212 +v 0.5340 0.0000 -15.9911 +v 0.5352 0.0000 -16.1492 +v 0.3559 0.8805 -16.2461 +v 0.3361 0.0000 -16.1558 +v 0.3549 0.8805 -16.1262 +v 0.3349 0.0000 -15.9976 +v 0.8295 1.4149 -16.2523 +v 0.8286 1.4149 -16.1324 +v 1.7317 1.4917 -15.9514 +v 1.7329 1.4917 -16.1096 +v -0.0735 1.5530 -16.1694 +v -0.0747 1.5530 -16.0112 +v 0.8230 1.2339 -16.2525 +v 1.7244 1.2529 -16.1099 +v -0.0821 1.3141 -16.1697 +v 0.8221 1.2339 -16.1326 +v 1.7232 1.2529 -15.9517 +v -0.0833 1.3141 -16.0115 +v 0.8275 0.5144 -15.9900 +v 0.8266 0.5144 -15.8701 +v 1.7317 0.5972 -15.9514 +v 1.7329 0.5972 -16.1096 +v -0.0735 0.6584 -16.1694 +v -0.0747 0.6584 -16.0112 +v 0.8210 0.3333 -15.9902 +v 1.7244 0.3583 -16.1099 +v -0.0821 0.4196 -16.1697 +v 0.8201 0.3333 -15.8703 +v 1.7232 0.3583 -15.9517 +v -0.0833 0.4196 -16.0115 +v 0.7467 1.8814 -16.1422 +v 0.7455 1.8814 -15.9841 +v 0.9446 1.8814 -15.9775 +v 0.9459 1.8814 -16.1356 +v 0.9222 0.8805 -16.1897 +v 0.9213 0.8805 -16.0698 +v 0.9446 0.0000 -15.9775 +v 0.9459 0.0000 -16.1356 +v 0.7712 0.8805 -16.1947 +v 0.7467 0.0000 -16.1422 +v 0.7703 0.8805 -16.0748 +v 0.7455 0.0000 -15.9841 +v 1.1950 1.6654 -16.1274 +v 1.1938 1.6654 -15.9692 +v 1.3929 1.6654 -15.9626 +v 1.3941 1.6654 -16.1208 +v 1.3475 0.8805 -16.0068 +v 1.3466 0.8805 -15.8869 +v 1.3929 0.0000 -15.9626 +v 1.3941 0.0000 -16.1208 +v 1.1966 0.8805 -16.0118 +v 1.1950 0.0000 -16.1274 +v 1.1957 0.8805 -15.8919 +v 1.1938 0.0000 -15.9692 +v 1.5953 1.7611 -16.1723 +v 1.5932 1.7611 -15.8978 +v 1.7923 1.7611 -15.8912 +v 1.7944 1.7611 -16.1657 +v 1.7396 0.8805 -16.0902 +v 1.7387 0.8805 -15.9703 +v 1.7928 0.0000 -15.9494 +v 1.7940 0.0000 -16.1076 +v 1.5887 0.8805 -16.0952 +v 1.5948 0.0000 -16.1141 +v 1.5877 0.8805 -15.9753 +v 1.5936 0.0000 -15.9560 +v 1.9308 1.7089 -16.2260 +v 1.9288 1.7089 -15.9598 +v 2.1279 1.7089 -15.9532 +v 2.1299 1.7089 -16.2194 +v 2.1460 0.8805 -16.1713 +v 2.1446 0.8805 -15.9847 +v 2.1280 0.0000 -15.9656 +v 2.1299 0.0000 -16.2070 +v 1.9951 0.8805 -16.1763 +v 1.9307 0.0000 -16.2136 +v 1.9936 0.8805 -15.9897 +v 1.9289 0.0000 -15.9722 +v 2.3717 1.8182 -16.1558 +v 2.3705 1.8182 -15.9976 +v 2.5696 1.8182 -15.9911 +v 2.5708 1.8182 -16.1492 +v 2.5894 0.8805 -16.2411 +v 2.5885 0.8805 -16.1212 +v 2.6166 0.0000 -15.9911 +v 2.6178 0.0000 -16.1492 +v 2.4385 0.8805 -16.2461 +v 2.4187 0.0000 -16.1558 +v 2.4375 0.8805 -16.1262 +v 2.4175 0.0000 -15.9976 +v 2.9121 1.4149 -16.2523 +v 2.9112 1.4149 -16.1324 +v 3.8143 1.4917 -15.9514 +v 3.8155 1.4917 -16.1096 +v 2.0091 1.5530 -16.1694 +v 2.0079 1.5530 -16.0112 +v 2.9056 1.2339 -16.2525 +v 3.8070 1.2529 -16.1099 +v 2.0005 1.3141 -16.1697 +v 2.9047 1.2339 -16.1326 +v 3.8058 1.2529 -15.9517 +v 1.9993 1.3141 -16.0115 +v 2.9101 0.5144 -15.9900 +v 2.9092 0.5144 -15.8701 +v 3.8143 0.5972 -15.9514 +v 3.8155 0.5972 -16.1096 +v 2.0091 0.6584 -16.1694 +v 2.0079 0.6584 -16.0112 +v 2.9036 0.3333 -15.9902 +v 3.8070 0.3583 -16.1099 +v 2.0005 0.4196 -16.1697 +v 2.9027 0.3333 -15.8703 +v 3.8058 0.3583 -15.9517 +v 1.9993 0.4196 -16.0115 +v 2.8293 1.8814 -16.1422 +v 2.8281 1.8814 -15.9841 +v 3.0272 1.8814 -15.9775 +v 3.0285 1.8814 -16.1356 +v 3.0048 0.8805 -16.1897 +v 3.0038 0.8805 -16.0698 +v 3.0272 0.0000 -15.9775 +v 3.0285 0.0000 -16.1356 +v 2.8538 0.8805 -16.1947 +v 2.8293 0.0000 -16.1422 +v 2.8529 0.8805 -16.0748 +v 2.8281 0.0000 -15.9841 +v 3.2776 1.6654 -16.1274 +v 3.2764 1.6654 -15.9692 +v 3.4755 1.6654 -15.9626 +v 3.4767 1.6654 -16.1208 +v 3.4301 0.8805 -16.0068 +v 3.4292 0.8805 -15.8869 +v 3.4755 0.0000 -15.9626 +v 3.4767 0.0000 -16.1208 +v 3.2792 0.8805 -16.0118 +v 3.2776 0.0000 -16.1274 +v 3.2783 0.8805 -15.8919 +v 3.2764 0.0000 -15.9692 +v 3.6779 1.7611 -16.1723 +v 3.6758 1.7611 -15.8978 +v 3.8749 1.7611 -15.8912 +v 3.8770 1.7611 -16.1657 +v 3.8222 0.8805 -16.0902 +v 3.8213 0.8805 -15.9703 +v 3.8753 0.0000 -15.9494 +v 3.8766 0.0000 -16.1076 +v 3.6713 0.8805 -16.0952 +v 3.6774 0.0000 -16.1141 +v 3.6703 0.8805 -15.9753 +v 3.6762 0.0000 -15.9560 +v 4.0134 1.7089 -16.2260 +v 4.0114 1.7089 -15.9598 +v 4.2105 1.7089 -15.9532 +v 4.2126 1.7089 -16.2194 +v 4.2286 0.8805 -16.1713 +v 4.2272 0.8805 -15.9847 +v 4.2106 0.0000 -15.9656 +v 4.2125 0.0000 -16.2070 +v 4.0777 0.8805 -16.1763 +v 4.0133 0.0000 -16.2136 +v 4.0762 0.8805 -15.9897 +v 4.0115 0.0000 -15.9722 +v 4.4543 1.8182 -16.1558 +v 4.4531 1.8182 -15.9976 +v 4.6522 1.8182 -15.9911 +v 4.6534 1.8182 -16.1492 +v 4.6720 0.8805 -16.2411 +v 4.6711 0.8805 -16.1212 +v 4.6992 0.0000 -15.9911 +v 4.7004 0.0000 -16.1492 +v 4.5211 0.8805 -16.2461 +v 4.5013 0.0000 -16.1558 +v 4.5201 0.8805 -16.1262 +v 4.5001 0.0000 -15.9976 +v 4.9947 1.4149 -16.2523 +v 4.9938 1.4149 -16.1324 +v 5.8969 1.4917 -15.9514 +v 5.8981 1.4917 -16.1096 +v 4.0917 1.5530 -16.1694 +v 4.0905 1.5530 -16.0112 +v 4.9883 1.2339 -16.2525 +v 5.8896 1.2529 -16.1099 +v 4.0831 1.3141 -16.1697 +v 4.9873 1.2339 -16.1326 +v 5.8884 1.2529 -15.9517 +v 4.0819 1.3141 -16.0115 +v 4.9927 0.5144 -15.9900 +v 4.9918 0.5144 -15.8701 +v 5.8969 0.5972 -15.9514 +v 5.8981 0.5972 -16.1096 +v 4.0917 0.6584 -16.1694 +v 4.0905 0.6584 -16.0112 +v 4.9863 0.3333 -15.9902 +v 5.8896 0.3583 -16.1099 +v 4.0831 0.4196 -16.1697 +v 4.9853 0.3333 -15.8703 +v 5.8884 0.3583 -15.9517 +v 4.0819 0.4196 -16.0115 +v 4.9119 1.8814 -16.1422 +v 4.9107 1.8814 -15.9841 +v 5.1098 1.8814 -15.9775 +v 5.1111 1.8814 -16.1356 +v 5.0874 0.8805 -16.1897 +v 5.0865 0.8805 -16.0698 +v 5.1098 0.0000 -15.9775 +v 5.1111 0.0000 -16.1356 +v 4.9364 0.8805 -16.1947 +v 4.9119 0.0000 -16.1422 +v 4.9355 0.8805 -16.0748 +v 4.9107 0.0000 -15.9841 +v 5.3602 1.6654 -16.1274 +v 5.3590 1.6654 -15.9692 +v 5.5581 1.6654 -15.9626 +v 5.5593 1.6654 -16.1208 +v 5.5127 0.8805 -16.0068 +v 5.5118 0.8805 -15.8869 +v 5.5581 0.0000 -15.9626 +v 5.5593 0.0000 -16.1208 +v 5.3618 0.8805 -16.0118 +v 5.3602 0.0000 -16.1274 +v 5.3609 0.8805 -15.8919 +v 5.3590 0.0000 -15.9692 +v 5.7605 1.7611 -16.1723 +v 5.7584 1.7611 -15.8978 +v 5.9575 1.7611 -15.8912 +v 5.9596 1.7611 -16.1657 +v 5.9048 0.8805 -16.0902 +v 5.9039 0.8805 -15.9703 +v 5.9580 0.0000 -15.9494 +v 5.9592 0.0000 -16.1076 +v 5.7539 0.8805 -16.0952 +v 5.7600 0.0000 -16.1141 +v 5.7529 0.8805 -15.9753 +v 5.7588 0.0000 -15.9560 +v 6.0960 1.7089 -16.2260 +v 6.0940 1.7089 -15.9598 +v 6.2931 1.7089 -15.9532 +v 6.2952 1.7089 -16.2194 +v 6.3112 0.8805 -16.1713 +v 6.3098 0.8805 -15.9847 +v 6.2932 0.0000 -15.9656 +v 6.2951 0.0000 -16.2070 +v 6.1603 0.8805 -16.1763 +v 6.0959 0.0000 -16.2136 +v 6.1588 0.8805 -15.9897 +v 6.0941 0.0000 -15.9722 +v 6.5369 1.8182 -16.1558 +v 6.5357 1.8182 -15.9976 +v 6.7348 1.8182 -15.9911 +v 6.7360 1.8182 -16.1492 +v 6.7546 0.8805 -16.2411 +v 6.7537 0.8805 -16.1212 +v 6.7818 0.0000 -15.9911 +v 6.7830 0.0000 -16.1492 +v 6.6037 0.8805 -16.2461 +v 6.5839 0.0000 -16.1558 +v 6.6027 0.8805 -16.1262 +v 6.5827 0.0000 -15.9976 +v 7.0773 1.4149 -16.2523 +v 7.0764 1.4149 -16.1324 +v 7.9795 1.4917 -15.9514 +v 7.9807 1.4917 -16.1096 +v 6.1743 1.5530 -16.1694 +v 6.1731 1.5530 -16.0112 +v 7.0709 1.2339 -16.2525 +v 7.9722 1.2529 -16.1099 +v 6.1657 1.3141 -16.1697 +v 7.0699 1.2339 -16.1327 +v 7.9710 1.2529 -15.9517 +v 6.1645 1.3141 -16.0115 +v 7.0753 0.5144 -15.9900 +v 7.0744 0.5144 -15.8701 +v 7.9795 0.5972 -15.9514 +v 7.9807 0.5972 -16.1096 +v 6.1743 0.6584 -16.1694 +v 6.1731 0.6584 -16.0112 +v 7.0689 0.3333 -15.9902 +v 7.9722 0.3583 -16.1099 +v 6.1657 0.4196 -16.1697 +v 7.0679 0.3333 -15.8703 +v 7.9710 0.3583 -15.9517 +v 6.1645 0.4196 -16.0115 +v 6.9945 1.8814 -16.1422 +v 6.9933 1.8814 -15.9841 +v 7.1924 1.8814 -15.9775 +v 7.1937 1.8814 -16.1356 +v 7.1700 0.8805 -16.1897 +v 7.1691 0.8805 -16.0698 +v 7.1924 0.0000 -15.9775 +v 7.1937 0.0000 -16.1356 +v 7.0190 0.8805 -16.1947 +v 6.9945 0.0000 -16.1422 +v 7.0181 0.8805 -16.0748 +v 6.9933 0.0000 -15.9841 +v 7.4428 1.6654 -16.1274 +v 7.4416 1.6654 -15.9692 +v 7.6407 1.6654 -15.9626 +v 7.6420 1.6654 -16.1208 +v 7.5953 0.8805 -16.0068 +v 7.5944 0.8805 -15.8869 +v 7.6407 0.0000 -15.9626 +v 7.6420 0.0000 -16.1208 +v 7.4444 0.8805 -16.0118 +v 7.4428 0.0000 -16.1274 +v 7.4435 0.8805 -15.8919 +v 7.4416 0.0000 -15.9692 +v 7.8431 1.7611 -16.1723 +v 7.8410 1.7611 -15.8978 +v 8.0401 1.7611 -15.8912 +v 8.0422 1.7611 -16.1657 +v 7.9874 0.8805 -16.0902 +v 7.9865 0.8805 -15.9703 +v 8.0406 0.0000 -15.9494 +v 8.0418 0.0000 -16.1076 +v 7.8365 0.8805 -16.0952 +v 7.8426 0.0000 -16.1142 +v 7.8355 0.8805 -15.9753 +v 7.8414 0.0000 -15.9560 +v 8.1786 1.7089 -16.2260 +v 8.1766 1.7089 -15.9598 +v 8.3757 1.7089 -15.9532 +v 8.3778 1.7089 -16.2194 +v 8.3938 0.8805 -16.1713 +v 8.3924 0.8805 -15.9847 +v 8.3758 0.0000 -15.9656 +v 8.3777 0.0000 -16.2070 +v 8.2429 0.8805 -16.1763 +v 8.1785 0.0000 -16.2136 +v 8.2414 0.8805 -15.9897 +v 8.1767 0.0000 -15.9722 +v 8.6195 1.8182 -16.1558 +v 8.6183 1.8182 -15.9976 +v 8.8174 1.8182 -15.9911 +v 8.8186 1.8182 -16.1492 +v 8.8372 0.8805 -16.2411 +v 8.8363 0.8805 -16.1212 +v 8.8644 0.0000 -15.9911 +v 8.8656 0.0000 -16.1492 +v 8.6863 0.8805 -16.2461 +v 8.6665 0.0000 -16.1558 +v 8.6854 0.8805 -16.1262 +v 8.6653 0.0000 -15.9976 +v 9.1599 1.4149 -16.2523 +v 9.1590 1.4149 -16.1324 +v 10.0621 1.4917 -15.9514 +v 10.0633 1.4917 -16.1096 +v 8.2569 1.5530 -16.1694 +v 8.2557 1.5530 -16.0112 +v 9.1535 1.2339 -16.2525 +v 10.0548 1.2529 -16.1099 +v 8.2483 1.3141 -16.1697 +v 9.1525 1.2339 -16.1327 +v 10.0536 1.2529 -15.9517 +v 8.2471 1.3141 -16.0115 +v 9.1579 0.5144 -15.9900 +v 9.1570 0.5144 -15.8701 +v 10.0621 0.5972 -15.9514 +v 10.0633 0.5972 -16.1096 +v 8.2569 0.6584 -16.1694 +v 8.2557 0.6584 -16.0112 +v 9.1515 0.3333 -15.9902 +v 10.0548 0.3583 -16.1099 +v 8.2483 0.4196 -16.1697 +v 9.1505 0.3333 -15.8703 +v 10.0536 0.3583 -15.9517 +v 8.2471 0.4196 -16.0115 +v 9.0771 1.8814 -16.1422 +v 9.0759 1.8814 -15.9841 +v 9.2751 1.8814 -15.9775 +v 9.2763 1.8814 -16.1356 +v 9.2526 0.8805 -16.1897 +v 9.2517 0.8805 -16.0698 +v 9.2751 0.0000 -15.9775 +v 9.2763 0.0000 -16.1356 +v 9.1016 0.8805 -16.1947 +v 9.0771 0.0000 -16.1422 +v 9.1007 0.8805 -16.0748 +v 9.0759 0.0000 -15.9841 +v 9.5254 1.6654 -16.1274 +v 9.5242 1.6654 -15.9692 +v 9.7233 1.6654 -15.9626 +v 9.7246 1.6654 -16.1208 +v 9.6779 0.8805 -16.0068 +v 9.6770 0.8805 -15.8869 +v 9.7233 0.0000 -15.9626 +v 9.7246 0.0000 -16.1208 +v 9.5270 0.8805 -16.0118 +v 9.5254 0.0000 -16.1274 +v 9.5261 0.8805 -15.8919 +v 9.5242 0.0000 -15.9692 +v 9.9257 1.7611 -16.1723 +v 9.9236 1.7611 -15.8978 +v 10.1227 1.7611 -15.8912 +v 10.1248 1.7611 -16.1657 +v 10.0700 0.8805 -16.0902 +v 10.0691 0.8805 -15.9703 +v 10.1232 0.0000 -15.9494 +v 10.1244 0.0000 -16.1076 +v 9.9191 0.8805 -16.0952 +v 9.9252 0.0000 -16.1142 +v 9.9181 0.8805 -15.9753 +v 9.9240 0.0000 -15.9560 +v 10.2612 1.7089 -16.2260 +v 10.2592 1.7089 -15.9598 +v 10.4583 1.7089 -15.9532 +v 10.4604 1.7089 -16.2194 +v 10.4764 0.8805 -16.1713 +v 10.4750 0.8805 -15.9847 +v 10.4584 0.0000 -15.9656 +v 10.4603 0.0000 -16.2070 +v 10.3255 0.8805 -16.1763 +v 10.2611 0.0000 -16.2136 +v 10.3240 0.8805 -15.9897 +v 10.2593 0.0000 -15.9722 +v 10.7021 1.8182 -16.1558 +v 10.7009 1.8182 -15.9976 +v 10.9000 1.8182 -15.9911 +v 10.9012 1.8182 -16.1492 +v 10.9198 0.8805 -16.2411 +v 10.9189 0.8805 -16.1212 +v 10.9470 0.0000 -15.9911 +v 10.9482 0.0000 -16.1492 +v 10.7689 0.8805 -16.2461 +v 10.7491 0.0000 -16.1558 +v 10.7679 0.8805 -16.1262 +v 10.7479 0.0000 -15.9976 +v 11.2425 1.4149 -16.2523 +v 11.2416 1.4149 -16.1324 +v 12.1447 1.4917 -15.9514 +v 12.1459 1.4917 -16.1096 +v 10.3395 1.5530 -16.1694 +v 10.3383 1.5530 -16.0112 +v 11.2360 1.2339 -16.2525 +v 12.1374 1.2529 -16.1099 +v 10.3309 1.3141 -16.1697 +v 11.2351 1.2339 -16.1327 +v 12.1362 1.2529 -15.9517 +v 10.3297 1.3141 -16.0115 +v 11.2405 0.5144 -15.9900 +v 11.2396 0.5144 -15.8701 +v 12.1447 0.5972 -15.9514 +v 12.1459 0.5972 -16.1096 +v 10.3395 0.6584 -16.1694 +v 10.3383 0.6584 -16.0112 +v 11.2340 0.3333 -15.9902 +v 12.1374 0.3583 -16.1099 +v 10.3309 0.4196 -16.1697 +v 11.2331 0.3333 -15.8703 +v 12.1362 0.3583 -15.9517 +v 10.3297 0.4196 -16.0115 +v 11.1597 1.8814 -16.1422 +v 11.1585 1.8814 -15.9841 +v 11.3576 1.8814 -15.9775 +v 11.3589 1.8814 -16.1356 +v 11.3352 0.8805 -16.1897 +v 11.3342 0.8805 -16.0698 +v 11.3576 0.0000 -15.9775 +v 11.3589 0.0000 -16.1356 +v 11.1842 0.8805 -16.1947 +v 11.1597 0.0000 -16.1422 +v 11.1833 0.8805 -16.0748 +v 11.1585 0.0000 -15.9841 +v 11.6080 1.6654 -16.1274 +v 11.6068 1.6654 -15.9692 +v 11.8059 1.6654 -15.9626 +v 11.8071 1.6654 -16.1208 +v 11.7605 0.8805 -16.0068 +v 11.7596 0.8805 -15.8869 +v 11.8059 0.0000 -15.9626 +v 11.8071 0.0000 -16.1208 +v 11.6096 0.8805 -16.0118 +v 11.6080 0.0000 -16.1274 +v 11.6087 0.8805 -15.8919 +v 11.6068 0.0000 -15.9692 +v 12.0083 1.7611 -16.1723 +v 12.0062 1.7611 -15.8978 +v 12.2053 1.7611 -15.8912 +v 12.2074 1.7611 -16.1657 +v 12.1526 0.8805 -16.0902 +v 12.1517 0.8805 -15.9703 +v 12.2057 0.0000 -15.9494 +v 12.2070 0.0000 -16.1076 +v 12.0017 0.8805 -16.0952 +v 12.0078 0.0000 -16.1142 +v 12.0007 0.8805 -15.9753 +v 12.0066 0.0000 -15.9560 +v 12.3438 1.7089 -16.2260 +v 12.3418 1.7089 -15.9598 +v 12.5409 1.7089 -15.9532 +v 12.5430 1.7089 -16.2194 +v 12.5590 0.8805 -16.1713 +v 12.5576 0.8805 -15.9847 +v 12.5410 0.0000 -15.9656 +v 12.5429 0.0000 -16.2070 +v 12.4081 0.8805 -16.1763 +v 12.3437 0.0000 -16.2136 +v 12.4066 0.8805 -15.9897 +v 12.3419 0.0000 -15.9722 +v 12.7847 1.8182 -16.1558 +v 12.7835 1.8182 -15.9976 +v 12.9826 1.8182 -15.9911 +v 12.9838 1.8182 -16.1492 +v 13.0024 0.8805 -16.2411 +v 13.0015 0.8805 -16.1212 +v 13.0296 0.0000 -15.9911 +v 13.0308 0.0000 -16.1492 +v 12.8515 0.8805 -16.2461 +v 12.8317 0.0000 -16.1558 +v 12.8505 0.8805 -16.1262 +v 12.8305 0.0000 -15.9976 +v 13.3251 1.4149 -16.2523 +v 13.3242 1.4149 -16.1324 +v 14.2273 1.4917 -15.9514 +v 14.2285 1.4917 -16.1096 +v 12.4221 1.5530 -16.1694 +v 12.4209 1.5530 -16.0112 +v 13.3187 1.2339 -16.2525 +v 14.2200 1.2529 -16.1099 +v 12.4135 1.3141 -16.1697 +v 13.3177 1.2339 -16.1327 +v 14.2188 1.2529 -15.9517 +v 12.4123 1.3141 -16.0115 +v 13.3231 0.5144 -15.9900 +v 13.3222 0.5144 -15.8701 +v 14.2273 0.5972 -15.9514 +v 14.2285 0.5972 -16.1096 +v 12.4221 0.6584 -16.1694 +v 12.4209 0.6584 -16.0112 +v 13.3167 0.3333 -15.9902 +v 14.2200 0.3583 -16.1099 +v 12.4135 0.4196 -16.1697 +v 13.3157 0.3333 -15.8703 +v 14.2188 0.3583 -15.9517 +v 12.4123 0.4196 -16.0115 +v 13.2423 1.8814 -16.1422 +v 13.2411 1.8814 -15.9841 +v 13.4402 1.8814 -15.9775 +v 13.4415 1.8814 -16.1356 +v 13.4178 0.8805 -16.1897 +v 13.4169 0.8805 -16.0698 +v 13.4402 0.0000 -15.9775 +v 13.4415 0.0000 -16.1356 +v 13.2668 0.8805 -16.1947 +v 13.2423 0.0000 -16.1422 +v 13.2659 0.8805 -16.0748 +v 13.2411 0.0000 -15.9841 +v 13.6906 1.6654 -16.1274 +v 13.6894 1.6654 -15.9692 +v 13.8885 1.6654 -15.9626 +v 13.8898 1.6654 -16.1208 +v 13.8432 0.8805 -16.0068 +v 13.8422 0.8805 -15.8869 +v 13.8885 0.0000 -15.9626 +v 13.8898 0.0000 -16.1208 +v 13.6922 0.8805 -16.0118 +v 13.6906 0.0000 -16.1274 +v 13.6913 0.8805 -15.8919 +v 13.6894 0.0000 -15.9692 +v 14.0909 1.7611 -16.1723 +v 14.0888 1.7611 -15.8978 +v 14.2879 1.7611 -15.8912 +v 14.2900 1.7611 -16.1657 +v 14.2352 0.8805 -16.0902 +v 14.2343 0.8805 -15.9703 +v 14.2884 0.0000 -15.9494 +v 14.2896 0.0000 -16.1076 +v 14.0843 0.8805 -16.0952 +v 14.0904 0.0000 -16.1142 +v 14.0833 0.8805 -15.9753 +v 14.0892 0.0000 -15.9560 +v 14.4264 1.7089 -16.2260 +v 14.4244 1.7089 -15.9598 +v 14.6235 1.7089 -15.9532 +v 14.6256 1.7089 -16.2194 +v 14.6416 0.8805 -16.1713 +v 14.6402 0.8805 -15.9847 +v 14.6236 0.0000 -15.9656 +v 14.6255 0.0000 -16.2070 +v 14.4907 0.8805 -16.1763 +v 14.4263 0.0000 -16.2136 +v 14.4892 0.8805 -15.9897 +v 14.4245 0.0000 -15.9722 +v 14.8673 1.8182 -16.1558 +v 14.8661 1.8182 -15.9976 +v 15.0652 1.8182 -15.9911 +v 15.0664 1.8182 -16.1492 +v 15.0850 0.8805 -16.2411 +v 15.0841 0.8805 -16.1212 +v 15.1122 0.0000 -15.9911 +v 15.1134 0.0000 -16.1492 +v 14.9341 0.8805 -16.2461 +v 14.9143 0.0000 -16.1558 +v 14.9331 0.8805 -16.1262 +v 14.9131 0.0000 -15.9976 +v 15.4077 1.4149 -16.2523 +v 15.4068 1.4149 -16.1324 +v 16.3099 1.4917 -15.9514 +v 16.3111 1.4917 -16.1096 +v 14.5047 1.5530 -16.1694 +v 14.5035 1.5530 -16.0112 +v 15.4012 1.2339 -16.2525 +v 16.3026 1.2529 -16.1099 +v 14.4961 1.3141 -16.1697 +v 15.4003 1.2339 -16.1327 +v 16.3014 1.2529 -15.9517 +v 14.4949 1.3141 -16.0115 +v 15.4057 0.5144 -15.9900 +v 15.4048 0.5144 -15.8701 +v 16.3099 0.5972 -15.9514 +v 16.3111 0.5972 -16.1096 +v 14.5047 0.6584 -16.1694 +v 14.5035 0.6584 -16.0112 +v 15.3992 0.3333 -15.9902 +v 16.3026 0.3583 -16.1099 +v 14.4961 0.4196 -16.1697 +v 15.3983 0.3333 -15.8703 +v 16.3014 0.3583 -15.9517 +v 14.4949 0.4196 -16.0115 +v 15.3249 1.8814 -16.1422 +v 15.3237 1.8814 -15.9841 +v 15.5228 1.8814 -15.9775 +v 15.5241 1.8814 -16.1356 +v 15.5004 0.8805 -16.1897 +v 15.4995 0.8805 -16.0698 +v 15.5228 0.0000 -15.9775 +v 15.5241 0.0000 -16.1356 +v 15.3494 0.8805 -16.1947 +v 15.3249 0.0000 -16.1422 +v 15.3485 0.8805 -16.0748 +v 15.3237 0.0000 -15.9841 +v 15.7732 1.6654 -16.1274 +v 15.7720 1.6654 -15.9692 +v 15.9711 1.6654 -15.9626 +v 15.9723 1.6654 -16.1208 +v 15.9257 0.8805 -16.0068 +v 15.9248 0.8805 -15.8869 +v 15.9711 0.0000 -15.9626 +v 15.9723 0.0000 -16.1208 +v 15.7748 0.8805 -16.0118 +v 15.7732 0.0000 -16.1274 +v 15.7739 0.8805 -15.8919 +v 15.7720 0.0000 -15.9692 +v 16.1735 1.7611 -16.1723 +v 16.1714 1.7611 -15.8978 +v 16.3705 1.7611 -15.8912 +v 16.3726 1.7611 -16.1657 +v 16.3178 0.8805 -16.0902 +v 16.3169 0.8805 -15.9703 +v 16.3710 0.0000 -15.9494 +v 16.3722 0.0000 -16.1076 +v 16.1669 0.8805 -16.0952 +v 16.1730 0.0000 -16.1142 +v 16.1659 0.8805 -15.9753 +v 16.1718 0.0000 -15.9560 +v 16.4188 1.7089 -16.2260 +v 16.4168 1.7089 -15.9598 +v 16.6159 1.7089 -15.9532 +v 16.6180 1.7089 -16.2194 +v 16.6340 0.8805 -16.1713 +v 16.6326 0.8805 -15.9847 +v 16.6160 0.0000 -15.9656 +v 16.6179 0.0000 -16.2070 +v 16.4831 0.8805 -16.1763 +v 16.4188 0.0000 -16.2136 +v 16.4817 0.8805 -15.9897 +v 16.4169 0.0000 -15.9722 +v 16.8597 1.8182 -16.1558 +v 16.8585 1.8182 -15.9976 +v 17.0576 1.8182 -15.9911 +v 17.0588 1.8182 -16.1492 +v 17.0774 0.8805 -16.2411 +v 17.0765 0.8805 -16.1212 +v 17.1046 0.0000 -15.9911 +v 17.1058 0.0000 -16.1492 +v 16.9265 0.8805 -16.2461 +v 16.9067 0.0000 -16.1558 +v 16.9256 0.8805 -16.1262 +v 16.9055 0.0000 -15.9976 +v 17.4001 1.4149 -16.2523 +v 17.3992 1.4149 -16.1324 +v 18.3023 1.4917 -15.9514 +v 18.3035 1.4917 -16.1096 +v 16.4971 1.5530 -16.1694 +v 16.4959 1.5530 -16.0112 +v 17.3937 1.2339 -16.2525 +v 18.2950 1.2529 -16.1099 +v 16.4886 1.3141 -16.1697 +v 17.3927 1.2339 -16.1327 +v 18.2938 1.2529 -15.9517 +v 16.4873 1.3141 -16.0115 +v 17.3981 0.5144 -15.9900 +v 17.3972 0.5144 -15.8701 +v 18.3023 0.5972 -15.9514 +v 18.3035 0.5972 -16.1096 +v 16.4971 0.6584 -16.1694 +v 16.4959 0.6584 -16.0112 +v 17.3917 0.3333 -15.9902 +v 18.2950 0.3583 -16.1099 +v 16.4886 0.4196 -16.1697 +v 17.3907 0.3333 -15.8703 +v 18.2938 0.3583 -15.9517 +v 16.4873 0.4196 -16.0115 +v 17.3173 1.8814 -16.1422 +v 17.3161 1.8814 -15.9841 +v 17.5153 1.8814 -15.9775 +v 17.5165 1.8814 -16.1356 +v 17.4928 0.8805 -16.1897 +v 17.4919 0.8805 -16.0698 +v 17.5153 0.0000 -15.9775 +v 17.5165 0.0000 -16.1356 +v 17.3418 0.8805 -16.1947 +v 17.3173 0.0000 -16.1422 +v 17.3409 0.8805 -16.0748 +v 17.3161 0.0000 -15.9841 +v 17.7656 1.6654 -16.1274 +v 17.7644 1.6654 -15.9692 +v 17.9636 1.6654 -15.9626 +v 17.9648 1.6654 -16.1208 +v 17.9182 0.8805 -16.0068 +v 17.9172 0.8805 -15.8869 +v 17.9636 0.0000 -15.9626 +v 17.9648 0.0000 -16.1208 +v 17.7672 0.8805 -16.0118 +v 17.7656 0.0000 -16.1274 +v 17.7663 0.8805 -15.8919 +v 17.7644 0.0000 -15.9692 +v 18.1659 1.7611 -16.1723 +v 18.1638 1.7611 -15.8978 +v 18.3629 1.7611 -15.8912 +v 18.3650 1.7611 -16.1657 +v 18.3102 0.8805 -16.0902 +v 18.3093 0.8805 -15.9703 +v 18.3634 0.0000 -15.9494 +v 18.3646 0.0000 -16.1076 +v 18.1593 0.8805 -16.0952 +v 18.1654 0.0000 -16.1142 +v 18.1584 0.8805 -15.9753 +v 18.1642 0.0000 -15.9560 +v 18.4203 1.7089 -15.6952 +v 18.1542 1.7089 -15.6972 +v 18.1476 1.7089 -15.4981 +v 18.4137 1.7089 -15.4960 +v 18.3657 0.8805 -15.4800 +v 18.1791 0.8805 -15.4814 +v 18.1600 0.0000 -15.4980 +v 18.4013 0.0000 -15.4961 +v 18.3707 0.8805 -15.6309 +v 18.4079 0.0000 -15.6953 +v 18.1841 0.8805 -15.6324 +v 18.1666 0.0000 -15.6971 +v 18.3502 1.8182 -15.2543 +v 18.1920 1.8182 -15.2555 +v 18.1854 1.8182 -15.0564 +v 18.3436 1.8182 -15.0552 +v 18.4355 0.8805 -15.0366 +v 18.3156 0.8805 -15.0375 +v 18.1854 0.0000 -15.0094 +v 18.3436 0.0000 -15.0082 +v 18.4405 0.8805 -15.1875 +v 18.3502 0.0000 -15.2073 +v 18.3206 0.8805 -15.1884 +v 18.1920 0.0000 -15.2085 +v 18.4467 1.4149 -14.7139 +v 18.3268 1.4149 -14.7148 +v 18.1458 1.4917 -13.8117 +v 18.3039 1.4917 -13.8105 +v 18.3637 1.5530 -15.6169 +v 18.2056 1.5530 -15.6181 +v 18.4469 1.2339 -14.7203 +v 18.3042 1.2529 -13.8190 +v 18.3640 1.3141 -15.6255 +v 18.3270 1.2339 -14.7213 +v 18.1460 1.2529 -13.8202 +v 18.2059 1.3141 -15.6267 +v 18.1843 0.5144 -14.7159 +v 18.0644 0.5144 -14.7168 +v 18.1458 0.5972 -13.8117 +v 18.3039 0.5972 -13.8105 +v 18.3637 0.6584 -15.6169 +v 18.2056 0.6584 -15.6181 +v 18.1845 0.3333 -14.7223 +v 18.3042 0.3583 -13.8190 +v 18.3640 0.4196 -15.6255 +v 18.0646 0.3333 -14.7233 +v 18.1460 0.3583 -13.8202 +v 18.2059 0.4196 -15.6267 +v 18.3366 1.8814 -14.7967 +v 18.1784 1.8814 -14.7979 +v 18.1718 1.8814 -14.5987 +v 18.3300 1.8814 -14.5975 +v 18.3841 0.8805 -14.6212 +v 18.2642 0.8805 -14.6221 +v 18.1718 0.0000 -14.5987 +v 18.3300 0.0000 -14.5975 +v 18.3891 0.8805 -14.7722 +v 18.3366 0.0000 -14.7967 +v 18.2691 0.8805 -14.7731 +v 18.1784 0.0000 -14.7979 +v 18.3218 1.6654 -14.3484 +v 18.1636 1.6654 -14.3496 +v 18.1570 1.6654 -14.1505 +v 18.3152 1.6654 -14.1492 +v 18.2012 0.8805 -14.1958 +v 18.0813 0.8805 -14.1968 +v 18.1570 0.0000 -14.1505 +v 18.3152 0.0000 -14.1492 +v 18.2062 0.8805 -14.3468 +v 18.3218 0.0000 -14.3484 +v 18.0863 0.8805 -14.3477 +v 18.1636 0.0000 -14.3496 +v 18.3667 1.7611 -13.9481 +v 18.0922 1.7611 -13.9502 +v 18.0856 1.7611 -13.7511 +v 18.3601 1.7611 -13.7490 +v 18.2846 0.8805 -13.8038 +v 18.1647 0.8805 -13.8047 +v 18.1437 0.0000 -13.7506 +v 18.3019 0.0000 -13.7494 +v 18.2896 0.8805 -13.9547 +v 18.3085 0.0000 -13.9486 +v 18.1697 0.8805 -13.9557 +v 18.1503 0.0000 -13.9498 +v 18.4203 1.7089 -13.6126 +v 18.1542 1.7089 -13.6146 +v 18.1476 1.7089 -13.4154 +v 18.4137 1.7089 -13.4134 +v 18.3657 0.8805 -13.3974 +v 18.1791 0.8805 -13.3988 +v 18.1600 0.0000 -13.4154 +v 18.4013 0.0000 -13.4135 +v 18.3707 0.8805 -13.5483 +v 18.4079 0.0000 -13.6126 +v 18.1841 0.8805 -13.5497 +v 18.1666 0.0000 -13.6145 +v 18.3502 1.8182 -13.1717 +v 18.1920 1.8182 -13.1729 +v 18.1854 1.8182 -12.9738 +v 18.3436 1.8182 -12.9726 +v 18.4355 0.8805 -12.9540 +v 18.3156 0.8805 -12.9549 +v 18.1854 0.0000 -12.9268 +v 18.3436 0.0000 -12.9256 +v 18.4405 0.8805 -13.1049 +v 18.3502 0.0000 -13.1247 +v 18.3206 0.8805 -13.1058 +v 18.1920 0.0000 -13.1259 +v 18.4467 1.4149 -12.6313 +v 18.3268 1.4149 -12.6322 +v 18.1458 1.4917 -11.7291 +v 18.3039 1.4917 -11.7279 +v 18.3637 1.5530 -13.5343 +v 18.2056 1.5530 -13.5355 +v 18.4469 1.2339 -12.6377 +v 18.3042 1.2529 -11.7364 +v 18.3640 1.3141 -13.5428 +v 18.3270 1.2339 -12.6387 +v 18.1460 1.2529 -11.7376 +v 18.2059 1.3141 -13.5441 +v 18.1843 0.5144 -12.6333 +v 18.0644 0.5144 -12.6342 +v 18.1458 0.5972 -11.7291 +v 18.3039 0.5972 -11.7279 +v 18.3637 0.6584 -13.5343 +v 18.2056 0.6584 -13.5355 +v 18.1845 0.3333 -12.6397 +v 18.3042 0.3583 -11.7364 +v 18.3640 0.4196 -13.5428 +v 18.0646 0.3333 -12.6407 +v 18.1460 0.3583 -11.7376 +v 18.2059 0.4196 -13.5441 +v 18.3366 1.8814 -12.7141 +v 18.1784 1.8814 -12.7153 +v 18.1718 1.8814 -12.5161 +v 18.3300 1.8814 -12.5149 +v 18.3841 0.8805 -12.5386 +v 18.2642 0.8805 -12.5395 +v 18.1718 0.0000 -12.5161 +v 18.3300 0.0000 -12.5149 +v 18.3891 0.8805 -12.6896 +v 18.3366 0.0000 -12.7141 +v 18.2691 0.8805 -12.6905 +v 18.1784 0.0000 -12.7153 +v 18.3218 1.6654 -12.2658 +v 18.1636 1.6654 -12.2670 +v 18.1570 1.6654 -12.0679 +v 18.3152 1.6654 -12.0666 +v 18.2012 0.8805 -12.1132 +v 18.0813 0.8805 -12.1142 +v 18.1570 0.0000 -12.0679 +v 18.3152 0.0000 -12.0666 +v 18.2062 0.8805 -12.2642 +v 18.3218 0.0000 -12.2658 +v 18.0863 0.8805 -12.2651 +v 18.1636 0.0000 -12.2670 +v 18.3667 1.7611 -11.8655 +v 18.0922 1.7611 -11.8676 +v 18.0856 1.7611 -11.6685 +v 18.3601 1.7611 -11.6664 +v 18.2846 0.8805 -11.7212 +v 18.1647 0.8805 -11.7221 +v 18.1437 0.0000 -11.6680 +v 18.3019 0.0000 -11.6668 +v 18.2896 0.8805 -11.8721 +v 18.3085 0.0000 -11.8660 +v 18.1697 0.8805 -11.8730 +v 18.1503 0.0000 -11.8672 +v 18.4203 1.7089 -11.5205 +v 18.1542 1.7089 -11.5225 +v 18.1476 1.7089 -11.3233 +v 18.4137 1.7089 -11.3213 +v 18.3657 0.8805 -11.3053 +v 18.1791 0.8805 -11.3067 +v 18.1600 0.0000 -11.3233 +v 18.4013 0.0000 -11.3214 +v 18.3707 0.8805 -11.4562 +v 18.4079 0.0000 -11.5205 +v 18.1841 0.8805 -11.4576 +v 18.1666 0.0000 -11.5224 +v 18.3502 1.8182 -11.0796 +v 18.1920 1.8182 -11.0808 +v 18.1854 1.8182 -10.8817 +v 18.3436 1.8182 -10.8805 +v 18.4355 0.8805 -10.8619 +v 18.3156 0.8805 -10.8628 +v 18.1854 0.0000 -10.8347 +v 18.3436 0.0000 -10.8335 +v 18.4405 0.8805 -11.0128 +v 18.3502 0.0000 -11.0326 +v 18.3206 0.8805 -11.0137 +v 18.1920 0.0000 -11.0338 +v 18.4467 1.4149 -10.5392 +v 18.3268 1.4149 -10.5401 +v 18.1458 1.4917 -9.6370 +v 18.3039 1.4917 -9.6358 +v 18.3637 1.5530 -11.4422 +v 18.2056 1.5530 -11.4434 +v 18.4469 1.2339 -10.5456 +v 18.3042 1.2529 -9.6443 +v 18.3640 1.3141 -11.4507 +v 18.3270 1.2339 -10.5465 +v 18.1460 1.2529 -9.6455 +v 18.2059 1.3141 -11.4520 +v 18.1843 0.5144 -10.5412 +v 18.0644 0.5144 -10.5421 +v 18.1458 0.5972 -9.6370 +v 18.3039 0.5972 -9.6358 +v 18.3637 0.6584 -11.4422 +v 18.2056 0.6584 -11.4434 +v 18.1845 0.3333 -10.5476 +v 18.3042 0.3583 -9.6443 +v 18.3640 0.4196 -11.4507 +v 18.0646 0.3333 -10.5485 +v 18.1460 0.3583 -9.6455 +v 18.2059 0.4196 -11.4520 +v 18.3366 1.8814 -10.6220 +v 18.1784 1.8814 -10.6232 +v 18.1718 1.8814 -10.4240 +v 18.3300 1.8814 -10.4228 +v 18.3841 0.8805 -10.4465 +v 18.2642 0.8805 -10.4474 +v 18.1718 0.0000 -10.4240 +v 18.3300 0.0000 -10.4228 +v 18.3891 0.8805 -10.5975 +v 18.3366 0.0000 -10.6220 +v 18.2691 0.8805 -10.5984 +v 18.1784 0.0000 -10.6232 +v 18.3218 1.6654 -10.1737 +v 18.1636 1.6654 -10.1749 +v 18.1570 1.6654 -9.9757 +v 18.3152 1.6654 -9.9745 +v 18.2012 0.8805 -10.0211 +v 18.0813 0.8805 -10.0221 +v 18.1570 0.0000 -9.9757 +v 18.3152 0.0000 -9.9745 +v 18.2062 0.8805 -10.1721 +v 18.3218 0.0000 -10.1737 +v 18.0863 0.8805 -10.1730 +v 18.1636 0.0000 -10.1749 +v 18.3667 1.7611 -9.7734 +v 18.0922 1.7611 -9.7755 +v 18.0856 1.7611 -9.5764 +v 18.3601 1.7611 -9.5743 +v 18.2846 0.8805 -9.6291 +v 18.1647 0.8805 -9.6300 +v 18.1437 0.0000 -9.5759 +v 18.3019 0.0000 -9.5747 +v 18.2896 0.8805 -9.7800 +v 18.3085 0.0000 -9.7739 +v 18.1697 0.8805 -9.7809 +v 18.1503 0.0000 -9.7751 +v 18.4203 1.7088 -9.4379 +v 18.1542 1.7088 -9.4399 +v 18.1476 1.7088 -9.2407 +v 18.4137 1.7088 -9.2387 +v 18.3657 0.8805 -9.2227 +v 18.1791 0.8805 -9.2241 +v 18.1600 0.0000 -9.2407 +v 18.4013 0.0000 -9.2388 +v 18.3707 0.8805 -9.3736 +v 18.4079 0.0000 -9.4379 +v 18.1841 0.8805 -9.3750 +v 18.1666 0.0000 -9.4398 +v 18.3502 1.8182 -8.9970 +v 18.1920 1.8182 -8.9982 +v 18.1854 1.8182 -8.7991 +v 18.3436 1.8182 -8.7979 +v 18.4355 0.8805 -8.7793 +v 18.3156 0.8805 -8.7802 +v 18.1854 0.0000 -8.7521 +v 18.3436 0.0000 -8.7509 +v 18.4405 0.8805 -8.9302 +v 18.3502 0.0000 -8.9500 +v 18.3206 0.8805 -8.9311 +v 18.1920 0.0000 -8.9512 +v 18.4467 1.4149 -8.4566 +v 18.3268 1.4149 -8.4575 +v 18.1458 1.4917 -7.5544 +v 18.3039 1.4917 -7.5532 +v 18.3637 1.5530 -9.3596 +v 18.2056 1.5530 -9.3608 +v 18.4469 1.2339 -8.4630 +v 18.3042 1.2529 -7.5617 +v 18.3640 1.3141 -9.3681 +v 18.3270 1.2339 -8.4639 +v 18.1460 1.2529 -7.5629 +v 18.2059 1.3141 -9.3694 +v 18.1843 0.5144 -8.4586 +v 18.0644 0.5144 -8.4595 +v 18.1458 0.5972 -7.5544 +v 18.3039 0.5972 -7.5532 +v 18.3637 0.6584 -9.3596 +v 18.2056 0.6584 -9.3608 +v 18.1845 0.3333 -8.4650 +v 18.3042 0.3583 -7.5617 +v 18.3640 0.4196 -9.3681 +v 18.0646 0.3333 -8.4660 +v 18.1460 0.3583 -7.5629 +v 18.2059 0.4196 -9.3694 +v 18.3366 1.8814 -8.5394 +v 18.1784 1.8814 -8.5406 +v 18.1718 1.8814 -8.3414 +v 18.3300 1.8814 -8.3402 +v 18.3841 0.8805 -8.3639 +v 18.2642 0.8805 -8.3648 +v 18.1718 0.0000 -8.3414 +v 18.3300 0.0000 -8.3402 +v 18.3891 0.8805 -8.5149 +v 18.3366 0.0000 -8.5394 +v 18.2691 0.8805 -8.5158 +v 18.1784 0.0000 -8.5406 +v 18.3218 1.6654 -8.0911 +v 18.1636 1.6654 -8.0923 +v 18.1570 1.6654 -7.8931 +v 18.3152 1.6654 -7.8919 +v 18.2012 0.8805 -7.9385 +v 18.0813 0.8805 -7.9395 +v 18.1570 0.0000 -7.8932 +v 18.3152 0.0000 -7.8919 +v 18.2062 0.8805 -8.0895 +v 18.3218 0.0000 -8.0911 +v 18.0863 0.8805 -8.0904 +v 18.1636 0.0000 -8.0923 +v 18.3667 1.7611 -7.6908 +v 18.0922 1.7611 -7.6929 +v 18.0856 1.7611 -7.4938 +v 18.3601 1.7611 -7.4917 +v 18.2846 0.8805 -7.5465 +v 18.1647 0.8805 -7.5474 +v 18.1437 0.0000 -7.4933 +v 18.3019 0.0000 -7.4921 +v 18.2896 0.8805 -7.6974 +v 18.3085 0.0000 -7.6913 +v 18.1697 0.8805 -7.6983 +v 18.1503 0.0000 -7.6925 +v 18.4203 1.7088 -7.3786 +v 18.1542 1.7088 -7.3806 +v 18.1476 1.7088 -7.1815 +v 18.4137 1.7088 -7.1795 +v 18.3657 0.8805 -7.1634 +v 18.1791 0.8805 -7.1648 +v 18.1600 0.0000 -7.1814 +v 18.4013 0.0000 -7.1795 +v 18.3707 0.8805 -7.3143 +v 18.4079 0.0000 -7.3787 +v 18.1841 0.8805 -7.3158 +v 18.1666 0.0000 -7.3805 +v 18.3502 1.8182 -6.9377 +v 18.1920 1.8182 -6.9390 +v 18.1854 1.8182 -6.7398 +v 18.3436 1.8182 -6.7386 +v 18.4355 0.8805 -6.7200 +v 18.3156 0.8805 -6.7209 +v 18.1854 0.0000 -6.6928 +v 18.3436 0.0000 -6.6916 +v 18.4405 0.8805 -6.8709 +v 18.3502 0.0000 -6.8907 +v 18.3206 0.8805 -6.8719 +v 18.1920 0.0000 -6.8919 +v 18.4467 1.4149 -6.3973 +v 18.3268 1.4149 -6.3982 +v 18.1458 1.4917 -5.4951 +v 18.3039 1.4917 -5.4939 +v 18.3637 1.5530 -7.3003 +v 18.2056 1.5530 -7.3015 +v 18.4469 1.2339 -6.4038 +v 18.3042 1.2529 -5.5024 +v 18.3640 1.3141 -7.3089 +v 18.3270 1.2339 -6.4047 +v 18.1460 1.2529 -5.5036 +v 18.2059 1.3141 -7.3101 +v 18.1843 0.5144 -6.3993 +v 18.0644 0.5144 -6.4002 +v 18.1458 0.5972 -5.4951 +v 18.3039 0.5972 -5.4939 +v 18.3637 0.6584 -7.3003 +v 18.2056 0.6584 -7.3015 +v 18.1845 0.3333 -6.4058 +v 18.3042 0.3583 -5.5024 +v 18.3640 0.4196 -7.3089 +v 18.0646 0.3333 -6.4067 +v 18.1460 0.3583 -5.5036 +v 18.2059 0.4196 -7.3101 +v 18.3366 1.8814 -6.4801 +v 18.1784 1.8814 -6.4813 +v 18.1718 1.8814 -6.2822 +v 18.3300 1.8814 -6.2810 +v 18.3841 0.8805 -6.3046 +v 18.2642 0.8805 -6.3056 +v 18.1718 0.0000 -6.2822 +v 18.3300 0.0000 -6.2810 +v 18.3891 0.8805 -6.4556 +v 18.3366 0.0000 -6.4801 +v 18.2691 0.8805 -6.4565 +v 18.1784 0.0000 -6.4813 +v 18.3218 1.6654 -6.0318 +v 18.1636 1.6654 -6.0330 +v 18.1570 1.6654 -5.8339 +v 18.3152 1.6654 -5.8327 +v 18.2012 0.8805 -5.8793 +v 18.0813 0.8805 -5.8802 +v 18.1570 0.0000 -5.8339 +v 18.3152 0.0000 -5.8327 +v 18.2062 0.8805 -6.0302 +v 18.3218 0.0000 -6.0318 +v 18.0863 0.8805 -6.0311 +v 18.1636 0.0000 -6.0330 +v 18.3667 1.7611 -5.6315 +v 18.0922 1.7611 -5.6336 +v 18.0856 1.7611 -5.4345 +v 18.3601 1.7611 -5.4324 +v 18.2846 0.8805 -5.4872 +v 18.1647 0.8805 -5.4881 +v 18.1437 0.0000 -5.4341 +v 18.3019 0.0000 -5.4329 +v 18.2896 0.8805 -5.6382 +v 18.3085 0.0000 -5.6320 +v 18.1697 0.8805 -5.6391 +v 18.1503 0.0000 -5.6332 +v 18.4203 1.7088 -5.2960 +v 18.1542 1.7088 -5.2980 +v 18.1476 1.7088 -5.0989 +v 18.4137 1.7088 -5.0969 +v 18.3657 0.8805 -5.0808 +v 18.1791 0.8805 -5.0822 +v 18.1600 0.0000 -5.0988 +v 18.4013 0.0000 -5.0969 +v 18.3707 0.8805 -5.2317 +v 18.4079 0.0000 -5.2961 +v 18.1841 0.8805 -5.2332 +v 18.1666 0.0000 -5.2979 +v 18.3502 1.8182 -4.8551 +v 18.1920 1.8182 -4.8564 +v 18.1854 1.8182 -4.6572 +v 18.3436 1.8182 -4.6560 +v 18.4355 0.8805 -4.6374 +v 18.3156 0.8805 -4.6383 +v 18.1854 0.0000 -4.6102 +v 18.3436 0.0000 -4.6090 +v 18.4405 0.8805 -4.7883 +v 18.3502 0.0000 -4.8081 +v 18.3206 0.8805 -4.7893 +v 18.1920 0.0000 -4.8093 +v 18.4467 1.4149 -4.3147 +v 18.3268 1.4149 -4.3156 +v 18.1458 1.4917 -3.4125 +v 18.3039 1.4917 -3.4113 +v 18.3637 1.5530 -5.2177 +v 18.2056 1.5530 -5.2190 +v 18.4469 1.2339 -4.3212 +v 18.3042 1.2529 -3.4198 +v 18.3640 1.3141 -5.2263 +v 18.3270 1.2339 -4.3221 +v 18.1460 1.2529 -3.4210 +v 18.2059 1.3141 -5.2275 +v 18.1843 0.5144 -4.3167 +v 18.0644 0.5144 -4.3176 +v 18.1458 0.5972 -3.4125 +v 18.3039 0.5972 -3.4113 +v 18.3637 0.6584 -5.2177 +v 18.2056 0.6584 -5.2190 +v 18.1845 0.3333 -4.3232 +v 18.3042 0.3583 -3.4198 +v 18.3640 0.4196 -5.2263 +v 18.0646 0.3333 -4.3241 +v 18.1460 0.3583 -3.4210 +v 18.2059 0.4196 -5.2275 +v 18.3366 1.8814 -4.3975 +v 18.1784 1.8814 -4.3987 +v 18.1718 1.8814 -4.1996 +v 18.3300 1.8814 -4.1984 +v 18.3841 0.8805 -4.2220 +v 18.2642 0.8805 -4.2230 +v 18.1718 0.0000 -4.1996 +v 18.3300 0.0000 -4.1984 +v 18.3891 0.8805 -4.3730 +v 18.3366 0.0000 -4.3975 +v 18.2691 0.8805 -4.3739 +v 18.1784 0.0000 -4.3987 +v 18.3218 1.6654 -3.9492 +v 18.1636 1.6654 -3.9504 +v 18.1570 1.6654 -3.7513 +v 18.3152 1.6654 -3.7501 +v 18.2012 0.8805 -3.7967 +v 18.0813 0.8805 -3.7976 +v 18.1570 0.0000 -3.7513 +v 18.3152 0.0000 -3.7501 +v 18.2062 0.8805 -3.9476 +v 18.3218 0.0000 -3.9492 +v 18.0863 0.8805 -3.9485 +v 18.1636 0.0000 -3.9504 +v 18.3667 1.7611 -3.5489 +v 18.0922 1.7611 -3.5510 +v 18.0856 1.7611 -3.3519 +v 18.3601 1.7611 -3.3498 +v 18.2846 0.8805 -3.4046 +v 18.1647 0.8805 -3.4055 +v 18.1437 0.0000 -3.3515 +v 18.3019 0.0000 -3.3503 +v 18.2896 0.8805 -3.5556 +v 18.3085 0.0000 -3.5494 +v 18.1697 0.8805 -3.5565 +v 18.1503 0.0000 -3.5506 +v 18.4203 1.7088 -3.2304 +v 18.1542 1.7088 -3.2324 +v 18.1476 1.7088 -3.0333 +v 18.4137 1.7088 -3.0313 +v 18.3657 0.8805 -3.0152 +v 18.1791 0.8805 -3.0166 +v 18.1600 0.0000 -3.0332 +v 18.4013 0.0000 -3.0314 +v 18.3707 0.8805 -3.1662 +v 18.4079 0.0000 -3.2305 +v 18.1841 0.8805 -3.1676 +v 18.1666 0.0000 -3.2323 +v 18.3502 1.8182 -2.7896 +v 18.1920 1.8182 -2.7908 +v 18.1854 1.8182 -2.5916 +v 18.3436 1.8182 -2.5904 +v 18.4355 0.8805 -2.5718 +v 18.3156 0.8805 -2.5727 +v 18.1854 0.0000 -2.5446 +v 18.3436 0.0000 -2.5434 +v 18.4405 0.8805 -2.7228 +v 18.3502 0.0000 -2.7426 +v 18.3206 0.8805 -2.7237 +v 18.1920 0.0000 -2.7438 +v 18.4467 1.4149 -2.2491 +v 18.3268 1.4149 -2.2500 +v 18.1458 1.4917 -1.3469 +v 18.3039 1.4917 -1.3457 +v 18.3637 1.5530 -3.1522 +v 18.2056 1.5530 -3.1534 +v 18.4469 1.2339 -2.2556 +v 18.3042 1.2529 -1.3543 +v 18.3640 1.3141 -3.1607 +v 18.3270 1.2339 -2.2565 +v 18.1460 1.2529 -1.3555 +v 18.2059 1.3141 -3.1619 +v 18.1843 0.5144 -2.2511 +v 18.0644 0.5144 -2.2520 +v 18.1458 0.5972 -1.3469 +v 18.3039 0.5972 -1.3457 +v 18.3637 0.6584 -3.1522 +v 18.2056 0.6584 -3.1534 +v 18.1845 0.3333 -2.2576 +v 18.3042 0.3583 -1.3543 +v 18.3640 0.4196 -3.1607 +v 18.0646 0.3333 -2.2585 +v 18.1460 0.3583 -1.3555 +v 18.2059 0.4196 -3.1619 +v 18.3366 1.8814 -2.3319 +v 18.1784 1.8814 -2.3331 +v 18.1718 1.8814 -2.1340 +v 18.3300 1.8814 -2.1328 +v 18.3841 0.8805 -2.1565 +v 18.2642 0.8805 -2.1574 +v 18.1718 0.0000 -2.1340 +v 18.3300 0.0000 -2.1328 +v 18.3891 0.8805 -2.3074 +v 18.3366 0.0000 -2.3319 +v 18.2691 0.8805 -2.3083 +v 18.1784 0.0000 -2.3331 +v 18.3218 1.6654 -1.8836 +v 18.1636 1.6654 -1.8848 +v 18.1570 1.6654 -1.6857 +v 18.3152 1.6654 -1.6845 +v 18.2012 0.8805 -1.7311 +v 18.0813 0.8805 -1.7320 +v 18.1570 0.0000 -1.6857 +v 18.3152 0.0000 -1.6845 +v 18.2062 0.8805 -1.8820 +v 18.3218 0.0000 -1.8836 +v 18.0863 0.8805 -1.8830 +v 18.1636 0.0000 -1.8848 +v 18.3667 1.7611 -1.4834 +v 18.0922 1.7611 -1.4855 +v 18.0856 1.7611 -1.2863 +v 18.3601 1.7611 -1.2842 +v 18.2846 0.8805 -1.3390 +v 18.1647 0.8805 -1.3399 +v 18.1437 0.0000 -1.2859 +v 18.3019 0.0000 -1.2847 +v 18.2896 0.8805 -1.4900 +v 18.3085 0.0000 -1.4838 +v 18.1697 0.8805 -1.4909 +v 18.1503 0.0000 -1.4850 +v 18.4203 1.7088 -1.1478 +v 18.1542 1.7088 -1.1498 +v 18.1476 1.7088 -0.9507 +v 18.4137 1.7088 -0.9487 +v 18.3657 0.8805 -0.9326 +v 18.1791 0.8805 -0.9340 +v 18.1600 0.0000 -0.9506 +v 18.4013 0.0000 -0.9488 +v 18.3707 0.8805 -1.0836 +v 18.4079 0.0000 -1.1479 +v 18.1841 0.8805 -1.0850 +v 18.1666 0.0000 -1.1497 +v 18.3502 1.8182 -0.7070 +v 18.1920 1.8182 -0.7082 +v 18.1854 1.8182 -0.5090 +v 18.3436 1.8182 -0.5078 +v 18.4355 0.8805 -0.4892 +v 18.3156 0.8805 -0.4901 +v 18.1854 0.0000 -0.4620 +v 18.3436 0.0000 -0.4608 +v 18.4405 0.8805 -0.6402 +v 18.3502 0.0000 -0.6600 +v 18.3206 0.8805 -0.6411 +v 18.1920 0.0000 -0.6612 +v 18.4467 1.4149 -0.1665 +v 18.3268 1.4149 -0.1674 +v 18.1458 1.4917 0.7357 +v 18.3039 1.4917 0.7369 +v 18.3637 1.5530 -1.0696 +v 18.2056 1.5530 -1.0708 +v 18.4469 1.2339 -0.1730 +v 18.3042 1.2529 0.7283 +v 18.3640 1.3141 -1.0781 +v 18.3270 1.2339 -0.1739 +v 18.1460 1.2529 0.7271 +v 18.2059 1.3141 -1.0793 +v 18.1843 0.5144 -0.1685 +v 18.0644 0.5144 -0.1694 +v 18.1458 0.5972 0.7357 +v 18.3039 0.5972 0.7369 +v 18.3637 0.6584 -1.0696 +v 18.2056 0.6584 -1.0708 +v 18.1845 0.3333 -0.1750 +v 18.3042 0.3583 0.7283 +v 18.3640 0.4196 -1.0781 +v 18.0646 0.3333 -0.1759 +v 18.1460 0.3583 0.7271 +v 18.2059 0.4196 -1.0793 +v 18.3366 1.8814 -0.2493 +v 18.1784 1.8814 -0.2505 +v 18.1718 1.8814 -0.0514 +v 18.3300 1.8814 -0.0502 +v 18.3841 0.8805 -0.0739 +v 18.2642 0.8805 -0.0748 +v 18.1718 0.0000 -0.0514 +v 18.3300 0.0000 -0.0502 +v 18.3891 0.8805 -0.2248 +v 18.3366 0.0000 -0.2493 +v 18.2691 0.8805 -0.2257 +v 18.1784 0.0000 -0.2505 +v 18.3218 1.6654 0.1990 +v 18.1636 1.6654 0.1978 +v 18.1570 1.6654 0.3969 +v 18.3152 1.6654 0.3981 +v 18.2012 0.8805 0.3515 +v 18.0813 0.8805 0.3506 +v 18.1570 0.0000 0.3969 +v 18.3152 0.0000 0.3981 +v 18.2062 0.8805 0.2006 +v 18.3218 0.0000 0.1990 +v 18.0863 0.8805 0.1996 +v 18.1636 0.0000 0.1978 +v 18.3667 1.7611 0.5992 +v 18.0922 1.7611 0.5971 +v 18.0856 1.7611 0.7963 +v 18.3601 1.7611 0.7984 +v 18.2846 0.8805 0.7436 +v 18.1647 0.8805 0.7427 +v 18.1437 0.0000 0.7967 +v 18.3019 0.0000 0.7979 +v 18.2896 0.8805 0.5926 +v 18.3085 0.0000 0.5988 +v 18.1697 0.8805 0.5917 +v 18.1503 0.0000 0.5976 +v 18.4203 1.7088 0.8554 +v 18.1542 1.7088 0.8534 +v 18.1476 1.7088 1.0525 +v 18.4137 1.7088 1.0545 +v 18.3657 0.8805 1.0706 +v 18.1791 0.8805 1.0692 +v 18.1600 0.0000 1.0526 +v 18.4013 0.0000 1.0544 +v 18.3707 0.8805 0.9196 +v 18.4079 0.0000 0.8553 +v 18.1841 0.8805 0.9182 +v 18.1666 0.0000 0.8535 +v 18.3502 1.8182 1.2962 +v 18.1920 1.8182 1.2950 +v 18.1854 1.8182 1.4942 +v 18.3436 1.8182 1.4954 +v 18.4355 0.8805 1.5140 +v 18.3156 0.8805 1.5131 +v 18.1854 0.0000 1.5412 +v 18.3436 0.0000 1.5424 +v 18.4405 0.8805 1.3630 +v 18.3502 0.0000 1.3432 +v 18.3206 0.8805 1.3621 +v 18.1920 0.0000 1.3420 +v 18.4467 1.4149 1.8367 +v 18.3268 1.4149 1.8358 +v 18.1458 1.4917 2.7389 +v 18.3039 1.4917 2.7401 +v 18.3637 1.5530 0.9336 +v 18.2056 1.5530 0.9324 +v 18.4469 1.2339 1.8302 +v 18.3042 1.2529 2.7315 +v 18.3640 1.3141 0.9251 +v 18.3270 1.2339 1.8293 +v 18.1460 1.2529 2.7303 +v 18.2059 1.3141 0.9239 +v 18.1843 0.5144 1.8347 +v 18.0644 0.5144 1.8338 +v 18.1458 0.5972 2.7389 +v 18.3039 0.5972 2.7401 +v 18.3637 0.6584 0.9336 +v 18.2056 0.6584 0.9324 +v 18.1845 0.3333 1.8282 +v 18.3042 0.3583 2.7315 +v 18.3640 0.4196 0.9251 +v 18.0646 0.3333 1.8273 +v 18.1460 0.3583 2.7303 +v 18.2059 0.4196 0.9239 +v 18.3366 1.8814 1.7539 +v 18.1784 1.8814 1.7527 +v 18.1718 1.8814 1.9518 +v 18.3300 1.8814 1.9530 +v 18.3841 0.8805 1.9293 +v 18.2642 0.8805 1.9284 +v 18.1718 0.0000 1.9518 +v 18.3300 0.0000 1.9530 +v 18.3891 0.8805 1.7784 +v 18.3366 0.0000 1.7539 +v 18.2691 0.8805 1.7775 +v 18.1784 0.0000 1.7527 +v 18.3218 1.6654 2.2022 +v 18.1636 1.6654 2.2010 +v 18.1570 1.6654 2.4001 +v 18.3152 1.6654 2.4013 +v 18.2012 0.8805 2.3547 +v 18.0813 0.8805 2.3538 +v 18.1570 0.0000 2.4001 +v 18.3152 0.0000 2.4013 +v 18.2062 0.8805 2.2038 +v 18.3218 0.0000 2.2022 +v 18.0863 0.8805 2.2028 +v 18.1636 0.0000 2.2010 +v 18.3667 1.7611 2.6024 +v 18.0922 1.7611 2.6003 +v 18.0856 1.7611 2.7995 +v 18.3601 1.7611 2.8016 +v 18.2846 0.8805 2.7468 +v 18.1647 0.8805 2.7459 +v 18.1437 0.0000 2.7999 +v 18.3019 0.0000 2.8011 +v 18.2896 0.8805 2.5958 +v 18.3085 0.0000 2.6020 +v 18.1697 0.8805 2.5949 +v 18.1503 0.0000 2.6008 +v 18.4203 1.7088 2.9380 +v 18.1542 1.7088 2.9360 +v 18.1476 1.7088 3.1351 +v 18.4137 1.7088 3.1371 +v 18.3657 0.8805 3.1532 +v 18.1791 0.8805 3.1518 +v 18.1600 0.0000 3.1352 +v 18.4013 0.0000 3.1370 +v 18.3707 0.8805 3.0022 +v 18.4079 0.0000 2.9379 +v 18.1841 0.8805 3.0008 +v 18.1666 0.0000 2.9361 +v 18.3502 1.8182 3.3788 +v 18.1920 1.8182 3.3776 +v 18.1854 1.8182 3.5768 +v 18.3436 1.8182 3.5780 +v 18.4355 0.8805 3.5966 +v 18.3156 0.8805 3.5957 +v 18.1854 0.0000 3.6238 +v 18.3436 0.0000 3.6250 +v 18.4405 0.8805 3.4456 +v 18.3502 0.0000 3.4258 +v 18.3206 0.8805 3.4447 +v 18.1920 0.0000 3.4246 +v 18.4467 1.4149 3.9193 +v 18.3268 1.4149 3.9184 +v 18.1458 1.4917 4.8215 +v 18.3039 1.4917 4.8227 +v 18.3637 1.5530 3.0162 +v 18.2056 1.5530 3.0150 +v 18.4469 1.2339 3.9128 +v 18.3042 1.2529 4.8141 +v 18.3640 1.3141 3.0077 +v 18.3270 1.2339 3.9119 +v 18.1460 1.2529 4.8129 +v 18.2059 1.3141 3.0065 +v 18.1843 0.5144 3.9173 +v 18.0644 0.5144 3.9164 +v 18.1458 0.5972 4.8215 +v 18.3039 0.5972 4.8227 +v 18.3637 0.6584 3.0162 +v 18.2056 0.6584 3.0150 +v 18.1845 0.3333 3.9108 +v 18.3042 0.3583 4.8141 +v 18.3640 0.4196 3.0077 +v 18.0646 0.3333 3.9099 +v 18.1460 0.3583 4.8129 +v 18.2059 0.4196 3.0065 +v 18.3366 1.8814 3.8365 +v 18.1784 1.8814 3.8353 +v 18.1718 1.8814 4.0344 +v 18.3300 1.8814 4.0356 +v 18.3841 0.8805 4.0119 +v 18.2642 0.8805 4.0110 +v 18.1718 0.0000 4.0344 +v 18.3300 0.0000 4.0356 +v 18.3891 0.8805 3.8610 +v 18.3366 0.0000 3.8365 +v 18.2691 0.8805 3.8601 +v 18.1784 0.0000 3.8353 +v 18.3218 1.6654 4.2848 +v 18.1636 1.6654 4.2836 +v 18.1570 1.6654 4.4827 +v 18.3152 1.6654 4.4839 +v 18.2012 0.8805 4.4373 +v 18.0813 0.8805 4.4364 +v 18.1570 0.0000 4.4827 +v 18.3152 0.0000 4.4839 +v 18.2062 0.8805 4.2864 +v 18.3218 0.0000 4.2848 +v 18.0863 0.8805 4.2854 +v 18.1636 0.0000 4.2836 +v 18.3667 1.7611 4.6850 +v 18.0922 1.7611 4.6829 +v 18.0856 1.7611 4.8821 +v 18.3601 1.7611 4.8842 +v 18.2846 0.8805 4.8294 +v 18.1647 0.8805 4.8285 +v 18.1437 0.0000 4.8825 +v 18.3019 0.0000 4.8837 +v 18.2896 0.8805 4.6784 +v 18.3085 0.0000 4.6846 +v 18.1697 0.8805 4.6775 +v 18.1503 0.0000 4.6834 +v 18.4203 1.7088 5.0312 +v 18.1542 1.7088 5.0291 +v 18.1476 1.7088 5.2283 +v 18.4137 1.7088 5.2303 +v 18.3657 0.8805 5.2464 +v 18.1791 0.8805 5.2449 +v 18.1600 0.0000 5.2284 +v 18.4013 0.0000 5.2302 +v 18.3707 0.8805 5.0954 +v 18.4079 0.0000 5.0311 +v 18.1841 0.8805 5.0940 +v 18.1666 0.0000 5.0292 +v 18.3502 1.8182 5.4720 +v 18.1920 1.8182 5.4708 +v 18.1854 1.8182 5.6699 +v 18.3436 1.8182 5.6711 +v 18.4355 0.8805 5.6898 +v 18.3156 0.8805 5.6889 +v 18.1854 -0.0000 5.7169 +v 18.3436 -0.0000 5.7182 +v 18.4405 0.8805 5.5388 +v 18.3502 0.0000 5.5190 +v 18.3206 0.8805 5.5379 +v 18.1920 0.0000 5.5178 +v 18.4467 1.4149 6.0125 +v 18.3268 1.4149 6.0116 +v 18.1458 1.4917 6.9147 +v 18.3039 1.4917 6.9159 +v 18.3637 1.5530 5.1094 +v 18.2056 1.5530 5.1082 +v 18.4469 1.2339 6.0060 +v 18.3042 1.2529 6.9073 +v 18.3640 1.3141 5.1009 +v 18.3270 1.2339 6.0051 +v 18.1460 1.2529 6.9061 +v 18.2059 1.3141 5.0997 +v 18.1843 0.5144 6.0105 +v 18.0644 0.5144 6.0096 +v 18.1458 0.5972 6.9147 +v 18.3039 0.5972 6.9159 +v 18.3637 0.6584 5.1094 +v 18.2056 0.6584 5.1082 +v 18.1845 0.3333 6.0040 +v 18.3042 0.3583 6.9073 +v 18.3640 0.4196 5.1009 +v 18.0646 0.3333 6.0031 +v 18.1460 0.3583 6.9061 +v 18.2059 0.4196 5.0997 +v 18.3366 1.8814 5.9297 +v 18.1784 1.8814 5.9285 +v 18.1718 1.8814 6.1276 +v 18.3300 1.8814 6.1288 +v 18.3841 0.8805 6.1051 +v 18.2642 0.8805 6.1042 +v 18.1718 -0.0000 6.1276 +v 18.3300 -0.0000 6.1288 +v 18.3891 0.8805 5.9542 +v 18.3366 -0.0000 5.9297 +v 18.2691 0.8805 5.9533 +v 18.1784 -0.0000 5.9285 +v 18.3218 1.6654 6.3780 +v 18.1636 1.6654 6.3768 +v 18.1570 1.6654 6.5759 +v 18.3152 1.6654 6.5771 +v 18.2012 0.8805 6.5305 +v 18.0813 0.8805 6.5296 +v 18.1570 -0.0000 6.5759 +v 18.3152 -0.0000 6.5771 +v 18.2062 0.8805 6.3795 +v 18.3218 -0.0000 6.3780 +v 18.0863 0.8805 6.3786 +v 18.1636 -0.0000 6.3768 +v 18.3667 1.7611 6.7782 +v 18.0922 1.7611 6.7761 +v 18.0856 1.7611 6.9753 +v 18.3601 1.7611 6.9774 +v 18.2846 0.8805 6.9226 +v 18.1647 0.8805 6.9216 +v 18.1437 -0.0000 6.9757 +v 18.3019 -0.0000 6.9769 +v 18.2896 0.8805 6.7716 +v 18.3085 -0.0000 6.7778 +v 18.1697 0.8805 6.7707 +v 18.1504 -0.0000 6.7766 +v 18.4203 1.7088 7.1138 +v 18.1542 1.7088 7.1118 +v 18.1476 1.7088 7.3109 +v 18.4137 1.7088 7.3129 +v 18.3657 0.8805 7.3290 +v 18.1791 0.8805 7.3276 +v 18.1600 -0.0000 7.3110 +v 18.4013 -0.0000 7.3128 +v 18.3707 0.8805 7.1780 +v 18.4079 -0.0000 7.1137 +v 18.1841 0.8805 7.1766 +v 18.1666 -0.0000 7.1119 +v 18.3502 1.8182 7.5546 +v 18.1920 1.8182 7.5534 +v 18.1854 1.8182 7.7526 +v 18.3436 1.8182 7.7537 +v 18.4355 0.8805 7.7724 +v 18.3156 0.8805 7.7715 +v 18.1854 -0.0000 7.7996 +v 18.3436 -0.0000 7.8008 +v 18.4405 0.8805 7.6214 +v 18.3502 -0.0000 7.6016 +v 18.3206 0.8805 7.6205 +v 18.1920 -0.0000 7.6004 +v 18.4467 1.4149 8.0951 +v 18.3268 1.4149 8.0942 +v 18.1458 1.4917 8.9973 +v 18.3039 1.4917 8.9985 +v 18.3638 1.5530 7.1920 +v 18.2056 1.5530 7.1908 +v 18.4469 1.2339 8.0886 +v 18.3042 1.2529 8.9899 +v 18.3640 1.3141 7.1835 +v 18.3270 1.2339 8.0877 +v 18.1460 1.2529 8.9887 +v 18.2059 1.3141 7.1823 +v 18.1843 0.5144 8.0931 +v 18.0644 0.5144 8.0922 +v 18.1458 0.5972 8.9973 +v 18.3039 0.5972 8.9985 +v 18.3638 0.6584 7.1920 +v 18.2056 0.6584 7.1908 +v 18.1845 0.3333 8.0866 +v 18.3042 0.3583 8.9899 +v 18.3640 0.4196 7.1835 +v 18.0646 0.3333 8.0857 +v 18.1460 0.3583 8.9887 +v 18.2059 0.4196 7.1823 +v 18.3366 1.8814 8.0123 +v 18.1784 1.8814 8.0111 +v 18.1718 1.8814 8.2102 +v 18.3300 1.8814 8.2114 +v 18.3841 0.8805 8.1877 +v 18.2642 0.8805 8.1868 +v 18.1718 0.0000 8.2102 +v 18.3300 0.0000 8.2114 +v 18.3891 0.8805 8.0368 +v 18.3366 -0.0000 8.0123 +v 18.2691 0.8805 8.0359 +v 18.1784 -0.0000 8.0111 +v 18.3218 1.6654 8.4606 +v 18.1636 1.6654 8.4594 +v 18.1570 1.6654 8.6585 +v 18.3152 1.6654 8.6597 +v 18.2012 0.8805 8.6131 +v 18.0813 0.8805 8.6122 +v 18.1570 0.0000 8.6585 +v 18.3152 0.0000 8.6597 +v 18.2062 0.8805 8.4621 +v 18.3218 0.0000 8.4606 +v 18.0863 0.8805 8.4612 +v 18.1636 0.0000 8.4594 +v 18.3667 1.7611 8.8608 +v 18.0922 1.7611 8.8587 +v 18.0856 1.7611 9.0579 +v 18.3601 1.7611 9.0600 +v 18.2846 0.8805 9.0052 +v 18.1647 0.8805 9.0043 +v 18.1437 0.0000 9.0583 +v 18.3019 0.0000 9.0595 +v 18.2896 0.8805 8.8542 +v 18.3085 0.0000 8.8604 +v 18.1697 0.8805 8.8533 +v 18.1504 0.0000 8.8592 +v 17.9256 1.7088 9.1043 +v 17.9276 1.7088 8.8382 +v 17.7285 1.7088 8.8316 +v 17.7265 1.7088 9.0977 +v 17.7104 0.8805 9.0497 +v 17.7118 0.8805 8.8631 +v 17.7284 0.0000 8.8440 +v 17.7265 0.0000 9.0853 +v 17.8613 0.8805 9.0547 +v 17.9257 0.0000 9.0919 +v 17.8628 0.8805 8.8681 +v 17.9275 0.0000 8.8506 +v 17.4847 1.8182 9.0342 +v 17.4860 1.8182 8.8760 +v 17.2868 1.8182 8.8694 +v 17.2856 1.8182 9.0276 +v 17.2670 0.8805 9.1194 +v 17.2679 0.8805 8.9995 +v 17.2398 0.0000 8.8694 +v 17.2386 0.0000 9.0276 +v 17.4179 0.8805 9.1244 +v 17.4377 0.0000 9.0342 +v 17.4189 0.8805 9.0045 +v 17.4389 0.0000 8.8760 +v 16.9443 1.4149 9.1307 +v 16.9452 1.4149 9.0108 +v 16.0421 1.4917 8.8297 +v 16.0409 1.4917 8.9879 +v 17.8473 1.5530 9.0477 +v 17.8485 1.5530 8.8895 +v 16.9508 1.2339 9.1309 +v 16.0494 1.2529 8.9882 +v 17.8559 1.3141 9.0480 +v 16.9517 1.2339 9.0110 +v 16.0506 1.2529 8.8300 +v 17.8571 1.3141 8.8898 +v 16.9463 0.5144 8.8683 +v 16.9472 0.5144 8.7484 +v 16.0421 0.5972 8.8297 +v 16.0409 0.5972 8.9879 +v 17.8473 0.6584 9.0477 +v 17.8485 0.6584 8.8895 +v 16.9528 0.3333 8.8685 +v 16.0494 0.3583 8.9882 +v 17.8559 0.4196 9.0480 +v 16.9537 0.3333 8.7486 +v 16.0506 0.3583 8.8300 +v 17.8571 0.4196 8.8898 +v 17.0271 1.8814 9.0206 +v 17.0283 1.8814 8.8624 +v 16.8292 1.8814 8.8558 +v 16.8280 1.8814 9.0140 +v 16.8516 0.8805 9.0680 +v 16.8526 0.8805 8.9481 +v 16.8292 0.0000 8.8558 +v 16.8280 0.0000 9.0140 +v 17.0026 0.8805 9.0730 +v 17.0271 0.0000 9.0206 +v 17.0035 0.8805 8.9531 +v 17.0283 0.0000 8.8624 +v 16.5788 1.6654 9.0057 +v 16.5800 1.6654 8.8475 +v 16.3809 1.6654 8.8410 +v 16.3797 1.6654 8.9991 +v 16.4263 0.8805 8.8852 +v 16.4272 0.8805 8.7653 +v 16.3809 0.0000 8.8410 +v 16.3797 0.0000 8.9991 +v 16.5772 0.8805 8.8902 +v 16.5788 0.0000 9.0057 +v 16.5781 0.8805 8.7703 +v 16.5800 0.0000 8.8475 +v 16.1785 1.7611 9.0507 +v 16.1806 1.7611 8.7761 +v 15.9815 1.7611 8.7695 +v 15.9794 1.7611 9.0441 +v 16.0342 0.8805 8.9686 +v 16.0351 0.8805 8.8487 +v 15.9811 0.0000 8.8277 +v 15.9799 0.0000 8.9859 +v 16.1852 0.8805 8.9735 +v 16.1790 0.0000 8.9925 +v 16.1861 0.8805 8.8536 +v 16.1802 0.0000 8.8343 +v 15.8430 1.7088 9.1043 +v 15.8450 1.7088 8.8382 +v 15.6459 1.7088 8.8316 +v 15.6438 1.7088 9.0977 +v 15.6278 0.8805 9.0497 +v 15.6292 0.8805 8.8631 +v 15.6458 0.0000 8.8440 +v 15.6439 0.0000 9.0853 +v 15.7787 0.8805 9.0547 +v 15.8431 0.0000 9.0919 +v 15.7802 0.8805 8.8681 +v 15.8449 0.0000 8.8506 +v 15.4021 1.8182 9.0342 +v 15.4033 1.8182 8.8760 +v 15.2042 1.8182 8.8694 +v 15.2030 1.8182 9.0276 +v 15.1844 0.8805 9.1194 +v 15.1853 0.8805 8.9995 +v 15.1572 0.0000 8.8694 +v 15.1560 0.0000 9.0276 +v 15.3353 0.8805 9.1244 +v 15.3551 0.0000 9.0342 +v 15.3363 0.8805 9.0045 +v 15.3563 0.0000 8.8760 +v 14.8617 1.4149 9.1307 +v 14.8626 1.4149 9.0108 +v 13.9595 1.4917 8.8297 +v 13.9583 1.4917 8.9879 +v 15.7647 1.5530 9.0477 +v 15.7659 1.5530 8.8895 +v 14.8682 1.2339 9.1309 +v 13.9668 1.2529 8.9882 +v 15.7733 1.3141 9.0480 +v 14.8691 1.2339 9.0110 +v 13.9680 1.2529 8.8300 +v 15.7745 1.3141 8.8898 +v 14.8637 0.5144 8.8683 +v 14.8646 0.5144 8.7484 +v 13.9595 0.5972 8.8297 +v 13.9583 0.5972 8.9879 +v 15.7647 0.6584 9.0477 +v 15.7659 0.6584 8.8895 +v 14.8702 0.3333 8.8685 +v 13.9668 0.3583 8.9882 +v 15.7733 0.4196 9.0480 +v 14.8711 0.3333 8.7486 +v 13.9680 0.3583 8.8300 +v 15.7745 0.4196 8.8898 +v 14.9445 1.8814 9.0206 +v 14.9457 1.8814 8.8624 +v 14.7466 1.8814 8.8558 +v 14.7453 1.8814 9.0140 +v 14.7690 0.8805 9.0680 +v 14.7700 0.8805 8.9481 +v 14.7466 0.0000 8.8558 +v 14.7453 0.0000 9.0140 +v 14.9200 0.8805 9.0730 +v 14.9445 0.0000 9.0206 +v 14.9209 0.8805 8.9531 +v 14.9457 0.0000 8.8624 +v 14.4962 1.6654 9.0057 +v 14.4974 1.6654 8.8475 +v 14.2983 1.6654 8.8410 +v 14.2971 1.6654 8.9991 +v 14.3437 0.8805 8.8852 +v 14.3446 0.8805 8.7653 +v 14.2983 0.0000 8.8410 +v 14.2971 0.0000 8.9991 +v 14.4946 0.8805 8.8902 +v 14.4962 0.0000 9.0057 +v 14.4955 0.8805 8.7703 +v 14.4974 0.0000 8.8475 +v 14.0959 1.7611 9.0507 +v 14.0980 1.7611 8.7761 +v 13.8989 1.7611 8.7695 +v 13.8968 1.7611 9.0441 +v 13.9516 0.8805 8.9686 +v 13.9525 0.8805 8.8487 +v 13.8985 0.0000 8.8277 +v 13.8972 0.0000 8.9859 +v 14.1025 0.8805 8.9735 +v 14.0964 0.0000 8.9925 +v 14.1035 0.8805 8.8536 +v 14.0976 0.0000 8.8343 +v 13.7498 1.7088 9.1043 +v 13.7518 1.7088 8.8382 +v 13.5527 1.7088 8.8316 +v 13.5507 1.7088 9.0977 +v 13.5346 0.8805 9.0497 +v 13.5360 0.8805 8.8631 +v 13.5526 0.0000 8.8440 +v 13.5507 0.0000 9.0853 +v 13.6855 0.8805 9.0547 +v 13.7499 0.0000 9.0919 +v 13.6870 0.8805 8.8681 +v 13.7517 0.0000 8.8506 +v 13.3089 1.8182 9.0342 +v 13.3102 1.8182 8.8760 +v 13.1110 1.8182 8.8694 +v 13.1098 1.8182 9.0276 +v 13.0912 0.8805 9.1194 +v 13.0921 0.8805 8.9995 +v 13.0640 0.0000 8.8694 +v 13.0628 0.0000 9.0276 +v 13.2421 0.8805 9.1244 +v 13.2619 0.0000 9.0342 +v 13.2431 0.8805 9.0045 +v 13.2631 0.0000 8.8760 +v 12.7685 1.4149 9.1307 +v 12.7694 1.4149 9.0108 +v 11.8663 1.4917 8.8297 +v 11.8651 1.4917 8.9879 +v 13.6715 1.5530 9.0477 +v 13.6728 1.5530 8.8895 +v 12.7750 1.2339 9.1309 +v 11.8736 1.2529 8.9882 +v 13.6801 1.3141 9.0480 +v 12.7759 1.2339 9.0110 +v 11.8748 1.2529 8.8300 +v 13.6813 1.3141 8.8898 +v 12.7705 0.5144 8.8683 +v 12.7714 0.5144 8.7484 +v 11.8663 0.5972 8.8297 +v 11.8651 0.5972 8.9879 +v 13.6715 0.6584 9.0477 +v 13.6728 0.6584 8.8895 +v 12.7770 0.3333 8.8685 +v 11.8736 0.3583 8.9882 +v 13.6801 0.4196 9.0480 +v 12.7779 0.3333 8.7486 +v 11.8748 0.3583 8.8300 +v 13.6813 0.4196 8.8898 +v 12.8513 1.8814 9.0206 +v 12.8525 1.8814 8.8624 +v 12.6534 1.8814 8.8558 +v 12.6522 1.8814 9.0140 +v 12.6758 0.8805 9.0680 +v 12.6768 0.8805 8.9481 +v 12.6534 0.0000 8.8558 +v 12.6522 0.0000 9.0140 +v 12.8268 0.8805 9.0730 +v 12.8513 0.0000 9.0206 +v 12.8277 0.8805 8.9531 +v 12.8525 0.0000 8.8624 +v 12.4030 1.6654 9.0057 +v 12.4042 1.6654 8.8475 +v 12.2051 1.6654 8.8410 +v 12.2039 1.6654 8.9991 +v 12.2505 0.8805 8.8852 +v 12.2514 0.8805 8.7653 +v 12.2051 0.0000 8.8410 +v 12.2039 0.0000 8.9991 +v 12.4014 0.8805 8.8902 +v 12.4030 0.0000 9.0057 +v 12.4023 0.8805 8.7703 +v 12.4042 0.0000 8.8475 +v 12.0027 1.7611 9.0507 +v 12.0048 1.7611 8.7761 +v 11.8057 1.7611 8.7695 +v 11.8036 1.7611 9.0441 +v 11.8584 0.8805 8.9686 +v 11.8593 0.8805 8.8487 +v 11.8053 0.0000 8.8277 +v 11.8041 0.0000 8.9859 +v 12.0094 0.8805 8.9735 +v 12.0032 0.0000 8.9925 +v 12.0103 0.8805 8.8536 +v 12.0044 0.0000 8.8343 +v 11.6672 1.7088 9.1043 +v 11.6692 1.7088 8.8382 +v 11.4701 1.7088 8.8316 +v 11.4681 1.7088 9.0977 +v 11.4520 0.8805 9.0497 +v 11.4534 0.8805 8.8631 +v 11.4700 0.0000 8.8440 +v 11.4681 0.0000 9.0853 +v 11.6030 0.8805 9.0547 +v 11.6673 0.0000 9.0919 +v 11.6044 0.8805 8.8681 +v 11.6691 0.0000 8.8506 +v 11.2264 1.8182 9.0342 +v 11.2276 1.8182 8.8760 +v 11.0284 1.8182 8.8694 +v 11.0272 1.8182 9.0276 +v 11.0086 0.8805 9.1194 +v 11.0095 0.8805 8.9995 +v 10.9814 0.0000 8.8694 +v 10.9802 0.0000 9.0276 +v 11.1595 0.8805 9.1244 +v 11.1793 0.0000 9.0342 +v 11.1605 0.8805 9.0045 +v 11.1806 0.0000 8.8760 +v 10.6859 1.4149 9.1307 +v 10.6868 1.4149 9.0108 +v 9.7837 1.4917 8.8297 +v 9.7825 1.4917 8.9879 +v 11.5889 1.5530 9.0477 +v 11.5902 1.5530 8.8895 +v 10.6924 1.2339 9.1309 +v 9.7910 1.2529 8.9882 +v 11.5975 1.3141 9.0480 +v 10.6933 1.2339 9.0110 +v 9.7923 1.2529 8.8300 +v 11.5987 1.3141 8.8898 +v 10.6879 0.5144 8.8683 +v 10.6888 0.5144 8.7484 +v 9.7837 0.5972 8.8297 +v 9.7825 0.5972 8.9879 +v 11.5889 0.6584 9.0477 +v 11.5902 0.6584 8.8895 +v 10.6944 0.3333 8.8685 +v 9.7910 0.3583 8.9882 +v 11.5975 0.4196 9.0480 +v 10.6953 0.3333 8.7486 +v 9.7923 0.3583 8.8300 +v 11.5987 0.4196 8.8898 +v 10.7687 1.8814 9.0206 +v 10.7699 1.8814 8.8624 +v 10.5708 1.8814 8.8558 +v 10.5696 1.8814 9.0140 +v 10.5932 0.8805 9.0680 +v 10.5942 0.8805 8.9481 +v 10.5708 0.0000 8.8558 +v 10.5696 0.0000 9.0140 +v 10.7442 0.8805 9.0730 +v 10.7687 0.0000 9.0206 +v 10.7451 0.8805 8.9531 +v 10.7699 0.0000 8.8624 +v 10.3204 1.6654 9.0057 +v 10.3216 1.6654 8.8475 +v 10.1225 1.6654 8.8410 +v 10.1213 1.6654 8.9991 +v 10.1679 0.8805 8.8852 +v 10.1688 0.8805 8.7653 +v 10.1225 0.0000 8.8410 +v 10.1213 0.0000 8.9991 +v 10.3188 0.8805 8.8902 +v 10.3204 0.0000 9.0057 +v 10.3197 0.8805 8.7703 +v 10.3216 0.0000 8.8475 +v 9.9201 1.7611 9.0507 +v 9.9223 1.7611 8.7761 +v 9.7231 1.7611 8.7695 +v 9.7210 1.7611 9.0441 +v 9.7758 0.8805 8.9686 +v 9.7767 0.8805 8.8487 +v 9.7227 0.0000 8.8277 +v 9.7215 0.0000 8.9859 +v 9.9268 0.8805 8.9735 +v 9.9206 0.0000 8.9925 +v 9.9277 0.8805 8.8536 +v 9.9218 0.0000 8.8343 +v 5.2841 1.7088 12.6327 +v 5.2821 1.7088 12.8988 +v 5.4812 1.7088 12.9054 +v 5.4832 1.7088 12.6393 +v 5.4993 0.8805 12.6873 +v 5.4979 0.8805 12.8739 +v 5.4813 -0.0000 12.8930 +v 5.4831 -0.0000 12.6517 +v 5.3483 0.8805 12.6823 +v 5.2840 -0.0000 12.6451 +v 5.3469 0.8805 12.8689 +v 5.2822 -0.0000 12.8865 +v 5.7249 1.8182 12.7029 +v 5.7237 1.8182 12.8610 +v 5.9229 1.8182 12.8676 +v 5.9241 1.8182 12.7094 +v 5.9427 0.8805 12.6176 +v 5.9418 0.8805 12.7375 +v 5.9699 -0.0000 12.8676 +v 5.9711 -0.0000 12.7094 +v 5.7917 0.8805 12.6126 +v 5.7719 -0.0000 12.7028 +v 5.7908 0.8805 12.7325 +v 5.7707 -0.0000 12.8610 +v 6.2654 1.4149 12.6063 +v 6.2645 1.4149 12.7262 +v 7.1676 1.4917 12.9073 +v 7.1688 1.4917 12.7491 +v 5.3623 1.5530 12.6893 +v 5.3611 1.5530 12.8475 +v 6.2589 1.2339 12.6061 +v 7.1602 1.2529 12.7488 +v 5.3538 1.3141 12.6890 +v 6.2580 1.2339 12.7260 +v 7.1590 1.2529 12.9070 +v 5.3526 1.3141 12.8472 +v 6.2634 0.5144 12.8687 +v 6.2625 0.5144 12.9886 +v 7.1676 0.5972 12.9073 +v 7.1688 0.5972 12.7491 +v 5.3623 0.6584 12.6893 +v 5.3611 0.6584 12.8475 +v 6.2569 0.3333 12.8685 +v 7.1602 0.3583 12.7488 +v 5.3538 0.4196 12.6890 +v 6.2560 0.3333 12.9884 +v 7.1590 0.3583 12.9070 +v 5.3526 0.4196 12.8472 +v 6.1826 1.8814 12.7164 +v 6.1814 1.8814 12.8746 +v 6.3805 1.8814 12.8812 +v 6.3817 1.8814 12.7230 +v 6.3580 0.8805 12.6690 +v 6.3571 0.8805 12.7889 +v 6.3805 -0.0000 12.8812 +v 6.3817 -0.0000 12.7230 +v 6.2071 0.8805 12.6640 +v 6.1826 -0.0000 12.7164 +v 6.2062 0.8805 12.7839 +v 6.1814 -0.0000 12.8746 +v 6.6309 1.6654 12.7313 +v 6.6297 1.6654 12.8895 +v 6.8288 1.6654 12.8961 +v 6.8300 1.6654 12.7379 +v 6.7834 0.8805 12.8518 +v 6.7825 0.8805 12.9717 +v 6.8288 -0.0000 12.8960 +v 6.8300 -0.0000 12.7379 +v 6.6325 0.8805 12.8468 +v 6.6309 -0.0000 12.7313 +v 6.6315 0.8805 12.9667 +v 6.6297 -0.0000 12.8895 +v 7.0311 1.7611 12.6863 +v 7.0290 1.7611 12.9609 +v 7.2282 1.7611 12.9675 +v 7.2303 1.7611 12.6929 +v 7.1755 0.8805 12.7685 +v 7.1746 0.8805 12.8884 +v 7.2286 -0.0000 12.9093 +v 7.2298 -0.0000 12.7511 +v 7.0245 0.8805 12.7635 +v 7.0307 -0.0000 12.7445 +v 7.0236 0.8805 12.8834 +v 7.0295 -0.0000 12.9027 +v 7.3667 1.7088 12.6327 +v 7.3647 1.7088 12.8988 +v 7.5638 1.7088 12.9054 +v 7.5658 1.7088 12.6393 +v 7.5819 0.8805 12.6873 +v 7.5805 0.8805 12.8739 +v 7.5639 -0.0000 12.8930 +v 7.5657 -0.0000 12.6517 +v 7.4309 0.8805 12.6823 +v 7.3666 -0.0000 12.6451 +v 7.4295 0.8805 12.8689 +v 7.3648 -0.0000 12.8865 +v 7.8075 1.8182 12.7029 +v 7.8063 1.8182 12.8610 +v 8.0055 1.8182 12.8676 +v 8.0067 1.8182 12.7094 +v 8.0253 0.8805 12.6176 +v 8.0244 0.8805 12.7375 +v 8.0525 -0.0000 12.8676 +v 8.0537 -0.0000 12.7094 +v 7.8743 0.8805 12.6126 +v 7.8545 -0.0000 12.7028 +v 7.8734 0.8805 12.7325 +v 7.8533 -0.0000 12.8610 +v 8.3480 1.4149 12.6063 +v 8.3471 1.4149 12.7262 +v 9.2502 1.4917 12.9073 +v 9.2514 1.4917 12.7491 +v 7.4449 1.5530 12.6893 +v 7.4437 1.5530 12.8475 +v 8.3415 1.2339 12.6061 +v 9.2428 1.2529 12.7488 +v 7.4364 1.3141 12.6890 +v 8.3406 1.2339 12.7260 +v 9.2416 1.2529 12.9070 +v 7.4352 1.3141 12.8472 +v 8.3460 0.5144 12.8687 +v 8.3451 0.5144 12.9886 +v 9.2502 0.5972 12.9073 +v 9.2514 0.5972 12.7491 +v 7.4449 0.6584 12.6893 +v 7.4437 0.6584 12.8475 +v 8.3395 0.3333 12.8685 +v 9.2428 0.3583 12.7488 +v 7.4364 0.4196 12.6890 +v 8.3386 0.3333 12.9884 +v 9.2416 0.3583 12.9070 +v 7.4352 0.4196 12.8472 +v 8.2652 1.8814 12.7164 +v 8.2640 1.8814 12.8746 +v 8.4631 1.8814 12.8812 +v 8.4643 1.8814 12.7230 +v 8.4406 0.8805 12.6690 +v 8.4397 0.8805 12.7889 +v 8.4631 -0.0000 12.8812 +v 8.4643 -0.0000 12.7230 +v 8.2897 0.8805 12.6640 +v 8.2652 -0.0000 12.7164 +v 8.2888 0.8805 12.7839 +v 8.2640 -0.0000 12.8746 +v 8.7135 1.6654 12.7313 +v 8.7123 1.6654 12.8895 +v 8.9114 1.6654 12.8961 +v 8.9126 1.6654 12.7379 +v 8.8660 0.8805 12.8518 +v 8.8651 0.8805 12.9717 +v 8.9114 -0.0000 12.8960 +v 8.9126 -0.0000 12.7379 +v 8.7151 0.8805 12.8468 +v 8.7135 -0.0000 12.7313 +v 8.7141 0.8805 12.9667 +v 8.7123 -0.0000 12.8895 +v 9.1137 1.7611 12.6863 +v 9.1117 1.7611 12.9609 +v 9.3108 1.7611 12.9675 +v 9.3129 1.7611 12.6929 +v 9.2581 0.8805 12.7685 +v 9.2572 0.8805 12.8884 +v 9.3112 -0.0000 12.9093 +v 9.3124 -0.0000 12.7511 +v 9.1071 0.8805 12.7635 +v 9.1133 -0.0000 12.7445 +v 9.1062 0.8805 12.8834 +v 9.1121 -0.0000 12.9027 +v 9.4214 1.7088 12.8486 +v 9.6875 1.7088 12.8506 +v 9.6941 1.7088 12.6514 +v 9.4279 1.7088 12.6494 +v 9.4760 0.8805 12.6334 +v 9.6626 0.8805 12.6348 +v 9.6817 -0.0000 12.6514 +v 9.4403 -0.0000 12.6495 +v 9.4710 0.8805 12.7843 +v 9.4337 -0.0000 12.8486 +v 9.6576 0.8805 12.7857 +v 9.6751 -0.0000 12.8505 +v 9.4915 1.8182 12.4077 +v 9.6497 1.8182 12.4089 +v 9.6563 1.8182 12.2098 +v 9.4981 1.8182 12.2086 +v 9.4062 0.8805 12.1900 +v 9.5261 0.8805 12.1909 +v 9.6563 -0.0000 12.1628 +v 9.4981 -0.0000 12.1616 +v 9.4012 0.8805 12.3409 +v 9.4915 -0.0000 12.3607 +v 9.5211 0.8805 12.3418 +v 9.6497 -0.0000 12.3619 +v 9.3950 1.4149 11.8673 +v 9.5149 1.4149 11.8682 +v 9.6959 1.4917 10.9651 +v 9.5377 1.4917 10.9639 +v 9.4779 1.5530 12.7703 +v 9.6361 1.5530 12.7715 +v 9.3948 1.2339 11.8737 +v 9.5375 1.2529 10.9724 +v 9.4777 1.3141 12.7788 +v 9.5147 1.2339 11.8746 +v 9.6956 1.2529 10.9736 +v 9.6358 1.3141 12.7801 +v 9.6574 0.5144 11.8693 +v 9.7773 0.5144 11.8702 +v 9.6959 0.5972 10.9651 +v 9.5377 0.5972 10.9639 +v 9.4779 0.6584 12.7703 +v 9.6361 0.6584 12.7715 +v 9.6571 0.3333 11.8757 +v 9.5375 0.3583 10.9724 +v 9.4777 0.4196 12.7788 +v 9.7770 0.3333 11.8767 +v 9.6956 0.3583 10.9736 +v 9.6358 0.4196 12.7801 +v 9.5051 1.8814 11.9501 +v 9.6633 1.8814 11.9513 +v 9.6698 1.8814 11.7521 +v 9.5117 1.8814 11.7509 +v 9.4576 0.8805 11.7746 +v 9.5775 0.8805 11.7755 +v 9.6698 -0.0000 11.7521 +v 9.5117 -0.0000 11.7509 +v 9.4526 0.8805 11.9256 +v 9.5051 -0.0000 11.9501 +v 9.5725 0.8805 11.9265 +v 9.6633 -0.0000 11.9513 +v 9.5199 1.6654 11.5018 +v 9.6781 1.6654 11.5030 +v 9.6847 1.6654 11.3039 +v 9.5265 1.6654 11.3026 +v 9.6405 0.8805 11.3492 +v 9.7604 0.8805 11.3502 +v 9.6847 -0.0000 11.3039 +v 9.5265 -0.0000 11.3026 +v 9.6355 0.8805 11.5002 +v 9.5199 -0.0000 11.5018 +v 9.7554 0.8805 11.5011 +v 9.6781 -0.0000 11.5030 +v 9.4750 1.7611 11.1015 +v 9.7495 1.7611 11.1036 +v 9.7561 1.7611 10.9045 +v 9.4816 1.7611 10.9024 +v 9.5571 0.8805 10.9572 +v 9.6770 0.8805 10.9581 +v 9.6979 -0.0000 10.9040 +v 9.5398 -0.0000 10.9028 +v 9.5521 0.8805 11.1081 +v 9.5332 -0.0000 11.1020 +v 9.6720 0.8805 11.1090 +v 9.6913 -0.0000 11.1032 +v 9.4214 1.7088 10.7660 +v 9.6875 1.7088 10.7680 +v 9.6941 1.7088 10.5688 +v 9.4279 1.7088 10.5668 +v 9.4760 0.8805 10.5508 +v 9.6626 0.8805 10.5522 +v 9.6817 -0.0000 10.5688 +v 9.4403 -0.0000 10.5669 +v 9.4710 0.8805 10.7017 +v 9.4337 -0.0000 10.7660 +v 9.6576 0.8805 10.7031 +v 9.6751 -0.0000 10.7679 +v 9.4915 1.8182 10.3251 +v 9.6497 1.8182 10.3263 +v 9.6563 1.8182 10.1272 +v 9.4981 1.8182 10.1260 +v 9.4062 0.8805 10.1074 +v 9.5261 0.8805 10.1083 +v 9.6563 -0.0000 10.0802 +v 9.4981 -0.0000 10.0790 +v 9.4012 0.8805 10.2583 +v 9.4915 -0.0000 10.2781 +v 9.5211 0.8805 10.2592 +v 9.6497 -0.0000 10.2793 +v 9.3950 1.4149 9.7847 +v 9.5149 1.4149 9.7856 +v 9.6959 1.4917 8.8825 +v 9.5377 1.4917 8.8813 +v 9.4779 1.5530 10.6877 +v 9.6361 1.5530 10.6889 +v 9.3948 1.2339 9.7911 +v 9.5375 1.2529 8.8898 +v 9.4777 1.3141 10.6962 +v 9.5147 1.2339 9.7920 +v 9.6956 1.2529 8.8910 +v 9.6358 1.3141 10.6975 +v 9.6574 0.5144 9.7867 +v 9.7773 0.5144 9.7876 +v 9.6959 0.5972 8.8825 +v 9.5377 0.5972 8.8813 +v 9.4779 0.6584 10.6877 +v 9.6361 0.6584 10.6889 +v 9.6571 0.3333 9.7931 +v 9.5375 0.3583 8.8898 +v 9.4777 0.4196 10.6962 +v 9.7770 0.3333 9.7941 +v 9.6956 0.3583 8.8910 +v 9.6358 0.4196 10.6975 +v 9.5051 1.8814 9.8675 +v 9.6633 1.8814 9.8687 +v 9.6698 1.8814 9.6695 +v 9.5117 1.8814 9.6683 +v 9.4576 0.8805 9.6920 +v 9.5775 0.8805 9.6929 +v 9.6698 -0.0000 9.6695 +v 9.5117 -0.0000 9.6683 +v 9.4526 0.8805 9.8430 +v 9.5051 -0.0000 9.8675 +v 9.5725 0.8805 9.8439 +v 9.6633 -0.0000 9.8687 +v 9.5199 1.6654 9.4192 +v 9.6781 1.6654 9.4204 +v 9.6847 1.6654 9.2213 +v 9.5265 1.6654 9.2200 +v 9.6405 0.8805 9.2666 +v 9.7604 0.8805 9.2676 +v 9.6847 0.0000 9.2213 +v 9.5265 0.0000 9.2200 +v 9.6355 0.8805 9.4176 +v 9.5199 -0.0000 9.4192 +v 9.7554 0.8805 9.4185 +v 9.6781 -0.0000 9.4204 +v 9.4750 1.7611 9.0189 +v 9.7495 1.7611 9.0210 +v 9.7561 1.7611 8.8219 +v 9.4816 1.7611 8.8198 +v 9.5571 0.8805 8.8746 +v 9.6770 0.8805 8.8755 +v 9.6979 0.0000 8.8214 +v 9.5398 0.0000 8.8202 +v 9.5521 0.8805 9.0255 +v 9.5332 0.0000 9.0194 +v 9.6720 0.8805 9.0264 +v 9.6913 0.0000 9.0206 +v 1.2967 1.7088 12.6327 +v 1.2947 1.7088 12.8988 +v 1.4938 1.7088 12.9054 +v 1.4958 1.7088 12.6393 +v 1.5119 0.8805 12.6873 +v 1.5105 0.8805 12.8739 +v 1.4939 -0.0000 12.8931 +v 1.4957 -0.0000 12.6517 +v 1.3609 0.8805 12.6823 +v 1.2966 -0.0000 12.6451 +v 1.3595 0.8805 12.8689 +v 1.2948 -0.0000 12.8865 +v 1.7376 1.8182 12.7029 +v 1.7363 1.8182 12.8610 +v 1.9355 1.8182 12.8676 +v 1.9367 1.8182 12.7094 +v 1.9553 0.8805 12.6176 +v 1.9544 0.8805 12.7375 +v 1.9825 -0.0000 12.8676 +v 1.9837 -0.0000 12.7094 +v 1.8044 0.8805 12.6126 +v 1.7846 -0.0000 12.7029 +v 1.8034 0.8805 12.7325 +v 1.7834 -0.0000 12.8610 +v 2.2780 1.4149 12.6063 +v 2.2771 1.4149 12.7262 +v 3.1802 1.4917 12.9073 +v 3.1814 1.4917 12.7491 +v 1.3750 1.5530 12.6893 +v 1.3737 1.5530 12.8475 +v 2.2715 1.2339 12.6061 +v 3.1729 1.2529 12.7488 +v 1.3664 1.3141 12.6890 +v 2.2706 1.2339 12.7260 +v 3.1716 1.2529 12.9070 +v 1.3652 1.3141 12.8472 +v 2.2760 0.5144 12.8687 +v 2.2751 0.5144 12.9886 +v 3.1802 0.5972 12.9073 +v 3.1814 0.5972 12.7491 +v 1.3750 0.6584 12.6893 +v 1.3737 0.6584 12.8475 +v 2.2695 0.3333 12.8685 +v 3.1729 0.3583 12.7488 +v 1.3664 0.4196 12.6890 +v 2.2686 0.3333 12.9884 +v 3.1716 0.3583 12.9070 +v 1.3652 0.4196 12.8472 +v 2.1952 1.8814 12.7164 +v 2.1940 1.8814 12.8746 +v 2.3931 1.8814 12.8812 +v 2.3943 1.8814 12.7230 +v 2.3707 0.8805 12.6690 +v 2.3697 0.8805 12.7889 +v 2.3931 -0.0000 12.8812 +v 2.3943 -0.0000 12.7230 +v 2.2197 0.8805 12.6640 +v 2.1952 -0.0000 12.7164 +v 2.2188 0.8805 12.7839 +v 2.1940 -0.0000 12.8746 +v 2.6435 1.6654 12.7313 +v 2.6423 1.6654 12.8895 +v 2.8414 1.6654 12.8961 +v 2.8426 1.6654 12.7379 +v 2.7960 0.8805 12.8518 +v 2.7951 0.8805 12.9717 +v 2.8414 -0.0000 12.8960 +v 2.8426 -0.0000 12.7379 +v 2.6451 0.8805 12.8469 +v 2.6435 -0.0000 12.7313 +v 2.6442 0.8805 12.9668 +v 2.6423 -0.0000 12.8895 +v 3.0438 1.7611 12.6863 +v 3.0417 1.7611 12.9609 +v 3.2408 1.7611 12.9675 +v 3.2429 1.7611 12.6929 +v 3.1881 0.8805 12.7685 +v 3.1872 0.8805 12.8884 +v 3.2412 -0.0000 12.9093 +v 3.2424 -0.0000 12.7511 +v 3.0371 0.8805 12.7635 +v 3.0433 -0.0000 12.7445 +v 3.0362 0.8805 12.8834 +v 3.0421 -0.0000 12.9027 +v 3.3793 1.7088 12.6327 +v 3.3773 1.7088 12.8988 +v 3.5764 1.7088 12.9054 +v 3.5784 1.7088 12.6393 +v 3.5945 0.8805 12.6873 +v 3.5931 0.8805 12.8739 +v 3.5765 -0.0000 12.8930 +v 3.5783 -0.0000 12.6517 +v 3.4435 0.8805 12.6823 +v 3.3792 -0.0000 12.6451 +v 3.4421 0.8805 12.8689 +v 3.3774 -0.0000 12.8865 +v 3.8201 1.8182 12.7029 +v 3.8189 1.8182 12.8610 +v 4.0181 1.8182 12.8676 +v 4.0193 1.8182 12.7094 +v 4.0379 0.8805 12.6176 +v 4.0370 0.8805 12.7375 +v 4.0651 -0.0000 12.8676 +v 4.0663 -0.0000 12.7094 +v 3.8869 0.8805 12.6126 +v 3.8672 -0.0000 12.7029 +v 3.8860 0.8805 12.7325 +v 3.8659 -0.0000 12.8610 +v 4.3606 1.4149 12.6063 +v 4.3597 1.4149 12.7262 +v 5.2628 1.4917 12.9073 +v 5.2640 1.4917 12.7491 +v 3.4576 1.5530 12.6893 +v 3.4563 1.5530 12.8475 +v 4.3541 1.2339 12.6061 +v 5.2555 1.2529 12.7488 +v 3.4490 1.3141 12.6890 +v 4.3532 1.2339 12.7260 +v 5.2542 1.2529 12.9070 +v 3.4478 1.3141 12.8472 +v 4.3586 0.5144 12.8687 +v 4.3577 0.5144 12.9886 +v 5.2628 0.5972 12.9073 +v 5.2640 0.5972 12.7491 +v 3.4576 0.6584 12.6893 +v 3.4563 0.6584 12.8475 +v 4.3521 0.3333 12.8685 +v 5.2555 0.3583 12.7488 +v 3.4490 0.4196 12.6890 +v 4.3512 0.3333 12.9884 +v 5.2542 0.3583 12.9070 +v 3.4478 0.4196 12.8472 +v 4.2778 1.8814 12.7164 +v 4.2766 1.8814 12.8746 +v 4.4757 1.8814 12.8812 +v 4.4769 1.8814 12.7230 +v 4.4533 0.8805 12.6690 +v 4.4523 0.8805 12.7889 +v 4.4757 -0.0000 12.8812 +v 4.4769 -0.0000 12.7230 +v 4.3023 0.8805 12.6640 +v 4.2778 -0.0000 12.7164 +v 4.3014 0.8805 12.7839 +v 4.2766 -0.0000 12.8746 +v 4.7261 1.6654 12.7313 +v 4.7249 1.6654 12.8895 +v 4.9240 1.6654 12.8961 +v 4.9252 1.6654 12.7379 +v 4.8786 0.8805 12.8518 +v 4.8777 0.8805 12.9717 +v 4.9240 -0.0000 12.8960 +v 4.9252 -0.0000 12.7379 +v 4.7277 0.8805 12.8468 +v 4.7261 -0.0000 12.7313 +v 4.7267 0.8805 12.9668 +v 4.7249 -0.0000 12.8895 +v 5.1263 1.7611 12.6863 +v 5.1242 1.7611 12.9609 +v 5.3234 1.7611 12.9675 +v 5.3255 1.7611 12.6929 +v 5.2707 0.8805 12.7685 +v 5.2698 0.8805 12.8884 +v 5.3238 -0.0000 12.9093 +v 5.3250 -0.0000 12.7511 +v 5.1197 0.8805 12.7635 +v 5.1259 -0.0000 12.7445 +v 5.1188 0.8805 12.8834 +v 5.1247 -0.0000 12.9027 +v -10.4130 1.7088 12.6327 +v -10.4151 1.7088 12.8988 +v -10.2159 1.7088 12.9054 +v -10.2139 1.7088 12.6393 +v -10.1979 0.8805 12.6873 +v -10.1993 0.8805 12.8739 +v -10.2159 -0.0000 12.8931 +v -10.2140 -0.0000 12.6517 +v -10.3488 0.8805 12.6823 +v -10.4131 -0.0000 12.6451 +v -10.3502 0.8805 12.8689 +v -10.4150 -0.0000 12.8865 +v -9.9722 1.8182 12.7029 +v -9.9734 1.8182 12.8610 +v -9.7743 1.8182 12.8676 +v -9.7731 1.8182 12.7094 +v -9.7545 0.8805 12.6176 +v -9.7554 0.8805 12.7375 +v -9.7273 -0.0000 12.8676 +v -9.7261 -0.0000 12.7095 +v -9.9054 0.8805 12.6126 +v -9.9252 -0.0000 12.7029 +v -9.9063 0.8805 12.7325 +v -9.9264 -0.0000 12.8610 +v -9.4318 1.4149 12.6063 +v -9.4327 1.4149 12.7262 +v -8.5296 1.4917 12.9073 +v -8.5284 1.4917 12.7491 +v -10.3348 1.5530 12.6893 +v -10.3360 1.5530 12.8475 +v -9.4382 1.2339 12.6061 +v -8.5369 1.2529 12.7488 +v -10.3433 1.3141 12.6890 +v -9.4391 1.2339 12.7260 +v -8.5381 1.2529 12.9070 +v -10.3445 1.3141 12.8472 +v -9.4338 0.5144 12.8687 +v -9.4347 0.5144 12.9886 +v -8.5296 0.5972 12.9073 +v -8.5284 0.5972 12.7491 +v -10.3348 0.6584 12.6893 +v -10.3360 0.6584 12.8475 +v -9.4402 0.3333 12.8685 +v -8.5369 0.3583 12.7488 +v -10.3433 0.4196 12.6890 +v -9.4411 0.3333 12.9884 +v -8.5381 0.3583 12.9070 +v -10.3445 0.4196 12.8472 +v -9.5146 1.8814 12.7164 +v -9.5158 1.8814 12.8746 +v -9.3166 1.8814 12.8812 +v -9.3154 1.8814 12.7230 +v -9.3391 0.8805 12.6690 +v -9.3400 0.8805 12.7889 +v -9.3166 -0.0000 12.8812 +v -9.3154 -0.0000 12.7230 +v -9.4900 0.8805 12.6640 +v -9.5146 -0.0000 12.7164 +v -9.4910 0.8805 12.7839 +v -9.5158 -0.0000 12.8746 +v -9.0663 1.6654 12.7313 +v -9.0675 1.6654 12.8895 +v -8.8683 1.6654 12.8961 +v -8.8671 1.6654 12.7379 +v -8.9137 0.8805 12.8518 +v -8.9146 0.8805 12.9717 +v -8.8683 -0.0000 12.8961 +v -8.8671 -0.0000 12.7379 +v -9.0647 0.8805 12.8469 +v -9.0663 -0.0000 12.7313 +v -9.0656 0.8805 12.9668 +v -9.0675 -0.0000 12.8895 +v -8.6660 1.7611 12.6864 +v -8.6681 1.7611 12.9609 +v -8.4690 1.7611 12.9675 +v -8.4669 1.7611 12.6929 +v -8.5217 0.8805 12.7685 +v -8.5226 0.8805 12.8884 +v -8.4685 -0.0000 12.9093 +v -8.4673 -0.0000 12.7511 +v -8.6726 0.8805 12.7635 +v -8.6665 -0.0000 12.7445 +v -8.6735 0.8805 12.8834 +v -8.6677 -0.0000 12.9027 +v -8.3304 1.7088 12.6327 +v -8.3325 1.7088 12.8988 +v -8.1333 1.7088 12.9054 +v -8.1313 1.7088 12.6393 +v -8.1153 0.8805 12.6873 +v -8.1167 0.8805 12.8739 +v -8.1332 -0.0000 12.8931 +v -8.1314 -0.0000 12.6517 +v -8.2662 0.8805 12.6823 +v -8.3305 -0.0000 12.6451 +v -8.2676 0.8805 12.8689 +v -8.3324 -0.0000 12.8865 +v -7.8896 1.8182 12.7029 +v -7.8908 1.8182 12.8610 +v -7.6917 1.8182 12.8676 +v -7.6905 1.8182 12.7094 +v -7.6718 0.8805 12.6176 +v -7.6728 0.8805 12.7375 +v -7.6447 -0.0000 12.8676 +v -7.6435 -0.0000 12.7095 +v -7.8228 0.8805 12.6126 +v -7.8426 -0.0000 12.7029 +v -7.8237 0.8805 12.7325 +v -7.8438 -0.0000 12.8610 +v -7.3492 1.4149 12.6063 +v -7.3501 1.4149 12.7262 +v -6.4470 1.4917 12.9073 +v -6.4458 1.4917 12.7491 +v -8.2522 1.5530 12.6893 +v -8.2534 1.5530 12.8475 +v -7.3556 1.2339 12.6061 +v -6.4543 1.2529 12.7488 +v -8.2607 1.3141 12.6890 +v -7.3565 1.2339 12.7260 +v -6.4555 1.2529 12.9070 +v -8.2619 1.3141 12.8472 +v -7.3511 0.5144 12.8687 +v -7.3521 0.5144 12.9886 +v -6.4470 0.5972 12.9073 +v -6.4458 0.5972 12.7491 +v -8.2522 0.6584 12.6893 +v -8.2534 0.6584 12.8475 +v -7.3576 0.3333 12.8685 +v -6.4543 0.3583 12.7488 +v -8.2607 0.4196 12.6890 +v -7.3585 0.3333 12.9884 +v -6.4555 0.3583 12.9070 +v -8.2619 0.4196 12.8472 +v -7.4320 1.8814 12.7164 +v -7.4332 1.8814 12.8746 +v -7.2340 1.8814 12.8812 +v -7.2328 1.8814 12.7230 +v -7.2565 0.8805 12.6690 +v -7.2574 0.8805 12.7889 +v -7.2340 -0.0000 12.8812 +v -7.2328 -0.0000 12.7230 +v -7.4074 0.8805 12.6640 +v -7.4320 -0.0000 12.7164 +v -7.4084 0.8805 12.7839 +v -7.4332 -0.0000 12.8746 +v -6.9837 1.6654 12.7313 +v -6.9849 1.6654 12.8895 +v -6.7857 1.6654 12.8961 +v -6.7845 1.6654 12.7379 +v -6.8311 0.8805 12.8518 +v -6.8320 0.8805 12.9717 +v -6.7857 -0.0000 12.8961 +v -6.7845 -0.0000 12.7379 +v -6.9821 0.8805 12.8469 +v -6.9837 -0.0000 12.7313 +v -6.9830 0.8805 12.9668 +v -6.9849 -0.0000 12.8895 +v -6.5834 1.7611 12.6864 +v -6.5855 1.7611 12.9609 +v -6.3864 1.7611 12.9675 +v -6.3843 1.7611 12.6929 +v -6.4391 0.8805 12.7685 +v -6.4400 0.8805 12.8884 +v -6.3859 -0.0000 12.9093 +v -6.3847 -0.0000 12.7511 +v -6.5900 0.8805 12.7635 +v -6.5838 -0.0000 12.7445 +v -6.5909 0.8805 12.8834 +v -6.5851 -0.0000 12.9027 +v -14.4004 1.7088 12.6327 +v -14.4025 1.7088 12.8988 +v -14.2033 1.7088 12.9054 +v -14.2013 1.7088 12.6393 +v -14.1852 0.8805 12.6873 +v -14.1867 0.8805 12.8739 +v -14.2032 -0.0000 12.8931 +v -14.2014 -0.0000 12.6517 +v -14.3362 0.8805 12.6823 +v -14.4005 -0.0000 12.6451 +v -14.3376 0.8805 12.8689 +v -14.4024 -0.0000 12.8865 +v -13.9596 1.8182 12.7029 +v -13.9608 1.8182 12.8610 +v -13.7617 1.8182 12.8676 +v -13.7605 1.8182 12.7094 +v -13.7418 0.8805 12.6176 +v -13.7428 0.8805 12.7375 +v -13.7147 -0.0000 12.8676 +v -13.7134 -0.0000 12.7095 +v -13.8928 0.8805 12.6126 +v -13.9126 -0.0000 12.7029 +v -13.8937 0.8805 12.7325 +v -13.9138 -0.0000 12.8610 +v -13.4191 1.4149 12.6063 +v -13.4201 1.4149 12.7262 +v -12.5170 1.4917 12.9073 +v -12.5157 1.4917 12.7491 +v -14.3222 1.5530 12.6893 +v -14.3234 1.5530 12.8475 +v -13.4256 1.2339 12.6061 +v -12.5243 1.2529 12.7488 +v -14.3307 1.3141 12.6890 +v -13.4265 1.2339 12.7260 +v -12.5255 1.2529 12.9070 +v -14.3319 1.3141 12.8472 +v -13.4211 0.5144 12.8687 +v -13.4221 0.5144 12.9886 +v -12.5170 0.5972 12.9073 +v -12.5157 0.5972 12.7491 +v -14.3222 0.6584 12.6893 +v -14.3234 0.6584 12.8475 +v -13.4276 0.3333 12.8685 +v -12.5243 0.3583 12.7488 +v -14.3307 0.4196 12.6890 +v -13.4285 0.3333 12.9884 +v -12.5255 0.3583 12.9070 +v -14.3319 0.4196 12.8472 +v -13.5019 1.8814 12.7164 +v -13.5031 1.8814 12.8746 +v -13.3040 1.8814 12.8812 +v -13.3028 1.8814 12.7230 +v -13.3265 0.8805 12.6690 +v -13.3274 0.8805 12.7889 +v -13.3040 -0.0000 12.8812 +v -13.3028 -0.0000 12.7230 +v -13.4774 0.8805 12.6640 +v -13.5019 -0.0000 12.7164 +v -13.4784 0.8805 12.7839 +v -13.5031 -0.0000 12.8746 +v -13.0536 1.6654 12.7313 +v -13.0549 1.6654 12.8895 +v -12.8557 1.6654 12.8961 +v -12.8545 1.6654 12.7379 +v -12.9011 0.8805 12.8518 +v -12.9020 0.8805 12.9717 +v -12.8557 -0.0000 12.8961 +v -12.8545 -0.0000 12.7379 +v -13.0521 0.8805 12.8469 +v -13.0536 -0.0000 12.7313 +v -13.0530 0.8805 12.9668 +v -13.0549 -0.0000 12.8895 +v -12.6534 1.7611 12.6864 +v -12.6555 1.7611 12.9609 +v -12.4564 1.7611 12.9675 +v -12.4543 1.7611 12.6929 +v -12.5090 0.8805 12.7685 +v -12.5100 0.8805 12.8884 +v -12.4559 -0.0000 12.9093 +v -12.4547 -0.0000 12.7511 +v -12.6600 0.8805 12.7635 +v -12.6538 -0.0000 12.7445 +v -12.6609 0.8805 12.8834 +v -12.6550 -0.0000 12.9027 +v -12.3178 1.7088 12.6327 +v -12.3199 1.7088 12.8988 +v -12.1207 1.7088 12.9054 +v -12.1187 1.7088 12.6393 +v -12.1026 0.8805 12.6873 +v -12.1041 0.8805 12.8739 +v -12.1206 -0.0000 12.8931 +v -12.1188 -0.0000 12.6517 +v -12.2536 0.8805 12.6823 +v -12.3179 -0.0000 12.6451 +v -12.2550 0.8805 12.8689 +v -12.3198 -0.0000 12.8865 +v -11.8770 1.8182 12.7029 +v -11.8782 1.8182 12.8610 +v -11.6791 1.8182 12.8676 +v -11.6779 1.8182 12.7094 +v -11.6592 0.8805 12.6176 +v -11.6602 0.8805 12.7375 +v -11.6321 -0.0000 12.8676 +v -11.6308 -0.0000 12.7095 +v -11.8102 0.8805 12.6126 +v -11.8300 -0.0000 12.7029 +v -11.8111 0.8805 12.7325 +v -11.8312 -0.0000 12.8610 +v -11.3365 1.4149 12.6063 +v -11.3375 1.4149 12.7262 +v -10.4344 1.4917 12.9073 +v -10.4332 1.4917 12.7491 +v -12.2396 1.5530 12.6893 +v -12.2408 1.5530 12.8475 +v -11.3430 1.2339 12.6061 +v -10.4417 1.2529 12.7488 +v -12.2481 1.3141 12.6890 +v -11.3439 1.2339 12.7260 +v -10.4429 1.2529 12.9070 +v -12.2493 1.3141 12.8472 +v -11.3385 0.5144 12.8687 +v -11.3395 0.5144 12.9886 +v -10.4344 0.5972 12.9073 +v -10.4332 0.5972 12.7491 +v -12.2396 0.6584 12.6893 +v -12.2408 0.6584 12.8475 +v -11.3450 0.3333 12.8685 +v -10.4417 0.3583 12.7488 +v -12.2481 0.4196 12.6890 +v -11.3459 0.3333 12.9884 +v -10.4429 0.3583 12.9070 +v -12.2493 0.4196 12.8472 +v -11.4193 1.8814 12.7164 +v -11.4205 1.8814 12.8746 +v -11.2214 1.8814 12.8812 +v -11.2202 1.8814 12.7230 +v -11.2439 0.8805 12.6690 +v -11.2448 0.8805 12.7889 +v -11.2214 -0.0000 12.8812 +v -11.2202 -0.0000 12.7230 +v -11.3948 0.8805 12.6640 +v -11.4193 -0.0000 12.7164 +v -11.3958 0.8805 12.7839 +v -11.4205 -0.0000 12.8746 +v -10.9711 1.6654 12.7313 +v -10.9723 1.6654 12.8895 +v -10.7731 1.6654 12.8961 +v -10.7719 1.6654 12.7379 +v -10.8185 0.8805 12.8518 +v -10.8194 0.8805 12.9717 +v -10.7731 -0.0000 12.8961 +v -10.7719 -0.0000 12.7379 +v -10.9695 0.8805 12.8469 +v -10.9711 -0.0000 12.7313 +v -10.9704 0.8805 12.9668 +v -10.9723 -0.0000 12.8895 +v -10.5708 1.7611 12.6864 +v -10.5729 1.7611 12.9609 +v -10.3738 1.7611 12.9675 +v -10.3717 1.7611 12.6929 +v -10.4264 0.8805 12.7685 +v -10.4274 0.8805 12.8884 +v -10.3733 -0.0000 12.9093 +v -10.3721 -0.0000 12.7511 +v -10.5774 0.8805 12.7635 +v -10.5712 -0.0000 12.7445 +v -10.5783 0.8805 12.8834 +v -10.5724 -0.0000 12.9027 +v -16.5316 1.7088 12.6327 +v -16.5337 1.7088 12.8988 +v -16.3345 1.7088 12.9054 +v -16.3325 1.7088 12.6393 +v -16.3164 0.8805 12.6873 +v -16.3179 0.8805 12.8739 +v -16.3344 -0.0000 12.8931 +v -16.3326 -0.0000 12.6517 +v -16.4674 0.8805 12.6823 +v -16.5317 -0.0000 12.6451 +v -16.4688 0.8805 12.8689 +v -16.5336 -0.0000 12.8865 +v -16.0908 1.8182 12.7029 +v -16.0920 1.8182 12.8610 +v -15.8929 1.8182 12.8676 +v -15.8917 1.8182 12.7094 +v -15.8730 0.8805 12.6176 +v -15.8740 0.8805 12.7375 +v -15.8459 -0.0000 12.8676 +v -15.8446 -0.0000 12.7095 +v -16.0240 0.8805 12.6126 +v -16.0438 -0.0000 12.7029 +v -16.0249 0.8805 12.7325 +v -16.0450 -0.0000 12.8610 +v -15.5503 1.4149 12.6063 +v -15.5513 1.4149 12.7262 +v -14.6482 1.4917 12.9073 +v -14.6470 1.4917 12.7491 +v -16.4534 1.5530 12.6893 +v -16.4546 1.5530 12.8475 +v -15.5568 1.2339 12.6061 +v -14.6555 1.2529 12.7488 +v -16.4619 1.3141 12.6890 +v -15.5577 1.2339 12.7260 +v -14.6567 1.2529 12.9070 +v -16.4631 1.3141 12.8472 +v -15.5523 0.5144 12.8687 +v -15.5533 0.5144 12.9886 +v -14.6482 0.5972 12.9073 +v -14.6470 0.5972 12.7491 +v -16.4534 0.6584 12.6893 +v -16.4546 0.6584 12.8475 +v -15.5588 0.3333 12.8685 +v -14.6555 0.3583 12.7488 +v -16.4619 0.4196 12.6890 +v -15.5597 0.3333 12.9884 +v -14.6567 0.3583 12.9070 +v -16.4631 0.4196 12.8472 +v -15.6331 1.8814 12.7164 +v -15.6343 1.8814 12.8746 +v -15.4352 1.8814 12.8812 +v -15.4340 1.8814 12.7230 +v -15.4577 0.8805 12.6690 +v -15.4586 0.8805 12.7889 +v -15.4352 -0.0000 12.8812 +v -15.4340 -0.0000 12.7230 +v -15.6086 0.8805 12.6640 +v -15.6331 -0.0000 12.7164 +v -15.6096 0.8805 12.7839 +v -15.6343 -0.0000 12.8746 +v -15.1849 1.6654 12.7313 +v -15.1861 1.6654 12.8895 +v -14.9869 1.6654 12.8961 +v -14.9857 1.6654 12.7379 +v -15.0323 0.8805 12.8518 +v -15.0332 0.8805 12.9717 +v -14.9869 -0.0000 12.8961 +v -14.9857 -0.0000 12.7379 +v -15.1833 0.8805 12.8469 +v -15.1849 -0.0000 12.7313 +v -15.1842 0.8805 12.9668 +v -15.1861 -0.0000 12.8895 +v -14.7846 1.7611 12.6864 +v -14.7867 1.7611 12.9609 +v -14.5876 1.7611 12.9675 +v -14.5855 1.7611 12.6929 +v -14.6402 0.8805 12.7685 +v -14.6412 0.8805 12.8884 +v -14.5871 -0.0000 12.9093 +v -14.5859 -0.0000 12.7511 +v -14.7912 0.8805 12.7635 +v -14.7850 -0.0000 12.7445 +v -14.7921 0.8805 12.8834 +v -14.7862 -0.0000 12.9027 +v -16.1976 1.7088 8.6138 +v -16.4638 1.7088 8.6118 +v -16.4703 1.7088 8.8109 +v -16.2042 1.7088 8.8129 +v -16.2523 0.8805 8.8290 +v -16.4388 0.8805 8.8276 +v -16.4580 0.0000 8.8110 +v -16.2166 0.0000 8.8129 +v -16.2473 0.8805 8.6781 +v -16.2100 0.0000 8.6137 +v -16.4338 0.8805 8.6766 +v -16.4514 0.0000 8.6119 +v -16.2678 1.8182 9.0547 +v -16.4259 1.8182 9.0534 +v -16.4325 1.8182 9.2526 +v -16.2744 1.8182 9.2538 +v -16.1825 0.8805 9.2724 +v -16.3024 0.8805 9.2715 +v -16.4325 -0.0000 9.2996 +v -16.2744 -0.0000 9.3008 +v -16.1775 0.8805 9.1215 +v -16.2678 0.0000 9.1017 +v -16.2974 0.8805 9.1205 +v -16.4259 0.0000 9.1005 +v -16.1713 1.4149 9.5951 +v -16.2912 1.4149 9.5942 +v -16.4722 1.4917 10.4973 +v -16.3140 1.4917 10.4985 +v -16.2542 1.5530 8.6921 +v -16.4124 1.5530 8.6909 +v -16.1710 1.2339 9.5886 +v -16.3137 1.2529 10.4900 +v -16.2539 1.3141 8.6835 +v -16.2909 1.2339 9.5877 +v -16.4719 1.2529 10.4888 +v -16.4121 1.3141 8.6823 +v -16.4336 0.5144 9.5931 +v -16.5535 0.5144 9.5922 +v -16.4722 0.5972 10.4973 +v -16.3140 0.5972 10.4985 +v -16.2542 0.6584 8.6921 +v -16.4124 0.6584 8.6909 +v -16.4334 0.3333 9.5866 +v -16.3137 0.3583 10.4900 +v -16.2539 0.4196 8.6835 +v -16.5533 0.3333 9.5857 +v -16.4719 0.3583 10.4888 +v -16.4121 0.4196 8.6823 +v -16.2814 1.8814 9.5123 +v -16.4395 1.8814 9.5111 +v -16.4461 1.8814 9.7102 +v -16.2880 1.8814 9.7114 +v -16.2339 0.8805 9.6878 +v -16.3538 0.8805 9.6868 +v -16.4461 -0.0000 9.7102 +v -16.2880 -0.0000 9.7114 +v -16.2289 0.8805 9.5368 +v -16.2814 -0.0000 9.5123 +v -16.3488 0.8805 9.5359 +v -16.4395 -0.0000 9.5111 +v -16.2962 1.6654 9.9606 +v -16.4544 1.6654 9.9594 +v -16.4610 1.6654 10.1585 +v -16.3028 1.6654 10.1597 +v -16.4168 0.8805 10.1131 +v -16.5367 0.8805 10.1122 +v -16.4610 -0.0000 10.1585 +v -16.3028 -0.0000 10.1597 +v -16.4118 0.8805 9.9622 +v -16.2962 -0.0000 9.9606 +v -16.5317 0.8805 9.9613 +v -16.4544 -0.0000 9.9594 +v -16.2513 1.7611 10.3609 +v -16.5258 1.7611 10.3588 +v -16.5324 1.7611 10.5579 +v -16.2579 1.7611 10.5600 +v -16.3334 0.8805 10.5052 +v -16.4533 0.8805 10.5043 +v -16.4742 -0.0000 10.5583 +v -16.3160 -0.0000 10.5595 +v -16.3284 0.8805 10.3542 +v -16.3094 -0.0000 10.3604 +v -16.4483 0.8805 10.3533 +v -16.4676 -0.0000 10.3592 +v -16.1976 1.7088 10.6964 +v -16.4638 1.7088 10.6944 +v -16.4703 1.7088 10.8935 +v -16.2042 1.7088 10.8955 +v -16.2523 0.8805 10.9116 +v -16.4388 0.8805 10.9102 +v -16.4580 -0.0000 10.8936 +v -16.2166 -0.0000 10.8955 +v -16.2473 0.8805 10.7607 +v -16.2100 -0.0000 10.6963 +v -16.4338 0.8805 10.7592 +v -16.4514 -0.0000 10.6945 +v -16.2678 1.8182 11.1373 +v -16.4259 1.8182 11.1361 +v -16.4325 1.8182 11.3352 +v -16.2744 1.8182 11.3364 +v -16.1825 0.8805 11.3550 +v -16.3024 0.8805 11.3541 +v -16.4325 -0.0000 11.3822 +v -16.2744 -0.0000 11.3834 +v -16.1775 0.8805 11.2041 +v -16.2678 -0.0000 11.1843 +v -16.2974 0.8805 11.2031 +v -16.4259 -0.0000 11.1831 +v -16.1713 1.4149 11.6777 +v -16.2912 1.4149 11.6768 +v -16.4722 1.4917 12.5799 +v -16.3140 1.4917 12.5811 +v -16.2542 1.5530 10.7747 +v -16.4124 1.5530 10.7735 +v -16.1710 1.2339 11.6712 +v -16.3137 1.2529 12.5726 +v -16.2539 1.3141 10.7661 +v -16.2909 1.2339 11.6703 +v -16.4719 1.2529 12.5714 +v -16.4121 1.3141 10.7649 +v -16.4336 0.5143 11.6757 +v -16.5535 0.5143 11.6748 +v -16.4722 0.5972 12.5799 +v -16.3140 0.5972 12.5811 +v -16.2542 0.6584 10.7747 +v -16.4124 0.6584 10.7735 +v -16.4334 0.3333 11.6692 +v -16.3137 0.3583 12.5726 +v -16.2539 0.4196 10.7661 +v -16.5533 0.3333 11.6683 +v -16.4719 0.3583 12.5714 +v -16.4121 0.4196 10.7649 +v -16.2814 1.8814 11.5949 +v -16.4395 1.8814 11.5937 +v -16.4461 1.8814 11.7928 +v -16.2880 1.8814 11.7941 +v -16.2339 0.8805 11.7704 +v -16.3538 0.8805 11.7694 +v -16.4461 -0.0000 11.7928 +v -16.2880 -0.0000 11.7941 +v -16.2289 0.8805 11.6194 +v -16.2814 -0.0000 11.5949 +v -16.3488 0.8805 11.6185 +v -16.4395 -0.0000 11.5937 +v -16.2962 1.6654 12.0432 +v -16.4544 1.6654 12.0420 +v -16.4610 1.6654 12.2411 +v -16.3028 1.6654 12.2423 +v -16.4168 0.8805 12.1957 +v -16.5367 0.8805 12.1948 +v -16.4610 -0.0000 12.2411 +v -16.3028 -0.0000 12.2423 +v -16.4118 0.8805 12.0448 +v -16.2962 -0.0000 12.0432 +v -16.5317 0.8805 12.0439 +v -16.4544 -0.0000 12.0420 +v -16.2513 1.7611 12.4435 +v -16.5258 1.7611 12.4414 +v -16.5324 1.7611 12.6405 +v -16.2579 1.7611 12.6426 +v -16.3334 0.8805 12.5878 +v -16.4533 0.8805 12.5869 +v -16.4742 -0.0000 12.6409 +v -16.3160 -0.0000 12.6422 +v -16.3284 0.8805 12.4368 +v -16.3094 -0.0000 12.4430 +v -16.4483 0.8805 12.4359 +v -16.4676 -0.0000 12.4418 +v -16.1976 1.7088 4.6264 +v -16.4638 1.7088 4.6244 +v -16.4703 1.7088 4.8235 +v -16.2042 1.7088 4.8256 +v -16.2523 0.8805 4.8416 +v -16.4389 0.8805 4.8402 +v -16.4580 0.0000 4.8236 +v -16.2166 0.0000 4.8255 +v -16.2473 0.8805 4.6907 +v -16.2100 0.0000 4.6263 +v -16.4338 0.8805 4.6892 +v -16.4514 0.0000 4.6245 +v -16.2678 1.8182 5.0673 +v -16.4259 1.8182 5.0661 +v -16.4325 1.8182 5.2652 +v -16.2744 1.8182 5.2664 +v -16.1825 0.8805 5.2850 +v -16.3024 0.8805 5.2841 +v -16.4325 0.0000 5.3122 +v -16.2744 0.0000 5.3134 +v -16.1775 0.8805 5.1341 +v -16.2678 0.0000 5.1143 +v -16.2974 0.8805 5.1332 +v -16.4259 0.0000 5.1131 +v -16.1713 1.4149 5.6077 +v -16.2912 1.4149 5.6068 +v -16.4722 1.4917 6.5099 +v -16.3140 1.4917 6.5111 +v -16.2542 1.5530 4.7047 +v -16.4124 1.5530 4.7035 +v -16.1710 1.2339 5.6013 +v -16.3137 1.2529 6.5026 +v -16.2539 1.3141 4.6961 +v -16.2909 1.2339 5.6003 +v -16.4719 1.2529 6.5014 +v -16.4121 1.3141 4.6949 +v -16.4336 0.5144 5.6057 +v -16.5535 0.5144 5.6048 +v -16.4722 0.5972 6.5099 +v -16.3140 0.5972 6.5111 +v -16.2542 0.6584 4.7047 +v -16.4124 0.6584 4.7035 +v -16.4334 0.3333 5.5993 +v -16.3137 0.3583 6.5026 +v -16.2539 0.4196 4.6961 +v -16.5533 0.3333 5.5983 +v -16.4719 0.3583 6.5014 +v -16.4121 0.4196 4.6949 +v -16.2814 1.8814 5.5249 +v -16.4395 1.8814 5.5237 +v -16.4461 1.8814 5.7229 +v -16.2880 1.8814 5.7241 +v -16.2339 0.8805 5.7004 +v -16.3538 0.8805 5.6995 +v -16.4461 -0.0000 5.7229 +v -16.2880 -0.0000 5.7241 +v -16.2289 0.8805 5.5494 +v -16.2814 0.0000 5.5249 +v -16.3488 0.8805 5.5485 +v -16.4395 0.0000 5.5237 +v -16.2962 1.6654 5.9732 +v -16.4544 1.6654 5.9720 +v -16.4610 1.6654 6.1711 +v -16.3028 1.6654 6.1724 +v -16.4168 0.8805 6.1258 +v -16.5367 0.8805 6.1248 +v -16.4610 -0.0000 6.1711 +v -16.3028 -0.0000 6.1724 +v -16.4118 0.8805 5.9748 +v -16.2962 -0.0000 5.9732 +v -16.5317 0.8805 5.9739 +v -16.4544 -0.0000 5.9720 +v -16.2513 1.7611 6.3735 +v -16.5258 1.7611 6.3714 +v -16.5324 1.7611 6.5705 +v -16.2579 1.7611 6.5726 +v -16.3334 0.8805 6.5178 +v -16.4533 0.8805 6.5169 +v -16.4742 -0.0000 6.5710 +v -16.3160 -0.0000 6.5722 +v -16.3284 0.8805 6.3669 +v -16.3094 -0.0000 6.3730 +v -16.4483 0.8805 6.3659 +v -16.4676 -0.0000 6.3718 +v -16.1976 1.7088 6.7090 +v -16.4638 1.7088 6.7070 +v -16.4703 1.7088 6.9061 +v -16.2042 1.7088 6.9082 +v -16.2523 0.8805 6.9242 +v -16.4388 0.8805 6.9228 +v -16.4580 -0.0000 6.9062 +v -16.2166 -0.0000 6.9081 +v -16.2473 0.8805 6.7733 +v -16.2100 -0.0000 6.7089 +v -16.4338 0.8805 6.7718 +v -16.4514 -0.0000 6.7071 +v -16.2678 1.8182 7.1499 +v -16.4259 1.8182 7.1487 +v -16.4325 1.8182 7.3478 +v -16.2744 1.8182 7.3490 +v -16.1825 0.8805 7.3676 +v -16.3024 0.8805 7.3667 +v -16.4325 -0.0000 7.3948 +v -16.2744 -0.0000 7.3960 +v -16.1775 0.8805 7.2167 +v -16.2678 -0.0000 7.1969 +v -16.2974 0.8805 7.2158 +v -16.4259 -0.0000 7.1957 +v -16.1713 1.4149 7.6903 +v -16.2912 1.4149 7.6894 +v -16.4722 1.4917 8.5925 +v -16.3140 1.4917 8.5937 +v -16.2542 1.5530 6.7873 +v -16.4124 1.5530 6.7861 +v -16.1710 1.2339 7.6839 +v -16.3137 1.2529 8.5852 +v -16.2539 1.3141 6.7788 +v -16.2909 1.2339 7.6829 +v -16.4719 1.2529 8.5840 +v -16.4121 1.3141 6.7775 +v -16.4336 0.5144 7.6883 +v -16.5535 0.5144 7.6874 +v -16.4722 0.5972 8.5925 +v -16.3140 0.5972 8.5937 +v -16.2542 0.6584 6.7873 +v -16.4124 0.6584 6.7861 +v -16.4334 0.3333 7.6819 +v -16.3137 0.3583 8.5852 +v -16.2539 0.4196 6.7788 +v -16.5533 0.3333 7.6809 +v -16.4719 0.3583 8.5840 +v -16.4121 0.4196 6.7775 +v -16.2814 1.8814 7.6075 +v -16.4395 1.8814 7.6063 +v -16.4461 1.8814 7.8055 +v -16.2880 1.8814 7.8067 +v -16.2339 0.8805 7.7830 +v -16.3538 0.8805 7.7821 +v -16.4461 -0.0000 7.8055 +v -16.2880 -0.0000 7.8067 +v -16.2289 0.8805 7.6320 +v -16.2814 -0.0000 7.6075 +v -16.3488 0.8805 7.6311 +v -16.4395 -0.0000 7.6063 +v -16.2962 1.6654 8.0558 +v -16.4544 1.6654 8.0546 +v -16.4610 1.6654 8.2537 +v -16.3028 1.6654 8.2550 +v -16.4168 0.8805 8.2084 +v -16.5367 0.8805 8.2074 +v -16.4610 0.0000 8.2537 +v -16.3028 0.0000 8.2550 +v -16.4118 0.8805 8.0574 +v -16.2962 -0.0000 8.0558 +v -16.5317 0.8805 8.0565 +v -16.4544 -0.0000 8.0546 +v -16.2513 1.7611 8.4561 +v -16.5258 1.7611 8.4540 +v -16.5324 1.7611 8.6531 +v -16.2579 1.7611 8.6552 +v -16.3334 0.8805 8.6004 +v -16.4533 0.8805 8.5995 +v -16.4742 0.0000 8.6536 +v -16.3160 0.0000 8.6548 +v -16.3284 0.8805 8.4495 +v -16.3094 0.0000 8.4556 +v -16.4483 0.8805 8.4485 +v -16.4676 0.0000 8.4544 +v -16.1976 1.7088 2.4952 +v -16.4638 1.7088 2.4932 +v -16.4703 1.7088 2.6923 +v -16.2042 1.7088 2.6944 +v -16.2523 0.8805 2.7104 +v -16.4389 0.8805 2.7090 +v -16.4580 0.0000 2.6924 +v -16.2166 0.0000 2.6943 +v -16.2473 0.8805 2.5595 +v -16.2100 0.0000 2.4951 +v -16.4338 0.8805 2.5580 +v -16.4514 0.0000 2.4933 +v -16.2678 1.8182 2.9361 +v -16.4259 1.8182 2.9349 +v -16.4325 1.8182 3.1340 +v -16.2744 1.8182 3.1352 +v -16.1825 0.8805 3.1538 +v -16.3024 0.8805 3.1529 +v -16.4325 0.0000 3.1810 +v -16.2744 0.0000 3.1822 +v -16.1775 0.8805 3.0029 +v -16.2678 0.0000 2.9831 +v -16.2974 0.8805 3.0020 +v -16.4259 0.0000 2.9819 +v -16.1713 1.4149 3.4765 +v -16.2912 1.4149 3.4756 +v -16.4722 1.4917 4.3787 +v -16.3140 1.4917 4.3799 +v -16.2542 1.5530 2.5735 +v -16.4124 1.5530 2.5723 +v -16.1710 1.2339 3.4701 +v -16.3137 1.2529 4.3714 +v -16.2539 1.3141 2.5649 +v -16.2909 1.2339 3.4691 +v -16.4719 1.2529 4.3702 +v -16.4121 1.3141 2.5637 +v -16.4336 0.5144 3.4745 +v -16.5535 0.5144 3.4736 +v -16.4722 0.5972 4.3787 +v -16.3140 0.5972 4.3799 +v -16.2542 0.6584 2.5735 +v -16.4124 0.6584 2.5723 +v -16.4334 0.3333 3.4681 +v -16.3137 0.3583 4.3714 +v -16.2539 0.4196 2.5649 +v -16.5533 0.3333 3.4671 +v -16.4719 0.3583 4.3702 +v -16.4121 0.4196 2.5637 +v -16.2814 1.8814 3.3937 +v -16.4395 1.8814 3.3925 +v -16.4461 1.8814 3.5917 +v -16.2880 1.8814 3.5929 +v -16.2339 0.8805 3.5692 +v -16.3538 0.8805 3.5683 +v -16.4461 0.0000 3.5917 +v -16.2880 0.0000 3.5929 +v -16.2289 0.8805 3.4182 +v -16.2814 0.0000 3.3937 +v -16.3488 0.8805 3.4173 +v -16.4395 0.0000 3.3925 +v -16.2962 1.6654 3.8420 +v -16.4544 1.6654 3.8408 +v -16.4610 1.6654 4.0399 +v -16.3028 1.6654 4.0412 +v -16.4168 0.8805 3.9945 +v -16.5367 0.8805 3.9936 +v -16.4610 0.0000 4.0399 +v -16.3028 0.0000 4.0412 +v -16.4118 0.8805 3.8436 +v -16.2962 0.0000 3.8420 +v -16.5317 0.8805 3.8427 +v -16.4544 0.0000 3.8408 +v -16.2513 1.7611 4.2423 +v -16.5258 1.7611 4.2402 +v -16.5324 1.7611 4.4393 +v -16.2579 1.7611 4.4414 +v -16.3334 0.8805 4.3866 +v -16.4533 0.8805 4.3857 +v -16.4742 0.0000 4.4398 +v -16.3160 0.0000 4.4410 +v -16.3284 0.8805 4.2357 +v -16.3094 0.0000 4.2418 +v -16.4483 0.8805 4.2347 +v -16.4676 0.0000 4.2406 +v -16.1976 1.7088 -1.5986 +v -16.4638 1.7088 -1.6006 +v -16.4703 1.7088 -1.4015 +v -16.2042 1.7088 -1.3994 +v -16.2523 0.8805 -1.3834 +v -16.4389 0.8805 -1.3848 +v -16.4580 0.0000 -1.4014 +v -16.2166 0.0000 -1.3995 +v -16.2473 0.8805 -1.5343 +v -16.2100 0.0000 -1.5987 +v -16.4338 0.8805 -1.5358 +v -16.4514 0.0000 -1.6005 +v -16.2678 1.8182 -1.1577 +v -16.4259 1.8182 -1.1589 +v -16.4325 1.8182 -0.9598 +v -16.2744 1.8182 -0.9586 +v -16.1825 0.8805 -0.9400 +v -16.3024 0.8805 -0.9409 +v -16.4325 0.0000 -0.9128 +v -16.2744 0.0000 -0.9116 +v -16.1775 0.8805 -1.0909 +v -16.2678 0.0000 -1.1107 +v -16.2974 0.8805 -1.0918 +v -16.4259 0.0000 -1.1119 +v -16.1713 1.4149 -0.6173 +v -16.2912 1.4149 -0.6182 +v -16.4722 1.4917 0.2849 +v -16.3140 1.4917 0.2861 +v -16.2542 1.5530 -1.5203 +v -16.4124 1.5530 -1.5215 +v -16.1710 1.2339 -0.6237 +v -16.3137 1.2529 0.2776 +v -16.2539 1.3141 -1.5289 +v -16.2909 1.2339 -0.6247 +v -16.4719 1.2529 0.2764 +v -16.4121 1.3141 -1.5301 +v -16.4336 0.5144 -0.6193 +v -16.5535 0.5144 -0.6202 +v -16.4722 0.5972 0.2849 +v -16.3140 0.5972 0.2861 +v -16.2542 0.6584 -1.5203 +v -16.4124 0.6584 -1.5215 +v -16.4334 0.3333 -0.6257 +v -16.3137 0.3583 0.2776 +v -16.2539 0.4196 -1.5289 +v -16.5533 0.3333 -0.6267 +v -16.4719 0.3583 0.2764 +v -16.4121 0.4196 -1.5301 +v -16.2814 1.8814 -0.7001 +v -16.4395 1.8814 -0.7013 +v -16.4461 1.8814 -0.5021 +v -16.2880 1.8814 -0.5009 +v -16.2339 0.8805 -0.5246 +v -16.3538 0.8805 -0.5255 +v -16.4461 0.0000 -0.5021 +v -16.2880 0.0000 -0.5009 +v -16.2289 0.8805 -0.6756 +v -16.2814 0.0000 -0.7001 +v -16.3488 0.8805 -0.6765 +v -16.4395 0.0000 -0.7013 +v -16.2962 1.6654 -0.2518 +v -16.4544 1.6654 -0.2530 +v -16.4610 1.6654 -0.0539 +v -16.3028 1.6654 -0.0526 +v -16.4168 0.8805 -0.0992 +v -16.5367 0.8805 -0.1002 +v -16.4610 0.0000 -0.0539 +v -16.3028 0.0000 -0.0526 +v -16.4118 0.8805 -0.2502 +v -16.2962 0.0000 -0.2518 +v -16.5317 0.8805 -0.2511 +v -16.4544 0.0000 -0.2530 +v -16.2513 1.7611 0.1485 +v -16.5258 1.7611 0.1464 +v -16.5324 1.7611 0.3455 +v -16.2579 1.7611 0.3476 +v -16.3334 0.8805 0.2928 +v -16.4533 0.8805 0.2919 +v -16.4742 0.0000 0.3460 +v -16.3160 0.0000 0.3472 +v -16.3284 0.8805 0.1419 +v -16.3094 0.0000 0.1480 +v -16.4483 0.8805 0.1409 +v -16.4676 0.0000 0.1468 +v -16.1976 1.7088 0.4840 +v -16.4638 1.7088 0.4820 +v -16.4703 1.7088 0.6811 +v -16.2042 1.7088 0.6832 +v -16.2523 0.8805 0.6992 +v -16.4389 0.8805 0.6978 +v -16.4580 0.0000 0.6812 +v -16.2166 0.0000 0.6831 +v -16.2473 0.8805 0.5483 +v -16.2100 0.0000 0.4839 +v -16.4338 0.8805 0.5468 +v -16.4514 0.0000 0.4821 +v -16.2678 1.8182 0.9249 +v -16.4259 1.8182 0.9237 +v -16.4325 1.8182 1.1228 +v -16.2744 1.8182 1.1240 +v -16.1825 0.8805 1.1426 +v -16.3024 0.8805 1.1417 +v -16.4325 0.0000 1.1698 +v -16.2744 0.0000 1.1710 +v -16.1775 0.8805 0.9917 +v -16.2678 0.0000 0.9719 +v -16.2974 0.8805 0.9908 +v -16.4259 0.0000 0.9707 +v -16.1713 1.4149 1.4653 +v -16.2912 1.4149 1.4644 +v -16.4722 1.4917 2.3675 +v -16.3140 1.4917 2.3687 +v -16.2542 1.5530 0.5623 +v -16.4124 1.5530 0.5611 +v -16.1710 1.2339 1.4589 +v -16.3137 1.2529 2.3602 +v -16.2539 1.3141 0.5538 +v -16.2909 1.2339 1.4579 +v -16.4719 1.2529 2.3590 +v -16.4121 1.3141 0.5525 +v -16.4336 0.5144 1.4633 +v -16.5535 0.5144 1.4624 +v -16.4722 0.5972 2.3675 +v -16.3140 0.5972 2.3687 +v -16.2542 0.6584 0.5623 +v -16.4124 0.6584 0.5611 +v -16.4334 0.3333 1.4569 +v -16.3137 0.3583 2.3602 +v -16.2539 0.4196 0.5538 +v -16.5533 0.3333 1.4559 +v -16.4719 0.3583 2.3590 +v -16.4121 0.4196 0.5525 +v -16.2814 1.8814 1.3825 +v -16.4395 1.8814 1.3813 +v -16.4461 1.8814 1.5805 +v -16.2880 1.8814 1.5817 +v -16.2339 0.8805 1.5580 +v -16.3538 0.8805 1.5571 +v -16.4461 0.0000 1.5805 +v -16.2880 0.0000 1.5817 +v -16.2289 0.8805 1.4070 +v -16.2814 0.0000 1.3825 +v -16.3488 0.8805 1.4061 +v -16.4395 0.0000 1.3813 +v -16.2962 1.6654 1.8308 +v -16.4544 1.6654 1.8296 +v -16.4610 1.6654 2.0287 +v -16.3028 1.6654 2.0300 +v -16.4168 0.8805 1.9834 +v -16.5367 0.8805 1.9824 +v -16.4610 0.0000 2.0287 +v -16.3028 0.0000 2.0300 +v -16.4118 0.8805 1.8324 +v -16.2962 0.0000 1.8308 +v -16.5317 0.8805 1.8315 +v -16.4544 0.0000 1.8296 +v -16.2513 1.7611 2.2311 +v -16.5258 1.7611 2.2290 +v -16.5324 1.7611 2.4281 +v -16.2579 1.7611 2.4302 +v -16.3334 0.8805 2.3754 +v -16.4533 0.8805 2.3745 +v -16.4742 0.0000 2.4286 +v -16.3160 0.0000 2.4298 +v -16.3284 0.8805 2.2245 +v -16.3094 0.0000 2.2306 +v -16.4483 0.8805 2.2236 +v -16.4676 0.0000 2.2294 +v -16.1976 1.7089 -15.7068 +v -16.4638 1.7089 -15.7088 +v -16.4704 1.7089 -15.5097 +v -16.2042 1.7089 -15.5076 +v -16.2523 0.8805 -15.4916 +v -16.4389 0.8805 -15.4930 +v -16.4580 0.0000 -15.5096 +v -16.2166 0.0000 -15.5077 +v -16.2473 0.8805 -15.6425 +v -16.2100 0.0000 -15.7069 +v -16.4339 0.8805 -15.6440 +v -16.4514 0.0000 -15.7087 +v -16.2678 1.8182 -15.2659 +v -16.4260 1.8182 -15.2671 +v -16.4325 1.8182 -15.0680 +v -16.2744 1.8182 -15.0668 +v -16.1825 0.8805 -15.0482 +v -16.3024 0.8805 -15.0491 +v -16.4325 0.0000 -15.0210 +v -16.2744 0.0000 -15.0198 +v -16.1775 0.8805 -15.1991 +v -16.2678 0.0000 -15.2189 +v -16.2974 0.8805 -15.2000 +v -16.4260 0.0000 -15.2201 +v -16.1713 1.4149 -14.7255 +v -16.2912 1.4149 -14.7264 +v -16.4722 1.4917 -13.8233 +v -16.3140 1.4917 -13.8221 +v -16.2542 1.5530 -15.6285 +v -16.4124 1.5530 -15.6297 +v -16.1711 1.2339 -14.7319 +v -16.3137 1.2529 -13.8306 +v -16.2539 1.3141 -15.6370 +v -16.2909 1.2339 -14.7329 +v -16.4719 1.2529 -13.8318 +v -16.4121 1.3141 -15.6383 +v -16.4336 0.5144 -14.7275 +v -16.5535 0.5144 -14.7284 +v -16.4722 0.5972 -13.8233 +v -16.3140 0.5972 -13.8221 +v -16.2542 0.6584 -15.6285 +v -16.4124 0.6584 -15.6297 +v -16.4334 0.3333 -14.7339 +v -16.3137 0.3583 -13.8306 +v -16.2539 0.4196 -15.6370 +v -16.5533 0.3333 -14.7349 +v -16.4719 0.3583 -13.8318 +v -16.4121 0.4196 -15.6383 +v -16.2814 1.8814 -14.8083 +v -16.4395 1.8814 -14.8095 +v -16.4461 1.8814 -14.6103 +v -16.2880 1.8814 -14.6091 +v -16.2339 0.8805 -14.6328 +v -16.3538 0.8805 -14.6337 +v -16.4461 0.0000 -14.6103 +v -16.2880 0.0000 -14.6091 +v -16.2289 0.8805 -14.7838 +v -16.2814 0.0000 -14.8083 +v -16.3488 0.8805 -14.7847 +v -16.4395 0.0000 -14.8095 +v -16.2962 1.6654 -14.3600 +v -16.4544 1.6654 -14.3612 +v -16.4610 1.6654 -14.1621 +v -16.3028 1.6654 -14.1608 +v -16.4168 0.8805 -14.2074 +v -16.5367 0.8805 -14.2084 +v -16.4610 0.0000 -14.1621 +v -16.3028 0.0000 -14.1608 +v -16.4118 0.8805 -14.3584 +v -16.2962 0.0000 -14.3600 +v -16.5317 0.8805 -14.3593 +v -16.4544 0.0000 -14.3612 +v -16.2513 1.7611 -13.9597 +v -16.5258 1.7611 -13.9618 +v -16.5324 1.7611 -13.7627 +v -16.2579 1.7611 -13.7606 +v -16.3334 0.8805 -13.8154 +v -16.4533 0.8805 -13.8163 +v -16.4742 0.0000 -13.7622 +v -16.3160 0.0000 -13.7610 +v -16.3284 0.8805 -13.9663 +v -16.3094 0.0000 -13.9602 +v -16.4483 0.8805 -13.9672 +v -16.4676 0.0000 -13.9614 +v -16.1976 1.7089 -13.6242 +v -16.4638 1.7089 -13.6262 +v -16.4704 1.7089 -13.4270 +v -16.2042 1.7089 -13.4250 +v -16.2523 0.8805 -13.4090 +v -16.4389 0.8805 -13.4104 +v -16.4580 0.0000 -13.4270 +v -16.2166 0.0000 -13.4251 +v -16.2473 0.8805 -13.5599 +v -16.2100 0.0000 -13.6242 +v -16.4339 0.8805 -13.5613 +v -16.4514 0.0000 -13.6261 +v -16.2678 1.8182 -13.1833 +v -16.4260 1.8182 -13.1845 +v -16.4325 1.8182 -12.9854 +v -16.2744 1.8182 -12.9842 +v -16.1825 0.8805 -12.9656 +v -16.3024 0.8805 -12.9665 +v -16.4325 0.0000 -12.9384 +v -16.2744 0.0000 -12.9372 +v -16.1775 0.8805 -13.1165 +v -16.2678 0.0000 -13.1363 +v -16.2974 0.8805 -13.1174 +v -16.4260 0.0000 -13.1375 +v -16.1713 1.4149 -12.6429 +v -16.2912 1.4149 -12.6438 +v -16.4722 1.4917 -11.7407 +v -16.3140 1.4917 -11.7395 +v -16.2542 1.5530 -13.5459 +v -16.4124 1.5530 -13.5471 +v -16.1711 1.2339 -12.6493 +v -16.3137 1.2529 -11.7480 +v -16.2539 1.3141 -13.5544 +v -16.2909 1.2339 -12.6502 +v -16.4719 1.2529 -11.7492 +v -16.4121 1.3141 -13.5557 +v -16.4336 0.5144 -12.6449 +v -16.5535 0.5144 -12.6458 +v -16.4722 0.5972 -11.7407 +v -16.3140 0.5972 -11.7395 +v -16.2542 0.6584 -13.5459 +v -16.4124 0.6584 -13.5471 +v -16.4334 0.3333 -12.6513 +v -16.3137 0.3583 -11.7480 +v -16.2539 0.4196 -13.5544 +v -16.5533 0.3333 -12.6523 +v -16.4719 0.3583 -11.7492 +v -16.4121 0.4196 -13.5557 +v -16.2814 1.8814 -12.7257 +v -16.4395 1.8814 -12.7269 +v -16.4461 1.8814 -12.5277 +v -16.2880 1.8814 -12.5265 +v -16.2339 0.8805 -12.5502 +v -16.3538 0.8805 -12.5511 +v -16.4461 0.0000 -12.5277 +v -16.2880 0.0000 -12.5265 +v -16.2289 0.8805 -12.7012 +v -16.2814 0.0000 -12.7257 +v -16.3488 0.8805 -12.7021 +v -16.4395 0.0000 -12.7269 +v -16.2962 1.6654 -12.2774 +v -16.4544 1.6654 -12.2786 +v -16.4610 1.6654 -12.0795 +v -16.3028 1.6654 -12.0782 +v -16.4168 0.8805 -12.1248 +v -16.5367 0.8805 -12.1258 +v -16.4610 0.0000 -12.0795 +v -16.3028 0.0000 -12.0782 +v -16.4118 0.8805 -12.2758 +v -16.2962 0.0000 -12.2774 +v -16.5317 0.8805 -12.2767 +v -16.4544 0.0000 -12.2786 +v -16.2513 1.7611 -11.8771 +v -16.5258 1.7611 -11.8792 +v -16.5324 1.7611 -11.6801 +v -16.2579 1.7611 -11.6780 +v -16.3334 0.8805 -11.7328 +v -16.4533 0.8805 -11.7337 +v -16.4742 0.0000 -11.6796 +v -16.3160 0.0000 -11.6784 +v -16.3284 0.8805 -11.8837 +v -16.3094 0.0000 -11.8776 +v -16.4483 0.8805 -11.8846 +v -16.4676 0.0000 -11.8788 +v -14.6277 1.7089 -15.8850 +v -14.6257 1.7089 -16.1511 +v -14.8248 1.7089 -16.1577 +v -14.8268 1.7089 -15.8916 +v -14.8429 0.8805 -15.9396 +v -14.8415 0.8805 -16.1262 +v -14.8249 0.0000 -16.1454 +v -14.8268 0.0000 -15.9040 +v -14.6919 0.8805 -15.9347 +v -14.6276 0.0000 -15.8974 +v -14.6905 0.8805 -16.1212 +v -14.6258 0.0000 -16.1388 +v -15.0685 1.8182 -15.9552 +v -15.0673 1.8182 -16.1133 +v -15.2665 1.8182 -16.1199 +v -15.2677 1.8182 -15.9618 +v -15.2863 0.8805 -15.8699 +v -15.2854 0.8805 -15.9898 +v -15.3135 0.0000 -16.1199 +v -15.3147 0.0000 -15.9618 +v -15.1354 0.8805 -15.8649 +v -15.1156 0.0000 -15.9552 +v -15.1344 0.8805 -15.9848 +v -15.1144 0.0000 -16.1133 +v -15.6090 1.4149 -15.8586 +v -15.6081 1.4149 -15.9785 +v -16.5112 1.4917 -16.1596 +v -16.5124 1.4917 -16.0014 +v -14.7060 1.5530 -15.9416 +v -14.7047 1.5530 -16.0998 +v -15.6025 1.2339 -15.8584 +v -16.5039 1.2529 -16.0011 +v -14.6974 1.3141 -15.9413 +v -15.6016 1.2339 -15.9783 +v -16.5026 1.2529 -16.1593 +v -14.6962 1.3141 -16.0995 +v -15.6070 0.5144 -16.1210 +v -15.6061 0.5144 -16.2409 +v -16.5112 0.5972 -16.1596 +v -16.5124 0.5972 -16.0014 +v -14.7060 0.6584 -15.9416 +v -14.7047 0.6584 -16.0998 +v -15.6005 0.3333 -16.1208 +v -16.5039 0.3583 -16.0011 +v -14.6974 0.4196 -15.9413 +v -15.5996 0.3333 -16.2407 +v -16.5026 0.3583 -16.1593 +v -14.6962 0.4196 -16.0995 +v -15.5262 1.8814 -15.9688 +v -15.5250 1.8814 -16.1269 +v -15.7241 1.8814 -16.1335 +v -15.7253 1.8814 -15.9753 +v -15.7016 0.8805 -15.9213 +v -15.7007 0.8805 -16.0412 +v -15.7241 0.0000 -16.1335 +v -15.7253 0.0000 -15.9753 +v -15.5507 0.8805 -15.9163 +v -15.5262 0.0000 -15.9688 +v -15.5498 0.8805 -16.0362 +v -15.5250 0.0000 -16.1269 +v -15.9745 1.6654 -15.9836 +v -15.9733 1.6654 -16.1418 +v -16.1724 1.6654 -16.1484 +v -16.1736 1.6654 -15.9902 +v -16.1270 0.8805 -16.1041 +v -16.1261 0.8805 -16.2241 +v -16.1724 0.0000 -16.1484 +v -16.1736 0.0000 -15.9902 +v -15.9761 0.8805 -16.0992 +v -15.9745 0.0000 -15.9836 +v -15.9751 0.8805 -16.2191 +v -15.9733 0.0000 -16.1418 +v -16.3747 1.7611 -15.9387 +v -16.3727 1.7611 -16.2132 +v -16.5718 1.7611 -16.2198 +v -16.5739 1.7611 -15.9452 +v -16.5191 0.8805 -16.0208 +v -16.5182 0.8805 -16.1407 +v -16.5722 0.0000 -16.1616 +v -16.5734 0.0000 -16.0034 +v -16.3681 0.8805 -16.0158 +v -16.3743 0.0000 -15.9968 +v -16.3672 0.8805 -16.1357 +v -16.3731 0.0000 -16.1550 +v -16.5007 1.7088 -1.3839 +v -16.4987 1.7088 -1.6500 +v -16.6978 1.7088 -1.6566 +v -16.6999 1.7088 -1.3905 +v -16.7159 0.8805 -1.4385 +v -16.7145 0.8805 -1.6251 +v -16.6979 0.0000 -1.6442 +v -16.6998 0.0000 -1.4028 +v -16.5650 0.8805 -1.4335 +v -16.5006 0.0000 -1.3962 +v -16.5635 0.8805 -1.6201 +v -16.4988 0.0000 -1.6376 +v -16.9416 1.8182 -1.4540 +v -16.9404 1.8182 -1.6122 +v -17.1395 1.8182 -1.6188 +v -17.1407 1.8182 -1.4606 +v -17.1593 0.8805 -1.3687 +v -17.1584 0.8805 -1.4886 +v -17.1865 0.0000 -1.6188 +v -17.1877 0.0000 -1.4606 +v -17.0084 0.8805 -1.3637 +v -16.9886 0.0000 -1.4540 +v -17.0075 0.8805 -1.4836 +v -16.9874 0.0000 -1.6122 +v -17.4820 1.4149 -1.3575 +v -17.4811 1.4149 -1.4774 +v -18.3842 1.4917 -1.6584 +v -18.3854 1.4917 -1.5002 +v -16.5790 1.5530 -1.4404 +v -16.5778 1.5530 -1.5986 +v -17.4756 1.2339 -1.3573 +v -18.3769 1.2529 -1.5000 +v -16.5704 1.3141 -1.4402 +v -17.4746 1.2339 -1.4772 +v -18.3757 1.2529 -1.6581 +v -16.5692 1.3141 -1.5983 +v -17.4800 0.5144 -1.6199 +v -17.4791 0.5144 -1.7398 +v -18.3842 0.5972 -1.6584 +v -18.3854 0.5972 -1.5002 +v -16.5790 0.6584 -1.4404 +v -16.5778 0.6584 -1.5986 +v -17.4736 0.3333 -1.6196 +v -18.3769 0.3583 -1.5000 +v -16.5704 0.4196 -1.4402 +v -17.4726 0.3333 -1.7396 +v -18.3757 0.3583 -1.6581 +v -16.5692 0.4196 -1.5983 +v -17.3992 1.8814 -1.4676 +v -17.3980 1.8814 -1.6258 +v -17.5972 1.8814 -1.6324 +v -17.5984 1.8814 -1.4742 +v -17.5747 0.8805 -1.4201 +v -17.5738 0.8805 -1.5400 +v -17.5972 0.0000 -1.6324 +v -17.5984 0.0000 -1.4742 +v -17.4237 0.8805 -1.4151 +v -17.3992 0.0000 -1.4676 +v -17.4228 0.8805 -1.5350 +v -17.3980 0.0000 -1.6258 +v -17.8475 1.6654 -1.4824 +v -17.8463 1.6654 -1.6406 +v -18.0454 1.6654 -1.6472 +v -18.0467 1.6654 -1.4890 +v -18.0001 0.8805 -1.6030 +v -17.9991 0.8805 -1.7229 +v -18.0454 0.0000 -1.6472 +v -18.0467 0.0000 -1.4890 +v -17.8491 0.8805 -1.5980 +v -17.8475 0.0000 -1.4824 +v -17.8482 0.8805 -1.7179 +v -17.8463 0.0000 -1.6406 +v -18.2478 1.7611 -1.4375 +v -18.2457 1.7611 -1.7120 +v -18.4448 1.7611 -1.7186 +v -18.4469 1.7611 -1.4441 +v -18.3921 0.8805 -1.5196 +v -18.3912 0.8805 -1.6395 +v -18.4453 0.0000 -1.6604 +v -18.4465 0.0000 -1.5023 +v -18.2412 0.8805 -1.5146 +v -18.2473 0.0000 -1.4957 +v -18.2402 0.8805 -1.6345 +v -18.2461 0.0000 -1.6538 +v -16.5007 1.7088 -11.7369 +v -16.4987 1.7088 -12.0031 +v -16.6978 1.7088 -12.0097 +v -16.6999 1.7088 -11.7435 +v -16.7159 0.8805 -11.7916 +v -16.7145 0.8805 -11.9782 +v -16.6979 0.0000 -11.9973 +v -16.6998 0.0000 -11.7559 +v -16.5650 0.8805 -11.7866 +v -16.5006 0.0000 -11.7493 +v -16.5635 0.8805 -11.9732 +v -16.4988 0.0000 -11.9907 +v -16.9416 1.8182 -11.8071 +v -16.9404 1.8182 -11.9653 +v -17.1395 1.8182 -11.9719 +v -17.1407 1.8182 -11.8137 +v -17.1593 0.8805 -11.7218 +v -17.1584 0.8805 -11.8417 +v -17.1865 0.0000 -11.9719 +v -17.1877 0.0000 -11.8137 +v -17.0084 0.8805 -11.7168 +v -16.9886 0.0000 -11.8071 +v -17.0075 0.8805 -11.8367 +v -16.9874 0.0000 -11.9653 +v -17.4820 1.4149 -11.7106 +v -17.4811 1.4149 -11.8305 +v -18.3842 1.4917 -12.0115 +v -18.3854 1.4917 -11.8533 +v -16.5790 1.5530 -11.7935 +v -16.5778 1.5530 -11.9517 +v -17.4756 1.2339 -11.7104 +v -18.3769 1.2529 -11.8531 +v -16.5705 1.3141 -11.7932 +v -17.4746 1.2339 -11.8303 +v -18.3757 1.2529 -12.0112 +v -16.5692 1.3141 -11.9514 +v -17.4800 0.5144 -11.9729 +v -17.4791 0.5144 -12.0929 +v -18.3842 0.5972 -12.0115 +v -18.3854 0.5972 -11.8533 +v -16.5790 0.6584 -11.7935 +v -16.5778 0.6584 -11.9517 +v -17.4736 0.3333 -11.9727 +v -18.3769 0.3583 -11.8531 +v -16.5705 0.4196 -11.7932 +v -17.4726 0.3333 -12.0926 +v -18.3757 0.3583 -12.0112 +v -16.5692 0.4196 -11.9514 +v -17.3992 1.8814 -11.8207 +v -17.3980 1.8814 -11.9789 +v -17.5972 1.8814 -11.9854 +v -17.5984 1.8814 -11.8273 +v -17.5747 0.8805 -11.7732 +v -17.5738 0.8805 -11.8931 +v -17.5972 0.0000 -11.9854 +v -17.5984 0.0000 -11.8273 +v -17.4237 0.8805 -11.7682 +v -17.3992 0.0000 -11.8207 +v -17.4228 0.8805 -11.8881 +v -17.3980 0.0000 -11.9789 +v -17.8475 1.6654 -11.8355 +v -17.8463 1.6654 -11.9937 +v -18.0454 1.6654 -12.0003 +v -18.0467 1.6654 -11.8421 +v -18.0001 0.8805 -11.9561 +v -17.9991 0.8805 -12.0760 +v -18.0454 0.0000 -12.0003 +v -18.0467 0.0000 -11.8421 +v -17.8491 0.8805 -11.9511 +v -17.8475 0.0000 -11.8355 +v -17.8482 0.8805 -12.0710 +v -17.8463 0.0000 -11.9937 +v -18.2478 1.7611 -11.7906 +v -18.2457 1.7611 -12.0651 +v -18.4448 1.7611 -12.0717 +v -18.4469 1.7611 -11.7972 +v -18.3921 0.8805 -11.8727 +v -18.3912 0.8805 -11.9926 +v -18.4453 0.0000 -12.0135 +v -18.4465 0.0000 -11.8553 +v -18.2412 0.8805 -11.8677 +v -18.2473 0.0000 -11.8488 +v -18.2402 0.8805 -11.9876 +v -18.2461 0.0000 -12.0069 +v -13.4333 1.3855 -14.8170 +v -13.3083 1.8860 -14.9564 +v -12.6208 1.3855 -15.1128 +v -11.7678 1.4064 -15.2974 +v -11.8082 1.3855 -15.4085 +v -11.9936 1.8860 -15.4350 +v -11.9532 1.9069 -15.3239 +v -12.4185 2.1954 -15.3383 +v -12.3781 2.2162 -15.2273 +v -12.9207 2.1954 -15.1556 +v -12.8803 2.2162 -15.0445 +v -13.2679 1.9069 -14.8454 +v -13.3929 1.4064 -14.7059 +v -13.2479 0.8850 -14.7906 +v -13.2075 0.9058 -14.6795 +v -12.8230 0.5756 -14.8872 +v -12.7826 0.5965 -14.7761 +v -12.3208 0.5756 -15.0700 +v -12.2804 0.5965 -14.9589 +v -11.9332 0.8850 -15.2691 +v -11.8928 0.9058 -15.1580 +v -12.5803 1.4064 -15.0017 +v -12.7498 1.8031 -15.1131 +v -12.6339 1.7693 -15.1536 +v -12.7051 1.7422 -15.3141 +v -12.8209 1.7759 -15.2737 +v -13.1019 0.0241 -14.6562 +v -12.9860 -0.0096 -14.6967 +v -13.1730 -0.0030 -14.8168 +v -13.0571 -0.0368 -14.8573 +v -12.7098 1.7422 -15.3601 +v -12.6611 1.7693 -15.1913 +v -12.5463 1.8031 -15.2348 +v -12.5951 1.7759 -15.4035 +v -12.0978 -0.0096 -15.0677 +v -11.9830 0.0241 -15.1111 +v -12.0317 -0.0030 -15.2799 +v -12.1465 -0.0368 -15.2364 +v -12.7132 1.7060 -15.0538 +v -12.9305 -0.0497 -15.6601 +v -12.8095 -0.0506 -15.6996 +v -12.5922 1.7051 -15.0933 +v -12.8547 0.0104 -15.8603 +v -12.6374 1.7661 -15.2539 +v -12.9757 0.0114 -15.8207 +v -12.7584 1.7670 -15.2144 +v -15.8108 1.3855 -14.3550 +v -15.7723 1.8860 -14.5383 +v -15.2550 1.3855 -15.0174 +v -14.6087 1.4064 -15.6038 +v -14.6992 1.3855 -15.6798 +v -14.8730 1.8860 -15.6100 +v -14.7824 1.9069 -15.5340 +v -15.1927 2.1954 -15.3139 +v -15.1021 2.2162 -15.2379 +v -15.5362 2.1954 -14.9045 +v -15.4456 2.2162 -14.8285 +v -15.6817 1.9069 -14.4623 +v -15.7203 1.4064 -14.2790 +v -15.6371 0.8850 -14.4248 +v -15.5465 0.9058 -14.3488 +v -15.3174 0.5756 -14.7209 +v -15.2268 0.5965 -14.6449 +v -14.9739 0.5756 -15.1303 +v -14.8833 0.5965 -15.0543 +v -14.7378 0.8850 -15.4966 +v -14.6472 0.9058 -15.4206 +v -15.1645 1.4064 -14.9414 +v -15.3669 1.8031 -14.9532 +v -15.2868 1.7693 -15.0462 +v -15.4287 1.7422 -15.1497 +v -15.5088 1.7759 -15.0567 +v -15.4434 0.0241 -14.3815 +v -15.3633 -0.0096 -14.4745 +v -15.5853 -0.0030 -14.4850 +v -15.5052 -0.0368 -14.5780 +v -15.4558 1.7422 -15.1870 +v -15.3292 1.7693 -15.0653 +v -15.2516 1.8031 -15.1603 +v -15.3781 1.7759 -15.2821 +v -14.7796 -0.0096 -15.2399 +v -14.7019 0.0241 -15.3349 +v -14.8285 -0.0030 -15.4567 +v -14.9061 -0.0368 -15.3616 +v -15.3056 1.7060 -14.9201 +v -15.7969 -0.0497 -15.3365 +v -15.7119 -0.0506 -15.4312 +v -15.2206 1.7051 -15.0148 +v -15.8314 0.0104 -15.5478 +v -15.3400 1.7661 -15.1314 +v -15.9164 0.0114 -15.4531 +v -15.4251 1.7670 -15.0366 +v -15.6943 1.3855 -11.7111 +v -15.6881 1.8860 -11.8982 +v -15.2620 1.3855 -12.4599 +v -14.7272 1.4064 -13.1496 +v -14.8296 1.3855 -13.2087 +v -14.9886 1.8860 -13.1099 +v -14.8862 1.9069 -13.0507 +v -15.2520 2.1954 -12.7627 +v -15.1496 2.2162 -12.7036 +v -15.5192 2.1954 -12.2999 +v -15.4168 2.2162 -12.2408 +v -15.5858 1.9069 -11.8391 +v -15.5919 1.4063 -11.6520 +v -15.5353 0.8850 -11.8100 +v -15.4329 0.9058 -11.7508 +v -15.2719 0.5756 -12.1571 +v -15.1695 0.5965 -12.0980 +v -15.0047 0.5756 -12.6199 +v -14.9023 0.5965 -12.5608 +v -14.8357 0.8850 -13.0216 +v -14.7334 0.9058 -12.9625 +v -15.1596 1.4063 -12.4008 +v -15.3610 1.8031 -12.3772 +v -15.2983 1.7693 -12.4827 +v -15.4560 1.7422 -12.5600 +v -15.5187 1.7759 -12.4545 +v -15.3370 0.0241 -11.8010 +v -15.2743 -0.0096 -11.9064 +v -15.4948 -0.0030 -11.8782 +v -15.4320 -0.0368 -11.9837 +v -15.4891 1.7422 -12.5921 +v -15.3433 1.7693 -12.4941 +v -15.2833 1.8031 -12.6012 +v -15.4291 1.7759 -12.6992 +v -14.8323 -0.0096 -12.7615 +v -14.7723 0.0241 -12.8686 +v -14.9181 -0.0030 -12.9666 +v -14.9781 -0.0368 -12.8595 +v -15.2948 1.7060 -12.3553 +v -15.8510 -0.0497 -12.6801 +v -15.7837 -0.0506 -12.7881 +v -15.2275 1.7051 -12.4633 +v -15.9216 0.0104 -12.8821 +v -15.3654 1.7661 -12.5574 +v -15.9889 0.0114 -12.7741 +v -15.4327 1.7670 -12.4493 +v -10.1961 1.3855 11.3643 +v -10.3684 1.8860 11.4378 +v -11.0575 1.3855 11.2889 +v -11.9086 1.4063 11.0958 +v -11.9189 1.3855 11.2136 +v -11.7621 1.8860 11.3159 +v -11.7518 1.9069 11.1981 +v -11.3362 2.1954 11.4079 +v -11.3259 2.2162 11.2901 +v -10.8038 2.1954 11.4545 +v -10.7935 2.2162 11.3367 +v -10.3580 1.9069 11.3200 +v -10.1858 1.4063 11.2465 +v -10.3530 0.8850 11.2620 +v -10.3427 0.9058 11.1442 +v -10.7789 0.5756 11.1699 +v -10.7686 0.5965 11.0522 +v -11.3113 0.5756 11.1234 +v -11.3010 0.5965 11.0056 +v -11.7467 0.8850 11.1400 +v -11.7364 0.9058 11.0223 +v -11.0472 1.4063 11.1711 +v -10.9407 1.8031 11.3437 +v -11.0628 1.7693 11.3315 +v -11.0662 1.7422 11.5071 +v -10.9441 1.7759 11.5193 +v -10.4286 0.0241 11.0785 +v -10.5507 -0.0096 11.0662 +v -10.4320 -0.0030 11.2541 +v -10.5541 -0.0368 11.2418 +v -11.0813 1.7422 11.5507 +v -11.0542 1.7693 11.3771 +v -11.1766 1.8031 11.3680 +v -11.2037 1.7759 11.5416 +v -11.5125 -0.0096 11.0270 +v -11.6349 0.0241 11.0179 +v -11.6620 -0.0030 11.1914 +v -11.5396 -0.0368 11.2005 +v -10.9488 1.7060 11.2745 +v -11.0081 -0.0497 11.9158 +v -11.1345 -0.0506 11.9005 +v -11.0752 1.7051 11.2592 +v -11.1614 0.0104 12.0653 +v -11.1021 1.7661 11.4239 +v -11.0350 0.0114 12.0806 +v -10.9758 1.7670 11.4392 +v -13.9193 1.3855 11.3643 +v -14.0915 1.8860 11.4378 +v -14.7807 1.3855 11.2889 +v -15.6318 1.4063 11.0958 +v -15.6421 1.3855 11.2136 +v -15.4853 1.8860 11.3159 +v -15.4750 1.9069 11.1981 +v -15.0594 2.1954 11.4079 +v -15.0491 2.2162 11.2901 +v -14.5270 2.1954 11.4545 +v -14.5167 2.2162 11.3367 +v -14.0812 1.9069 11.3200 +v -13.9090 1.4063 11.2465 +v -14.0762 0.8850 11.2620 +v -14.0659 0.9058 11.1442 +v -14.5021 0.5756 11.1699 +v -14.4918 0.5965 11.0522 +v -15.0345 0.5756 11.1234 +v -15.0242 0.5965 11.0056 +v -15.4699 0.8850 11.1400 +v -15.4596 0.9058 11.0223 +v -14.7704 1.4063 11.1711 +v -14.6639 1.8031 11.3437 +v -14.7860 1.7693 11.3315 +v -14.7894 1.7422 11.5071 +v -14.6673 1.7759 11.5193 +v -14.1518 0.0241 11.0785 +v -14.2739 -0.0096 11.0662 +v -14.1552 -0.0030 11.2541 +v -14.2773 -0.0368 11.2418 +v -14.8045 1.7422 11.5507 +v -14.7774 1.7693 11.3771 +v -14.8997 1.8031 11.3680 +v -14.9269 1.7759 11.5416 +v -15.2357 -0.0096 11.0270 +v -15.3581 0.0241 11.0179 +v -15.3852 -0.0030 11.1914 +v -15.2628 -0.0368 11.2005 +v -14.6720 1.7060 11.2745 +v -14.7313 -0.0497 11.9158 +v -14.8577 -0.0506 11.9005 +v -14.7984 1.7051 11.2592 +v -14.8846 0.0104 12.0653 +v -14.8253 1.7661 11.4239 +v -14.7582 0.0114 12.0806 +v -14.6989 1.7670 11.4392 +v -11.9555 1.3855 11.3643 +v -12.1277 1.8860 11.4378 +v -12.8168 1.3855 11.2889 +v -13.6679 1.4063 11.0958 +v -13.6782 1.3855 11.2136 +v -13.5214 1.8860 11.3159 +v -13.5111 1.9069 11.1981 +v -13.0955 2.1954 11.4079 +v -13.0852 2.2162 11.2901 +v -12.5631 2.1954 11.4545 +v -12.5528 2.2162 11.3367 +v -12.1173 1.9069 11.3200 +v -11.9452 1.4063 11.2465 +v -12.1123 0.8850 11.2620 +v -12.1020 0.9058 11.1442 +v -12.5382 0.5756 11.1699 +v -12.5279 0.5965 11.0522 +v -13.0706 0.5756 11.1234 +v -13.0603 0.5965 11.0056 +v -13.5060 0.8850 11.1400 +v -13.4957 0.9058 11.0223 +v -12.8065 1.4063 11.1711 +v -12.7000 1.8031 11.3437 +v -12.8222 1.7693 11.3315 +v -12.8255 1.7422 11.5071 +v -12.7034 1.7759 11.5193 +v -12.1879 0.0241 11.0785 +v -12.3100 -0.0096 11.0662 +v -12.1913 -0.0030 11.2541 +v -12.3134 -0.0368 11.2418 +v -12.8406 1.7422 11.5507 +v -12.8135 1.7693 11.3771 +v -12.9359 1.8031 11.3680 +v -12.9630 1.7759 11.5416 +v -13.2718 -0.0096 11.0270 +v -13.3942 0.0241 11.0179 +v -13.4213 -0.0030 11.1914 +v -13.2989 -0.0368 11.2005 +v -12.7081 1.7060 11.2745 +v -12.7674 -0.0497 11.9158 +v -12.8938 -0.0506 11.9005 +v -12.8345 1.7051 11.2592 +v -12.9207 0.0104 12.0653 +v -12.8614 1.7661 11.4239 +v -12.7944 0.0114 12.0806 +v -12.7351 1.7670 11.4392 +v 0.1802 0.5595 -14.7704 +v 0.1255 0.5595 -14.5283 +v -0.0289 0.9000 -14.4721 +v 0.0649 0.9000 -14.8875 +v 0.2942 0.5595 -14.8315 +v 0.2606 0.9000 -14.9924 +v 0.5261 0.5595 -14.7429 +v 0.6584 0.9000 -14.8404 +v 0.5704 0.5595 -14.6214 +v 0.7343 0.9000 -14.6318 +v 0.4497 0.5595 -14.4045 +v 0.5273 0.9000 -14.2596 +v 0.3230 0.5595 -14.3780 +v 0.3100 0.9000 -14.2141 +v 0.2022 0.5595 -14.4241 +v 0.1027 0.9000 -14.2934 +v -0.0872 1.2405 -14.4509 +v -0.0091 1.7519 -14.4793 +v 0.0797 1.7519 -14.8725 +v 0.0214 1.2405 -14.9318 +v 0.2649 1.7519 -14.9718 +v 0.2478 1.2405 -15.0531 +v 0.6415 1.7519 -14.8279 +v 0.7084 1.2405 -14.8772 +v 0.7133 1.7519 -14.6305 +v 0.7963 1.2405 -14.6357 +v 0.5173 1.7519 -14.2782 +v 0.5566 1.2405 -14.2049 +v 0.3117 1.7519 -14.2351 +v 0.3051 1.2405 -14.1523 +v 0.1154 1.7519 -14.3101 +v 0.0651 1.2405 -14.2440 +v 0.1289 1.8995 -14.5295 +v 0.1827 1.8995 -14.7679 +v 0.2949 1.8995 -14.8280 +v 0.5232 1.8995 -14.7408 +v 0.5668 1.8995 -14.6211 +v 0.4480 1.8995 -14.4076 +v 0.3233 1.8995 -14.3815 +v 0.2044 1.8995 -14.4270 +v 0.1924 2.0403 -14.5527 +v 0.2302 2.0403 -14.7197 +v 0.3088 2.0403 -14.7618 +v 0.4687 2.0403 -14.7007 +v 0.4992 2.0403 -14.6169 +v 0.4160 2.0403 -14.4672 +v 0.3287 2.0403 -14.4490 +v 0.2453 2.0403 -14.4808 +v 0.1924 2.0876 -14.5527 +v 0.2302 2.0876 -14.7197 +v 0.3088 2.0876 -14.7618 +v 0.4687 2.0876 -14.7007 +v 0.4992 2.0876 -14.6169 +v 0.4160 2.0876 -14.4672 +v 0.3287 2.0876 -14.4490 +v 0.2453 2.0876 -14.4808 +v 0.1046 2.2023 -14.5207 +v 0.1646 2.2023 -14.7863 +v 0.2897 2.2023 -14.8533 +v 0.5440 2.2023 -14.7561 +v 0.5925 2.2023 -14.6228 +v 0.4602 2.2023 -14.3849 +v 0.3213 2.2023 -14.3558 +v 0.1887 2.2023 -14.4064 +v 0.1046 2.4098 -14.5207 +v 0.1646 2.4098 -14.7863 +v 0.2897 2.4098 -14.8533 +v 0.5440 2.4098 -14.7561 +v 0.5925 2.4098 -14.6228 +v 0.4602 2.4098 -14.3849 +v 0.3213 2.4098 -14.3558 +v 0.1887 2.4098 -14.4064 +v 0.2046 2.5373 -14.5571 +v 0.2393 2.5373 -14.7104 +v 0.3114 2.5373 -14.7491 +v 0.4583 2.5373 -14.6930 +v 0.4863 2.5373 -14.6160 +v 0.4099 2.5373 -14.4787 +v 0.3297 2.5373 -14.4619 +v 0.2532 2.5373 -14.4911 +v 0.3412 2.6507 -14.6068 +v 0.5700 1.5684 -14.5433 +v 0.5610 1.6492 -14.5187 +v 0.9846 1.5228 -14.3645 +v 0.9936 1.4420 -14.3892 +v 0.5319 1.6492 -14.4388 +v 0.9555 1.5228 -14.2847 +v 0.5229 1.5684 -14.4142 +v 0.9465 1.4420 -14.2600 +v 1.5494 1.4280 -14.0401 +v 1.5584 1.3472 -14.0648 +v 1.5204 1.4280 -13.9603 +v 1.5114 1.3472 -13.9356 +v 1.5349 1.2972 -14.0002 +v 0.1252 1.5684 -14.7052 +v -0.2984 1.4420 -14.8594 +v -0.3074 1.5228 -14.8347 +v 0.1162 1.6492 -14.6805 +v -0.3364 1.5228 -14.7549 +v 0.0872 1.6492 -14.6007 +v -0.3454 1.4420 -14.7302 +v 0.0782 1.5684 -14.5760 +v -0.9396 1.3472 -14.9740 +v -0.9486 1.4280 -14.9493 +v -0.9776 1.4280 -14.8695 +v -0.9866 1.3472 -14.8448 +v -0.9631 1.2972 -14.9094 +v 0.4048 -0.0767 -14.4979 +v 0.4048 0.7107 -14.4979 +v 0.2225 0.7107 -14.5643 +v 0.2225 -0.0767 -14.5643 +v 0.2777 0.7107 -14.7157 +v 0.2777 -0.0767 -14.7157 +v 0.4599 0.7107 -14.6494 +v 0.4599 -0.0767 -14.6494 +v -1.2374 1.2649 -15.0641 +v -1.1839 1.0229 -14.6042 +v -0.9923 1.4302 -14.7777 +v -1.1680 1.5864 -15.2935 +v -1.1668 1.0029 -14.6232 +v -1.2203 1.2449 -15.0831 +v -0.4444 1.5234 -14.6335 +v -0.4615 1.5434 -14.6145 +v -0.7079 1.2328 -14.5553 +v -0.6908 1.2128 -14.5743 +v -0.7581 1.7875 -14.9989 +v -0.7751 1.8075 -14.9799 +v -0.4318 1.8305 -14.8049 +v -0.4147 1.8105 -14.8239 +v -1.1510 1.5663 -15.3125 +v -0.9612 1.8626 -15.3137 +v -0.9441 1.8426 -15.3327 +v 1.4660 1.2989 -14.0503 +v 1.5641 1.2989 -13.9816 +v 1.5222 1.3053 -13.9217 +v 1.4240 1.3053 -13.9904 +v 1.5668 3.0809 -14.1517 +v 1.5420 3.0847 -14.1162 +v 1.6001 3.0847 -14.0756 +v 1.6249 3.0809 -14.1110 +v 1.4794 1.5669 -14.0695 +v 1.5776 1.5669 -14.0008 +v 1.5356 1.5733 -13.9409 +v 1.4375 1.5733 -14.0096 +v 1.5801 1.6171 -14.0044 +v 1.4820 1.6171 -14.0731 +v 1.5382 1.6235 -13.9445 +v 1.4400 1.6235 -14.0132 +v 1.8476 1.6235 -13.7278 +v 1.8451 1.5733 -13.7242 +v 1.8870 1.5669 -13.7842 +v 1.8895 1.6171 -13.7877 +v 1.1725 1.6171 -14.2898 +v 1.1700 1.5669 -14.2862 +v 1.1281 1.5733 -14.2263 +v 1.1306 1.6235 -14.2299 +v 13.7652 5.5867 -6.7761 +v 12.4179 5.5867 -7.2009 +v 11.5965 4.2732 -6.0377 +v 13.9200 4.2732 -5.0064 +v 15.0182 5.5867 -7.4284 +v 16.3791 4.2732 -6.2865 +v 15.4430 5.5867 -8.7756 +v 17.2127 4.2732 -8.9305 +v 14.7907 5.5867 -10.0287 +v 15.9326 4.2732 -11.3895 +v 13.4434 5.5867 -10.4534 +v 13.2886 4.2732 -12.2231 +v 12.1904 5.5867 -9.8012 +v 10.8296 4.2732 -10.9430 +v 11.7656 5.5867 -8.4539 +v 10.3164 4.2732 -8.4967 +v 13.6043 7.5569 -8.6148 +v 11.5965 3.6592 -6.0377 +v 13.9200 3.6592 -5.0064 +v 16.3791 3.6592 -6.2865 +v 17.2127 3.6592 -8.9305 +v 15.9326 3.6592 -11.3895 +v 13.2886 3.6592 -12.2231 +v 10.8296 3.6592 -10.9430 +v 10.3164 3.6592 -8.4967 +v 13.9081 0.4345 -4.7045 +v 13.9188 -0.0497 -4.3908 +v 16.7787 -0.0497 -5.8795 +v 16.5598 0.4345 -6.0849 +v 13.8948 1.4030 -5.1663 +v 16.2411 1.4030 -6.3877 +v 13.8976 2.8558 -5.2628 +v 16.1819 2.8558 -6.4519 +v 13.8976 3.8243 -5.2628 +v 16.1819 3.8243 -6.4519 +v 13.8976 4.3085 -5.2628 +v 16.1819 4.3085 -6.4519 +v 10.9868 0.4345 -7.0411 +v 10.9067 -0.0497 -6.9992 +v 11.0849 1.4030 -7.1421 +v 11.0761 2.8558 -7.2216 +v 11.0071 3.8243 -7.3540 +v 11.0560 4.3085 -7.4158 +v 10.5754 0.4345 -11.1064 +v 10.3246 -0.0497 -11.2952 +v 10.5998 -0.0497 -7.5888 +v 10.6800 0.4345 -7.6304 +v 10.9462 1.4030 -10.8307 +v 10.8190 1.4030 -7.6528 +v 11.0267 2.8558 -10.7776 +v 10.8791 2.8558 -7.6000 +v 11.0267 3.8243 -10.7776 +v 10.9480 3.8243 -7.4676 +v 11.0267 4.3085 -10.7776 +v 13.2272 0.4345 -12.4869 +v 13.1845 -0.0497 -12.7839 +v 13.2924 1.4030 -12.0521 +v 13.3111 2.8558 -11.9667 +v 13.3111 3.8243 -11.9667 +v 13.3111 4.3085 -11.9667 +v 16.0784 0.4345 -11.5879 +v 16.2594 -0.0497 -11.8144 +v 15.8151 1.4030 -11.2567 +v 15.7672 2.8558 -11.1923 +v 15.7672 3.8243 -11.1923 +v 15.7672 4.3085 -11.1923 +v 17.4588 0.4345 -8.9361 +v 17.7482 -0.0497 -8.9545 +v 17.0365 1.4030 -8.9104 +v 16.9563 2.8558 -8.9080 +v 16.9563 3.8243 -8.9080 +v 16.9563 4.3085 -8.9080 +v 6.4082 5.5867 -10.5037 +v 5.2168 5.5867 -9.7447 +v 5.5799 4.2732 -8.3678 +v 7.8634 4.2732 -9.4848 +v 6.7140 5.5867 -11.8829 +v 8.4634 4.2732 -12.1914 +v 5.9549 5.5867 -13.0743 +v 6.9739 4.2732 -14.5295 +v 4.5758 5.5867 -13.3800 +v 4.2673 4.2732 -15.1295 +v 3.3844 5.5867 -12.6210 +v 1.9292 4.2732 -13.6399 +v 3.0786 5.5867 -11.2419 +v 1.3292 4.2732 -10.9334 +v 3.8376 5.5867 -10.0505 +v 2.8733 4.2732 -8.9678 +v 4.8963 7.5569 -11.5624 +v 5.5799 3.6592 -8.3678 +v 7.8634 3.6592 -9.4848 +v 8.4634 3.6592 -12.1914 +v 6.9739 3.6592 -14.5295 +v 4.2673 3.6592 -15.1295 +v 1.9292 3.6592 -13.6399 +v 1.3292 3.6592 -10.9334 +v 2.8733 3.6592 -8.9678 +v 8.0870 0.4345 -9.2816 +v 8.3342 -0.0497 -9.0881 +v 9.0320 -0.0497 -12.2359 +v 8.7340 0.4345 -12.2003 +v 7.7247 1.4030 -9.5683 +v 8.2972 1.4030 -12.1507 +v 7.6526 2.8558 -9.6324 +v 8.2099 2.8558 -12.1467 +v 7.6526 3.8243 -9.6324 +v 8.2099 3.8243 -12.1467 +v 7.6526 4.3085 -9.6324 +v 8.2099 4.3085 -12.1467 +v 4.4193 0.4345 -8.5457 +v 4.3998 -0.0497 -8.4574 +v 4.4049 1.4030 -8.6857 +v 4.3384 2.8558 -8.7301 +v 4.1927 3.8243 -8.7624 +v 4.1767 4.3085 -8.8396 +v 1.0406 0.4345 -10.8437 +v 0.7348 -0.0497 -10.7729 +v 3.7510 -0.0497 -8.6013 +v 3.7706 0.4345 -8.6895 +v 1.4902 1.4030 -10.9505 +v 3.8428 1.4030 -8.8104 +v 1.5826 2.8558 -10.9781 +v 3.9219 2.8558 -8.8224 +v 1.5826 3.8243 -10.9781 +v 4.0676 3.8243 -8.7901 +v 1.5826 4.3085 -10.9781 +v 1.6877 0.4345 -13.7624 +v 1.4327 -0.0497 -13.9206 +v 2.0627 1.4030 -13.5329 +v 2.1400 2.8558 -13.4923 +v 2.1400 3.8243 -13.4923 +v 2.1400 4.3085 -13.4923 +v 4.2091 0.4345 -15.3687 +v 4.1519 -0.0497 -15.6530 +v 4.2936 1.4030 -14.9541 +v 4.3120 2.8558 -14.8760 +v 4.3120 3.8243 -14.8760 +v 4.3120 4.3085 -14.8760 +v 7.1278 0.4345 -14.7216 +v 7.2997 -0.0497 -14.9552 +v 6.8760 1.4030 -14.3816 +v 6.8262 2.8558 -14.3186 +v 6.8262 3.8243 -14.3186 +v 6.8262 4.3085 -14.3186 +v -7.3603 0.5595 -14.6578 +v -7.2663 0.5595 -14.4280 +v -7.3605 0.9000 -14.2934 +v -7.5219 0.9000 -14.6876 +v -7.3020 0.5595 -14.7732 +v -7.4218 0.9000 -14.8857 +v -7.0612 0.5595 -14.8336 +v -7.0087 0.9000 -14.9894 +v -6.9552 0.5595 -14.7594 +v -6.8269 0.9000 -14.8620 +v -6.9297 0.5595 -14.5125 +v -6.7830 0.9000 -14.4384 +v -7.0182 0.5595 -14.4182 +v -6.9349 0.9000 -14.2765 +v -7.1437 0.5595 -14.3867 +v -7.1502 0.9000 -14.2225 +v -7.3961 1.2405 -14.2426 +v -7.3484 1.7519 -14.3107 +v -7.5012 1.7519 -14.6838 +v -7.5830 1.2405 -14.6988 +v -7.4065 1.7519 -14.8713 +v -7.4671 1.2405 -14.9281 +v -7.0154 1.7519 -14.9694 +v -6.9889 1.2405 -15.0482 +v -6.8433 1.7519 -14.8489 +v -6.7784 1.2405 -14.9008 +v -6.8018 1.7519 -14.4479 +v -6.7276 1.2405 -14.4104 +v -6.9456 1.7519 -14.2947 +v -6.9035 1.2405 -14.2230 +v -7.1494 1.7519 -14.2435 +v -7.1527 1.2405 -14.1605 +v -7.2642 1.8995 -14.4310 +v -7.3568 1.8995 -14.6571 +v -7.2994 1.8995 -14.7708 +v -7.0623 1.8995 -14.8303 +v -6.9580 1.8995 -14.7572 +v -6.9329 1.8995 -14.5141 +v -7.0200 1.8995 -14.4213 +v -7.1435 1.8995 -14.3903 +v -7.2254 2.0403 -14.4864 +v -7.2903 2.0403 -14.6448 +v -7.2500 2.0403 -14.7245 +v -7.0840 2.0403 -14.7661 +v -7.0109 2.0403 -14.7150 +v -6.9933 2.0403 -14.5447 +v -7.0543 2.0403 -14.4796 +v -7.1409 2.0403 -14.4579 +v -7.2254 2.0876 -14.4864 +v -7.2903 2.0876 -14.6448 +v -7.2500 2.0876 -14.7245 +v -7.0840 2.0876 -14.7661 +v -7.0109 2.0876 -14.7150 +v -6.9933 2.0876 -14.5447 +v -7.0543 2.0876 -14.4796 +v -7.1409 2.0876 -14.4579 +v -7.2790 2.2023 -14.4098 +v -7.3822 2.2023 -14.6618 +v -7.3182 2.2023 -14.7884 +v -7.0541 2.2023 -14.8547 +v -6.9379 2.2023 -14.7733 +v -6.9099 2.2023 -14.5025 +v -7.0069 2.2023 -14.3990 +v -7.1446 2.2023 -14.3645 +v -7.2790 2.4098 -14.4098 +v -7.3822 2.4098 -14.6618 +v -7.3182 2.4098 -14.7884 +v -7.0541 2.4098 -14.8547 +v -6.9379 2.4098 -14.7733 +v -6.9099 2.4098 -14.5025 +v -7.0069 2.4098 -14.3990 +v -7.1446 2.4098 -14.3645 +v -7.2180 2.5373 -14.4970 +v -7.2775 2.5373 -14.6425 +v -7.2406 2.5373 -14.7156 +v -7.0881 2.5373 -14.7539 +v -7.0210 2.5373 -14.7069 +v -7.0048 2.5373 -14.5505 +v -7.0609 2.5373 -14.4908 +v -7.1403 2.5373 -14.4708 +v -7.1346 2.6507 -14.6161 +v -6.9108 1.5684 -14.6953 +v -6.9040 1.6492 -14.6699 +v -6.4686 1.5228 -14.7866 +v -6.4754 1.4420 -14.8120 +v -6.8820 1.6492 -14.5879 +v -6.4466 1.5228 -14.7046 +v -6.8752 1.5684 -14.5625 +v -6.4398 1.4420 -14.6792 +v -5.8198 1.4280 -14.8449 +v -5.8266 1.3472 -14.8702 +v -5.7978 1.4280 -14.7628 +v -5.7910 1.3472 -14.7374 +v -5.8088 1.2972 -14.8038 +v -7.3680 1.5684 -14.5728 +v -7.8034 1.4420 -14.4561 +v -7.7966 1.5228 -14.4308 +v -7.3612 1.6492 -14.5474 +v -7.7746 1.5228 -14.3487 +v -7.3392 1.6492 -14.4654 +v -7.7678 1.4420 -14.3234 +v -7.3324 1.5684 -14.4400 +v -8.3943 1.3472 -14.1822 +v -8.3875 1.4280 -14.1568 +v -8.3656 1.4280 -14.0748 +v -8.3588 1.3472 -14.0494 +v -8.3766 1.2972 -14.1158 +v -7.0200 -0.0767 -14.5634 +v -7.0200 0.7107 -14.5634 +v -7.2074 0.7107 -14.5132 +v -7.2074 -0.0767 -14.5132 +v -7.2491 0.7107 -14.6688 +v -7.2491 -0.0767 -14.6688 +v -7.0618 0.7107 -14.7190 +v -7.0618 -0.0767 -14.7190 +v -8.6899 1.2649 -14.0852 +v -8.3823 1.0229 -13.7392 +v -8.3250 1.4302 -13.9912 +v -8.7648 1.5864 -14.3129 +v -8.3793 1.0029 -13.7646 +v -8.6869 1.2449 -14.1106 +v -7.7934 1.5234 -14.1874 +v -7.7965 1.5434 -14.1620 +v -7.9644 1.2328 -13.9721 +v -7.9614 1.2128 -13.9975 +v -8.2600 1.7875 -14.3068 +v -8.2630 1.8075 -14.2814 +v -7.8814 1.8305 -14.3350 +v -7.8783 1.8105 -14.3604 +v -8.7617 1.5663 -14.3383 +v -8.6069 1.8626 -14.4481 +v -8.6038 1.8426 -14.4735 +v -5.8940 1.2989 -14.8054 +v -5.7742 1.2989 -14.8054 +v -5.7742 1.3053 -14.7323 +v -5.8940 1.3053 -14.7323 +v -5.8696 3.0809 -14.9463 +v -5.8696 3.0847 -14.9030 +v -5.7987 3.0847 -14.9030 +v -5.7987 3.0809 -14.9463 +v -5.8940 1.5669 -14.8288 +v -5.7742 1.5669 -14.8288 +v -5.7742 1.5733 -14.7557 +v -5.8940 1.5733 -14.7557 +v -5.7742 1.6171 -14.8332 +v -5.8940 1.6171 -14.8332 +v -5.7742 1.6235 -14.7601 +v -5.8940 1.6235 -14.7601 +v -5.3965 1.6235 -14.7601 +v -5.3965 1.5733 -14.7557 +v -5.3965 1.5669 -14.8288 +v -5.3965 1.6171 -14.8332 +v -6.2718 1.6171 -14.8332 +v -6.2718 1.5669 -14.8288 +v -6.2718 1.5733 -14.7557 +v -6.2718 1.6235 -14.7601 +v -3.3736 0.5595 -14.7023 +v -3.3208 0.5595 -14.4598 +v -3.4370 0.9000 -14.3436 +v -3.5276 0.9000 -14.7597 +v -3.2961 0.5595 -14.8059 +v -3.3946 0.9000 -14.9374 +v -3.0485 0.5595 -14.8236 +v -2.9697 0.9000 -14.9678 +v -2.9570 0.5595 -14.7321 +v -2.8128 0.9000 -14.8109 +v -2.9747 0.5595 -14.4845 +v -2.8432 0.9000 -14.3860 +v -3.0783 0.5595 -14.4070 +v -3.0208 0.9000 -14.2530 +v -3.2073 0.5595 -14.3978 +v -3.2422 0.9000 -14.2372 +v -3.4809 1.2405 -14.2997 +v -3.4221 1.7519 -14.3584 +v -3.5078 1.7519 -14.7524 +v -3.5857 1.2405 -14.7814 +v -3.3819 1.7519 -14.9206 +v -3.4318 1.2405 -14.9871 +v -2.9798 1.7519 -14.9493 +v -2.9400 1.2405 -15.0223 +v -2.8312 1.7519 -14.8008 +v -2.7583 1.2405 -14.8406 +v -2.8600 1.7519 -14.3986 +v -2.7935 1.2405 -14.3488 +v -3.0282 1.7519 -14.2727 +v -2.9992 1.2405 -14.1949 +v -3.2377 1.7519 -14.2578 +v -3.2554 1.2405 -14.1765 +v -3.3183 1.8995 -14.4623 +v -3.3702 1.8995 -14.7011 +v -3.2939 1.8995 -14.8030 +v -3.0502 1.8995 -14.8205 +v -2.9601 1.8995 -14.7304 +v -2.9776 1.8995 -14.4866 +v -3.0795 1.8995 -14.4103 +v -3.2065 1.8995 -14.4012 +v -3.2705 2.0403 -14.5101 +v -3.3068 2.0403 -14.6774 +v -3.2534 2.0403 -14.7488 +v -3.0826 2.0403 -14.7611 +v -3.0195 2.0403 -14.6980 +v -3.0317 2.0403 -14.5272 +v -3.1032 2.0403 -14.4737 +v -3.1921 2.0403 -14.4674 +v -3.2705 2.0876 -14.5101 +v -3.3068 2.0876 -14.6774 +v -3.2534 2.0876 -14.7488 +v -3.0826 2.0876 -14.7611 +v -3.0195 2.0876 -14.6980 +v -3.0317 2.0876 -14.5272 +v -3.1032 2.0876 -14.4737 +v -3.1921 2.0876 -14.4674 +v -3.3365 2.2023 -14.4440 +v -3.3944 2.2023 -14.7101 +v -3.3094 2.2023 -14.8237 +v -3.0378 2.2023 -14.8431 +v -2.9375 2.2023 -14.7428 +v -2.9569 2.2023 -14.4712 +v -3.0705 2.2023 -14.3862 +v -3.2120 2.2023 -14.3760 +v -3.3365 2.4098 -14.4440 +v -3.3944 2.4098 -14.7101 +v -3.3094 2.4098 -14.8237 +v -3.0378 2.4098 -14.8431 +v -2.9375 2.4098 -14.7428 +v -2.9569 2.4098 -14.4712 +v -3.0705 2.4098 -14.3862 +v -3.2120 2.4098 -14.3760 +v -3.2613 2.5373 -14.5193 +v -3.2947 2.5373 -14.6729 +v -3.2456 2.5373 -14.7385 +v -3.0888 2.5373 -14.7497 +v -3.0309 2.5373 -14.6918 +v -3.0421 2.5373 -14.5350 +v -3.1077 2.5373 -14.4859 +v -3.1894 2.5373 -14.4800 +v -3.1585 2.6507 -14.6221 +v -2.9244 1.5684 -14.6612 +v -2.9221 1.6492 -14.6351 +v -2.4730 1.5228 -14.6744 +v -2.4753 1.4420 -14.7005 +v -2.9147 1.6492 -14.5504 +v -2.4656 1.5228 -14.5897 +v -2.9124 1.5684 -14.5243 +v -2.4633 1.4420 -14.5636 +v -1.8240 1.4280 -14.6191 +v -1.8263 1.3472 -14.6452 +v -1.8166 1.4280 -14.5344 +v -1.8143 1.3472 -14.5083 +v -1.8203 1.2972 -14.5768 +v -3.3959 1.5684 -14.6200 +v -3.8449 1.4420 -14.5807 +v -3.8426 1.5228 -14.5545 +v -3.3936 1.6492 -14.5938 +v -3.8352 1.5228 -14.4699 +v -3.3862 1.6492 -14.5092 +v -3.8330 1.4420 -14.4438 +v -3.3839 1.5684 -14.4830 +v -4.4745 1.3472 -14.4135 +v -4.4722 1.4280 -14.3874 +v -4.4648 1.4280 -14.3028 +v -4.4625 1.3472 -14.2766 +v -4.4685 1.2972 -14.3451 +v -3.0549 -0.0767 -14.5503 +v -3.0549 0.7107 -14.5503 +v -3.2481 0.7107 -14.5334 +v -3.2481 -0.0767 -14.5334 +v -3.2621 0.7107 -14.6939 +v -3.2621 -0.0767 -14.6939 +v -3.0689 0.7107 -14.7108 +v -3.0689 -0.0767 -14.7108 +v -4.7824 1.2649 -14.3694 +v -4.5396 1.0229 -13.9752 +v -4.4393 1.4302 -14.2134 +v -4.8166 1.5864 -14.6066 +v -4.5321 1.0029 -13.9996 +v -4.7750 1.2449 -14.3938 +v -3.8818 1.5234 -14.3143 +v -3.8892 1.5434 -14.2898 +v -4.0876 1.2328 -14.1320 +v -4.0801 1.2128 -14.1564 +v -4.3205 1.7875 -14.5129 +v -4.3279 1.8075 -14.4884 +v -3.9428 1.8305 -14.4749 +v -3.9353 1.8105 -14.4994 +v -4.8091 1.5663 -14.6311 +v -4.6376 1.8626 -14.7123 +v -4.6302 1.8426 -14.7367 +v -1.9039 1.2989 -14.5931 +v -1.7860 1.2989 -14.5723 +v -1.7986 1.3053 -14.5003 +v -1.9166 1.3053 -14.5211 +v -1.8554 3.0809 -14.7276 +v -1.8629 3.0847 -14.6849 +v -1.7931 3.0847 -14.6726 +v -1.7855 3.0809 -14.7153 +v -1.8999 1.5669 -14.6162 +v -1.7819 1.5669 -14.5954 +v -1.7946 1.5733 -14.5234 +v -1.9125 1.5733 -14.5442 +v -1.7811 1.6171 -14.5997 +v -1.8991 1.6171 -14.6205 +v -1.7938 1.6235 -14.5277 +v -1.9118 1.6235 -14.5485 +v -1.4218 1.6235 -14.4621 +v -1.4226 1.5733 -14.4578 +v -1.4099 1.5669 -14.5298 +v -1.4091 1.6171 -14.5341 +v -2.2711 1.6171 -14.6861 +v -2.2719 1.5669 -14.6818 +v -2.2845 1.5733 -14.6098 +v -2.2838 1.6235 -14.6141 +v -4.8350 0.5595 -9.5807 +v -4.8664 0.5595 -9.8270 +v -4.7405 0.9000 -9.9326 +v -4.6866 0.9000 -9.5101 +v -4.9213 0.5595 -9.4843 +v -4.8346 0.9000 -9.3447 +v -5.1695 0.5595 -9.4883 +v -5.2605 0.9000 -9.3515 +v -5.2526 0.5595 -9.5874 +v -5.4032 0.9000 -9.5215 +v -5.2134 0.5595 -9.8325 +v -5.3359 0.9000 -9.9421 +v -5.1035 0.5595 -9.9007 +v -5.1473 0.9000 -10.0591 +v -4.9741 0.5595 -9.8986 +v -4.9253 0.9000 -10.0556 +v -4.6930 1.2405 -9.9725 +v -4.7567 1.7519 -9.9191 +v -4.7056 1.7519 -9.5192 +v -4.6306 1.2405 -9.4834 +v -4.8457 1.7519 -9.3626 +v -4.8019 1.2405 -9.2920 +v -5.2488 1.7519 -9.3690 +v -5.2949 1.2405 -9.2998 +v -5.3839 1.7519 -9.5299 +v -5.4600 1.2405 -9.4966 +v -5.3202 1.7519 -9.9280 +v -5.3821 1.2405 -9.9834 +v -5.1417 1.7519 -10.0388 +v -5.1638 1.2405 -10.1189 +v -4.9316 1.7519 -10.0355 +v -4.9069 1.2405 -10.1148 +v -4.8692 1.8995 -9.8247 +v -4.8382 1.8995 -9.5823 +v -4.9231 1.8995 -9.4874 +v -5.1675 1.8995 -9.4912 +v -5.2493 1.8995 -9.5888 +v -5.2107 1.8995 -9.8301 +v -5.1025 1.8995 -9.8973 +v -4.9752 1.8995 -9.8952 +v -4.9210 2.0403 -9.7812 +v -4.8993 2.0403 -9.6114 +v -4.9588 2.0403 -9.5449 +v -5.1300 2.0403 -9.5476 +v -5.1873 2.0403 -9.6159 +v -5.1603 2.0403 -9.7850 +v -5.0845 2.0403 -9.8320 +v -4.9953 2.0403 -9.8306 +v -4.9210 2.0876 -9.7812 +v -4.8993 2.0876 -9.6114 +v -4.9588 2.0876 -9.5449 +v -5.1300 2.0876 -9.5476 +v -5.1873 2.0876 -9.6159 +v -5.1603 2.0876 -9.7850 +v -5.0845 2.0876 -9.8320 +v -4.9953 2.0876 -9.8306 +v -4.8494 2.2023 -9.8413 +v -4.8149 2.2023 -9.5712 +v -4.9095 2.2023 -9.4655 +v -5.1818 2.2023 -9.4698 +v -5.2730 2.2023 -9.5785 +v -5.2300 2.2023 -9.8473 +v -5.1094 2.2023 -9.9221 +v -4.9675 2.2023 -9.9199 +v -4.8494 2.4098 -9.8413 +v -4.8149 2.4098 -9.5712 +v -4.9095 2.4098 -9.4655 +v -5.1818 2.4098 -9.4698 +v -5.2730 2.4098 -9.5785 +v -5.2300 2.4098 -9.8473 +v -5.1094 2.4098 -9.9221 +v -4.9675 2.4098 -9.9199 +v -4.9309 2.5373 -9.7729 +v -4.9110 2.5373 -9.6169 +v -4.9656 2.5373 -9.5559 +v -5.1228 2.5373 -9.5584 +v -5.1755 2.5373 -9.6211 +v -5.1506 2.5373 -9.7763 +v -5.0810 2.5373 -9.8195 +v -4.9991 2.5373 -9.8182 +v -5.0423 2.6507 -9.6794 +v -5.2789 1.5684 -9.6608 +v -5.2789 1.6492 -9.6871 +v -5.7297 1.5228 -9.6871 +v -5.7297 1.4420 -9.6608 +v -5.2789 1.6492 -9.7720 +v -5.7297 1.5228 -9.7720 +v -5.2789 1.5684 -9.7983 +v -5.7297 1.4420 -9.7983 +v -6.3714 1.4280 -9.7987 +v -6.3714 1.3472 -9.7725 +v -6.3714 1.4280 -9.8837 +v -6.3715 1.3472 -9.9099 +v -6.3714 1.2972 -9.8412 +v -4.8056 1.5684 -9.6608 +v -4.3549 1.4420 -9.6608 +v -4.3549 1.5228 -9.6871 +v -4.8056 1.6492 -9.6871 +v -4.3549 1.5228 -9.7720 +v -4.8056 1.6492 -9.7720 +v -4.3549 1.4420 -9.7983 +v -4.8056 1.5684 -9.7983 +v -3.7131 1.3472 -9.7725 +v -3.7132 1.4280 -9.7987 +v -3.7131 1.4280 -9.8837 +v -3.7131 1.3472 -9.9099 +v -3.7131 1.2972 -9.8412 +v -5.1393 -0.0767 -9.7600 +v -5.1393 0.7107 -9.7600 +v -4.9453 0.7107 -9.7600 +v -4.9453 -0.0767 -9.7600 +v -4.9453 0.7107 -9.5988 +v -4.9453 -0.0767 -9.5988 +v -5.1393 0.7107 -9.5988 +v -5.1393 -0.0767 -9.5988 +v -3.4025 1.2649 -9.7896 +v -3.6101 1.0229 -10.2035 +v -3.7307 1.4302 -9.9749 +v -3.3892 1.5864 -9.5503 +v -3.6196 1.0029 -10.1798 +v -3.4120 1.2449 -9.7659 +v -4.2949 1.5234 -9.9230 +v -4.2854 1.5434 -9.9467 +v -4.0741 1.2328 -10.0867 +v -4.0836 1.2128 -10.0630 +v -3.8752 1.7875 -9.6869 +v -3.8657 1.8075 -9.7106 +v -4.2482 1.8305 -9.7577 +v -4.2577 1.8105 -9.7340 +v -3.3987 1.5663 -9.5266 +v -3.5767 1.8626 -9.4606 +v -3.5862 1.8426 -9.4369 +v -6.2896 1.2989 -9.8177 +v -6.4053 1.2989 -9.8487 +v -6.3864 1.3053 -9.9193 +v -6.2706 1.3053 -9.8883 +v -6.3496 3.0809 -9.6879 +v -6.3384 3.0847 -9.7297 +v -6.4069 3.0847 -9.7481 +v -6.4181 3.0809 -9.7063 +v -6.2956 1.5669 -9.7950 +v -6.4113 1.5669 -9.8260 +v -6.3924 1.5733 -9.8966 +v -6.2767 1.5733 -9.8656 +v -6.4125 1.6171 -9.8218 +v -6.2968 1.6171 -9.7908 +v -6.3936 1.6235 -9.8924 +v -6.2778 1.6235 -9.8614 +v -6.7584 1.6235 -9.9902 +v -6.7573 1.5733 -9.9944 +v -6.7762 1.5669 -9.9238 +v -6.7773 1.6171 -9.9195 +v -5.9319 1.6171 -9.6930 +v -5.9308 1.5669 -9.6972 +v -5.9118 1.5733 -9.7679 +v -5.9130 1.6235 -9.7636 +v -0.5296 0.5595 -9.5807 +v -0.5610 0.5595 -9.8270 +v -0.4351 0.9000 -9.9326 +v -0.3812 0.9000 -9.5101 +v -0.6158 0.5595 -9.4843 +v -0.5292 0.9000 -9.3447 +v -0.8640 0.5595 -9.4883 +v -0.9550 0.9000 -9.3515 +v -0.9472 0.5595 -9.5874 +v -1.0977 0.9000 -9.5215 +v -0.9079 0.5595 -9.8325 +v -1.0304 0.9000 -9.9421 +v -0.7980 0.5595 -9.9007 +v -0.8418 0.9000 -10.0591 +v -0.6687 0.5595 -9.8986 +v -0.6199 0.9000 -10.0556 +v -0.3875 1.2405 -9.9725 +v -0.4512 1.7519 -9.9191 +v -0.4002 1.7519 -9.5192 +v -0.3251 1.2405 -9.4834 +v -0.5403 1.7519 -9.3626 +v -0.4964 1.2405 -9.2920 +v -0.9434 1.7519 -9.3690 +v -0.9894 1.2405 -9.2998 +v -1.0784 1.7519 -9.5299 +v -1.1546 1.2405 -9.4966 +v -1.0147 1.7519 -9.9280 +v -1.0767 1.2405 -9.9834 +v -0.8362 1.7519 -10.0388 +v -0.8583 1.2405 -10.1189 +v -0.6261 1.7519 -10.0355 +v -0.6015 1.2405 -10.1148 +v -0.5637 1.8995 -9.8247 +v -0.5328 1.8995 -9.5823 +v -0.6177 1.8995 -9.4874 +v -0.8620 1.8995 -9.4912 +v -0.9439 1.8995 -9.5888 +v -0.9053 1.8995 -9.8301 +v -0.7971 1.8995 -9.8973 +v -0.6697 1.8995 -9.8952 +v -0.6156 2.0403 -9.7812 +v -0.5939 2.0403 -9.6114 +v -0.6534 2.0403 -9.5449 +v -0.8246 2.0403 -9.5476 +v -0.8819 2.0403 -9.6159 +v -0.8548 2.0403 -9.7850 +v -0.7790 2.0403 -9.8320 +v -0.6898 2.0403 -9.8306 +v -0.6156 2.0876 -9.7812 +v -0.5939 2.0876 -9.6114 +v -0.6534 2.0876 -9.5449 +v -0.8246 2.0876 -9.5476 +v -0.8819 2.0876 -9.6159 +v -0.8548 2.0876 -9.7850 +v -0.7790 2.0876 -9.8320 +v -0.6898 2.0876 -9.8306 +v -0.5439 2.2023 -9.8413 +v -0.5095 2.2023 -9.5712 +v -0.6041 2.2023 -9.4655 +v -0.8763 2.2023 -9.4698 +v -0.9675 2.2023 -9.5785 +v -0.9245 2.2023 -9.8473 +v -0.8039 2.2023 -9.9221 +v -0.6621 2.2023 -9.9199 +v -0.5439 2.4098 -9.8413 +v -0.5095 2.4098 -9.5712 +v -0.6041 2.4098 -9.4655 +v -0.8763 2.4098 -9.4698 +v -0.9675 2.4098 -9.5785 +v -0.9245 2.4098 -9.8473 +v -0.8039 2.4098 -9.9221 +v -0.6621 2.4098 -9.9199 +v -0.6255 2.5373 -9.7729 +v -0.6056 2.5373 -9.6169 +v -0.6602 2.5373 -9.5559 +v -0.8174 2.5373 -9.5584 +v -0.8700 2.5373 -9.6211 +v -0.8452 2.5373 -9.7763 +v -0.7756 2.5373 -9.8195 +v -0.6937 2.5373 -9.8182 +v -0.7368 2.6507 -9.6794 +v -0.9735 1.5684 -9.6608 +v -0.9735 1.6492 -9.6871 +v -1.4243 1.5228 -9.6871 +v -1.4243 1.4420 -9.6608 +v -0.9735 1.6492 -9.7720 +v -1.4243 1.5228 -9.7720 +v -0.9735 1.5684 -9.7983 +v -1.4243 1.4420 -9.7983 +v -2.0660 1.4280 -9.7987 +v -2.0660 1.3472 -9.7725 +v -2.0660 1.4280 -9.8837 +v -2.0660 1.3472 -9.9099 +v -2.0660 1.2972 -9.8412 +v -0.5002 1.5684 -9.6608 +v -0.0494 1.4420 -9.6608 +v -0.0494 1.5228 -9.6871 +v -0.5002 1.6492 -9.6871 +v -0.0494 1.5228 -9.7720 +v -0.5002 1.6492 -9.7720 +v -0.0494 1.4420 -9.7983 +v -0.5002 1.5684 -9.7983 +v 0.5923 1.3472 -9.7725 +v 0.5923 1.4280 -9.7987 +v 0.5923 1.4280 -9.8837 +v 0.5923 1.3472 -9.9099 +v 0.5923 1.2972 -9.8412 +v -0.8338 -0.0767 -9.7600 +v -0.8338 0.7107 -9.7600 +v -0.6399 0.7107 -9.7600 +v -0.6399 -0.0767 -9.7600 +v -0.6399 0.7107 -9.5988 +v -0.6399 -0.0767 -9.5988 +v -0.8338 0.7107 -9.5988 +v -0.8338 -0.0767 -9.5988 +v 0.9029 1.2649 -9.7896 +v 0.6954 1.0229 -10.2035 +v 0.5747 1.4302 -9.9749 +v 0.9163 1.5864 -9.5503 +v 0.6858 1.0029 -10.1798 +v 0.8934 1.2449 -9.7659 +v 0.0105 1.5234 -9.9230 +v 0.0201 1.5434 -9.9467 +v 0.2314 1.2328 -10.0867 +v 0.2219 1.2128 -10.0630 +v 0.4303 1.7875 -9.6869 +v 0.4398 1.8075 -9.7106 +v 0.0573 1.8305 -9.7577 +v 0.0477 1.8105 -9.7340 +v 0.9067 1.5663 -9.5266 +v 0.7288 1.8626 -9.4606 +v 0.7193 1.8426 -9.4369 +v -1.9841 1.2989 -9.8177 +v -2.0998 1.2989 -9.8487 +v -2.0809 1.3053 -9.9193 +v -1.9652 1.3053 -9.8883 +v -2.0442 3.0809 -9.6879 +v -2.0330 3.0847 -9.7297 +v -2.1015 3.0847 -9.7481 +v -2.1127 3.0809 -9.7063 +v -1.9902 1.5669 -9.7950 +v -2.1059 1.5669 -9.8260 +v -2.0870 1.5733 -9.8966 +v -1.9712 1.5733 -9.8656 +v -2.1070 1.6171 -9.8218 +v -1.9913 1.6171 -9.7908 +v -2.0881 1.6235 -9.8924 +v -1.9724 1.6235 -9.8614 +v -2.4530 1.6235 -9.9902 +v -2.4518 1.5733 -9.9944 +v -2.4708 1.5669 -9.9238 +v -2.4719 1.6171 -9.9195 +v -1.6265 1.6171 -9.6930 +v -1.6253 1.5669 -9.6972 +v -1.6064 1.5733 -9.7679 +v -1.6075 1.6235 -9.7636 +v -7.0597 1.5017 2.9909 +v -6.9399 1.5017 2.9909 +v -6.9399 1.5268 2.9219 +v -7.0597 1.5268 2.9219 +v -7.0353 -0.1729 2.3655 +v -7.0353 -0.1580 2.3246 +v -6.9643 -0.1580 2.3246 +v -6.9643 -0.1729 2.3655 +v -7.0597 1.2489 2.8989 +v -6.9399 1.2489 2.8989 +v -6.9399 1.2740 2.8299 +v -7.0597 1.2740 2.8299 +v -6.9399 1.2015 2.8816 +v -7.0597 1.2015 2.8816 +v -6.9399 1.2266 2.8127 +v -7.0597 1.2266 2.8127 +v -6.5622 1.2266 2.8127 +v -6.5622 1.2740 2.8299 +v -6.5622 1.2489 2.8989 +v -6.5622 1.2015 2.8816 +v -7.4374 1.2015 2.8816 +v -7.4374 1.2489 2.8989 +v -7.4374 1.2740 2.8299 +v -7.4374 1.2266 2.8127 +v -7.0632 0.0497 2.4800 +v -7.0653 0.0489 2.5758 +v -5.9749 0.0496 2.5758 +v -5.9776 0.0497 2.4800 +v -7.0632 -0.0767 2.4800 +v -5.9776 -0.0767 2.4800 +v -7.2299 -0.0767 2.4800 +v -7.2342 -0.0766 2.5758 +v -7.2320 0.0491 2.5758 +v -7.2299 0.0497 2.4800 +v -5.9723 -0.0761 2.5758 +v -7.0674 -0.0769 2.5758 +v -5.8058 -0.0759 2.5758 +v -5.8109 -0.0767 2.4800 +v -5.8109 0.0497 2.4800 +v -5.8083 0.0499 2.5758 +v -7.2299 1.4067 2.9473 +v -7.2299 1.4067 3.0439 +v -7.0632 1.4067 3.0439 +v -7.0632 1.4067 2.9473 +v -5.8109 1.4067 3.0439 +v -5.8109 1.4067 2.9473 +v -5.9769 1.4067 2.9473 +v -5.9769 1.4067 3.0439 +v -7.2299 1.2410 3.0439 +v -7.2299 1.2401 2.9473 +v -7.0632 1.2405 3.0439 +v -7.0632 1.2421 2.9473 +v -5.9773 1.2437 2.9473 +v -5.8109 1.2435 2.9473 +v -5.9773 1.2420 3.0439 +v -5.8109 1.2425 3.0439 +v -5.8109 1.4067 3.4851 +v -5.9769 1.4067 3.4851 +v -5.9773 1.2420 3.4851 +v -5.8109 1.2425 3.4851 +v -7.0632 1.4067 3.4851 +v -7.2299 1.4067 3.4851 +v -7.2299 1.2410 3.4851 +v -7.0632 1.2405 3.4851 +v -5.9670 -0.0755 3.3494 +v -5.9722 0.0495 3.3494 +v -5.8058 0.0500 3.3494 +v -5.8007 -0.0750 3.3494 +v -7.2384 -0.0765 3.3494 +v -7.2342 0.0485 3.3494 +v -7.0674 0.0480 3.3494 +v -7.0716 -0.0770 3.3494 +v -6.4628 0.2134 2.4968 +v -6.6246 -0.0549 2.0788 +v -6.8162 0.3198 2.3147 +v -6.5070 0.5277 2.7418 +v -6.6303 -0.0767 2.1021 +v -6.4685 0.1916 2.5202 +v -7.3877 0.3084 2.3685 +v -7.3821 0.3302 2.3451 +v -7.1185 0.0655 2.1995 +v -7.1242 0.0436 2.2229 +v -7.0219 0.6399 2.6091 +v -7.0162 0.6617 2.5857 +v -7.3967 0.6159 2.5393 +v -7.4024 0.5941 2.5626 +v -6.5126 0.5059 2.7652 +v -6.7410 0.7639 2.8365 +v -6.7467 0.7420 2.8599 +v -6.1035 1.5017 2.9909 +v -5.9837 1.5017 2.9909 +v -5.9837 1.5268 2.9219 +v -6.1035 1.5268 2.9219 +v -6.0791 -0.1729 2.3655 +v -6.0791 -0.1580 2.3246 +v -6.0081 -0.1580 2.3246 +v -6.0081 -0.1729 2.3655 +v -6.1035 1.2489 2.8989 +v -5.9837 1.2489 2.8989 +v -5.9837 1.2740 2.8299 +v -6.1035 1.2740 2.8299 +v -5.9837 1.2015 2.8816 +v -6.1035 1.2015 2.8816 +v -5.9837 1.2266 2.8127 +v -6.1035 1.2266 2.8127 +v -5.6060 1.2266 2.8127 +v -5.6060 1.2740 2.8299 +v -5.6060 1.2489 2.8989 +v -5.6060 1.2015 2.8816 +v -6.4812 1.2015 2.8816 +v -6.4812 1.2489 2.8989 +v -6.4812 1.2740 2.8299 +v -6.4812 1.2266 2.8127 +v 9.6897 1.5017 1.5610 +v 9.7404 1.5017 1.4524 +v 9.6778 1.5268 1.4232 +v 9.6272 1.5268 1.5318 +v 9.1332 -0.1729 1.2745 +v 9.0962 -0.1580 1.2572 +v 9.1262 -0.1580 1.1930 +v 9.1632 -0.1729 1.2102 +v 9.6063 1.2489 1.5221 +v 9.6569 1.2489 1.4135 +v 9.5944 1.2740 1.3844 +v 9.5438 1.2740 1.4929 +v 9.6413 1.2015 1.4062 +v 9.5907 1.2015 1.5148 +v 9.5788 1.2266 1.3771 +v 9.5282 1.2266 1.4856 +v 9.7384 1.2266 1.0347 +v 9.7541 1.2740 1.0420 +v 9.8166 1.2489 1.0712 +v 9.8009 1.2015 1.0639 +v 9.4311 1.2015 1.8571 +v 9.4467 1.2489 1.8644 +v 9.3842 1.2740 1.8353 +v 9.3685 1.2266 1.8280 +v 9.2252 0.0497 1.3482 +v 9.3111 0.0489 1.3906 +v 9.7720 0.0496 0.4024 +v 9.6840 0.0497 0.3643 +v 9.2252 -0.0767 1.3482 +v 9.6840 -0.0767 0.3643 +v 9.1547 -0.0767 1.4993 +v 9.2398 -0.0766 1.5436 +v 9.2407 0.0491 1.5417 +v 9.1547 0.0497 1.4993 +v 9.7731 -0.0761 0.4000 +v 9.3102 -0.0769 1.3925 +v 9.8434 -0.0759 0.2491 +v 9.7545 -0.0767 0.2132 +v 9.7545 0.0497 0.2132 +v 9.8423 0.0499 0.2514 +v 9.5783 1.4067 1.6968 +v 9.6658 1.4067 1.7376 +v 9.7363 1.4067 1.5865 +v 9.6488 1.4067 1.5457 +v 10.2655 1.4067 0.4516 +v 10.1780 1.4067 0.4107 +v 10.1078 1.4067 0.5612 +v 10.1954 1.4067 0.6020 +v 9.6658 1.2410 1.7376 +v 9.5783 1.2401 1.6968 +v 9.7363 1.2405 1.5865 +v 9.6488 1.2421 1.5457 +v 10.1077 1.2437 0.5615 +v 10.1780 1.2435 0.4107 +v 10.1952 1.2420 0.6024 +v 10.2655 1.2425 0.4516 +v 10.6654 1.4067 0.6380 +v 10.5952 1.4067 0.7885 +v 10.5951 1.2420 0.7888 +v 10.6654 1.2425 0.6380 +v 10.1362 1.4067 1.7730 +v 10.0657 1.4067 1.9241 +v 10.0657 1.2410 1.9241 +v 10.1362 1.2405 1.7730 +v 10.4764 -0.0755 0.7222 +v 10.4742 0.0495 0.7268 +v 10.5445 0.0500 0.5760 +v 10.5467 -0.0750 0.5714 +v 9.9391 -0.0765 1.8744 +v 9.9409 0.0485 1.8706 +v 10.0113 0.0480 1.7194 +v 10.0095 -0.0770 1.7233 +v 9.4942 0.2134 0.8112 +v 9.0469 -0.0549 0.7812 +v 9.1798 0.3198 1.0545 +v 9.6976 0.5277 0.9547 +v 9.0657 -0.0767 0.7962 +v 9.5130 0.1916 0.8262 +v 8.9869 0.3084 1.5952 +v 8.9682 0.3302 1.5802 +v 8.9476 0.0655 1.2798 +v 8.9664 0.0436 1.2948 +v 9.3596 0.6399 1.3653 +v 9.3409 0.6617 1.3503 +v 9.1379 0.6159 1.6755 +v 9.1567 0.5941 1.6905 +v 9.7163 0.5059 0.9698 +v 9.6845 0.7639 1.2069 +v 9.7032 0.7420 1.2219 +v 10.0938 1.5017 0.6944 +v 10.1445 1.5017 0.5858 +v 10.0820 1.5268 0.5566 +v 10.0313 1.5268 0.6652 +v 9.5373 -0.1729 0.4079 +v 9.5003 -0.1580 0.3906 +v 9.5303 -0.1580 0.3263 +v 9.5673 -0.1729 0.3436 +v 10.0104 1.2489 0.6555 +v 10.0611 1.2489 0.5469 +v 9.9985 1.2740 0.5177 +v 9.9479 1.2740 0.6263 +v 10.0454 1.2015 0.5396 +v 9.9948 1.2015 0.6482 +v 9.9829 1.2266 0.5105 +v 9.9323 1.2266 0.6190 +v 10.1426 1.2266 0.1681 +v 10.1582 1.2740 0.1754 +v 10.2207 1.2489 0.2045 +v 10.2051 1.2015 0.1973 +v 9.8352 1.2015 0.9905 +v 9.8508 1.2489 0.9978 +v 9.7883 1.2740 0.9687 +v 9.7726 1.2266 0.9614 +v 9.6653 1.5017 -8.2456 +v 9.5883 1.5017 -8.3374 +v 9.5355 1.5268 -8.2930 +v 9.6125 1.5268 -8.2013 +v 9.1705 -0.1729 -7.8623 +v 9.1392 -0.1580 -7.8361 +v 9.0936 -0.1580 -7.8904 +v 9.1249 -0.1729 -7.9166 +v 9.5948 1.2489 -8.1864 +v 9.5178 1.2489 -8.2782 +v 9.4650 1.2740 -8.2339 +v 9.5420 1.2740 -8.1421 +v 9.5046 1.2015 -8.2671 +v 9.5816 1.2015 -8.1754 +v 9.4518 1.2266 -8.2228 +v 9.5288 1.2266 -8.1310 +v 9.2090 1.2266 -8.5122 +v 9.2222 1.2740 -8.5232 +v 9.2750 1.2489 -8.5676 +v 9.2618 1.2015 -8.5565 +v 9.8244 1.2015 -7.8860 +v 9.8376 1.2489 -7.8971 +v 9.7848 1.2740 -7.8528 +v 9.7716 1.2266 -7.8417 +v 9.2762 0.0497 -7.9145 +v 9.3509 0.0489 -7.9745 +v 8.6500 0.0496 -8.8098 +v 8.5784 0.0497 -8.7461 +v 9.2762 -0.0767 -7.9145 +v 8.5784 -0.0767 -8.7461 +v 9.3834 -0.0767 -7.7868 +v 9.4595 -0.0766 -7.8451 +v 9.4581 0.0491 -7.8468 +v 9.3834 0.0497 -7.7868 +v 8.6484 -0.0761 -8.8118 +v 9.3523 -0.0769 -7.9729 +v 8.5413 -0.0759 -8.9393 +v 8.4712 -0.0767 -8.8738 +v 8.4712 0.0497 -8.8738 +v 8.5430 0.0499 -8.9374 +v 9.7414 1.4067 -8.0872 +v 9.8153 1.4067 -8.1493 +v 9.7082 1.4067 -8.2770 +v 9.6342 1.4067 -8.2149 +v 8.9032 1.4067 -9.2363 +v 8.8292 1.4067 -9.1742 +v 8.9359 1.4067 -9.0471 +v 9.0099 1.4067 -9.1091 +v 9.8153 1.2410 -8.1493 +v 9.7414 1.2401 -8.0872 +v 9.7082 1.2405 -8.2770 +v 9.6342 1.2421 -8.2149 +v 8.9362 1.2437 -9.0468 +v 8.8292 1.2435 -9.1742 +v 9.0102 1.2420 -9.1089 +v 8.9032 1.2425 -9.2363 +v 9.2412 1.4067 -9.5199 +v 9.3479 1.4067 -9.3927 +v 9.3481 1.2420 -9.3925 +v 9.2412 1.2425 -9.5199 +v 10.0461 1.4067 -8.5606 +v 10.1533 1.4067 -8.4329 +v 10.1533 1.2410 -8.4329 +v 10.0461 1.2405 -8.5606 +v 9.2376 -0.0755 -9.3130 +v 9.2408 0.0495 -9.3091 +v 9.1339 0.0500 -9.4366 +v 9.1306 -0.0750 -9.4405 +v 10.0548 -0.0765 -8.3391 +v 10.0520 0.0485 -8.3424 +v 9.9449 0.0480 -8.4701 +v 9.9476 -0.0770 -8.4669 +v 8.9031 0.2134 -8.3853 +v 8.6869 -0.0549 -7.9926 +v 8.9907 0.3198 -7.9975 +v 9.1192 0.5277 -8.5089 +v 8.7084 -0.0767 -8.0032 +v 8.9246 0.1916 -8.3959 +v 9.3993 0.3084 -7.5942 +v 9.3778 0.3302 -7.5835 +v 9.0969 0.0655 -7.6919 +v 9.1184 0.0436 -7.7026 +v 9.3485 0.6399 -8.0291 +v 9.3269 0.6617 -8.0185 +v 9.5360 0.6159 -7.6971 +v 9.5575 0.5941 -7.7078 +v 9.1408 0.5059 -8.5196 +v 9.3422 0.7639 -8.3905 +v 9.3637 0.7420 -8.4012 +v 9.0507 1.5017 -8.9781 +v 8.9737 1.5017 -9.0699 +v 8.9208 1.5268 -9.0255 +v 8.9978 1.5268 -8.9338 +v 8.5559 -0.1729 -8.5948 +v 8.5246 -0.1580 -8.5686 +v 8.4790 -0.1580 -8.6229 +v 8.5103 -0.1729 -8.6491 +v 8.9802 1.2489 -8.9189 +v 8.9032 1.2489 -9.0107 +v 8.8503 1.2740 -8.9664 +v 8.9274 1.2740 -8.8746 +v 8.8900 1.2015 -8.9996 +v 8.9670 1.2015 -8.9079 +v 8.8371 1.2266 -8.9553 +v 8.9141 1.2266 -8.8635 +v 8.5943 1.2266 -9.2447 +v 8.6075 1.2740 -9.2557 +v 8.6604 1.2489 -9.3001 +v 8.6472 1.2015 -9.2890 +v 9.2098 1.2015 -8.6185 +v 9.2230 1.2489 -8.6296 +v 9.1701 1.2740 -8.5853 +v 9.1569 1.2266 -8.5742 +# 7481 vertices + +vn -0.9963 -0.0483 -0.0716 +vn -1.0000 0.0000 0.0000 +vn -0.9997 -0.0248 0.0000 +vn -0.9978 -0.0657 0.0000 +vn 0.0000 -0.0000 1.0000 +vn -0.0000 0.0000 -1.0000 +vn -0.9963 -0.0483 0.0716 +vn 1.0000 0.0000 -0.0000 +vn -0.9976 -0.0691 -0.0006 +vn -0.9972 -0.0740 0.0044 +vn -0.9978 -0.0585 -0.0318 +vn -0.9985 -0.0550 0.0000 +vn 0.0000 0.0000 1.0000 +vn 0.0000 0.8219 0.5696 +vn 0.0000 1.0000 0.0000 +vn -0.0000 -0.0000 -1.0000 +vn -0.0000 -0.9972 -0.0745 +vn 0.0000 -1.0000 0.0000 +vn -0.9978 -0.0586 0.0315 +vn -0.9972 -0.0747 -0.0060 +vn -0.0000 0.8219 -0.5696 +vn 0.0000 -0.9972 0.0745 +vn -0.0000 -0.8092 -0.5875 +vn 0.0000 -0.8092 0.5875 +vn 0.0000 0.9968 0.0803 +vn -0.0001 0.9968 0.0803 +vn -0.0001 0.9982 -0.0593 +vn -0.0000 0.9982 -0.0593 +vn -0.9972 -0.0747 -0.0047 +vn -0.9972 -0.0694 -0.0272 +vn -0.9972 -0.0740 0.0077 +vn -0.9972 -0.0694 0.0272 +vn -0.0000 0.9946 -0.1034 +vn 0.0000 0.9982 -0.0593 +vn 0.0000 0.9980 0.0634 +vn -0.0000 1.0000 -0.0000 +vn -0.0000 1.0000 0.0000 +vn -0.1198 0.9926 0.0202 +vn -0.0181 0.8430 -0.5376 +vn -0.0395 0.8691 -0.4930 +vn -0.0263 0.9996 0.0128 +vn 0.1422 0.9898 0.0041 +vn 0.0244 0.8365 0.5474 +vn -0.0243 0.8529 0.5215 +vn -0.9518 0.1435 -0.2712 +vn -0.9882 -0.0000 -0.1529 +vn -0.9882 0.0000 0.1529 +vn 0.0180 -0.8430 0.5376 +vn 0.1118 -0.8730 0.4747 +vn 0.0108 0.8458 -0.5335 +vn 0.0716 0.7912 -0.6074 +vn 0.2586 0.9660 0.0000 +vn -0.0970 0.8030 -0.5881 +vn -0.2585 0.9658 0.0187 +vn 0.0000 0.8209 0.5711 +vn -0.0820 0.7799 0.6205 +vn 0.0813 0.7867 0.6120 +vn 0.0177 -0.8274 0.5613 +vn -0.1940 -0.7247 0.6612 +vn 0.0188 -0.8811 0.4725 +vn -0.1062 -0.8289 0.5492 +vn 0.1978 -0.7388 0.6442 +vn -0.0000 -0.8209 -0.5711 +vn -0.1943 -0.7259 -0.6597 +vn 0.1905 -0.7117 -0.6762 +vn 0.0453 0.0000 -0.9990 +vn 0.0509 -0.0000 -0.9987 +vn 0.0327 0.0000 -0.9995 +vn -0.2538 -0.9673 0.0000 +vn -0.1334 -0.9911 0.0000 +vn 0.0453 -0.0000 0.9990 +vn 0.0327 -0.0000 0.9995 +vn 0.0509 -0.0000 0.9987 +vn 0.3347 0.9423 -0.0000 +vn 0.1961 0.9806 -0.0000 +vn 0.0631 -0.0000 -0.9980 +vn -0.3639 -0.9315 0.0000 +vn 0.0631 -0.0000 0.9980 +vn 0.4594 0.8882 -0.0000 +vn 1.0000 -0.0000 -0.0000 +vn 0.9784 -0.2067 0.0000 +vn 0.9784 -0.2069 -0.0000 +vn 0.1637 0.7745 0.6111 +vn -0.9784 0.2067 -0.0000 +vn -0.9784 0.2068 -0.0000 +vn 0.9784 -0.2069 0.0000 +vn 0.9784 -0.2068 -0.0001 +vn 0.2054 0.9718 0.1161 +vn -0.9784 0.2068 -0.0001 +vn 0.9784 -0.2067 -0.0000 +vn 0.1637 0.7745 -0.6111 +vn 0.9784 -0.2068 0.0001 +vn 0.2054 0.9718 -0.1161 +vn -0.9784 0.2068 0.0001 +vn -0.9784 0.2068 0.0000 +vn 0.9784 -0.2068 -0.0000 +vn 0.2054 0.9718 0.1162 +vn 0.9784 -0.2068 0.0000 +vn 0.9784 -0.2067 -0.0001 +vn 0.2054 0.9718 -0.1162 +vn 0.9784 -0.2067 0.0001 +vn 0.1362 0.7798 0.6111 +vn 0.1363 0.7798 0.6111 +vn 0.9851 -0.1722 -0.0000 +vn 0.9851 -0.1721 0.0000 +vn 0.1710 0.9784 0.1162 +vn 0.9851 -0.1722 0.0001 +vn 0.9851 -0.1721 -0.0000 +vn 0.1363 0.7798 -0.6111 +vn 0.1362 0.7798 -0.6111 +vn 0.9851 -0.1722 0.0000 +vn 0.1710 0.9784 -0.1162 +vn 0.9851 -0.1722 -0.0001 +vn 0.0956 0.7858 0.6111 +vn 0.9927 -0.1207 0.0000 +vn 0.1199 0.9860 0.1162 +vn 0.1199 0.9860 0.1161 +vn 0.9927 -0.1207 -0.0000 +vn 0.0956 0.7858 -0.6111 +vn 0.1199 0.9860 -0.1162 +vn 0.1199 0.9860 -0.1161 +vn 0.9927 -0.1207 0.0001 +vn 0.0955 0.7858 -0.6111 +vn 0.9927 -0.1207 -0.0001 +vn 0.0423 0.7905 0.6111 +vn 0.9986 -0.0535 0.0000 +vn 0.0531 0.9918 0.1162 +vn 0.0531 0.9918 0.1161 +vn 0.9986 -0.0535 -0.0000 +vn 0.0423 0.7905 -0.6111 +vn 0.0531 0.9918 -0.1162 +vn 0.0531 0.9918 -0.1161 +vn -0.9927 -0.1208 -0.0000 +vn -0.9927 -0.1207 -0.0000 +vn -0.0956 0.7858 0.6111 +vn 0.9927 0.1207 -0.0000 +vn 0.9927 0.1207 0.0000 +vn -0.9927 -0.1208 0.0001 +vn -0.9927 -0.1207 -0.0001 +vn -0.1199 0.9860 0.1161 +vn 0.9927 0.1207 -0.0001 +vn 0.0000 0.0000 -1.0000 +vn -0.9927 -0.1208 0.0000 +vn -0.9927 -0.1207 0.0000 +vn -0.0956 0.7858 -0.6111 +vn -0.9927 -0.1208 -0.0001 +vn -0.9927 -0.1207 0.0001 +vn -0.1199 0.9860 -0.1161 +vn 0.9927 0.1207 0.0001 +vn -0.0267 0.7911 0.6111 +vn -0.9994 -0.0338 -0.0000 +vn -0.0335 0.9927 0.1162 +vn -0.0335 0.9927 0.1163 +vn -0.9994 -0.0337 -0.0001 +vn -0.9994 -0.0338 0.0000 +vn -0.0267 0.7911 -0.6111 +vn -0.0335 0.9927 -0.1162 +vn -0.0335 0.9927 -0.1163 +vn -0.9994 -0.0337 0.0001 +vn -0.0678 0.7887 0.6111 +vn -0.9963 -0.0856 -0.0000 +vn -0.0850 0.9896 0.1162 +vn -0.9963 -0.0855 -0.0001 +vn -0.9963 -0.0856 0.0001 +vn -0.0678 0.7887 -0.6111 +vn -0.9963 -0.0856 0.0000 +vn -0.0850 0.9896 -0.1162 +vn -0.9963 -0.0856 -0.0001 +vn -0.9963 -0.0855 0.0001 +vn -0.1199 0.9860 0.1162 +vn -0.0955 0.7858 -0.6111 +vn -0.1199 0.9860 -0.1162 +vn -0.9994 -0.0337 0.0000 +vn -0.0335 0.9927 0.1161 +vn -0.9994 -0.0337 -0.0000 +vn -0.0335 0.9927 -0.1161 +vn -0.9927 0.1207 0.0000 +vn -0.9927 0.1207 -0.0000 +vn -0.9927 0.1208 -0.0000 +vn 0.9927 0.1206 -0.0000 +vn 0.9927 0.1208 0.0000 +vn 0.9927 0.1208 -0.0001 +vn 0.0000 -0.0000 -1.0000 +vn 0.9927 0.1208 -0.0000 +vn 0.9927 0.1206 0.0000 +vn 0.9927 0.1208 0.0001 +vn 0.0001 -0.0114 -0.9999 +vn -0.0007 -0.0121 -0.9999 +vn 0.0052 -0.0096 -0.9999 +vn -0.0000 -0.0090 -1.0000 +vn -1.0000 0.0000 0.0002 +vn -0.5696 0.8219 0.0002 +vn 0.0745 -0.9972 0.0000 +vn 0.0000 -1.0000 -0.0000 +vn -0.0051 -0.0096 -0.9999 +vn 0.0010 -0.0123 -0.9999 +vn 0.5696 0.8219 -0.0001 +vn -0.0745 -0.9972 -0.0000 +vn 0.9999 -0.0110 -0.0000 +vn 0.9999 -0.0109 -0.0014 +vn 0.5875 -0.8092 -0.0009 +vn -0.5875 -0.8092 0.0009 +vn -0.5875 -0.8092 0.0006 +vn -0.9999 0.0110 0.0010 +vn -0.9999 0.0111 -0.0003 +vn -0.0803 0.9968 -0.0000 +vn -0.0803 0.9968 -0.0001 +vn 0.0593 0.9982 -0.0000 +vn 0.0008 -0.0123 -0.9999 +vn 0.0045 -0.0114 -0.9999 +vn 0.9999 -0.0102 -0.0001 +vn 0.9999 -0.0103 -0.0000 +vn 0.9999 -0.0102 -0.0002 +vn -0.9999 0.0103 -0.0001 +vn -0.9999 0.0103 -0.0002 +vn -0.9999 0.0102 0.0004 +vn -0.0012 -0.0121 -0.9999 +vn -0.0044 -0.0113 -0.9999 +vn -1.0000 -0.0000 -0.0001 +vn 0.1034 0.9946 -0.0000 +vn -0.0634 0.9980 -0.0000 +vn 1.0000 -0.0000 -0.0002 +vn -0.0745 -0.9972 0.0000 +vn -0.0000 -1.0000 0.0000 +vn 0.0001 -0.0000 -1.0000 +vn 0.0000 1.0000 -0.0000 +vn -0.5808 0.7502 0.3160 +vn -0.6749 0.7133 -0.1892 +vn -0.6402 0.7454 -0.1856 +vn -0.5286 0.8038 0.2731 +vn -0.1688 0.7582 0.6298 +vn -0.1539 0.8041 0.5743 +vn 0.3260 0.7582 0.5647 +vn 0.2973 0.8041 0.5149 +vn 0.6298 0.7582 0.1688 +vn 0.5743 0.8041 0.1539 +vn 0.5647 0.7582 -0.3260 +vn 0.5149 0.8041 -0.2973 +vn 0.1688 0.7582 -0.6298 +vn 0.1404 0.7962 -0.5885 +vn -0.3673 0.7221 -0.5862 +vn -0.3538 0.7376 -0.5751 +vn -0.7497 0.6544 0.0987 +vn -0.5999 0.6544 -0.4603 +vn -0.4603 0.6544 0.5999 +vn 0.0987 0.6544 0.7497 +vn 0.5999 0.6544 0.4603 +vn 0.7497 0.6544 -0.0987 +vn 0.4603 0.6544 -0.5999 +vn -0.0987 0.6544 -0.7497 +vn -0.9998 0.0000 0.0186 +vn -0.9998 -0.0000 0.0186 +vn -0.6088 0.0000 0.7934 +vn 0.1305 0.0000 0.9914 +vn 0.7934 -0.0000 0.6088 +vn 0.7934 0.0000 0.6088 +vn 0.9914 0.0000 -0.1305 +vn 0.6088 0.0000 -0.7934 +vn -0.2276 0.0000 -0.9738 +vn -0.7934 0.0000 -0.6088 +vn -0.2844 0.9378 -0.1991 +vn -0.4063 0.8683 -0.2845 +vn 0.0686 0.9965 0.0480 +vn -0.4506 0.8351 -0.3155 +vn -0.8182 0.0481 -0.5729 +vn 0.5736 0.0036 -0.8191 +vn 0.5726 0.0579 -0.8178 +vn -0.8191 0.0053 -0.5736 +vn -0.8126 0.1266 -0.5690 +vn -0.5736 0.0034 0.8191 +vn -0.5735 -0.0138 0.8191 +vn 0.8191 0.0049 0.5736 +vn 0.8175 -0.0623 0.5725 +vn 0.5728 -0.0511 -0.8181 +vn -0.8136 -0.1166 -0.5697 +vn -0.5735 0.0207 0.8190 +vn 0.8170 0.0724 0.5721 +vn -0.5736 0.0036 0.8191 +vn -0.5726 0.0579 0.8178 +vn 0.5736 0.0034 -0.8192 +vn 0.5735 -0.0138 -0.8191 +vn 0.8176 -0.0623 0.5724 +vn -0.5728 -0.0511 0.8181 +vn -0.8135 -0.1166 -0.5697 +vn 0.5735 0.0207 -0.8190 +vn -0.8235 0.4943 0.2784 +vn -0.7949 0.5296 0.2960 +vn -0.2250 0.5263 0.8200 +vn -0.2255 0.4770 0.8495 +vn -0.9099 0.2560 0.3265 +vn -0.2479 0.2511 0.9357 +vn -0.9314 0.0324 0.3627 +vn -0.2578 0.0300 0.9657 +vn -0.9351 0.0077 0.3543 +vn -0.2588 0.0000 0.9659 +vn -0.9386 0.0000 0.3449 +vn -0.9560 0.1873 -0.2259 +vn -0.9476 0.1711 -0.2698 +vn -0.9806 0.0934 -0.1726 +vn -0.9828 0.0501 -0.1779 +vn -0.9753 0.1168 -0.1876 +vn -0.9710 0.1469 -0.1887 +vn 0.0592 0.4877 -0.8710 +vn 0.0776 0.5413 -0.8372 +vn -0.4447 0.1942 -0.8744 +vn -0.4185 0.1747 -0.8913 +vn 0.1004 0.2548 -0.9618 +vn -0.3822 0.0939 -0.9193 +vn 0.1305 0.0324 -0.9909 +vn -0.3886 0.0526 -0.9199 +vn 0.1253 0.0041 -0.9921 +vn -0.4112 0.1412 -0.9005 +vn 0.1192 0.0119 -0.9928 +vn -0.4203 0.2169 -0.8811 +vn 0.7621 0.4770 -0.4377 +vn 0.7338 0.5263 -0.4296 +vn 0.8396 0.2511 -0.4816 +vn 0.8661 0.0300 -0.4989 +vn 0.8660 0.0000 -0.5000 +vn 0.8553 0.4643 0.2300 +vn 0.8293 0.5137 0.2200 +vn 0.9370 0.2417 0.2522 +vn 0.9655 0.0277 0.2591 +vn 0.9659 -0.0000 0.2588 +vn 0.4435 0.4643 0.7666 +vn 0.4271 0.5137 0.7441 +vn 0.4862 0.2417 0.8398 +vn 0.5001 0.0277 0.8655 +vn 0.5000 0.0000 0.8660 +vn -0.9391 -0.1373 -0.3151 +vn -0.9949 -0.1011 0.0000 +vn -0.9965 -0.0835 0.0000 +vn -0.9670 -0.0794 -0.2419 +vn -0.0000 -1.0000 -0.0000 +vn -0.0000 -0.7146 -0.6995 +vn 0.0000 0.0030 1.0000 +vn 0.0000 0.0510 0.9987 +vn 0.0000 -0.3074 0.9516 +vn -0.0000 0.9651 -0.2619 +vn -0.0000 0.0030 -1.0000 +vn -0.0000 0.0510 -0.9987 +vn -0.0000 0.3594 -0.9332 +vn -0.9391 -0.1373 0.3151 +vn -0.9670 -0.0794 0.2419 +vn 0.0000 -0.7146 0.6995 +vn 0.0000 0.9651 0.2619 +vn -0.9996 -0.0298 -0.0000 +vn -0.9784 -0.0790 -0.1912 +vn 0.0000 0.3594 0.9332 +vn -0.0000 -0.3074 -0.9516 +vn -0.9784 -0.0790 0.1912 +vn 0.9391 -0.1373 0.3151 +vn 0.9949 -0.1011 -0.0000 +vn 0.9965 -0.0835 -0.0000 +vn 0.9670 -0.0794 0.2419 +vn 0.9391 -0.1373 -0.3151 +vn 0.9670 -0.0794 -0.2419 +vn 0.9996 -0.0298 -0.0000 +vn 0.9784 -0.0790 0.1912 +vn 0.9784 -0.0790 -0.1912 +vn -0.0000 0.9780 -0.2086 +vn -0.0000 -0.9780 -0.2086 +vn 0.0000 0.9780 0.2086 +vn 0.0000 -0.9780 0.2086 +vn 0.5107 0.0135 0.8597 +vn 0.1707 0.0283 0.9849 +vn -0.9257 0.3783 -0.0000 +vn -0.9997 -0.0264 -0.0000 +vn 0.5107 0.0135 -0.8597 +vn 0.1707 0.0283 -0.9849 +vn 0.0006 -0.2982 0.9545 +vn -0.3776 0.9260 -0.0000 +vn 0.0006 -0.2982 -0.9545 +vn -0.0311 -0.5235 0.8515 +vn -0.0550 0.9985 -0.0000 +vn -0.0311 -0.5235 -0.8515 +vn -0.5107 0.0135 -0.8596 +vn -0.1707 0.0283 -0.9849 +vn 0.9257 0.3783 0.0000 +vn 0.9997 -0.0263 -0.0000 +vn -0.5107 0.0135 0.8596 +vn -0.1707 0.0283 0.9849 +vn -0.0006 -0.2982 -0.9545 +vn 0.3776 0.9260 0.0000 +vn -0.0006 -0.2982 0.9545 +vn 0.0311 -0.5235 -0.8515 +vn 0.0550 0.9985 0.0000 +vn 0.0311 -0.5235 0.8515 +vn -1.0000 -0.0007 0.0000 +vn 1.0000 0.0007 -0.0000 +vn 1.0000 -0.0000 0.0000 +vn -0.0020 1.0000 0.0024 +vn -0.0025 1.0000 0.0035 +vn -0.0024 1.0000 -0.0026 +vn -0.0021 1.0000 -0.0025 +vn -0.0045 1.0000 -0.0045 +vn -0.0040 1.0000 0.0047 +vn -0.0017 1.0000 -0.0023 +vn -0.0023 1.0000 -0.0026 +vn -0.0020 1.0000 0.0023 +vn -0.0026 1.0000 0.0041 +vn -0.0045 1.0000 -0.0046 +vn -0.0040 1.0000 0.0046 +vn -1.0000 -0.0009 -0.0000 +vn -1.0000 -0.0000 -0.0000 +vn -1.0000 0.0000 -0.0000 +vn 1.0000 0.0009 -0.0000 +vn 0.0014 -1.0000 -0.0061 +vn 0.0038 -1.0000 0.0033 +vn -0.0089 -1.0000 -0.0000 +vn 0.0014 -1.0000 0.0061 +vn 0.0038 -1.0000 -0.0033 +vn 0.0000 -1.0000 -0.0093 +vn -0.0014 -1.0000 0.0061 +vn -0.0038 -1.0000 -0.0033 +vn 0.0089 -1.0000 -0.0000 +vn -0.0014 -1.0000 -0.0061 +vn -0.0038 -1.0000 0.0033 +vn 0.0000 -1.0000 0.0093 +vn -0.5696 0.8219 0.0003 +vn -0.5696 0.8219 0.0000 +vn 0.0373 -0.9993 -0.0000 +vn 0.0373 -0.9993 0.0000 +vn -0.0019 -0.0054 -1.0000 +vn -0.0025 -0.0063 -1.0000 +vn 0.5696 0.8219 -0.0000 +vn -0.0373 -0.9993 -0.0000 +vn 0.0025 -0.0063 -1.0000 +vn 0.0019 -0.0055 -1.0000 +vn 0.9999 -0.0109 -0.0016 +vn 0.5875 -0.8092 -0.0008 +vn -0.5875 -0.8092 0.0008 +vn -0.9999 0.0110 0.0013 +vn -0.9999 0.0111 -0.0004 +vn -0.0747 0.9972 -0.0000 +vn -0.0106 0.9999 -0.0000 +vn -0.0105 0.9999 -0.0001 +vn 0.0740 0.9973 0.0000 +vn 0.0013 -0.0121 -0.9999 +vn -0.9999 0.0102 0.0005 +vn -0.0017 -0.0120 -0.9999 +vn 0.0518 0.9987 0.0000 +vn 0.0345 0.9994 0.0000 +vn 0.0814 0.9967 0.0000 +vn -0.0105 0.9999 0.0000 +vn -0.0719 0.9974 0.0000 +vn -0.0211 0.9998 0.0000 +vn -0.0317 0.9995 0.0000 +vn 1.0000 -0.0000 -0.0001 +vn -1.0000 -0.0018 -0.0000 +vn 1.0000 0.0018 -0.0000 +vn -1.0000 -0.0018 0.0000 +vn 0.5758 0.5781 -0.5781 +vn -0.5789 0.5766 -0.5766 +vn -0.5789 0.5766 0.5766 +vn 0.5758 0.5781 0.5781 +vn 0.0002 1.0000 -0.0042 +vn 0.0002 1.0000 0.0041 +vn 0.0002 1.0000 -0.0041 +vn 0.0003 1.0000 0.0042 +vn 0.7071 0.0013 -0.7071 +vn -0.7071 -0.0013 -0.7071 +vn -0.7071 -0.0013 0.7071 +vn 0.7071 0.0013 0.7071 +vn -0.9873 -0.0009 -0.1589 +vn -0.0555 0.0085 0.9984 +vn 0.7071 -0.0064 -0.7071 +vn 0.0405 -0.0084 0.9991 +vn 0.9892 0.0009 -0.1463 +vn -0.7071 0.0062 -0.7071 +vn 0.9876 0.0010 0.1571 +vn 0.0395 -0.0084 -0.9992 +vn -0.7071 0.0062 0.7071 +vn -0.0603 0.0086 -0.9981 +vn -0.9967 -0.0002 0.0813 +vn 0.7071 -0.0064 0.7071 +vn -0.1074 0.0000 -0.9942 +vn -0.1316 0.0000 -0.9913 +vn -0.0146 0.1009 -0.9948 +vn -0.0000 0.1040 -0.9946 +vn -0.0146 -0.1009 -0.9948 +vn -0.0000 -0.1040 -0.9946 +vn -0.9952 0.0976 0.0000 +vn -1.0000 0.0016 0.0053 +vn -0.9952 -0.0832 0.0507 +vn -0.9951 -0.0819 0.0553 +vn 0.1094 0.0048 0.9940 +vn 0.0000 0.0329 0.9995 +vn 0.0147 0.0360 0.9992 +vn 0.1316 0.0054 0.9913 +vn 0.0121 -0.0293 0.9995 +vn 0.0000 -0.0271 0.9996 +vn 1.0000 0.0007 0.0022 +vn 0.9991 0.0419 -0.0000 +vn 0.9991 -0.0361 0.0220 +vn 0.9991 -0.0356 0.0240 +vn 0.1073 0.0000 -0.9942 +vn 0.0146 0.1009 -0.9948 +vn 0.1316 0.0000 -0.9913 +vn 0.0146 -0.1009 -0.9948 +vn 1.0000 0.0000 0.0000 +vn 1.0000 0.0016 0.0053 +vn 0.9952 0.0976 0.0000 +vn 0.9952 0.0976 -0.0000 +vn 0.9952 -0.0832 0.0507 +vn 0.9951 -0.0819 0.0553 +vn -0.1094 0.0048 0.9940 +vn -0.1316 0.0054 0.9913 +vn -0.0147 0.0360 0.9992 +vn -0.0121 -0.0293 0.9995 +vn -1.0000 -0.0000 0.0000 +vn -0.9991 0.0419 0.0000 +vn -1.0000 0.0007 0.0022 +vn -0.9991 -0.0361 0.0220 +vn -0.9991 -0.0356 0.0240 +vn -0.1074 -0.0000 0.9942 +vn 0.0000 0.1040 0.9946 +vn -0.0146 0.1009 0.9948 +vn -0.1316 -0.0000 0.9913 +vn -0.0146 -0.1009 0.9948 +vn 0.0000 -0.1040 0.9946 +vn -1.0000 0.0016 -0.0053 +vn -0.9952 0.0976 -0.0000 +vn -0.9952 -0.0832 -0.0507 +vn -0.9951 -0.0819 -0.0553 +vn 0.1094 0.0048 -0.9940 +vn 0.1316 0.0054 -0.9913 +vn 0.0147 0.0360 -0.9992 +vn -0.0000 0.0329 -0.9995 +vn 0.0121 -0.0293 -0.9995 +vn -0.0000 -0.0271 -0.9996 +vn 1.0000 0.0007 -0.0022 +vn 0.9991 -0.0361 -0.0220 +vn 0.9991 -0.0356 -0.0240 +vn -0.0716 -0.0483 0.9963 +vn 0.0000 -0.0248 0.9997 +vn 0.0000 -0.0657 0.9978 +vn 0.0716 -0.0483 0.9963 +vn -0.0006 -0.0691 0.9976 +vn 0.0044 -0.0740 0.9972 +vn -0.0318 -0.0585 0.9978 +vn 0.0000 -0.0550 0.9985 +vn 0.0315 -0.0586 0.9978 +vn -0.0060 -0.0747 0.9972 +vn -1.0000 -0.0000 0.0001 +vn -0.5875 -0.8092 0.0001 +vn -0.5875 -0.8092 0.0000 +vn 0.5875 -0.8092 -0.0000 +vn 0.0804 0.9968 -0.0000 +vn 0.0803 0.9968 0.0001 +vn -0.0593 0.9982 0.0001 +vn -0.0593 0.9982 -0.0000 +vn -0.0047 -0.0747 0.9972 +vn -0.0272 -0.0694 0.9972 +vn 0.0077 -0.0740 0.9972 +vn 0.0272 -0.0694 0.9972 +vn -0.1034 0.9946 -0.0000 +vn 0.0803 0.9968 -0.0000 +vn 0.0634 0.9980 -0.0000 +vn 0.0128 0.9962 -0.0863 +vn 0.0042 0.9899 -0.1419 +vn 0.5477 0.8361 -0.0330 +vn 0.4977 0.8674 0.0000 +vn -0.2683 0.1436 0.9526 +vn -0.1529 0.0000 0.9882 +vn 0.1529 0.0000 0.9882 +vn -0.5290 0.8485 -0.0127 +vn -0.6020 0.7941 -0.0839 +vn -0.0000 0.9660 -0.2586 +vn -0.4518 0.8910 0.0452 +vn 0.6066 0.7895 -0.0936 +vn 0.5599 -0.8285 0.0020 +vn 0.6521 -0.7323 0.1960 +vn -0.5694 -0.8218 0.0196 +vn -0.6507 -0.7335 0.1963 +vn -0.9990 -0.0000 -0.0453 +vn -0.9987 -0.0000 -0.0509 +vn -0.9995 -0.0000 -0.0327 +vn 0.0000 -0.9673 0.2538 +vn 0.0000 -0.9911 0.1334 +vn 0.9990 -0.0000 -0.0453 +vn 0.9995 -0.0000 -0.0327 +vn 0.9987 -0.0000 -0.0509 +vn -0.0000 0.9423 -0.3347 +vn -0.0000 0.9806 -0.1961 +vn -0.9980 -0.0000 -0.0631 +vn 0.0000 -0.9315 0.3639 +vn 0.9980 -0.0000 -0.0631 +vn -0.0000 0.8882 -0.4594 +vn 0.0000 -0.2067 -0.9784 +vn -0.0000 -0.2069 -0.9784 +vn 0.6111 0.7745 -0.1637 +vn -0.0000 0.2067 0.9784 +vn 0.0000 0.2068 0.9784 +vn 0.0000 -0.2069 -0.9784 +vn -0.0001 -0.2068 -0.9784 +vn 0.1161 0.9718 -0.2054 +vn 0.1162 0.9718 -0.2054 +vn -0.0000 0.2068 0.9784 +vn -0.0001 0.2068 0.9784 +vn -0.0000 -0.2067 -0.9784 +vn -0.6111 0.7745 -0.1637 +vn 0.0001 -0.2068 -0.9784 +vn -0.1161 0.9718 -0.2054 +vn -0.1162 0.9718 -0.2054 +vn 0.0001 0.2068 0.9784 +vn 0.6110 0.7745 -0.1637 +vn -0.0000 -0.2068 -0.9784 +vn 0.0000 -0.2068 -0.9784 +vn 0.6110 0.7798 -0.1362 +vn 0.6111 0.7798 -0.1363 +vn -0.0000 -0.1721 -0.9851 +vn 0.0000 -0.1721 -0.9851 +vn 0.1162 0.9784 -0.1709 +vn 0.1162 0.9784 -0.1710 +vn 0.0001 -0.1721 -0.9851 +vn -0.6111 0.7798 -0.1363 +vn -0.6111 0.7798 -0.1362 +vn -0.1162 0.9784 -0.1709 +vn -0.1162 0.9784 -0.1710 +vn -0.0001 -0.1721 -0.9851 +vn 0.6111 0.7858 -0.0956 +vn -0.0000 -0.1207 -0.9927 +vn 0.0000 -0.1207 -0.9927 +vn 0.1162 0.9860 -0.1199 +vn 0.1161 0.9860 -0.1199 +vn -0.0001 -0.1207 -0.9927 +vn -0.6111 0.7858 -0.0956 +vn -0.1162 0.9860 -0.1199 +vn -0.1161 0.9860 -0.1199 +vn 0.0001 -0.1207 -0.9927 +vn 0.6111 0.7858 -0.0955 +vn -0.6111 0.7858 -0.0955 +vn 0.6111 0.7905 -0.0423 +vn 0.0000 -0.0535 -0.9986 +vn 0.0000 -0.0534 -0.9986 +vn 0.1162 0.9918 -0.0531 +vn 0.1161 0.9918 -0.0531 +vn -0.6111 0.7905 -0.0423 +vn -0.0000 -0.0534 -0.9986 +vn -0.0000 -0.0535 -0.9986 +vn -0.1162 0.9918 -0.0531 +vn -0.1161 0.9918 -0.0531 +vn 0.6110 0.7908 0.0353 +vn 0.0000 -0.0337 0.9994 +vn 0.1162 0.9922 0.0442 +vn 0.1161 0.9922 0.0442 +vn -0.0000 -0.0337 0.9994 +vn -0.6110 0.7908 0.0353 +vn -0.1162 0.9922 0.0442 +vn -0.1161 0.9922 0.0442 +vn 0.6110 0.7858 -0.0956 +vn 0.0000 0.1207 0.9927 +vn -0.0000 0.1207 0.9927 +vn -0.9942 -0.0000 0.1074 +vn -0.9913 0.0000 0.1316 +vn -0.9948 0.1009 0.0146 +vn -0.9946 0.1040 0.0000 +vn -0.9948 -0.1009 0.0146 +vn -0.9946 -0.1040 0.0000 +vn 0.0000 0.0976 0.9952 +vn 0.0053 0.0016 1.0000 +vn 0.0507 -0.0832 0.9952 +vn 0.0553 -0.0819 0.9951 +vn 0.9940 0.0048 -0.1094 +vn 0.9995 0.0329 -0.0000 +vn 0.9992 0.0360 -0.0147 +vn 0.9913 0.0054 -0.1316 +vn 0.9995 -0.0293 -0.0121 +vn 0.9996 -0.0271 -0.0000 +vn 0.0022 0.0007 -1.0000 +vn -0.0000 0.0419 -0.9991 +vn 0.0220 -0.0361 -0.9991 +vn 0.0240 -0.0356 -0.9991 +vn 0.9942 -0.0000 0.1074 +vn 0.9946 0.1040 -0.0000 +vn 0.9948 0.1009 0.0146 +vn 0.9913 0.0000 0.1316 +vn 0.9948 -0.1009 0.0146 +vn 0.9946 -0.1040 -0.0000 +vn -0.0000 0.0000 1.0000 +vn -0.0053 0.0016 1.0000 +vn -0.0000 0.0976 0.9952 +vn -0.0507 -0.0832 0.9952 +vn -0.0553 -0.0819 0.9951 +vn -0.9940 0.0048 -0.1094 +vn -0.9913 0.0054 -0.1316 +vn -0.9992 0.0360 -0.0147 +vn -0.9995 0.0329 0.0000 +vn -0.9995 -0.0293 -0.0121 +vn -0.9996 -0.0271 0.0000 +vn -0.0022 0.0007 -1.0000 +vn -0.0220 -0.0361 -0.9991 +vn -0.0240 -0.0356 -0.9991 +vn -0.1073 -0.0000 0.9942 +vn -1.0000 0.0016 -0.0052 +vn 0.1074 -0.0000 0.9942 +vn 0.1316 0.0000 0.9913 +vn 0.0146 0.1009 0.9948 +vn 0.0146 -0.1009 0.9948 +vn 1.0000 0.0016 -0.0052 +vn 0.9952 -0.0832 -0.0507 +vn 0.9951 -0.0819 -0.0553 +vn -0.1094 0.0048 -0.9940 +vn -0.0147 0.0360 -0.9992 +vn -0.1316 0.0054 -0.9913 +vn -0.0121 -0.0293 -0.9995 +vn -1.0000 0.0007 -0.0022 +vn -0.9991 -0.0361 -0.0220 +vn -0.9991 -0.0356 -0.0240 +vn 0.1316 -0.0000 0.9913 +vn 1.0000 0.0016 -0.0053 +vn 0.1073 -0.0000 0.9942 +vn -0.1316 0.0000 0.9913 +vn -0.1226 0.3261 -0.9374 +vn -0.3988 0.4312 -0.8094 +vn -0.3929 0.4468 -0.8037 +vn -0.1739 0.3999 -0.8999 +vn -0.3707 -0.8424 -0.3910 +vn 0.3330 -0.7033 -0.6280 +vn -0.8537 0.1474 0.4995 +vn -0.8348 0.1876 0.5176 +vn -0.9273 -0.1212 0.3541 +vn 0.3707 0.8424 0.3910 +vn 0.5816 0.7751 0.2469 +vn 0.8559 -0.1423 -0.4972 +vn 0.8726 -0.1017 -0.4778 +vn 0.9309 0.1676 -0.3245 +vn -0.6613 0.4174 -0.6233 +vn -0.5875 0.4700 -0.6588 +vn -0.8628 -0.5007 0.0693 +vn 0.1339 0.8509 0.5079 +vn -0.3741 0.4937 -0.7851 +vn -0.2212 0.4135 -0.8832 +vn -0.6644 0.4379 0.6056 +vn 0.6994 -0.3968 -0.5944 +vn -0.5481 0.4689 -0.6926 +vn -0.9988 0.0156 -0.0466 +vn -0.9862 0.1651 -0.0150 +vn -0.9953 0.0915 -0.0307 +vn -0.9988 -0.0000 -0.0498 +vn 0.0000 0.9258 0.3781 +vn 0.9976 0.0206 -0.0656 +vn 0.9962 0.0872 -0.0079 +vn 0.9969 0.0767 -0.0171 +vn 0.9965 -0.0000 -0.0833 +vn -0.0000 -0.9018 -0.4321 +vn 1.0000 0.0007 0.0076 +vn 0.9998 -0.0186 0.0077 +vn 0.9998 0.0198 0.0076 +vn 0.0331 -0.0088 -0.9994 +vn 0.0331 -0.0087 -0.9994 +vn 0.0331 0.0398 -0.9987 +vn 0.0330 -0.0572 -0.9978 +vn -1.0000 -0.0027 -0.0076 +vn -0.9973 0.0732 -0.0076 +vn -0.9969 -0.0778 -0.0076 +vn -0.0331 -0.0082 0.9994 +vn -0.0331 0.0223 0.9992 +vn -0.0331 -0.0386 0.9987 +vn 0.9996 0.0261 0.0077 +vn 0.9994 0.0330 0.0077 +vn 0.9998 0.0191 0.0076 +vn 0.0331 -0.0008 -0.9995 +vn 0.0331 -0.0040 -0.9994 +vn 0.0329 -0.1027 -0.9942 +vn 0.0329 0.0981 -0.9946 +vn -0.9997 -0.0242 -0.0077 +vn -0.9997 -0.0244 -0.0077 +vn -0.9997 0.0217 -0.0076 +vn -0.9975 -0.0703 -0.0076 +vn -0.0331 0.0059 0.9994 +vn -0.0331 0.0014 0.9995 +vn -0.0327 0.1451 0.9889 +vn -0.0328 -0.1381 0.9899 +vn 0.0356 0.9994 0.0003 +vn 0.0318 0.9995 0.0002 +vn -0.0845 0.9964 -0.0006 +vn 0.1512 0.9885 0.0012 +vn 0.0329 0.0000 -0.9995 +vn 0.0332 -0.0000 -0.9994 +vn 0.1565 -0.0044 -0.9877 +vn -0.0908 0.0044 -0.9959 +vn -0.0329 -0.9995 -0.0003 +vn -0.0347 -0.9994 -0.0003 +vn 0.0210 -0.9998 0.0002 +vn -0.0884 -0.9961 -0.0007 +vn -0.0331 -0.0000 0.9995 +vn -0.0327 -0.0000 0.9995 +vn -0.1970 0.0059 0.9804 +vn 0.1321 -0.0059 0.9912 +vn 0.0352 0.9994 0.0003 +vn 0.0314 0.9995 0.0002 +vn -0.0912 0.9958 -0.0007 +vn 0.1577 0.9875 0.0012 +vn 0.0321 0.0000 -0.9995 +vn 0.0316 0.0001 -0.9995 +vn -0.1315 0.0059 -0.9913 +vn 0.1944 -0.0058 -0.9809 +vn -0.0326 -0.9995 -0.0003 +vn -0.0345 -0.9994 -0.0003 +vn 0.0277 -0.9996 0.0002 +vn -0.0950 -0.9955 -0.0007 +vn -0.0321 -0.0000 0.9995 +vn -0.0325 -0.0000 0.9995 +vn 0.0899 -0.0044 0.9959 +vn -0.1540 0.0043 0.9881 +vn 1.0000 0.0016 0.0077 +vn 1.0000 0.0017 0.0077 +vn 0.9996 0.0274 0.0077 +vn 0.9997 -0.0241 0.0077 +vn 0.0331 -0.0037 -0.9994 +vn 0.0331 -0.0604 -0.9976 +vn 0.0331 0.0531 -0.9980 +vn -1.0000 0.0017 -0.0077 +vn -1.0000 0.0016 -0.0077 +vn -0.9996 0.0274 -0.0076 +vn -0.9997 -0.0241 -0.0076 +vn -0.0331 0.0063 0.9994 +vn -0.0329 0.1034 0.9941 +vn -0.0330 -0.0911 0.9953 +vn -0.0330 -0.0910 0.9953 +vn 1.0000 -0.0034 0.0076 +vn 1.0000 -0.0030 0.0076 +vn 0.9986 0.0519 0.0077 +vn 0.9983 -0.0582 0.0077 +vn 0.0331 -0.0079 -0.9994 +vn 0.0331 -0.0081 -0.9994 +vn 0.0328 0.1300 -0.9910 +vn 0.0327 -0.1455 -0.9888 +vn -1.0000 -0.0001 -0.0077 +vn -1.0000 -0.0002 -0.0077 +vn -1.0000 0.0028 -0.0076 +vn -1.0000 -0.0031 -0.0076 +vn -0.0331 0.0055 0.9994 +vn -0.0331 0.0053 0.9994 +vn -0.0329 -0.0873 0.9956 +vn -0.0329 0.0979 0.9947 +vn 1.0000 -0.0012 0.0077 +vn 0.9981 0.0614 0.0076 +vn 0.9981 -0.0614 0.0076 +vn 0.0330 -0.0329 -0.9989 +vn 0.0331 0.0217 -0.9992 +vn 0.0329 -0.0874 -0.9956 +vn -1.0000 0.0001 -0.0076 +vn -0.9999 -0.0068 -0.0076 +vn -0.9999 0.0068 -0.0076 +vn -0.0330 -0.0329 0.9989 +vn -0.0331 0.0217 0.9992 +vn -0.0329 -0.0874 0.9956 +vn -0.0330 -0.0874 0.9956 +vn 1.0000 0.0007 0.0077 +vn -0.0326 -0.9995 -0.0002 +vn -0.0346 -0.9994 -0.0003 +vn 1.0000 0.0016 0.0076 +vn 1.0000 0.0017 0.0076 +vn 1.0000 -0.0034 0.0077 +vn 1.0000 -0.0030 0.0077 +vn -1.0000 0.0001 -0.0077 +vn 0.9998 -0.0187 0.0077 +vn 0.9981 -0.0614 0.0077 +vn 0.9983 -0.0581 0.0077 +vn 0.0330 -0.0079 -0.9994 +vn 0.0330 -0.0081 -0.9994 +vn 0.9981 0.0615 0.0076 +vn 0.9981 -0.0615 0.0076 +vn -0.0331 -0.0329 0.9989 +vn 0.0353 0.9994 0.0003 +vn -0.9996 0.0274 -0.0077 +vn -0.9997 -0.0241 -0.0077 +vn -0.9999 -0.0068 -0.0077 +vn -1.0000 -0.0027 -0.0077 +vn -0.9997 0.0217 -0.0077 +vn -0.9975 -0.0703 -0.0077 +vn -0.9996 0.0274 -0.0075 +vn -0.9997 -0.0241 -0.0075 +vn -1.0000 -0.0001 -0.0078 +vn -1.0000 -0.0002 -0.0078 +vn -1.0000 -0.0032 -0.0076 +vn 0.9981 0.0615 0.0077 +vn -0.9999 -0.0069 -0.0076 +vn -0.9999 0.0068 -0.0077 +vn 0.9996 0.0260 0.0076 +vn 0.9996 0.0261 0.0076 +vn -0.9997 0.0217 -0.0075 +vn -1.0000 0.0028 -0.0075 +vn -1.0000 -0.0031 -0.0075 +vn -0.0076 0.0007 1.0000 +vn -0.0077 -0.0186 0.9998 +vn -0.0076 0.0198 0.9998 +vn 0.9994 -0.0088 0.0331 +vn 0.9994 -0.0087 0.0331 +vn 0.9987 0.0398 0.0331 +vn 0.9987 0.0398 0.0330 +vn 0.9978 -0.0572 0.0331 +vn 0.0076 -0.0027 -1.0000 +vn 0.0076 0.0732 -0.9973 +vn 0.0076 -0.0778 -0.9969 +vn -0.9994 -0.0082 -0.0331 +vn -0.9992 0.0223 -0.0331 +vn -0.9987 -0.0386 -0.0331 +vn -0.0077 0.0261 0.9996 +vn -0.0077 0.0330 0.9994 +vn -0.0076 0.0191 0.9998 +vn 0.9995 -0.0008 0.0331 +vn 0.9994 -0.0040 0.0331 +vn 0.9942 -0.1027 0.0329 +vn 0.9942 -0.1027 0.0330 +vn 0.9946 0.0981 0.0330 +vn 0.0077 -0.0242 -0.9997 +vn 0.0077 -0.0244 -0.9997 +vn 0.0076 0.0217 -0.9997 +vn 0.0076 -0.0703 -0.9975 +vn -0.9994 0.0059 -0.0331 +vn -0.9994 0.0014 -0.0331 +vn -0.9889 0.1451 -0.0327 +vn -0.9899 -0.1381 -0.0328 +vn -0.0003 0.9994 0.0356 +vn -0.0002 0.9995 0.0318 +vn 0.0006 0.9964 -0.0845 +vn -0.0012 0.9885 0.1512 +vn 0.9995 0.0000 0.0329 +vn 0.9994 -0.0000 0.0332 +vn 0.9877 -0.0044 0.1565 +vn 0.9959 0.0044 -0.0908 +vn 0.0003 -0.9995 -0.0329 +vn 0.0003 -0.9994 -0.0347 +vn -0.0002 -0.9998 0.0210 +vn 0.0007 -0.9961 -0.0884 +vn -0.9995 -0.0001 -0.0331 +vn -0.9995 -0.0001 -0.0327 +vn -0.9804 0.0059 -0.1970 +vn -0.9912 -0.0059 0.1321 +vn -0.0003 0.9994 0.0352 +vn -0.0002 0.9995 0.0314 +vn 0.0007 0.9958 -0.0912 +vn -0.0012 0.9875 0.1577 +vn 0.9995 0.0001 0.0321 +vn 0.9995 0.0001 0.0316 +vn 0.9913 0.0059 -0.1315 +vn 0.9809 -0.0058 0.1944 +vn 0.0003 -0.9995 -0.0326 +vn 0.0003 -0.9994 -0.0345 +vn -0.0002 -0.9996 0.0277 +vn 0.0007 -0.9955 -0.0950 +vn -0.9995 -0.0000 -0.0321 +vn -0.9995 -0.0000 -0.0325 +vn -0.9959 -0.0044 0.0899 +vn -0.9881 0.0043 -0.1540 +vn -0.0076 0.0016 1.0000 +vn -0.0076 0.0017 1.0000 +vn -0.0077 0.0274 0.9996 +vn -0.0077 -0.0241 0.9997 +vn 0.9994 -0.0037 0.0331 +vn 0.9976 -0.0604 0.0330 +vn 0.9980 0.0531 0.0330 +vn 0.0077 0.0017 -1.0000 +vn 0.0077 0.0016 -1.0000 +vn 0.0076 0.0274 -0.9996 +vn 0.0076 -0.0241 -0.9997 +vn -0.9994 0.0063 -0.0330 +vn -0.9941 0.1034 -0.0329 +vn -0.9953 -0.0910 -0.0330 +vn -0.0076 -0.0034 1.0000 +vn -0.0076 -0.0030 1.0000 +vn -0.0077 0.0519 0.9986 +vn -0.0077 -0.0582 0.9983 +vn 0.9994 -0.0079 0.0331 +vn 0.9994 -0.0081 0.0331 +vn 0.9910 0.1300 0.0328 +vn 0.9888 -0.1455 0.0328 +vn 0.0077 -0.0002 -1.0000 +vn 0.0076 0.0028 -1.0000 +vn 0.0076 -0.0031 -1.0000 +vn -0.9994 0.0055 -0.0331 +vn -0.9994 0.0053 -0.0331 +vn -0.9956 -0.0873 -0.0330 +vn -0.9947 0.0979 -0.0330 +vn -0.0077 -0.0012 1.0000 +vn -0.0076 0.0614 0.9981 +vn -0.0076 -0.0614 0.9981 +vn 0.9989 -0.0329 0.0331 +vn 0.9992 0.0217 0.0331 +vn 0.9956 -0.0874 0.0330 +vn 0.9956 -0.0874 0.0329 +vn 0.0076 0.0001 -1.0000 +vn 0.0076 -0.0068 -0.9999 +vn 0.0076 0.0068 -0.9999 +vn -0.9989 -0.0329 -0.0331 +vn -0.9992 0.0217 -0.0331 +vn -0.9956 -0.0874 -0.0330 +vn -0.0076 -0.0582 0.9983 +vn -0.0076 -0.0012 1.0000 +vn -0.0076 0.0615 0.9981 +vn -0.0076 0.0261 0.9996 +vn -0.0077 0.0016 1.0000 +vn -0.0077 0.0017 1.0000 +vn -0.0077 -0.0034 1.0000 +vn -0.0077 -0.0030 1.0000 +vn 0.0002 -0.9995 -0.0326 +vn 0.0077 0.0001 -1.0000 +vn 0.0077 -0.0001 -1.0000 +vn -1.0000 0.0007 -0.0077 +vn -1.0000 0.0007 -0.0076 +vn -0.9998 -0.0187 -0.0077 +vn -0.9998 0.0198 -0.0076 +vn -0.0331 -0.0088 0.9994 +vn -0.0331 -0.0087 0.9994 +vn -0.0331 0.0398 0.9987 +vn -0.0331 -0.0572 0.9978 +vn 1.0000 -0.0027 0.0076 +vn 0.9973 0.0732 0.0076 +vn 0.9969 -0.0778 0.0076 +vn 0.0331 -0.0082 -0.9994 +vn 0.0331 0.0223 -0.9992 +vn 0.0331 -0.0386 -0.9987 +vn -0.9996 0.0261 -0.0077 +vn -0.9994 0.0330 -0.0077 +vn -0.9998 0.0191 -0.0076 +vn -0.0331 -0.0008 0.9995 +vn -0.0331 -0.0040 0.9994 +vn -0.0329 -0.1027 0.9942 +vn -0.0329 0.0981 0.9946 +vn 0.9997 -0.0242 0.0077 +vn 0.9997 -0.0244 0.0077 +vn 0.9997 0.0217 0.0077 +vn 0.9975 -0.0703 0.0077 +vn 0.9975 -0.0703 0.0076 +vn 0.0331 0.0059 -0.9994 +vn 0.0331 0.0014 -0.9995 +vn 0.0327 0.1451 -0.9889 +vn 0.0328 -0.1381 -0.9899 +vn -0.0356 0.9994 -0.0003 +vn -0.0318 0.9995 -0.0002 +vn 0.0845 0.9964 0.0006 +vn -0.1512 0.9885 -0.0012 +vn -0.0329 -0.0000 0.9995 +vn -0.0332 -0.0000 0.9994 +vn -0.1565 -0.0044 0.9877 +vn 0.0908 0.0044 0.9959 +vn 0.0329 -0.9995 0.0003 +vn 0.0347 -0.9994 0.0003 +vn -0.0210 -0.9998 -0.0002 +vn 0.0884 -0.9961 0.0007 +vn 0.0331 -0.0000 -0.9995 +vn 0.0327 -0.0000 -0.9995 +vn 0.1970 0.0059 -0.9804 +vn -0.1321 -0.0059 -0.9912 +vn -0.0352 0.9994 -0.0003 +vn -0.0314 0.9995 -0.0002 +vn 0.0912 0.9958 0.0007 +vn -0.1577 0.9875 -0.0012 +vn -0.0321 0.0000 0.9995 +vn -0.0316 0.0000 0.9995 +vn 0.1315 0.0059 0.9913 +vn -0.1944 -0.0058 0.9809 +vn 0.0326 -0.9995 0.0002 +vn 0.0345 -0.9994 0.0003 +vn -0.0277 -0.9996 -0.0002 +vn 0.0950 -0.9955 0.0007 +vn 0.0321 -0.0000 -0.9995 +vn 0.0325 -0.0000 -0.9995 +vn -0.0899 -0.0044 -0.9959 +vn 0.1540 0.0043 -0.9881 +vn -0.0331 -0.0037 0.9994 +vn -0.0330 -0.0604 0.9976 +vn -0.0331 0.0531 0.9980 +vn 0.0331 0.0063 -0.9994 +vn 0.0329 0.1034 -0.9941 +vn 0.0330 -0.0911 -0.9953 +vn 0.0330 -0.0910 -0.9953 +vn -1.0000 -0.0034 -0.0076 +vn -1.0000 -0.0030 -0.0076 +vn -0.9986 0.0519 -0.0077 +vn -0.9983 -0.0581 -0.0077 +vn -0.0331 -0.0079 0.9994 +vn -0.0331 -0.0081 0.9994 +vn -0.0328 0.1300 0.9910 +vn -0.0327 -0.1455 0.9888 +vn 1.0000 -0.0002 0.0077 +vn 1.0000 0.0028 0.0076 +vn 1.0000 -0.0031 0.0076 +vn 0.0331 0.0055 -0.9994 +vn 0.0331 0.0053 -0.9994 +vn 0.0329 -0.0873 -0.9956 +vn 0.0329 0.0979 -0.9947 +vn -1.0000 -0.0012 -0.0077 +vn -0.9981 0.0615 -0.0076 +vn -0.9981 -0.0615 -0.0076 +vn 1.0000 0.0001 0.0077 +vn 0.9999 -0.0068 0.0076 +vn 0.9999 0.0068 0.0076 +vn 0.0331 -0.0329 -0.9989 +vn 0.0330 -0.0874 -0.9956 +vn -0.0330 -0.0572 0.9978 +vn -0.9998 0.0191 -0.0075 +vn 0.9997 0.0217 0.0076 +vn -0.0329 0.0000 0.9995 +vn -0.0316 0.0001 0.9995 +vn 1.0000 0.0018 0.0077 +vn 0.9996 0.0274 0.0076 +vn 0.9997 -0.0241 0.0076 +vn -1.0000 -0.0034 -0.0077 +vn -1.0000 -0.0030 -0.0077 +vn -0.9983 -0.0582 -0.0077 +vn 1.0000 -0.0001 0.0077 +vn 1.0000 0.0028 0.0075 +vn 1.0000 -0.0031 0.0075 +vn -0.9981 0.0614 -0.0077 +vn -0.9981 -0.0614 -0.0076 +vn 0.9999 -0.0068 0.0077 +vn -0.9998 -0.0186 -0.0077 +vn 1.0000 -0.0027 0.0077 +vn -0.0353 0.9994 -0.0003 +vn 0.0346 -0.9994 0.0003 +vn -0.9981 -0.0614 -0.0077 +vn 0.9999 -0.0069 0.0076 +vn 0.9999 0.0068 0.0077 +vn -0.9998 -0.0186 -0.0076 +vn -0.9986 0.0519 -0.0076 +vn -0.9983 -0.0582 -0.0076 +vn 1.0000 0.0001 0.0076 +vn 0.0331 -0.0572 -0.9978 +vn 0.0329 -0.0000 -0.9995 +vn 0.9981 0.0614 0.0077 +vn 0.9998 0.0191 0.0075 +vn -0.0845 0.9964 -0.0007 +vn -0.9996 0.0273 -0.0077 +vn 0.0076 0.0007 -1.0000 +vn 0.0077 -0.0186 -0.9998 +vn 0.0076 0.0198 -0.9998 +vn -0.9994 -0.0088 -0.0331 +vn -0.9994 -0.0087 -0.0331 +vn -0.9987 0.0398 -0.0331 +vn -0.9978 -0.0572 -0.0330 +vn -0.0076 -0.0027 1.0000 +vn -0.0076 0.0732 0.9973 +vn -0.0076 -0.0778 0.9969 +vn 0.9994 -0.0082 0.0331 +vn 0.9992 0.0223 0.0331 +vn 0.9987 -0.0386 0.0331 +vn 0.9987 -0.0387 0.0331 +vn 0.0077 0.0261 -0.9996 +vn 0.0076 0.0261 -0.9996 +vn 0.0077 0.0330 -0.9994 +vn 0.0076 0.0191 -0.9998 +vn -0.9995 -0.0008 -0.0331 +vn -0.9994 -0.0040 -0.0331 +vn -0.9942 -0.1027 -0.0329 +vn -0.9946 0.0981 -0.0329 +vn -0.0077 -0.0242 0.9997 +vn -0.0077 -0.0244 0.9997 +vn -0.0076 0.0217 0.9997 +vn -0.0076 -0.0703 0.9975 +vn 0.9994 0.0059 0.0331 +vn 0.9995 0.0014 0.0331 +vn 0.9889 0.1451 0.0327 +vn 0.9899 -0.1381 0.0328 +vn 0.0003 0.9994 -0.0356 +vn 0.0002 0.9995 -0.0318 +vn -0.0006 0.9964 0.0845 +vn 0.0012 0.9885 -0.1512 +vn -0.9995 0.0000 -0.0329 +vn -0.9994 -0.0000 -0.0332 +vn -0.9877 -0.0044 -0.1565 +vn -0.9959 0.0044 0.0908 +vn -0.9959 0.0043 0.0908 +vn -0.0003 -0.9995 0.0329 +vn -0.0003 -0.9994 0.0347 +vn 0.0002 -0.9998 -0.0210 +vn -0.0007 -0.9961 0.0884 +vn 0.9995 -0.0001 0.0331 +vn 0.9995 -0.0001 0.0327 +vn 0.9804 0.0059 0.1970 +vn 0.9912 -0.0059 -0.1321 +vn 0.0003 0.9994 -0.0352 +vn 0.0002 0.9995 -0.0314 +vn -0.0007 0.9958 0.0912 +vn 0.0012 0.9875 -0.1577 +vn -0.9995 0.0001 -0.0321 +vn -0.9995 0.0001 -0.0316 +vn -0.9913 0.0059 0.1315 +vn -0.9809 -0.0058 -0.1944 +vn -0.9809 -0.0059 -0.1944 +vn -0.0002 -0.9995 0.0326 +vn -0.0003 -0.9994 0.0345 +vn 0.0002 -0.9996 -0.0277 +vn -0.0007 -0.9955 0.0950 +vn 0.9995 -0.0000 0.0321 +vn 0.9995 -0.0000 0.0325 +vn 0.9959 -0.0044 -0.0899 +vn 0.9881 0.0043 0.1540 +vn 0.0077 0.0274 -0.9996 +vn 0.0077 -0.0241 -0.9997 +vn -0.9994 -0.0037 -0.0331 +vn -0.9976 -0.0604 -0.0331 +vn -0.9980 0.0531 -0.0331 +vn -0.0076 0.0274 0.9996 +vn -0.0076 -0.0241 0.9997 +vn 0.9994 0.0063 0.0330 +vn 0.9941 0.1034 0.0329 +vn 0.9953 -0.0911 0.0329 +vn 0.9953 -0.0910 0.0329 +vn 0.0076 -0.0034 -1.0000 +vn 0.0076 -0.0030 -1.0000 +vn 0.0077 0.0519 -0.9986 +vn 0.0077 -0.0582 -0.9983 +vn -0.9994 -0.0079 -0.0330 +vn -0.9994 -0.0081 -0.0330 +vn -0.9910 0.1300 -0.0328 +vn -0.9888 -0.1455 -0.0327 +vn -0.0077 -0.0001 1.0000 +vn -0.0077 -0.0002 1.0000 +vn -0.0076 0.0028 1.0000 +vn -0.0076 -0.0031 1.0000 +vn 0.9994 0.0055 0.0331 +vn 0.9994 0.0053 0.0331 +vn 0.9956 -0.0873 0.0330 +vn 0.9947 0.0979 0.0330 +vn 0.0077 -0.0012 -1.0000 +vn 0.0076 0.0614 -0.9981 +vn 0.0076 -0.0614 -0.9981 +vn -0.9956 -0.0874 -0.0329 +vn -0.0076 0.0001 1.0000 +vn -0.0076 -0.0068 0.9999 +vn -0.0076 0.0068 0.9999 +vn 0.0077 -0.0034 -1.0000 +vn 0.0077 -0.0030 -1.0000 +vn 0.0330 -0.0604 -0.9976 +vn 1.0000 -0.0012 0.0076 +vn 0.9983 -0.0582 0.0076 +vn -0.9987 -0.0387 -0.0331 +vn 0.9994 -0.0039 0.0331 +vn 0.9946 0.0981 0.0329 +vn -0.9995 0.0014 -0.0331 +vn 0.9995 -0.0000 0.0329 +vn -0.9995 -0.0000 -0.0331 +vn 0.9995 0.0000 0.0321 +vn -0.9881 0.0044 -0.1540 +vn 0.9980 0.0531 0.0331 +vn -0.9994 0.0063 -0.0331 +vn -0.9953 -0.0911 -0.0330 +vn 0.9888 -0.1455 0.0327 +vn -0.9956 -0.0873 -0.0329 +vn -0.9947 0.0979 -0.0329 +vn 0.9989 -0.0329 0.0330 +vn -0.9989 -0.0329 -0.0330 +vn 0.9978 -0.0572 0.0330 +vn -0.9889 0.1451 -0.0328 +vn 0.9976 -0.0604 0.0331 +vn -0.9994 0.0055 -0.0330 +vn -1.0000 0.0016 -0.0076 +vn -1.0000 0.0017 -0.0076 +vn -0.0331 -0.0604 0.9976 +vn 0.0329 -0.0911 -0.9953 +vn -0.9981 0.0614 -0.0076 +vn -0.3368 -0.1736 -0.9254 +vn 0.9397 0.0000 -0.3420 +vn 0.7253 0.5789 -0.3726 +vn 0.7253 0.5788 -0.3726 +vn 0.2339 0.9366 -0.2609 +vn -0.3469 0.9366 -0.0495 +vn -0.7951 0.5789 0.1808 +vn -0.9397 -0.0000 0.3420 +vn -0.7253 -0.5789 0.3726 +vn -0.2339 -0.9366 0.2609 +vn 0.3469 -0.9366 0.0495 +vn 0.7951 -0.5788 -0.1808 +vn 0.7951 -0.5789 -0.1808 +vn 0.3368 0.1736 0.9254 +vn 0.3368 0.1737 0.9254 +vn -0.3368 -0.1737 -0.9254 +vn 0.1910 0.9504 -0.2454 +vn 0.1911 0.9504 -0.2454 +vn 0.3674 0.1625 0.9158 +vn 0.3675 0.1624 0.9157 +vn -0.8968 0.2679 0.3520 +vn -0.3673 -0.1625 -0.9158 +vn 0.8968 -0.2679 -0.3520 +vn 0.8969 -0.2679 -0.3520 +vn -0.3041 0.9504 -0.0652 +vn 0.3072 0.1624 0.9377 +vn 0.3072 0.1625 0.9377 +vn 0.9133 0.2679 -0.3068 +vn -0.3073 -0.1625 -0.9377 +vn -0.9133 -0.2679 0.3068 +vn -0.9133 -0.2679 0.3069 +vn 0.2891 -0.3443 0.8933 +vn 0.2891 -0.3443 0.8932 +vn 0.9601 -0.0226 -0.2787 +vn -0.2891 0.3443 -0.8933 +vn -0.2892 0.3443 -0.8932 +vn -0.9601 0.0226 0.2787 +vn -0.7544 -0.1736 -0.6330 +vn 0.6428 0.0000 -0.7660 +vn 0.4418 0.5789 -0.6854 +vn 0.0721 0.9366 -0.3429 +vn -0.3252 0.9366 0.1306 +vn -0.5982 0.5789 0.5541 +vn -0.6428 -0.0000 0.7660 +vn -0.4418 -0.5789 0.6853 +vn -0.0721 -0.9366 0.3429 +vn 0.3252 -0.9366 -0.1306 +vn 0.5982 -0.5789 -0.5541 +vn 0.7544 0.1736 0.6330 +vn 0.7544 0.1737 0.6330 +vn -0.7544 -0.1737 -0.6330 +vn 0.0427 0.9504 -0.3081 +vn 0.7761 0.1625 0.6094 +vn 0.7761 0.1624 0.6094 +vn -0.6007 0.2679 0.7533 +vn -0.7760 -0.1625 -0.6094 +vn 0.6007 -0.2679 -0.7533 +vn 0.6006 -0.2679 -0.7533 +vn -0.2960 0.9504 0.0956 +vn 0.7349 0.1625 0.6584 +vn 0.6375 0.2679 -0.7224 +vn -0.7349 -0.1625 -0.6584 +vn -0.7350 -0.1625 -0.6584 +vn -0.6375 -0.2679 0.7224 +vn -0.6375 -0.2679 0.7223 +vn 0.6970 -0.3443 0.6291 +vn 0.6921 -0.0226 -0.7214 +vn -0.6970 0.3443 -0.6291 +vn -0.6970 0.3443 -0.6290 +vn -0.6921 0.0226 0.7214 +vn -0.8529 -0.1736 -0.4924 +vn 0.5000 0.0000 -0.8660 +vn 0.3161 0.5789 -0.7517 +vn 0.3161 0.5788 -0.7517 +vn 0.0115 0.9366 -0.3502 +vn -0.2975 0.9366 0.1850 +vn -0.2976 0.9366 0.1850 +vn -0.4929 0.5789 0.6496 +vn -0.4929 0.5788 0.6496 +vn -0.5000 -0.0000 0.8660 +vn -0.3161 -0.5789 0.7517 +vn -0.0115 -0.9366 0.3502 +vn 0.2975 -0.9366 -0.1850 +vn 0.4929 -0.5789 -0.6496 +vn 0.8529 0.1736 0.4924 +vn 0.8529 0.1737 0.4924 +vn -0.8529 -0.1737 -0.4924 +vn -0.0114 0.9504 -0.3108 +vn 0.8701 0.1625 0.4654 +vn 0.8701 0.1624 0.4653 +vn -0.4607 0.2679 0.8461 +vn -0.4608 0.2679 0.8461 +vn -0.8700 -0.1625 -0.4654 +vn -0.8701 -0.1625 -0.4654 +vn 0.4608 -0.2679 -0.8461 +vn 0.4607 -0.2679 -0.8461 +vn -0.2749 0.9504 0.1455 +vn 0.8381 0.1625 0.5208 +vn 0.5024 0.2679 -0.8221 +vn -0.8381 -0.1625 -0.5208 +vn -0.8381 -0.1625 -0.5207 +vn -0.5024 -0.2679 0.8221 +vn 0.7956 -0.3443 0.4985 +vn 0.7956 -0.3443 0.4984 +vn 0.5563 -0.0226 -0.8306 +vn 0.5564 -0.0226 -0.8306 +vn -0.7956 0.3443 -0.4985 +vn -0.7957 0.3443 -0.4984 +vn -0.5563 0.0226 0.8306 +vn -0.0858 -0.1737 0.9811 +vn -0.0858 -0.1736 0.9811 +vn -0.9962 -0.0000 -0.0872 +vn -0.8148 0.5789 0.0312 +vn -0.3222 0.9366 0.1376 +vn 0.2934 0.9366 0.1915 +vn 0.2935 0.9366 0.1915 +vn 0.7970 0.5789 0.1722 +vn 0.7970 0.5788 0.1722 +vn 0.9962 0.0000 0.0872 +vn 0.8148 -0.5789 -0.0312 +vn 0.3222 -0.9366 -0.1376 +vn -0.2934 -0.9366 -0.1914 +vn -0.2935 -0.9366 -0.1914 +vn -0.7970 -0.5789 -0.1722 +vn 0.0858 0.1736 -0.9811 +vn 0.0858 0.1737 -0.9811 +vn -0.2769 0.9504 0.1417 +vn 0.0541 0.1625 -0.9852 +vn 0.0540 0.1624 -0.9852 +vn 0.9616 0.2679 0.0600 +vn -0.0541 -0.1625 0.9852 +vn -0.9616 -0.2679 -0.0600 +vn 0.2481 0.9504 0.1876 +vn 0.1178 0.1625 -0.9797 +vn -0.9574 0.2679 -0.1079 +vn -0.1178 -0.1625 0.9797 +vn 0.9574 -0.2679 0.1079 +vn 0.1155 -0.3443 -0.9317 +vn -0.9879 -0.0226 -0.1532 +vn -0.1155 0.3443 0.9317 +vn -0.1154 0.3443 0.9318 +vn 0.9879 0.0226 0.1532 +vn 0.9962 -0.0000 0.0872 +vn -0.2934 -0.9366 -0.1915 +vn -0.2935 -0.9366 -0.1915 +vn -0.9962 0.0000 -0.0872 +vn -0.8148 0.5788 0.0312 +vn 0.9616 0.2679 0.0599 +vn -0.7291 -0.4300 -0.5325 +vn -0.8872 -0.4300 0.1675 +vn -0.9341 -0.2974 0.1975 +vn -0.7585 -0.2974 -0.5798 +vn -0.0395 -0.4300 -0.9020 +vn -0.0626 -0.2974 -0.9527 +vn 0.6308 -0.4300 -0.6459 +vn 0.6819 -0.2974 -0.6683 +vn 0.8984 -0.4300 0.0892 +vn 0.9519 -0.2974 0.0737 +vn 0.5495 -0.4299 0.7164 +vn 0.5645 -0.2974 0.7700 +vn -0.0714 -0.4346 0.8978 +vn -0.0755 -0.3029 0.9500 +vn -0.5454 -0.4346 0.7167 +vn -0.5772 -0.3029 0.7584 +vn -0.9775 -0.0091 0.2107 +vn -0.8865 0.4225 0.1889 +vn -0.7192 0.4225 -0.5516 +vn -0.7921 -0.0091 -0.6103 +vn -0.0608 0.4225 -0.9043 +vn -0.0694 -0.0091 -0.9975 +vn 0.6483 0.4225 -0.6334 +vn 0.7169 -0.0091 -0.6972 +vn 0.9038 0.4225 0.0685 +vn 0.9973 -0.0091 0.0733 +vn 0.5347 0.4225 0.7318 +vn 0.5880 -0.0091 0.8088 +vn -0.0714 0.4338 0.8982 +vn -0.0792 -0.0093 0.9968 +vn -0.5457 0.4338 0.7170 +vn -0.6056 -0.0093 0.7957 +vn -0.7892 0.5943 0.1549 +vn -0.6460 0.5943 -0.4790 +vn -0.0410 0.5943 -0.8032 +vn 0.5661 0.5943 -0.5712 +vn 0.8008 0.5943 0.0737 +vn 0.4848 0.5943 0.6416 +vn -0.0639 0.5919 0.8035 +vn -0.4882 0.5919 0.6414 +vn -0.8879 0.4284 0.1677 +vn -0.7296 0.4284 -0.5330 +vn -0.0396 0.4284 -0.9027 +vn 0.6314 0.4284 -0.6464 +vn 0.8992 0.4284 0.0892 +vn 0.5499 0.4284 0.7170 +vn -0.0714 0.4330 0.8985 +vn -0.5459 0.4330 0.7173 +vn -0.9754 -0.0000 -0.2203 +vn -0.4723 -0.0000 -0.8815 +vn 0.3569 -0.0000 -0.9341 +vn 0.9397 -0.0000 -0.3421 +vn 0.8738 0.0000 0.4862 +vn 0.2048 0.0000 0.9788 +vn -0.3569 0.0000 0.9341 +vn -0.8053 0.0000 0.5929 +vn -0.8047 -0.5652 -0.1817 +vn -0.3721 -0.6157 -0.6946 +vn 0.2944 -0.5652 -0.7706 +vn 0.7404 -0.6157 -0.2695 +vn 0.7209 -0.5652 0.4011 +vn 0.1614 -0.6157 0.7713 +vn -0.2812 -0.6157 0.7361 +vn -0.6345 -0.6157 0.4672 +vn -0.6345 -0.6157 0.4671 +vn -0.4722 -0.0000 -0.8815 +vn 0.3569 -0.0000 -0.9342 +vn 0.9397 -0.0000 -0.3420 +vn 0.8739 0.0000 0.4862 +vn 0.8739 -0.0000 0.4862 +vn 0.2048 -0.0000 0.9788 +vn -0.3569 0.0000 0.9342 +vn -0.7982 0.5747 -0.1803 +vn -0.7982 0.5748 -0.1803 +vn -0.3687 0.6252 -0.6879 +vn -0.3686 0.6252 -0.6880 +vn 0.2920 0.5747 -0.7644 +vn 0.2920 0.5748 -0.7644 +vn 0.7334 0.6252 -0.2670 +vn 0.7334 0.6252 -0.2669 +vn 0.7151 0.5747 0.3979 +vn 0.1598 0.6252 0.7639 +vn -0.2785 0.6252 0.7291 +vn -0.6285 0.6252 0.4627 +vn -0.6633 0.7332 -0.1498 +vn -0.2980 0.7759 -0.5561 +vn 0.2427 0.7332 -0.6352 +vn 0.5928 0.7759 -0.2158 +vn 0.5942 0.7332 0.3306 +vn 0.1292 0.7759 0.6175 +vn -0.2251 0.7759 0.5893 +vn -0.5080 0.7759 0.3741 +vn 0.4052 0.3079 -0.8608 +vn 0.3963 0.8168 -0.4193 +vn 0.4090 0.7639 -0.4991 +vn 0.4659 0.3054 -0.8305 +vn 0.0341 0.8168 0.5759 +vn -0.0776 0.8050 0.5881 +vn -0.2429 0.3079 0.9199 +vn -0.3547 0.3089 0.8825 +vn 0.3926 0.8026 -0.4490 +vn 0.5124 0.3023 -0.8038 +vn -0.2254 0.7568 0.6136 +vn -0.4348 0.3068 0.8467 +vn 0.9397 -0.0000 0.3420 +vn 0.9397 -0.0000 0.3421 +vn 0.9397 0.0000 0.3420 +vn 0.2429 0.3079 -0.9199 +vn 0.1770 0.3053 -0.9357 +vn 0.0075 0.7639 -0.6453 +vn -0.0341 0.8168 -0.5759 +vn -0.3186 0.8050 0.5004 +vn -0.3963 0.8168 0.4193 +vn -0.2955 0.3089 0.9040 +vn -0.4052 0.3078 0.8609 +vn 0.1242 0.3024 -0.9451 +vn -0.0121 0.8027 -0.5963 +vn -0.2218 0.7568 0.6149 +vn -0.2112 0.3068 0.9281 +vn -0.9397 0.0000 -0.3420 +vn -0.9397 0.0001 -0.3420 +vn -0.9397 -0.0001 -0.3419 +vn -0.9397 -0.0000 -0.3420 +vn -0.3420 0.0000 0.9397 +vn 0.3420 -0.0000 -0.9397 +vn -0.7828 0.4849 0.3900 +vn -0.5688 0.5340 0.6256 +vn -0.5617 0.5488 0.6191 +vn -0.7186 0.5445 0.4327 +vn -0.4524 -0.7860 0.4212 +vn -0.4525 -0.7860 0.4211 +vn -0.8273 -0.5310 -0.1832 +vn 0.7217 -0.0413 0.6910 +vn 0.7424 -0.0036 0.6700 +vn 0.5464 -0.2833 0.7882 +vn 0.4525 0.7860 -0.4212 +vn 0.2481 0.7700 -0.5878 +vn -0.7189 0.0461 -0.6936 +vn -0.6963 0.0837 -0.7129 +vn -0.5096 0.3234 -0.7973 +vn -0.3288 0.4574 0.8263 +vn -0.3700 0.5233 0.7676 +vn 0.1806 -0.5923 0.7852 +vn 0.6253 0.7471 -0.2252 +vn -0.5389 0.5930 0.5983 +vn -0.6878 0.5496 0.4742 +vn 0.8347 0.2418 0.4947 +vn -0.8246 -0.2000 -0.5292 +vn -0.8246 -0.1999 -0.5292 +vn -0.4123 0.5328 0.7390 +vn -0.0500 -0.9962 0.0714 +vn 0.0500 0.9962 -0.0714 +vn 0.5714 -0.0872 -0.8160 +vn 0.5714 -0.0872 -0.8161 +vn 0.5714 -0.0871 -0.8160 +vn 0.8192 -0.0000 0.5736 +vn 0.8191 0.0000 0.5736 +vn -0.5714 0.0871 0.8160 +vn -0.5714 0.0872 0.8160 +vn -0.8191 0.0000 -0.5736 +vn -0.8192 0.0000 -0.5736 +vn 0.5719 -0.0770 -0.8167 +vn 0.5716 -0.0821 -0.8164 +vn 0.5717 -0.0821 -0.8164 +vn 0.8200 0.0166 0.5722 +vn 0.8199 0.0166 0.5723 +vn -0.5708 0.0973 0.8153 +vn -0.5711 0.0922 0.8157 +vn -0.8182 0.0166 -0.5748 +vn -0.8182 0.0166 -0.5747 +vn 0.8191 -0.0000 0.5736 +vn -0.8191 0.0001 -0.5736 +vn 0.0410 0.7502 0.6599 +vn -0.4567 0.7133 0.5317 +vn -0.4388 0.7454 0.5018 +vn 0.0241 0.8038 0.5945 +vn 0.4995 0.7582 0.4191 +vn 0.4554 0.8041 0.3822 +vn 0.6496 0.7582 -0.0568 +vn 0.5923 0.8041 -0.0518 +vn 0.4191 0.7582 -0.4995 +vn 0.3822 0.8041 -0.4554 +vn -0.0568 0.7582 -0.6496 +vn -0.0518 0.8041 -0.5923 +vn -0.4995 0.7582 -0.4191 +vn -0.4741 0.7962 -0.3759 +vn -0.6866 0.7221 0.0852 +vn -0.6708 0.7376 0.0776 +vn -0.2274 0.6544 0.7211 +vn -0.6707 0.6544 0.3491 +vn 0.3491 0.6544 0.6707 +vn 0.7211 0.6544 0.2274 +vn 0.6707 0.6544 -0.3491 +vn 0.2274 0.6544 -0.7211 +vn -0.3491 0.6544 -0.6707 +vn -0.7211 0.6544 -0.2274 +vn -0.4057 0.0000 0.9140 +vn 0.4617 -0.0000 0.8870 +vn 0.4617 0.0000 0.8870 +vn 0.9537 -0.0000 0.3007 +vn 0.8870 0.0000 -0.4617 +vn 0.3007 0.0000 -0.9537 +vn -0.4617 0.0000 -0.8870 +vn -0.9787 -0.0000 -0.2053 +vn -0.9787 0.0000 -0.2053 +vn -0.8870 0.0000 0.4618 +vn -0.0957 0.4943 0.8640 +vn -0.0677 0.5296 0.8455 +vn 0.6481 0.5263 0.5505 +vn 0.6746 0.4770 0.5634 +vn -0.0887 0.2560 0.9626 +vn 0.7432 0.2511 0.6201 +vn -0.0649 0.0324 0.9974 +vn 0.7663 0.0300 0.6418 +vn -0.0741 0.0077 0.9972 +vn 0.7660 -0.0000 0.6428 +vn -0.0841 -0.0000 0.9965 +vn -0.6088 0.1873 0.7709 +vn -0.6450 0.1711 0.7448 +vn -0.5708 0.0934 0.8157 +vn -0.5766 0.0501 0.8155 +vn -0.5822 0.1168 0.8046 +vn -0.5813 0.1469 0.8003 +vn -0.7644 0.4877 -0.4217 +vn -0.7260 0.5413 -0.4241 +vn -0.9804 0.1942 0.0335 +vn -0.9846 0.1747 0.0026 +vn -0.8292 0.2548 -0.4975 +vn -0.9947 0.0939 -0.0422 +vn -0.8429 0.0324 -0.5370 +vn -0.9979 0.0526 -0.0365 +vn -0.8462 0.0041 -0.5328 +vn -0.9899 0.1412 -0.0079 +vn -0.8494 0.0119 -0.5276 +vn -0.9762 0.2168 0.0085 +vn -0.0746 0.4770 -0.8757 +vn -0.0792 0.5263 -0.8466 +vn -0.0817 0.2511 -0.9645 +vn -0.0862 0.0300 -0.9958 +vn -0.0872 0.0000 -0.9962 +vn -0.0872 -0.0000 -0.9962 +vn 0.5699 0.4643 -0.6779 +vn 0.5498 0.5137 -0.6586 +vn 0.6246 0.2417 -0.7426 +vn 0.6428 0.0277 -0.7655 +vn 0.6428 -0.0000 -0.7660 +vn 0.8822 0.4643 -0.0780 +vn 0.8549 0.5137 -0.0726 +vn 0.9666 0.2417 -0.0857 +vn 0.9958 0.0277 -0.0875 +vn 0.9962 0.0000 -0.0872 +vn 0.5319 0.7502 0.3928 +vn 0.1137 0.7133 0.6916 +vn 0.1023 0.7454 0.6587 +vn 0.4709 0.8038 0.3636 +vn 0.6421 0.7582 -0.1132 +vn 0.5855 0.8041 -0.1032 +vn 0.3740 0.7582 -0.5341 +vn 0.3410 0.8041 -0.4870 +vn -0.1132 0.7582 -0.6421 +vn -0.1032 0.8041 -0.5855 +vn -0.5341 0.7582 -0.3740 +vn -0.4870 0.8041 -0.3410 +vn -0.6421 0.7582 0.1132 +vn -0.5927 0.7962 0.1215 +vn -0.3761 0.7221 0.5807 +vn -0.3717 0.7376 0.5637 +vn 0.4063 0.6544 0.6377 +vn -0.1637 0.6544 0.7382 +vn 0.7382 0.6544 0.1637 +vn 0.6377 0.6544 -0.4063 +vn 0.1637 0.6544 -0.7382 +vn -0.4063 0.6544 -0.6377 +vn -0.7382 0.6544 -0.1637 +vn -0.6377 0.6544 0.4063 +vn 0.4394 -0.0000 0.8983 +vn 0.9763 -0.0000 0.2164 +vn 0.8434 0.0000 -0.5373 +vn 0.2164 0.0000 -0.9763 +vn -0.5373 0.0000 -0.8434 +vn -0.9763 0.0000 -0.2164 +vn -0.7864 0.0000 0.6178 +vn -0.7864 -0.0000 0.6178 +vn -0.2164 -0.0000 0.9763 +vn -0.2164 0.0000 0.9763 +vn 0.6004 0.4943 0.6287 +vn 0.6042 0.5296 0.5954 +vn 0.8382 0.5263 -0.1426 +vn 0.8652 0.4770 -0.1546 +vn 0.6804 0.2560 0.6867 +vn 0.9528 0.2511 -0.1708 +vn 0.7223 0.0324 0.6908 +vn 0.9842 0.0300 -0.1745 +vn 0.7163 0.0077 0.6978 +vn 0.9848 0.0000 -0.1736 +vn 0.7093 -0.0000 0.7050 +vn 0.9848 -0.0000 -0.1737 +vn 0.1992 0.1873 0.9619 +vn 0.1560 0.1711 0.9728 +vn 0.2580 0.0934 0.9616 +vn 0.2541 0.0501 0.9659 +vn 0.2422 0.1168 0.9632 +vn 0.2394 0.1469 0.9597 +vn -0.8144 0.4877 0.3145 +vn -0.7916 0.5413 0.2835 +vn -0.6045 0.1942 0.7726 +vn -0.6309 0.1747 0.7560 +vn -0.9141 0.2548 0.3155 +vn -0.6717 0.0939 0.7349 +vn -0.9532 0.0324 0.3005 +vn -0.6695 0.0526 0.7410 +vn -0.9521 0.0041 0.3058 +vn -0.6424 0.1412 0.7533 +vn -0.9502 0.0119 0.3116 +vn -0.6210 0.2169 0.7533 +vn -0.7188 0.4770 -0.5057 +vn -0.6994 0.5263 -0.4835 +vn -0.7914 0.2511 -0.5574 +vn -0.8182 0.0300 -0.5741 +vn -0.8192 -0.0000 -0.5736 +vn -0.1530 0.4643 -0.8723 +vn -0.1511 0.5137 -0.8446 +vn -0.1674 0.2417 -0.9558 +vn -0.1732 0.0277 -0.9845 +vn -0.1736 0.0000 -0.9848 +vn -0.1736 -0.0000 -0.9848 +vn 0.5073 0.4643 -0.7260 +vn 0.4939 0.5137 -0.7016 +vn 0.5557 0.2417 -0.7955 +vn 0.5730 0.0277 -0.8191 +vn 0.5736 0.0000 -0.8192 +vn 0.5736 -0.0000 -0.8192 +vn -0.9027 -0.4300 -0.0180 +vn -0.6307 -0.4300 0.6461 +vn -0.6519 -0.2974 0.6976 +vn -0.9539 -0.2974 -0.0399 +vn -0.5497 -0.4300 -0.7162 +vn -0.5977 -0.2974 -0.7445 +vn 0.1463 -0.4300 -0.8909 +vn 0.1752 -0.2974 -0.9385 +vn 0.7871 -0.4299 -0.4422 +vn 0.8220 -0.2974 -0.4857 +vn 0.8610 -0.4300 0.2716 +vn 0.9040 -0.2974 0.3070 +vn 0.4565 -0.4346 0.7764 +vn 0.4830 -0.3029 0.8215 +vn -0.0357 -0.4346 0.8999 +vn -0.0378 -0.3029 0.9523 +vn -0.6799 -0.0091 0.7332 +vn -0.6178 0.4225 0.6632 +vn -0.9055 0.4225 -0.0393 +vn -0.9989 -0.0091 -0.0457 +vn -0.5685 0.4225 -0.7059 +vn -0.6290 -0.0091 -0.7773 +vn 0.1677 0.4225 -0.8907 +vn 0.1873 -0.0091 -0.9823 +vn 0.7796 0.4225 -0.4623 +vn 0.8589 -0.0091 -0.5120 +vn 0.8578 0.4225 0.2928 +vn 0.9456 -0.0091 0.3252 +vn 0.4567 0.4338 0.7767 +vn 0.5068 -0.0093 0.8620 +vn -0.0357 0.4338 0.9003 +vn -0.0397 -0.0093 0.9992 +vn -0.5576 0.5943 0.5795 +vn -0.8039 0.5943 -0.0219 +vn -0.4943 0.5943 -0.6344 +vn 0.1361 0.5943 -0.7926 +vn 0.6983 0.5943 -0.3990 +vn 0.7652 0.5943 0.2475 +vn 0.4085 0.5919 0.6948 +vn -0.0320 0.5919 0.8054 +vn -0.6311 0.4284 0.6466 +vn -0.9034 0.4284 -0.0181 +vn -0.5503 0.4284 -0.7167 +vn 0.1465 0.4284 -0.8916 +vn 0.7878 0.4284 -0.4426 +vn 0.8617 0.4284 0.2719 +vn 0.4569 0.4330 0.7770 +vn -0.0358 0.4330 0.9007 +vn -0.9254 0.0000 0.3790 +vn -0.8924 -0.0000 -0.4512 +vn -0.2435 -0.0000 -0.9699 +vn 0.5736 -0.0000 -0.8191 +vn 0.9947 -0.0000 -0.1029 +vn 0.7292 0.0000 0.6843 +vn 0.2435 0.0000 0.9699 +vn -0.3196 0.0000 0.9476 +vn -0.7634 -0.5652 0.3127 +vn -0.7032 -0.6157 -0.3555 +vn -0.2008 -0.5652 -0.8001 +vn 0.4520 -0.6157 -0.6455 +vn 0.8206 -0.5652 -0.0849 +vn 0.5746 -0.6157 0.5392 +vn 0.1918 -0.6157 0.7642 +vn -0.2518 -0.6157 0.7466 +vn -0.7573 0.5747 0.3101 +vn -0.7573 0.5748 0.3102 +vn -0.6965 0.6252 -0.3521 +vn -0.1992 0.5747 -0.7937 +vn 0.4476 0.6252 -0.6393 +vn 0.4477 0.6252 -0.6393 +vn 0.8140 0.5747 -0.0842 +vn 0.5691 0.6252 0.5341 +vn 0.1900 0.6252 0.7570 +vn -0.2494 0.6252 0.7395 +vn -0.6293 0.7332 0.2577 +vn -0.5630 0.7759 -0.2846 +vn -0.1655 0.7332 -0.6595 +vn 0.3618 0.7759 -0.5168 +vn 0.6764 0.7332 -0.0700 +vn 0.4600 0.7759 0.4317 +vn 0.1536 0.7759 0.6119 +vn -0.2016 0.7759 0.5978 +vn -0.1618 0.3079 -0.9376 +vn 0.0842 0.8168 -0.5708 +vn 0.0488 0.7639 -0.6435 +vn -0.0948 0.3054 -0.9475 +vn 0.3583 0.8168 0.4522 +vn 0.2738 0.8050 0.5263 +vn 0.3286 0.3078 0.8929 +vn 0.2156 0.3089 0.9264 +vn 0.0641 0.8026 -0.5930 +vn -0.0413 0.3023 -0.9523 +vn 0.1674 0.7568 0.6319 +vn 0.1295 0.3068 0.9429 +vn 0.9659 0.0000 -0.2588 +vn 0.9659 0.0001 -0.2589 +vn 0.9659 0.0001 -0.2588 +vn -0.3286 0.3079 -0.8929 +vn -0.3917 0.3054 -0.8679 +vn -0.3640 0.7639 -0.5329 +vn -0.3583 0.8168 -0.4522 +vn 0.0261 0.8050 0.5927 +vn -0.0842 0.8168 0.5708 +vn 0.2765 0.3089 0.9100 +vn 0.1618 0.3079 0.9376 +vn -0.4404 0.3024 -0.8454 +vn -0.3520 0.8027 -0.4815 +vn 0.1710 0.7568 0.6309 +vn 0.3593 0.3068 0.8813 +vn -0.9659 0.0000 0.2588 +vn -0.9659 0.0001 0.2588 +vn -0.9659 -0.0000 0.2588 +vn 0.2588 0.0000 0.9659 +vn -0.2588 -0.0000 -0.9659 +vn 0.9659 -0.0000 -0.2588 +vn -0.4175 0.4850 0.7684 +vn -0.1071 0.5340 0.8387 +vn -0.1050 0.5488 0.8293 +vn -0.3405 0.5445 0.7666 +vn -0.1290 -0.7860 0.6046 +vn -0.1291 -0.7860 0.6046 +vn -0.7828 -0.5311 0.3243 +vn 0.9875 -0.0413 0.1521 +vn 0.9924 -0.0036 0.1229 +vn 0.8997 -0.2833 0.3322 +vn 0.1291 0.7860 -0.6046 +vn -0.1339 0.7701 -0.6238 +vn -0.9867 0.0461 -0.1558 +vn -0.9793 0.0837 -0.1845 +vn -0.8748 0.3234 -0.3608 +vn 0.2046 0.4574 0.8654 +vn 0.1372 0.5233 0.8410 +vn 0.5983 -0.5923 0.5396 +vn 0.3831 0.7471 -0.5432 +vn -0.0983 0.5930 0.7992 +vn -0.2914 0.5495 0.7830 +vn 0.9675 0.2417 -0.0736 +vn -0.9790 -0.2000 0.0394 +vn 0.0861 0.5328 0.8418 +vn -0.0000 -0.9962 0.0871 +vn -0.0000 -0.9962 0.0872 +vn 0.0000 -0.9962 0.0871 +vn -0.0000 0.9962 -0.0871 +vn -0.0000 -0.0872 -0.9962 +vn 0.0000 0.0872 0.9962 +vn -0.0000 -0.0770 -0.9970 +vn -0.0000 -0.0821 -0.9966 +vn 0.9999 0.0166 -0.0015 +vn 0.0000 0.0973 0.9953 +vn 0.0000 0.0922 0.9957 +vn -0.9999 0.0166 -0.0015 +vn -0.0000 0.9962 -0.0872 +vn 0.0000 0.9962 -0.0872 +vn -0.8858 -0.4300 -0.1745 +vn -0.7333 -0.4300 0.5267 +vn -0.7631 -0.2974 0.5738 +vn -0.9325 -0.2974 -0.2049 +vn -0.4170 -0.4300 -0.8008 +vn -0.4593 -0.2974 -0.8370 +vn 0.2988 -0.4300 -0.8520 +vn 0.3355 -0.2974 -0.8938 +vn 0.8520 -0.4300 -0.2988 +vn 0.8938 -0.2974 -0.3355 +vn 0.8008 -0.4300 0.4170 +vn 0.8370 -0.2974 0.4593 +vn 0.3147 -0.4346 0.8438 +vn 0.3331 -0.3029 0.8929 +vn -0.1914 -0.4346 0.8800 +vn -0.2026 -0.3029 0.9312 +vn -0.7969 -0.0091 0.6040 +vn -0.7236 0.4225 0.5458 +vn -0.8849 0.4225 -0.1959 +vn -0.9758 -0.0091 -0.2184 +vn -0.4373 0.4225 -0.7939 +vn -0.4845 -0.0091 -0.8748 +vn 0.3199 0.4225 -0.8481 +vn 0.3551 -0.0091 -0.9348 +vn 0.8481 0.4225 -0.3199 +vn 0.9348 -0.0091 -0.3551 +vn 0.7939 0.4225 0.4373 +vn 0.8747 -0.0091 0.4845 +vn 0.3149 0.4338 0.8442 +vn 0.3494 -0.0093 0.9369 +vn -0.1915 0.4338 0.8804 +vn -0.2126 -0.0093 0.9771 +vn -0.6498 0.5943 0.4739 +vn -0.7879 0.5943 -0.1612 +vn -0.3766 0.5943 -0.7106 +vn 0.2717 0.5943 -0.7570 +vn 0.7570 0.5943 -0.2717 +vn 0.7106 0.5943 0.3766 +vn 0.2817 0.5919 0.7552 +vn -0.1713 0.5919 0.7876 +vn -0.7338 0.4284 0.5272 +vn -0.8865 0.4284 -0.1748 +vn -0.4174 0.4284 -0.8014 +vn 0.2991 0.4284 -0.8526 +vn 0.8526 0.4284 -0.2991 +vn 0.8014 0.4284 0.4174 +vn 0.3150 0.4330 0.8445 +vn -0.1916 0.4331 0.8808 +vn -0.9771 0.0000 0.2126 +vn -0.8005 -0.0000 -0.5993 +vn -0.0713 -0.0000 -0.9975 +vn 0.7071 -0.0000 -0.7071 +vn 0.9975 0.0000 0.0713 +vn 0.5992 0.0000 0.8006 +vn 0.0713 0.0000 0.9975 +vn -0.4793 0.0000 0.8777 +vn -0.8061 -0.5652 0.1754 +vn -0.6308 -0.6157 -0.4722 +vn -0.0589 -0.5652 -0.8229 +vn -0.0588 -0.5652 -0.8228 +vn 0.5572 -0.6157 -0.5572 +vn 0.8229 -0.5652 0.0589 +vn 0.8229 -0.5652 0.0588 +vn 0.4722 -0.6157 0.6308 +vn 0.0562 -0.6157 0.7860 +vn -0.3776 -0.6157 0.6916 +vn 0.5993 0.0000 0.8006 +vn -0.7997 0.5747 0.1739 +vn -0.7996 0.5748 0.1740 +vn -0.6248 0.6252 -0.4676 +vn -0.6248 0.6252 -0.4677 +vn -0.0584 0.5747 -0.8163 +vn -0.0584 0.5747 -0.8162 +vn -0.0584 0.5748 -0.8162 +vn 0.5518 0.6252 -0.5519 +vn 0.5519 0.6252 -0.5519 +vn 0.8163 0.5747 0.0584 +vn 0.8162 0.5748 0.0584 +vn 0.4677 0.6252 0.6248 +vn 0.0557 0.6252 0.7785 +vn -0.3740 0.6252 0.6850 +vn -0.6644 0.7332 0.1445 +vn -0.5051 0.7759 -0.3780 +vn -0.0485 0.7332 -0.6782 +vn 0.4461 0.7759 -0.4461 +vn 0.6783 0.7332 0.0486 +vn 0.3781 0.7759 0.5050 +vn 0.0450 0.7759 0.6293 +vn -0.3023 0.7759 0.5537 +vn 0.0034 0.3079 -0.9514 +vn 0.1820 0.8168 -0.5475 +vn 0.1598 0.7639 -0.6252 +vn 0.0712 0.3054 -0.9496 +vn 0.2743 0.8168 0.5076 +vn 0.1782 0.8050 0.5658 +vn 0.1686 0.3079 0.9364 +vn 0.0515 0.3089 0.9497 +vn 0.1661 0.8027 -0.5729 +vn 0.1247 0.3023 -0.9450 +vn 0.0551 0.7568 0.6513 +vn -0.0362 0.3068 0.9511 +vn 0.9962 -0.0000 -0.0872 +vn 0.9962 -0.0001 -0.0871 +vn -0.1686 0.3079 -0.9364 +vn -0.2350 0.3053 -0.9228 +vn -0.2659 0.7639 -0.5880 +vn -0.2743 0.8168 -0.5076 +vn -0.0773 0.8050 0.5882 +vn -0.1820 0.8168 0.5475 +vn 0.1143 0.3088 0.9442 +vn -0.0034 0.3079 0.9514 +vn -0.2869 0.3024 -0.9090 +vn -0.2630 0.8027 -0.5353 +vn 0.0589 0.7568 0.6510 +vn 0.2008 0.3068 0.9303 +vn -0.9962 0.0000 0.0871 +vn -0.9962 -0.0000 0.0871 +vn -0.9962 0.0001 0.0871 +vn 0.0872 0.0000 0.9962 +vn -0.9962 -0.0000 0.0872 +vn -0.9962 0.0000 0.0872 +vn -0.5446 0.4850 0.6842 +vn -0.2511 0.5340 0.8073 +vn -0.2474 0.5488 0.7985 +vn -0.4684 0.5445 0.6958 +vn -0.2320 -0.7860 0.5730 +vn -0.2321 -0.7860 0.5729 +vn -0.8272 -0.5310 0.1836 +vn 0.9461 -0.0414 0.3212 +vn 0.9560 -0.0037 0.2933 +vn 0.8283 -0.2833 0.4834 +vn 0.2321 0.7860 -0.5730 +vn -0.0236 0.7700 -0.6375 +vn -0.0236 0.7700 -0.6376 +vn -0.9447 0.0462 -0.3247 +vn -0.9324 0.0838 -0.3517 +vn -0.7989 0.3235 -0.5071 +vn 0.0512 0.4574 0.8878 +vn -0.0110 0.5233 0.8521 +vn 0.4955 -0.5923 0.6353 +vn 0.4717 0.7470 -0.4685 +vn -0.2356 0.5930 0.7700 +vn -0.4230 0.5496 0.7205 +vn 0.9656 0.2419 0.0957 +vn 0.9656 0.2419 0.0958 +vn -0.9710 -0.2000 -0.1312 +vn -0.0614 0.5328 0.8440 +vn -0.0151 -0.9962 0.0858 +vn 0.0151 0.9962 -0.0858 +vn 0.1730 -0.0872 -0.9811 +vn 0.1730 -0.0871 -0.9811 +vn 0.9848 -0.0000 0.1736 +vn -0.1730 0.0872 0.9811 +vn -0.1730 0.0871 0.9811 +vn -0.9848 0.0000 -0.1736 +vn 0.1731 -0.0770 -0.9819 +vn 0.1731 -0.0821 -0.9815 +vn 0.9849 0.0166 0.1722 +vn 0.9849 0.0166 0.1721 +vn -0.1728 0.0973 0.9801 +vn -0.1729 0.0922 0.9806 +vn -0.9844 0.0166 -0.1751 +vn -0.9844 0.0166 -0.1750 +vn -0.9848 -0.0001 -0.1736 +vn 0.8672 -0.4300 0.2510 +vn 0.7764 -0.4300 -0.4608 +vn 0.8102 -0.2974 -0.5051 +vn 0.9111 -0.2974 0.2854 +vn 0.3456 -0.4300 0.8341 +vn 0.3846 -0.2974 0.8738 +vn -0.3719 -0.4300 0.8227 +vn -0.4122 -0.2974 0.8612 +vn -0.8748 -0.4300 0.2234 +vn -0.9197 -0.2974 0.2564 +vn -0.7614 -0.4300 -0.4852 +vn -0.7938 -0.2974 -0.5305 +vn -0.2400 -0.4346 -0.8681 +vn -0.2540 -0.3029 -0.9186 +vn 0.2674 -0.4346 -0.8600 +vn 0.2830 -0.3029 -0.9100 +vn 0.8465 -0.0091 -0.5323 +vn 0.7684 0.4225 -0.4807 +vn 0.8645 0.4225 0.2723 +vn 0.9531 -0.0091 0.3026 +vn 0.3664 0.4225 0.8290 +vn 0.4064 -0.0091 0.9136 +vn -0.3926 0.4225 0.8170 +vn -0.4352 -0.0091 0.9003 +vn -0.8727 0.4225 0.2447 +vn -0.9622 -0.0091 0.2722 +vn -0.7528 0.4225 -0.5048 +vn -0.8292 -0.0091 -0.5589 +vn -0.2401 0.4338 -0.8684 +vn -0.2665 -0.0093 -0.9638 +vn 0.2675 0.4338 -0.8604 +vn 0.2969 -0.0093 -0.9549 +vn 0.6886 0.5943 -0.4155 +vn 0.7709 0.5943 0.2292 +vn 0.3133 0.5943 0.7407 +vn -0.3366 0.5943 0.7304 +vn -0.7778 0.5943 0.2046 +vn -0.6751 0.5943 -0.4371 +vn -0.2148 0.5919 -0.7769 +vn 0.2393 0.5919 -0.7697 +vn 0.7770 0.4284 -0.4612 +vn 0.8679 0.4284 0.2513 +vn 0.3460 0.4284 0.8347 +vn -0.3724 0.4284 0.8233 +vn -0.8755 0.4284 0.2237 +vn -0.7620 0.4284 -0.4857 +vn -0.2402 0.4331 -0.8688 +vn 0.2677 0.4330 -0.8607 +vn 0.9920 -0.0000 -0.1266 +vn 0.7453 0.0000 0.6667 +vn -0.0159 0.0000 0.9999 +vn -0.7661 0.0000 0.6427 +vn -0.9874 -0.0000 -0.1580 +vn -0.5273 -0.0000 -0.8497 +vn 0.0158 -0.0000 -0.9999 +vn 0.5540 -0.0000 -0.8325 +vn 0.8183 -0.5652 -0.1044 +vn 0.5872 -0.6158 0.5254 +vn 0.5873 -0.6157 0.5253 +vn -0.0131 -0.5652 0.8249 +vn -0.0131 -0.5652 0.8248 +vn -0.6036 -0.6157 0.5065 +vn -0.6036 -0.6157 0.5064 +vn -0.8146 -0.5652 -0.1304 +vn -0.8146 -0.5652 -0.1303 +vn -0.4154 -0.6157 -0.6696 +vn -0.4155 -0.6157 -0.6696 +vn 0.0125 -0.6157 -0.7879 +vn 0.4365 -0.6157 -0.6561 +vn 0.4365 -0.6157 -0.6560 +vn 0.7453 0.0000 0.6668 +vn -0.7661 0.0000 0.6428 +vn -0.5272 -0.0000 -0.8497 +vn 0.0159 -0.0000 -0.9999 +vn 0.5539 -0.0000 -0.8326 +vn 0.8117 0.5748 -0.1036 +vn 0.5817 0.6252 0.5203 +vn 0.5817 0.6252 0.5204 +vn -0.0130 0.5747 0.8182 +vn -0.5978 0.6252 0.5017 +vn -0.5979 0.6252 0.5017 +vn -0.8081 0.5747 -0.1293 +vn -0.8080 0.5748 -0.1293 +vn -0.4115 0.6252 -0.6632 +vn 0.0124 0.6252 -0.7804 +vn 0.4323 0.6252 -0.6498 +vn 0.6745 0.7332 -0.0861 +vn 0.4702 0.7759 0.4206 +vn -0.0108 0.7332 0.6799 +vn -0.4833 0.7759 0.4055 +vn -0.6714 0.7332 -0.1075 +vn -0.3326 0.7759 -0.5361 +vn 0.0100 0.7759 -0.6308 +vn 0.3495 0.7759 -0.5253 +vn -0.0863 0.3079 0.9475 +vn -0.2290 0.8168 0.5296 +vn -0.2137 0.7639 0.6089 +vn -0.1537 0.3054 0.9398 +vn -0.2290 0.8168 -0.5296 +vn -0.1282 0.8050 -0.5792 +vn -0.0863 0.3078 -0.9475 +vn 0.0315 0.3088 -0.9506 +vn -0.2154 0.8026 0.5562 +vn -0.2066 0.3023 0.9305 +vn 0.0019 0.7568 -0.6537 +vn 0.1189 0.3068 -0.9443 +vn -1.0000 0.0001 -0.0000 +vn -1.0000 0.0001 0.0000 +vn 0.0863 0.3079 0.9475 +vn 0.1537 0.3053 0.9398 +vn 0.2137 0.7639 0.6089 +vn 0.2290 0.8168 0.5295 +vn 0.1282 0.8050 -0.5792 +vn 0.2290 0.8168 -0.5295 +vn -0.0315 0.3088 -0.9506 +vn 0.0863 0.3078 -0.9475 +vn 0.2066 0.3024 0.9305 +vn 0.2154 0.8027 0.5562 +vn -0.0019 0.7568 -0.6537 +vn -0.1189 0.3068 -0.9443 +vn 1.0000 0.0001 0.0000 +vn 1.0000 0.0001 -0.0000 +vn 1.0000 0.0001 0.0001 +vn 1.0000 0.0002 -0.0000 +vn 0.6022 0.4849 -0.6342 +vn 0.3205 0.5340 -0.7824 +vn 0.3160 0.5488 -0.7739 +vn 0.5273 0.5445 -0.6523 +vn 0.2812 -0.7860 -0.5506 +vn 0.2811 -0.7860 -0.5506 +vn 0.8401 -0.5310 -0.1108 +vn -0.9145 -0.0412 -0.4026 +vn -0.9267 -0.0035 -0.3757 +vn -0.7831 -0.2834 -0.5536 +vn -0.2811 0.7860 0.5505 +vn -0.0321 0.7700 0.6372 +vn 0.9127 0.0460 0.4061 +vn 0.8981 0.0836 0.4319 +vn 0.7516 0.3234 0.5749 +vn 0.0264 0.4574 -0.8889 +vn 0.0852 0.5233 -0.8479 +vn -0.4383 -0.5924 -0.6760 +vn -0.5106 0.7471 0.4255 +vn 0.3018 0.5930 -0.7465 +vn 0.4842 0.5496 -0.6809 +vn -0.9537 0.2416 -0.1792 +vn 0.9559 -0.2000 0.2153 +vn 0.1347 0.5328 -0.8354 +vn 0.0226 -0.9962 -0.0842 +vn -0.0226 0.9962 0.0842 +vn -0.2578 -0.0872 0.9622 +vn -0.9659 -0.0000 -0.2588 +vn -0.9659 0.0000 -0.2589 +vn 0.2579 0.0872 -0.9622 +vn 0.2578 0.0872 -0.9622 +vn -0.2581 -0.0770 0.9631 +vn -0.2580 -0.0821 0.9627 +vn -0.9662 0.0166 -0.2573 +vn -0.9662 0.0166 -0.2574 +vn 0.2576 0.0973 -0.9613 +vn 0.2577 0.0922 -0.9618 +vn 0.9654 0.0166 0.2602 +vn 0.9654 0.0166 0.2601 +vn -0.9659 -0.0000 -0.2589 +vn -0.9659 -0.0001 -0.2590 +vn -0.9659 0.0001 -0.2588 +vn 0.9659 0.0001 0.2588 +vn 0.9659 0.0000 0.2588 +vn -0.2578 -0.0872 0.9623 +vn 0.2578 0.0871 -0.9623 +vn 0.8672 -0.4300 0.2511 +vn -0.3720 -0.4300 0.8227 +vn 0.3132 0.5943 0.7407 +vn -0.2402 0.4330 -0.8688 +vn 0.5873 -0.6157 0.5254 +vn -0.1537 0.3054 0.9397 +vn -0.2290 0.8168 -0.5295 +vn -0.0863 0.3079 -0.9475 +vn 0.0315 0.3089 -0.9506 +vn -0.0315 0.3089 -0.9506 +vn 0.0863 0.3079 -0.9475 +vn 1.0000 0.0000 -0.0001 +vn -0.9145 -0.0412 -0.4025 +vn -0.9267 -0.0036 -0.3757 +vn -0.2811 0.7861 0.5505 +vn -0.0321 0.7701 0.6371 +vn 0.8980 0.0836 0.4319 +vn 0.9559 -0.2000 0.2152 +vn -0.2579 -0.0871 0.9622 +vn -0.2578 -0.0871 0.9623 +vn 0.2579 0.0871 -0.9622 +vn -0.9659 0.0000 -0.2588 +vn 0.2578 0.0872 -0.9623 +vn 0.0000 0.9397 0.3420 +vn -0.0000 0.9397 0.3420 +vn -0.0000 -0.9397 -0.3420 +vn -0.0000 -0.3420 0.9397 +vn 0.0000 -0.3420 0.9397 +vn -0.0000 0.3420 -0.9397 +vn 0.0000 -0.3516 0.9362 +vn 0.0000 -0.3468 0.9379 +vn 0.9999 -0.0156 -0.0057 +vn 0.0000 0.3324 -0.9431 +vn -0.0000 0.3372 -0.9414 +vn -0.0000 0.3373 -0.9414 +vn -0.9999 -0.0156 -0.0057 +vn 0.0000 -0.9397 -0.3420 +vn 0.0000 0.3420 -0.9397 +vn -0.0006 1.0000 0.0085 +vn -0.0007 1.0000 0.0089 +vn -0.0000 1.0000 0.0019 +vn 0.0000 1.0000 0.0015 +vn -0.9993 0.0098 -0.0349 +vn -0.9989 0.0168 -0.0441 +vn -0.9995 0.0069 -0.0311 +vn -0.9998 -0.0000 -0.0220 +vn 0.9991 0.0084 -0.0423 +vn 0.9986 -0.0000 -0.0533 +vn 0.9992 0.0119 -0.0377 +vn 0.9994 0.0203 -0.0267 +vn -0.9997 0.0104 -0.0219 +vn -0.0005 -0.3656 0.9308 +vn -0.0010 -0.3656 0.9308 +vn 0.9997 -0.0086 0.0220 +vn 1.0000 -0.0018 -0.0000 +vn -0.0000 0.3654 -0.9308 +vn -0.0042 0.3649 -0.9310 +vn -0.0000 0.3645 -0.9312 +vn 0.0004 0.3645 -0.9312 +vn -0.9995 -0.0132 0.0285 +vn -1.0000 0.0003 0.0000 +vn 0.0006 -0.3654 0.9309 +vn 0.0012 -0.3654 0.9308 +vn 0.9996 0.0104 -0.0266 +vn 1.0000 0.0021 0.0000 +vn -1.0000 0.0022 0.0000 +vn -1.0000 0.0021 0.0000 +vn -0.9992 -0.0409 0.0035 +vn -0.9998 -0.0203 0.0069 +vn 0.9991 0.0409 -0.0067 +vn 0.9998 0.0203 -0.0033 +vn -0.9994 0.0338 -0.0027 +vn -0.9998 0.0168 -0.0055 +vn 0.9994 -0.0338 0.0055 +vn 0.9999 -0.0168 0.0027 +vn -0.0034 1.0000 -0.0002 +vn -0.0017 1.0000 0.0002 +vn 0.0028 1.0000 0.0011 +vn 0.0014 1.0000 0.0008 +vn 0.5022 0.5970 -0.6256 +vn 0.2157 0.5968 -0.7728 +vn 0.2086 0.6105 -0.7641 +vn 0.4176 0.6423 -0.6427 +vn 0.4168 -0.7123 -0.5647 +vn 0.4167 -0.7124 -0.5647 +vn 0.9219 -0.3683 -0.1205 +vn -0.8934 -0.1992 -0.4027 +vn -0.9122 -0.1648 -0.3751 +vn -0.7208 -0.4106 -0.5584 +vn -0.4168 0.7123 0.5647 +vn -0.1686 0.7402 0.6509 +vn 0.8908 0.2035 0.4062 +vn 0.8697 0.2373 0.4328 +vn 0.6827 0.4439 0.5803 +vn -0.0601 0.4701 -0.8806 +vn -0.0140 0.5449 -0.8384 +vn -0.3263 -0.6499 -0.6864 +vn -0.6359 0.6347 0.4391 +vn 0.1868 0.6508 -0.7359 +vn 0.3742 0.6400 -0.6711 +vn -0.9823 0.0681 -0.1744 +vn 0.9770 -0.0274 0.2114 +vn 0.0330 0.5630 -0.8258 +vn 0.3100 0.9397 0.1445 +vn 0.3099 0.9397 0.1446 +vn 0.3100 0.9397 0.1446 +vn -0.3100 -0.9397 -0.1446 +vn -0.3101 -0.9397 -0.1446 +vn -0.3099 -0.9397 -0.1446 +vn 0.8516 -0.3420 0.3972 +vn 0.8516 -0.3421 0.3972 +vn 0.4225 0.0000 -0.9063 +vn 0.4226 0.0000 -0.9063 +vn -0.8517 0.3420 -0.3971 +vn -0.4226 -0.0000 0.9063 +vn -0.4226 0.0000 0.9063 +vn 0.8484 -0.3516 0.3958 +vn 0.8500 -0.3468 0.3964 +vn 0.8501 -0.3468 0.3964 +vn 0.4173 -0.0156 -0.9086 +vn 0.4174 -0.0156 -0.9086 +vn -0.8548 0.3324 -0.3985 +vn -0.8532 0.3372 -0.3979 +vn -0.4278 -0.0156 0.9037 +vn -0.4277 -0.0157 0.9038 +vn 0.4226 -0.0000 -0.9063 +vn 0.4227 -0.0000 -0.9063 +vn -0.3100 -0.9397 -0.1445 +vn 0.8516 -0.3422 0.3971 +vn 0.3099 0.9397 0.1445 +vn -0.8517 0.3419 -0.3972 +vn 0.8517 -0.3419 0.3971 +vn 0.8517 -0.3420 0.3971 +vn -0.8517 0.3419 -0.3971 +vn 0.0075 1.0000 0.0042 +vn 0.0078 1.0000 0.0044 +vn 0.0017 1.0000 0.0008 +vn 0.0013 1.0000 0.0006 +vn -0.9063 -0.0000 -0.4226 +vn -0.4540 0.0098 0.8909 +vn -0.4621 0.0168 0.8867 +vn -0.4506 0.0069 0.8927 +vn -0.4425 0.0000 0.8968 +vn 0.9063 0.0001 0.4226 +vn 0.9063 0.0000 0.4226 +vn 0.3839 0.0084 -0.9233 +vn 0.3738 0.0000 -0.9275 +vn 0.3882 0.0119 -0.9215 +vn 0.3983 0.0203 -0.9170 +vn -0.9063 -0.0000 -0.4227 +vn -0.9063 0.0000 -0.4226 +vn -0.4424 0.0104 0.8968 +vn 0.8433 -0.3656 0.3938 +vn 0.8432 -0.3656 0.3943 +vn 0.4424 -0.0086 -0.8968 +vn 0.4226 -0.0017 -0.9063 +vn -0.8436 0.3654 -0.3934 +vn -0.8456 0.3649 -0.3897 +vn -0.8440 0.3645 -0.3936 +vn -0.8438 0.3645 -0.3939 +vn -0.3966 -0.0132 0.9179 +vn -0.4226 0.0003 0.9063 +vn 0.8439 -0.3654 0.3928 +vn 0.8442 -0.3654 0.3922 +vn 0.3983 0.0104 -0.9172 +vn 0.4226 0.0021 -0.9063 +vn 0.9063 -0.0000 0.4226 +vn -0.4226 0.0022 0.9063 +vn -0.4226 0.0021 0.9063 +vn -0.4191 -0.0409 0.9070 +vn -0.4163 -0.0204 0.9090 +vn 0.4162 0.0410 -0.9083 +vn 0.4195 0.0203 -0.9075 +vn -0.4248 0.0338 0.9046 +vn -0.4275 0.0168 0.9039 +vn 0.4273 -0.0338 -0.9035 +vn 0.4250 -0.0168 -0.9050 +vn -0.0016 1.0000 0.0030 +vn -0.0005 1.0000 0.0016 +vn 0.0022 1.0000 -0.0021 +vn 0.0013 1.0000 -0.0009 +vn -0.3548 0.5970 -0.7195 +vn -0.6093 0.5968 -0.5221 +vn -0.6043 0.6105 -0.5120 +vn -0.4060 0.6423 -0.6501 +vn -0.3356 -0.7124 -0.6163 +vn -0.3356 -0.7124 -0.6164 +vn 0.2803 -0.3682 -0.8865 +vn -0.7425 -0.1992 0.6395 +vn -0.7255 -0.1648 0.6682 +vn -0.8106 -0.4107 0.4174 +vn 0.3355 0.7124 0.6163 +vn 0.3356 0.7124 0.6163 +vn 0.5185 0.7403 0.4278 +vn 0.7449 0.2033 -0.6355 +vn 0.7600 0.2371 -0.6051 +vn 0.8145 0.4439 -0.3735 +vn -0.8235 0.4701 -0.3177 +vn -0.7658 0.5449 -0.3416 +vn -0.7599 -0.6500 0.0056 +vn 0.1292 0.6347 0.7619 +vn -0.5880 0.6508 -0.4803 +vn -0.4501 0.6400 -0.6228 +vn -0.5732 0.0681 0.8166 +vn 0.6044 -0.0274 -0.7962 +vn -0.7345 0.5630 -0.3789 +vn -0.8516 0.3420 -0.3971 +vn -0.8516 0.3421 -0.3972 +vn -0.8516 0.3420 -0.3972 +vn 0.8484 -0.3516 0.3957 +vn 0.8500 -0.3469 0.3964 +vn -0.8547 0.3324 -0.3987 +vn -0.8532 0.3373 -0.3979 +vn -0.4277 -0.0156 0.9038 +vn 0.4226 0.0001 -0.9063 +vn -0.8516 0.3421 -0.3971 +vn 0.2620 0.9397 -0.2199 +vn -0.2620 -0.9397 0.2198 +vn 0.7198 -0.3420 -0.6040 +vn 0.7198 -0.3421 -0.6040 +vn -0.6428 -0.0000 -0.7660 +vn -0.6428 -0.0000 -0.7661 +vn -0.7198 0.3420 0.6040 +vn -0.7199 0.3420 0.6040 +vn 0.6428 -0.0000 0.7660 +vn 0.6428 0.0000 0.7660 +vn 0.6428 0.0000 0.7661 +vn 0.7172 -0.3516 -0.6017 +vn 0.7185 -0.3468 -0.6029 +vn -0.6470 -0.0157 -0.7623 +vn -0.6472 -0.0156 -0.7622 +vn -0.7225 0.3324 0.6062 +vn -0.7212 0.3372 0.6051 +vn 0.6382 -0.0156 0.7697 +vn 0.6384 -0.0157 0.7696 +vn -0.6428 0.0001 -0.7660 +vn -0.6429 0.0002 -0.7660 +vn -0.6428 0.0000 -0.7660 +vn -0.6428 -0.0001 -0.7660 +vn 0.6429 0.0001 0.7660 +vn 0.6427 -0.0000 0.7661 +vn 0.6427 -0.0001 0.7661 +vn -0.2621 -0.9397 0.2199 +vn 0.7199 -0.3419 -0.6040 +vn 0.2620 0.9397 -0.2198 +vn -0.7198 0.3421 0.6040 +vn -0.7199 0.3419 0.6041 +vn -0.2620 -0.9397 0.2199 +vn 0.0069 1.0000 -0.0050 +vn 0.0073 1.0000 -0.0052 +vn 0.0015 1.0000 -0.0012 +vn 0.0011 1.0000 -0.0009 +vn -0.7660 0.0000 0.6428 +vn 0.6156 0.0099 0.7880 +vn 0.6083 0.0169 0.7935 +vn 0.6187 0.0070 0.7856 +vn 0.6258 0.0000 0.7800 +vn 0.7660 0.0001 -0.6428 +vn 0.7660 -0.0000 -0.6428 +vn -0.6746 0.0084 -0.7382 +vn -0.6827 -0.0000 -0.7307 +vn -0.6711 0.0119 -0.7412 +vn -0.6628 0.0203 -0.7485 +vn 0.6258 0.0104 0.7799 +vn 0.7134 -0.3656 -0.5979 +vn 0.7137 -0.3656 -0.5975 +vn -0.6257 -0.0086 -0.7800 +vn -0.6428 -0.0018 -0.7660 +vn -0.7130 0.3654 0.5984 +vn -0.7105 0.3649 0.6017 +vn -0.7133 0.3645 0.5986 +vn -0.7136 0.3645 0.5983 +vn 0.6644 -0.0132 0.7473 +vn 0.6428 0.0003 0.7661 +vn 0.7127 -0.3654 -0.5988 +vn 0.7123 -0.3654 -0.5993 +vn -0.6629 0.0104 -0.7486 +vn -0.6427 0.0021 -0.7661 +vn -0.6427 -0.0000 -0.7661 +vn 0.6428 0.0022 0.7660 +vn 0.6428 0.0021 0.7660 +vn 0.6449 -0.0409 0.7631 +vn 0.6479 -0.0203 0.7615 +vn -0.6473 0.0409 -0.7611 +vn -0.6452 0.0203 -0.7638 +vn 0.6403 0.0338 0.7673 +vn 0.6385 0.0169 0.7694 +vn -0.6382 -0.0338 -0.7691 +vn -0.6406 -0.0167 -0.7677 +vn 0.0021 1.0000 0.0027 +vn 0.0012 1.0000 0.0012 +vn -0.0009 1.0000 -0.0029 +vn -0.0003 1.0000 -0.0016 +vn 0.7660 0.0000 -0.6428 +vn 0.7661 0.0000 -0.6428 +vn 0.7661 -0.0000 -0.6428 +vn -0.8020 0.5970 0.0175 +vn -0.7306 0.5969 0.3315 +vn -0.7194 0.6105 0.3313 +vn -0.7608 0.6423 0.0932 +vn -0.7003 -0.7125 0.0436 +vn -0.7003 -0.7125 0.0437 +vn -0.6849 -0.3683 -0.6288 +vn 0.2658 -0.1993 0.9432 +vn 0.2991 -0.1648 0.9399 +vn 0.0356 -0.4106 0.9111 +vn 0.7005 0.7123 -0.0437 +vn 0.6070 0.7402 -0.2892 +vn -0.2614 0.2035 -0.9435 +vn -0.2275 0.2373 -0.9444 +vn 0.0057 0.4440 -0.8960 +vn -0.6359 0.4701 0.6121 +vn -0.6332 0.5449 0.5497 +vn -0.3161 -0.6499 0.6912 +vn 0.7451 0.6347 0.2049 +vn -0.6838 0.6508 0.3300 +vn -0.7547 0.6400 0.1447 +vn 0.4978 0.0681 0.8646 +vn -0.4661 -0.0274 -0.8843 +vn -0.6538 0.5630 0.5055 +vn 0.7198 -0.3419 -0.6041 +vn 0.6427 0.0000 0.7661 +vn 0.7185 -0.3467 -0.6029 +vn -0.6471 -0.0156 -0.7623 +vn -0.7211 0.3373 0.6051 +vn 0.6383 -0.0156 0.7696 +vn -0.6428 0.0001 -0.7661 +vn -0.6428 0.0000 -0.7661 +vn -0.6428 0.0002 -0.7660 +vn 0.6428 -0.0000 0.7661 +vn 0.7199 -0.3420 -0.6040 +# 2554 vertex normals + +vt 0.6655 0.3799 0.0000 +vt 0.6655 0.2980 0.0000 +vt 0.6061 0.2980 0.0000 +vt 0.6061 0.4262 0.0000 +vt 0.3051 0.5851 0.0000 +vt 0.3051 0.5008 0.0000 +vt 0.1303 0.5008 0.0000 +vt 0.1303 0.5851 0.0000 +vt 0.0138 0.6936 0.0000 +vt 0.0138 0.6029 0.0000 +vt 0.2175 0.6029 0.0000 +vt 0.2175 0.6936 0.0000 +vt 0.5468 0.3799 0.0000 +vt 0.5468 0.2980 0.0000 +vt 0.3901 0.2905 0.0000 +vt 0.3901 0.4260 0.0000 +vt 0.3301 0.3771 0.0000 +vt 0.3301 0.2905 0.0000 +vt 0.7661 0.5332 0.0000 +vt 0.7866 0.5343 0.0000 +vt 0.7868 0.5807 0.0000 +vt 0.7665 0.5956 0.0000 +vt 0.8286 0.5719 0.0000 +vt 0.8412 0.5719 0.0000 +vt 0.8412 0.5898 0.0000 +vt 0.8286 0.5898 0.0000 +vt 0.8477 0.4969 0.0000 +vt 0.8540 0.4969 0.0000 +vt 0.8540 0.5534 0.0000 +vt 0.8477 0.5534 0.0000 +vt 0.8172 0.5898 0.0000 +vt 0.8172 0.5719 0.0000 +vt 0.7968 0.6174 0.0000 +vt 0.8003 0.6175 0.0000 +vt 0.8000 0.6420 0.0000 +vt 0.7964 0.6420 0.0000 +vt 0.8288 0.6193 0.0000 +vt 0.8388 0.6193 0.0000 +vt 0.8371 0.6353 0.0000 +vt 0.7885 0.5925 0.0000 +vt 0.8003 0.5971 0.0000 +vt 0.7661 0.6208 0.0000 +vt 0.7661 0.6088 0.0000 +vt 0.8388 0.7121 0.0000 +vt 0.8288 0.7121 0.0000 +vt 0.8378 0.6962 0.0000 +vt 0.8254 0.6657 0.0000 +vt 0.8353 0.6657 0.0000 +vt 0.7460 0.5809 0.0000 +vt 0.7457 0.5350 0.0000 +vt 0.8540 0.6098 0.0000 +vt 0.8477 0.6098 0.0000 +vt 0.7996 0.6666 0.0000 +vt 0.7960 0.6666 0.0000 +vt 0.7319 0.5971 0.0000 +vt 0.7436 0.5925 0.0000 +vt 0.8580 0.5104 0.0000 +vt 0.8580 0.4256 0.0000 +vt 0.8636 0.4256 0.0000 +vt 0.8636 0.5104 0.0000 +vt 0.8636 0.5566 0.0000 +vt 0.8580 0.5566 0.0000 +vt 0.8636 0.6027 0.0000 +vt 0.8580 0.6027 0.0000 +vt 0.8636 0.6868 0.0000 +vt 0.8580 0.6868 0.0000 +vt 0.8180 0.7079 0.0000 +vt 0.8146 0.7079 0.0000 +vt 0.8139 0.6724 0.0000 +vt 0.8173 0.6724 0.0000 +vt 0.8132 0.6370 0.0000 +vt 0.8166 0.6369 0.0000 +vt 0.7319 0.5428 0.0000 +vt 0.7436 0.5420 0.0000 +vt 0.8540 0.6835 0.0000 +vt 0.8477 0.6835 0.0000 +vt 0.8477 0.4232 0.0000 +vt 0.8540 0.4232 0.0000 +vt 0.7885 0.5415 0.0000 +vt 0.8003 0.5428 0.0000 +vt 0.8078 0.6185 0.0000 +vt 0.8129 0.6184 0.0000 +vt 0.8082 0.6371 0.0000 +vt 0.8089 0.6725 0.0000 +vt 0.8096 0.7080 0.0000 +vt 0.8150 0.7265 0.0000 +vt 0.8100 0.7266 0.0000 +vt 0.7928 0.6174 0.0000 +vt 0.7925 0.6420 0.0000 +vt 0.7921 0.6665 0.0000 +vt 0.8173 0.6091 0.0000 +vt 0.8174 0.6183 0.0000 +vt 0.8127 0.6092 0.0000 +vt 0.8076 0.6093 0.0000 +vt 0.8388 0.6115 0.0000 +vt 0.8288 0.6115 0.0000 +vt 0.7921 0.6707 0.0000 +vt 0.7960 0.6707 0.0000 +vt 0.7996 0.6707 0.0000 +vt 0.8004 0.6133 0.0000 +vt 0.7968 0.6133 0.0000 +vt 0.7929 0.6133 0.0000 +vt 0.8288 0.7200 0.0000 +vt 0.8388 0.7200 0.0000 +vt 0.8101 0.7357 0.0000 +vt 0.8152 0.7356 0.0000 +vt 0.8196 0.7264 0.0000 +vt 0.8198 0.7356 0.0000 +vt 0.1047 0.0697 0.0000 +vt 0.1047 0.0688 0.0000 +vt 0.2162 0.0689 0.0000 +vt 0.2162 0.0698 0.0000 +vt 0.1047 0.0655 0.0000 +vt 0.2162 0.0656 0.0000 +vt 0.1066 0.0572 0.0000 +vt 0.1066 0.0557 0.0000 +vt 0.2128 0.0558 0.0000 +vt 0.2128 0.0573 0.0000 +vt 0.1066 0.0500 0.0000 +vt 0.2128 0.0501 0.0000 +vt 0.2904 0.8785 0.0000 +vt 0.2914 0.9922 0.0000 +vt 0.2039 0.9913 0.0000 +vt 0.1986 0.8824 0.0000 +vt 0.2030 0.7411 0.0000 +vt 0.2963 0.7363 0.0000 +vt 0.2828 0.8546 0.0000 +vt 0.1939 0.8533 0.0000 +vt 0.5048 0.2825 0.0000 +vt 0.4197 0.2818 0.0000 +vt 0.4202 0.2737 0.0000 +vt 0.5057 0.2744 0.0000 +vt 0.7719 0.6692 0.0000 +vt 0.7719 0.6558 0.0000 +vt 0.6326 0.8027 0.0000 +vt 0.6326 0.8161 0.0000 +vt 0.4932 0.6692 0.0000 +vt 0.4932 0.6558 0.0000 +vt 0.8611 0.9882 0.0000 +vt 0.8258 0.9875 0.0000 +vt 0.8274 0.9418 0.0000 +vt 0.8643 0.9445 0.0000 +vt 0.1059 0.8750 0.0000 +vt 0.1176 0.9905 0.0000 +vt 0.0318 0.9943 0.0000 +vt 0.0116 0.8630 0.0000 +vt 0.3785 0.9940 0.0000 +vt 0.3838 0.8670 0.0000 +vt 0.1087 0.7337 0.0000 +vt 0.1063 0.8523 0.0000 +vt 0.0191 0.8558 0.0000 +vt 0.0127 0.7217 0.0000 +vt 0.3712 0.8569 0.0000 +vt 0.3909 0.7233 0.0000 +vt 0.6752 0.2842 0.0000 +vt 0.5900 0.2833 0.0000 +vt 0.5912 0.2752 0.0000 +vt 0.6767 0.2761 0.0000 +vt 0.3347 0.2731 0.0000 +vt 0.3345 0.2812 0.0000 +vt 0.5462 0.8911 0.0000 +vt 0.5462 0.8749 0.0000 +vt 0.3921 0.8749 0.0000 +vt 0.3921 0.8911 0.0000 +vt 0.3908 0.9002 0.0000 +vt 0.3908 0.9171 0.0000 +vt 0.5591 0.9171 0.0000 +vt 0.5591 0.9002 0.0000 +vt 0.6935 0.8698 0.0000 +vt 0.7024 0.8236 0.0000 +vt 0.7627 0.8394 0.0000 +vt 0.7620 0.8900 0.0000 +vt 0.8964 0.9891 0.0000 +vt 0.9012 0.9426 0.0000 +vt 0.7906 0.9872 0.0000 +vt 0.7900 0.9361 0.0000 +vt 0.8240 0.8246 0.0000 +vt 0.8310 0.8710 0.0000 +vt 0.8071 0.8858 0.0000 +vt 0.8403 0.8968 0.0000 +vt 0.7616 0.2643 0.0000 +vt 0.8091 0.2643 0.0000 +vt 0.8091 0.2168 0.0000 +vt 0.7616 0.2168 0.0000 +vt 0.4610 0.0664 0.0000 +vt 0.4159 0.0664 0.0000 +vt 0.4291 0.0051 0.0000 +vt 0.4700 0.0051 0.0000 +vt 0.5121 0.0630 0.0000 +vt 0.5104 0.0055 0.0000 +vt 0.4783 0.0055 0.0000 +vt 0.4765 0.0630 0.0000 +vt 0.4354 0.1270 0.0000 +vt 0.3819 0.1270 0.0000 +vt 0.4733 0.1197 0.0000 +vt 0.5153 0.1197 0.0000 +vt 0.1088 0.0839 0.0000 +vt 0.1088 0.0815 0.0000 +vt 0.1654 0.0805 0.0000 +vt 0.1654 0.0829 0.0000 +vt 0.1086 0.0727 0.0000 +vt 0.1652 0.0718 0.0000 +vt 0.9889 0.9266 0.0000 +vt 0.9971 0.9266 0.0000 +vt 0.9971 0.9742 0.0000 +vt 0.9889 0.9743 0.0000 +vt 0.9938 0.9809 0.0000 +vt 0.9658 0.9805 0.0000 +vt 0.9614 0.9740 0.0000 +vt 0.9614 0.9269 0.0000 +vt 0.9658 0.9203 0.0000 +vt 0.9938 0.9200 0.0000 +vt 0.9612 0.9824 0.0000 +vt 0.9570 0.9747 0.0000 +vt 0.9570 0.9261 0.0000 +vt 0.9612 0.9185 0.0000 +vt 0.9169 0.9742 0.0000 +vt 0.9169 0.9266 0.0000 +vt 0.9251 0.9266 0.0000 +vt 0.9251 0.9743 0.0000 +vt 0.9482 0.9805 0.0000 +vt 0.9202 0.9809 0.0000 +vt 0.9526 0.9740 0.0000 +vt 0.9526 0.9269 0.0000 +vt 0.9482 0.9203 0.0000 +vt 0.9202 0.9200 0.0000 +vt 0.9528 0.9824 0.0000 +vt 0.9528 0.9185 0.0000 +vt 0.9974 0.8603 0.0000 +vt 0.9974 0.9085 0.0000 +vt 0.9891 0.9085 0.0000 +vt 0.9891 0.8603 0.0000 +vt 0.9610 0.9085 0.0000 +vt 0.9611 0.8602 0.0000 +vt 0.9661 0.9151 0.0000 +vt 0.9941 0.9151 0.0000 +vt 0.9563 0.9083 0.0000 +vt 0.9563 0.8602 0.0000 +vt 0.9611 0.9169 0.0000 +vt 0.9563 0.9165 0.0000 +vt 0.9235 0.9085 0.0000 +vt 0.9152 0.9085 0.0000 +vt 0.9151 0.8603 0.0000 +vt 0.9234 0.8603 0.0000 +vt 0.9515 0.9085 0.0000 +vt 0.9514 0.8602 0.0000 +vt 0.9464 0.9151 0.0000 +vt 0.9184 0.9151 0.0000 +vt 0.9514 0.9169 0.0000 +vt 0.4631 0.5582 0.0000 +vt 0.4800 0.5614 0.0000 +vt 0.4793 0.5907 0.0000 +vt 0.4510 0.5875 0.0000 +vt 0.4489 0.5481 0.0000 +vt 0.4255 0.5698 0.0000 +vt 0.4399 0.5332 0.0000 +vt 0.4097 0.5428 0.0000 +vt 0.4381 0.5163 0.0000 +vt 0.4065 0.5108 0.0000 +vt 0.5197 0.5330 0.0000 +vt 0.5215 0.5160 0.0000 +vt 0.5531 0.5106 0.0000 +vt 0.5499 0.5426 0.0000 +vt 0.5108 0.5479 0.0000 +vt 0.5341 0.5695 0.0000 +vt 0.4968 0.5578 0.0000 +vt 0.5101 0.5840 0.0000 +vt 0.4797 0.5195 0.0000 +vt 0.4798 0.5195 0.0000 +vt 0.4798 0.6016 0.0000 +vt 0.4471 0.5975 0.0000 +vt 0.4176 0.5771 0.0000 +vt 0.3996 0.5464 0.0000 +vt 0.3950 0.5125 0.0000 +vt 0.5646 0.5123 0.0000 +vt 0.5600 0.5463 0.0000 +vt 0.5417 0.5769 0.0000 +vt 0.5143 0.5942 0.0000 +vt 0.6596 0.4838 0.0000 +vt 0.6986 0.4835 0.0000 +vt 0.6987 0.4996 0.0000 +vt 0.6597 0.4999 0.0000 +vt 0.6290 0.4840 0.0000 +vt 0.6291 0.5001 0.0000 +vt 0.5951 0.4842 0.0000 +vt 0.5952 0.5003 0.0000 +vt 0.5773 0.4843 0.0000 +vt 0.5774 0.5004 0.0000 +vt 0.6595 0.4677 0.0000 +vt 0.6985 0.4675 0.0000 +vt 0.6289 0.4679 0.0000 +vt 0.5950 0.4681 0.0000 +vt 0.5772 0.4683 0.0000 +vt 0.6594 0.4516 0.0000 +vt 0.6984 0.4514 0.0000 +vt 0.6288 0.4518 0.0000 +vt 0.5949 0.4520 0.0000 +vt 0.5771 0.4522 0.0000 +vt 0.6593 0.4356 0.0000 +vt 0.6983 0.4353 0.0000 +vt 0.6287 0.4357 0.0000 +vt 0.5948 0.4359 0.0000 +vt 0.5770 0.4361 0.0000 +vt 0.7533 0.2332 0.0000 +vt 0.7344 0.2341 0.0000 +vt 0.7338 0.2213 0.0000 +vt 0.7526 0.2204 0.0000 +vt 0.7242 0.0679 0.0000 +vt 0.7193 0.0023 0.0000 +vt 0.7081 0.0023 0.0000 +vt 0.7171 0.0679 0.0000 +vt 0.6996 0.0651 0.0000 +vt 0.6995 0.0019 0.0000 +vt 0.7062 0.0021 0.0000 +vt 0.7038 0.0652 0.0000 +vt 0.7083 0.1335 0.0000 +vt 0.7182 0.1335 0.0000 +vt 0.6996 0.1282 0.0000 +vt 0.6936 0.1280 0.0000 +vt 0.6258 0.5158 0.0000 +vt 0.6259 0.5055 0.0000 +vt 0.6675 0.5090 0.0000 +vt 0.6657 0.5191 0.0000 +vt 0.6254 0.5360 0.0000 +vt 0.6626 0.5388 0.0000 +vt 0.6246 0.5648 0.0000 +vt 0.6595 0.5672 0.0000 +vt 0.6237 0.5837 0.0000 +vt 0.6580 0.5860 0.0000 +vt 0.6232 0.5931 0.0000 +vt 0.6572 0.5954 0.0000 +vt 0.5757 0.5204 0.0000 +vt 0.5735 0.5114 0.0000 +vt 0.5783 0.5382 0.0000 +vt 0.5781 0.5653 0.0000 +vt 0.5757 0.5837 0.0000 +vt 0.5754 0.5931 0.0000 +vt 0.5225 0.4287 0.0000 +vt 0.5243 0.4192 0.0000 +vt 0.5715 0.4315 0.0000 +vt 0.5677 0.4395 0.0000 +vt 0.5189 0.4472 0.0000 +vt 0.5618 0.4553 0.0000 +vt 0.5148 0.4737 0.0000 +vt 0.5574 0.4802 0.0000 +vt 0.5128 0.4913 0.0000 +vt 0.5569 0.4974 0.0000 +vt 0.5118 0.5001 0.0000 +vt 0.5563 0.5061 0.0000 +vt 0.4825 0.4259 0.0000 +vt 0.4830 0.4164 0.0000 +vt 0.4813 0.4444 0.0000 +vt 0.4797 0.4710 0.0000 +vt 0.4786 0.4887 0.0000 +vt 0.4781 0.4974 0.0000 +vt 0.4423 0.4258 0.0000 +vt 0.4414 0.4164 0.0000 +vt 0.4439 0.4443 0.0000 +vt 0.4445 0.4711 0.0000 +vt 0.4441 0.4888 0.0000 +vt 0.4439 0.4975 0.0000 +vt 0.4023 0.4300 0.0000 +vt 0.3989 0.4212 0.0000 +vt 0.4076 0.4469 0.0000 +vt 0.4096 0.4719 0.0000 +vt 0.4094 0.4889 0.0000 +vt 0.4092 0.4976 0.0000 +vt 0.7092 0.5179 0.0000 +vt 0.7051 0.5270 0.0000 +vt 0.6984 0.5447 0.0000 +vt 0.6941 0.5714 0.0000 +vt 0.6924 0.5896 0.0000 +vt 0.6915 0.5989 0.0000 +vt 0.1069 0.0977 0.0000 +vt 0.1069 0.0953 0.0000 +vt 0.2136 0.0953 0.0000 +vt 0.2136 0.0977 0.0000 +vt 0.2145 0.1095 0.0000 +vt 0.2145 0.1119 0.0000 +vt 0.1078 0.1121 0.0000 +vt 0.1077 0.1097 0.0000 +vt 0.1069 0.0862 0.0000 +vt 0.2136 0.0862 0.0000 +vt 0.2144 0.1004 0.0000 +vt 0.1077 0.1007 0.0000 +vt 0.3056 0.3903 0.0000 +vt 0.3056 0.3114 0.0000 +vt 0.3162 0.3114 0.0000 +vt 0.3162 0.3903 0.0000 +vt 0.3056 0.2226 0.0000 +vt 0.3162 0.2226 0.0000 +vt 0.3162 0.4790 0.0000 +vt 0.3056 0.4790 0.0000 +vt 0.4444 0.1484 0.0000 +vt 0.4444 0.2592 0.0000 +vt 0.4324 0.2485 0.0000 +vt 0.4324 0.1484 0.0000 +vt 0.3337 0.2592 0.0000 +vt 0.3457 0.2485 0.0000 +vt 0.3337 0.1484 0.0000 +vt 0.3457 0.1484 0.0000 +vt 0.4664 0.1514 0.0000 +vt 0.4664 0.2622 0.0000 +vt 0.4509 0.2622 0.0000 +vt 0.4509 0.1514 0.0000 +vt 0.3528 0.1503 0.0000 +vt 0.4234 0.1503 0.0000 +vt 0.4234 0.2319 0.0000 +vt 0.3528 0.2319 0.0000 +vt 0.8774 0.7506 0.0000 +vt 0.9152 0.7151 0.0000 +vt 0.9157 0.7625 0.0000 +vt 0.8664 0.7883 0.0000 +vt 0.9124 0.7134 0.0000 +vt 0.8747 0.7491 0.0000 +vt 0.9680 0.7875 0.0000 +vt 0.9651 0.7879 0.0000 +vt 0.9535 0.7502 0.0000 +vt 0.9562 0.7487 0.0000 +vt 0.9157 0.8130 0.0000 +vt 0.9157 0.8098 0.0000 +vt 0.9526 0.8194 0.0000 +vt 0.9524 0.8226 0.0000 +vt 0.8634 0.7880 0.0000 +vt 0.8788 0.8197 0.0000 +vt 0.8757 0.8204 0.0000 +vt 0.9180 0.7134 0.0000 +vt 0.8791 0.8229 0.0000 +vt 0.9558 0.8200 0.0000 +vt 0.9673 0.1980 0.0000 +vt 0.9793 0.2576 0.0000 +vt 0.9947 0.2576 0.0000 +vt 0.9826 0.1980 0.0000 +vt 0.5207 0.1141 0.0000 +vt 0.5207 0.0595 0.0000 +vt 0.5433 0.0595 0.0000 +vt 0.5433 0.1141 0.0000 +vt 0.5433 0.0049 0.0000 +vt 0.5207 0.0049 0.0000 +vt 0.8891 0.2135 0.0000 +vt 0.8891 0.2610 0.0000 +vt 0.8303 0.2610 0.0000 +vt 0.8303 0.2135 0.0000 +vt 0.9673 0.3172 0.0000 +vt 0.9826 0.3172 0.0000 +vt 0.9082 0.6023 0.0000 +vt 0.9082 0.6496 0.0000 +vt 0.9043 0.6496 0.0000 +vt 0.9043 0.6023 0.0000 +vt 0.9136 0.6023 0.0000 +vt 0.9136 0.6496 0.0000 +vt 0.9174 0.6023 0.0000 +vt 0.9174 0.6496 0.0000 +vt 0.9335 0.6713 0.0000 +vt 0.9272 0.6930 0.0000 +vt 0.9135 0.6751 0.0000 +vt 0.9082 0.6526 0.0000 +vt 0.9043 0.6558 0.0000 +vt 0.9136 0.6526 0.0000 +vt 0.9174 0.6558 0.0000 +vt 0.9082 0.6596 0.0000 +vt 0.9041 0.6655 0.0000 +vt 0.9136 0.6596 0.0000 +vt 0.9173 0.6655 0.0000 +vt 0.5834 0.7132 0.0000 +vt 0.5834 0.6102 0.0000 +vt 0.6864 0.6102 0.0000 +vt 0.6864 0.7132 0.0000 +vt 0.0941 0.2745 0.0000 +vt 0.0152 0.2747 0.0000 +vt 0.0095 0.2691 0.0000 +vt 0.0998 0.2688 0.0000 +vt 0.0999 0.0105 0.0000 +vt 0.0096 0.0105 0.0000 +vt 0.1935 0.4614 0.0000 +vt 0.1158 0.4614 0.0000 +vt 0.1108 0.4564 0.0000 +vt 0.1985 0.4564 0.0000 +vt 0.1985 0.2278 0.0000 +vt 0.1108 0.2278 0.0000 +vt 0.2878 0.4646 0.0000 +vt 0.2157 0.4638 0.0000 +vt 0.2105 0.4586 0.0000 +vt 0.2931 0.4594 0.0000 +vt 0.2946 0.2231 0.0000 +vt 0.2121 0.2226 0.0000 +vt 0.0949 0.5244 0.0000 +vt 0.0151 0.5244 0.0000 +vt 0.0100 0.5192 0.0000 +vt 0.1001 0.5192 0.0000 +vt 0.1001 0.2840 0.0000 +vt 0.0100 0.2840 0.0000 +vt 0.9749 0.7086 0.0000 +vt 0.9729 0.7099 0.0000 +vt 0.8589 0.7099 0.0000 +vt 0.8569 0.7084 0.0000 +vt 0.8556 0.7010 0.0000 +vt 0.9762 0.7010 0.0000 +vt 0.9748 0.8312 0.0000 +vt 0.9729 0.8298 0.0000 +vt 0.9848 0.7089 0.0000 +vt 0.9848 0.8308 0.0000 +vt 0.8563 0.8313 0.0000 +vt 0.8589 0.8298 0.0000 +vt 0.9762 0.8387 0.0000 +vt 0.8556 0.8387 0.0000 +vt 0.8469 0.8308 0.0000 +vt 0.8469 0.7089 0.0000 +vt 0.6780 0.9586 0.0000 +vt 0.6780 0.9368 0.0000 +vt 0.4953 0.9368 0.0000 +vt 0.4953 0.9586 0.0000 +vt 0.9867 0.0995 0.0000 +vt 0.9867 0.1918 0.0000 +vt 0.9610 0.1918 0.0000 +vt 0.9562 0.0995 0.0000 +vt 0.9867 0.0071 0.0000 +vt 0.9610 0.0071 0.0000 +vt 0.5832 0.0338 0.0000 +vt 0.5731 0.0233 0.0000 +vt 0.5731 0.0692 0.0000 +vt 0.5832 0.0692 0.0000 +vt 0.5832 0.1046 0.0000 +vt 0.5731 0.1151 0.0000 +vt 0.6189 0.1151 0.0000 +vt 0.6189 0.1046 0.0000 +vt 0.6547 0.1046 0.0000 +vt 0.6648 0.1151 0.0000 +vt 0.6648 0.0692 0.0000 +vt 0.6547 0.0692 0.0000 +vt 0.6547 0.0338 0.0000 +vt 0.6648 0.0233 0.0000 +vt 0.6189 0.0233 0.0000 +vt 0.6189 0.0338 0.0000 +vt 0.5693 0.0201 0.0000 +vt 0.5553 0.0055 0.0000 +vt 0.6190 0.0055 0.0000 +vt 0.6190 0.0201 0.0000 +vt 0.6687 0.0201 0.0000 +vt 0.6828 0.0055 0.0000 +vt 0.6828 0.0693 0.0000 +vt 0.6687 0.0693 0.0000 +vt 0.6687 0.1185 0.0000 +vt 0.6828 0.1330 0.0000 +vt 0.6190 0.1330 0.0000 +vt 0.6190 0.1185 0.0000 +vt 0.5693 0.1185 0.0000 +vt 0.5553 0.1330 0.0000 +vt 0.5553 0.0693 0.0000 +vt 0.5693 0.0693 0.0000 +vt 0.4953 0.9908 0.0000 +vt 0.6780 0.9908 0.0000 +vt 0.2515 0.0074 0.0000 +vt 0.4019 0.0074 0.0000 +vt 0.4019 0.0321 0.0000 +vt 0.2515 0.0321 0.0000 +vt 0.0074 0.2768 0.0000 +vt 0.1019 0.2765 0.0000 +vt 0.2086 0.4657 0.0000 +vt 0.2949 0.4666 0.0000 +vt 0.8556 0.7009 0.0000 +vt 0.8569 0.7083 0.0000 +vt 0.8469 0.7088 0.0000 +vt 0.9848 0.7090 0.0000 +vt 0.9749 0.7087 0.0000 +vt 0.9761 0.7011 0.0000 +vt 0.9761 0.8386 0.0000 +vt 0.9748 0.8310 0.0000 +vt 0.9848 0.8307 0.0000 +vt 0.8469 0.8309 0.0000 +vt 0.8563 0.8314 0.0000 +vt 0.8556 0.8388 0.0000 +vt 0.4157 0.0073 0.0000 +vt 0.4157 0.0320 0.0000 +vt 0.2377 0.0073 0.0000 +vt 0.2377 0.0320 0.0000 +vt 0.9695 0.3196 0.0000 +vt 0.9833 0.3194 0.0000 +vt 0.9835 0.3421 0.0000 +vt 0.9697 0.3423 0.0000 +vt 0.9953 0.3194 0.0000 +vt 0.9955 0.3421 0.0000 +vt 0.4158 0.0492 0.0000 +vt 0.4020 0.0493 0.0000 +vt 0.2514 0.0493 0.0000 +vt 0.2376 0.0492 0.0000 +vt 0.9477 0.0973 0.0000 +vt 0.9477 0.0050 0.0000 +vt 0.9220 0.0050 0.0000 +vt 0.9173 0.0973 0.0000 +vt 0.9088 0.0951 0.0000 +vt 0.9088 0.0028 0.0000 +vt 0.8830 0.0028 0.0000 +vt 0.8783 0.0951 0.0000 +vt 0.8830 0.1875 0.0000 +vt 0.9088 0.1875 0.0000 +vt 0.9220 0.1896 0.0000 +vt 0.9477 0.1896 0.0000 +vt 0.8646 0.1042 0.0000 +vt 0.8487 0.1042 0.0000 +vt 0.8449 0.0032 0.0000 +vt 0.8736 0.0032 0.0000 +vt 0.8449 0.2052 0.0000 +vt 0.8736 0.2052 0.0000 +vt 0.7879 0.0971 0.0000 +vt 0.7980 0.0020 0.0000 +vt 0.7675 0.0020 0.0000 +vt 0.7707 0.0971 0.0000 +vt 0.7980 0.1922 0.0000 +vt 0.7675 0.2125 0.0000 +vt 0.7481 0.0989 0.0000 +vt 0.7574 0.0026 0.0000 +vt 0.7278 0.0026 0.0000 +vt 0.7317 0.0989 0.0000 +vt 0.7278 0.2157 0.0000 +vt 0.7574 0.2157 0.0000 +vt 0.8305 0.0992 0.0000 +vt 0.8132 0.0992 0.0000 +vt 0.8078 0.0042 0.0000 +vt 0.8384 0.0042 0.0000 +vt 0.8384 0.1942 0.0000 +vt 0.8078 0.2144 0.0000 +vt 0.1989 0.1865 0.0000 +vt 0.1989 0.1256 0.0000 +vt 0.1548 0.1256 0.0000 +vt 0.1548 0.2209 0.0000 +vt 0.7155 0.4921 0.0000 +vt 0.8089 0.4921 0.0000 +vt 0.8089 0.3683 0.0000 +vt 0.7155 0.3683 0.0000 +vt 0.1107 0.1865 0.0000 +vt 0.1107 0.1256 0.0000 +vt 0.1070 0.0309 0.0000 +vt 0.1070 0.0293 0.0000 +vt 0.2164 0.0298 0.0000 +vt 0.2164 0.0314 0.0000 +vt 0.1070 0.0235 0.0000 +vt 0.2165 0.0240 0.0000 +vt 0.5829 0.8473 0.0000 +vt 0.4785 0.8490 0.0000 +vt 0.4958 0.7292 0.0000 +vt 0.5339 0.7309 0.0000 +vt 0.7603 0.6599 0.0000 +vt 0.7603 0.6484 0.0000 +vt 0.6335 0.7712 0.0000 +vt 0.6335 0.7827 0.0000 +vt 0.5066 0.6599 0.0000 +vt 0.5066 0.6484 0.0000 +vt 0.4059 0.7256 0.0000 +vt 0.3820 0.8592 0.0000 +vt 0.5198 0.6276 0.0000 +vt 0.3962 0.6307 0.0000 +vt 0.3962 0.6182 0.0000 +vt 0.5198 0.6150 0.0000 +vt 0.7003 0.8135 0.0000 +vt 0.7060 0.7674 0.0000 +vt 0.7662 0.7798 0.0000 +vt 0.7681 0.8297 0.0000 +vt 0.8258 0.7622 0.0000 +vt 0.8343 0.8077 0.0000 +vt 0.7218 0.3550 0.0000 +vt 0.7654 0.3550 0.0000 +vt 0.7654 0.3114 0.0000 +vt 0.7218 0.3114 0.0000 +vt 0.9328 0.2260 0.0000 +vt 0.9566 0.2281 0.0000 +vt 0.9524 0.1954 0.0000 +vt 0.9308 0.1935 0.0000 +vt 0.9261 0.2345 0.0000 +vt 0.9251 0.1942 0.0000 +vt 0.9052 0.1942 0.0000 +vt 0.9041 0.2345 0.0000 +vt 0.9435 0.2588 0.0000 +vt 0.9717 0.2613 0.0000 +vt 0.9021 0.2743 0.0000 +vt 0.9281 0.2743 0.0000 +vt 0.2118 0.0436 0.0000 +vt 0.2118 0.0463 0.0000 +vt 0.1061 0.0468 0.0000 +vt 0.1060 0.0440 0.0000 +vt 0.2118 0.0334 0.0000 +vt 0.1060 0.0339 0.0000 +vt 0.1074 0.0204 0.0000 +vt 0.1074 0.0178 0.0000 +vt 0.2135 0.0178 0.0000 +vt 0.2135 0.0204 0.0000 +vt 0.1074 0.0081 0.0000 +vt 0.2135 0.0081 0.0000 +vt 0.8539 0.8870 0.0000 +vt 0.8785 0.8648 0.0000 +vt 0.8783 0.8952 0.0000 +vt 0.8464 0.9111 0.0000 +vt 0.8768 0.8636 0.0000 +vt 0.8522 0.8861 0.0000 +vt 0.9120 0.9113 0.0000 +vt 0.9101 0.9115 0.0000 +vt 0.9029 0.8873 0.0000 +vt 0.9046 0.8864 0.0000 +vt 0.8782 0.9276 0.0000 +vt 0.8782 0.9255 0.0000 +vt 0.9019 0.9317 0.0000 +vt 0.9017 0.9337 0.0000 +vt 0.8445 0.9109 0.0000 +vt 0.8543 0.9314 0.0000 +vt 0.8522 0.9318 0.0000 +vt 0.8803 0.8636 0.0000 +vt 0.8545 0.9334 0.0000 +vt 0.9040 0.9321 0.0000 +vt 17.5506 -12.4380 0.0000 +vt 18.4998 -11.9652 0.0000 +vt 19.1406 -12.0361 0.0000 +vt 17.5506 -12.9652 0.0000 +vt 20.2520 -12.9121 0.0000 +vt 19.9949 -11.2325 0.0000 +vt 19.4018 -11.2480 0.0000 +vt 19.4583 -12.9329 0.0000 +vt 18.3953 -11.6402 0.0000 +vt 18.9312 -11.6356 0.0000 +vt 18.7947 -9.8062 0.0000 +vt 18.3941 -9.8096 0.0000 +vt 0.8020 0.3054 0.0000 +vt 0.7651 0.3054 0.0000 +vt 0.7651 0.2802 0.0000 +vt 0.8020 0.2802 0.0000 +vt 0.6098 0.1948 0.0000 +vt 0.6195 0.1948 0.0000 +vt 0.6204 0.1386 0.0000 +vt 0.6079 0.1386 0.0000 +vt 0.6073 0.2476 0.0000 +vt 0.6211 0.2476 0.0000 +vt 0.6498 0.1976 0.0000 +vt 0.6595 0.1976 0.0000 +vt 0.6584 0.1393 0.0000 +vt 0.6457 0.1393 0.0000 +vt 0.6457 0.2525 0.0000 +vt 0.6584 0.2525 0.0000 +vt 0.6594 0.1976 0.0000 +vt 0.6497 0.1976 0.0000 +vt 0.6456 0.1393 0.0000 +vt 0.6583 0.1393 0.0000 +vt 0.6583 0.2525 0.0000 +vt 0.6456 0.2525 0.0000 +vt 0.8100 0.3534 0.0000 +vt 0.7732 0.3534 0.0000 +vt 0.7732 0.3159 0.0000 +vt 0.8100 0.3159 0.0000 +vt 0.5880 0.1906 0.0000 +vt 0.5942 0.1906 0.0000 +vt 0.6003 0.1394 0.0000 +vt 0.5925 0.1394 0.0000 +vt 0.5925 0.2451 0.0000 +vt 0.6003 0.2451 0.0000 +vt 0.6658 0.1976 0.0000 +vt 0.6754 0.1976 0.0000 +vt 0.6772 0.1393 0.0000 +vt 0.6645 0.1393 0.0000 +vt 0.6615 0.2598 0.0000 +vt 0.6742 0.2598 0.0000 +vt 0.6657 0.1976 0.0000 +vt 0.6644 0.1393 0.0000 +vt 0.6614 0.2598 0.0000 +vt 0.5376 0.2024 0.0000 +vt 0.5295 0.2030 0.0000 +vt 0.5169 0.1370 0.0000 +vt 0.5275 0.1362 0.0000 +vt 0.5326 0.2696 0.0000 +vt 0.5220 0.2704 0.0000 +vt 0.7032 0.2002 0.0000 +vt 0.7152 0.1997 0.0000 +vt 0.7202 0.1395 0.0000 +vt 0.7045 0.1401 0.0000 +vt 0.7085 0.2605 0.0000 +vt 0.7243 0.2599 0.0000 +vt 0.7152 0.1998 0.0000 +vt 0.7202 0.1396 0.0000 +vt 0.7243 0.2600 0.0000 +vt 0.7085 0.2606 0.0000 +vt 0.4828 0.1920 0.0000 +vt 0.4914 0.1920 0.0000 +vt 0.4856 0.1299 0.0000 +vt 0.4743 0.1298 0.0000 +vt 0.4700 0.2539 0.0000 +vt 0.4813 0.2540 0.0000 +vt 0.5126 0.1996 0.0000 +vt 0.4998 0.1992 0.0000 +vt 0.4939 0.1366 0.0000 +vt 0.5109 0.1372 0.0000 +vt 0.5065 0.2620 0.0000 +vt 0.4896 0.2615 0.0000 +vt 0.4914 0.1925 0.0000 +vt 0.4828 0.1924 0.0000 +vt 0.4742 0.1304 0.0000 +vt 0.4856 0.1305 0.0000 +vt 0.4813 0.2545 0.0000 +vt 0.4700 0.2545 0.0000 +vt 0.5126 0.1997 0.0000 +vt 0.4939 0.1367 0.0000 +vt 0.5065 0.2621 0.0000 +vt 0.8538 0.3510 0.0000 +vt 0.8169 0.3510 0.0000 +vt 0.8169 0.3091 0.0000 +vt 0.8538 0.3091 0.0000 +vt 0.5695 0.1957 0.0000 +vt 0.5780 0.1957 0.0000 +vt 0.5843 0.1365 0.0000 +vt 0.5731 0.1365 0.0000 +vt 0.5731 0.2630 0.0000 +vt 0.5843 0.2630 0.0000 +vt 0.6833 0.1976 0.0000 +vt 0.6930 0.1976 0.0000 +vt 0.6945 0.1393 0.0000 +vt 0.6818 0.1393 0.0000 +vt 0.6818 0.2640 0.0000 +vt 0.6945 0.2640 0.0000 +vt 0.6929 0.1976 0.0000 +vt 0.6817 0.1393 0.0000 +vt 0.6944 0.1393 0.0000 +vt 0.6944 0.2640 0.0000 +vt 0.6817 0.2640 0.0000 +vt 0.8112 0.3025 0.0000 +vt 0.8104 0.2685 0.0000 +vt 0.8495 0.2679 0.0000 +vt 0.8503 0.3018 0.0000 +vt 0.6334 0.2065 0.0000 +vt 0.6409 0.2065 0.0000 +vt 0.6363 0.1400 0.0000 +vt 0.6264 0.1400 0.0000 +vt 0.6264 0.2658 0.0000 +vt 0.6363 0.2658 0.0000 +vt 0.6458 0.1393 0.0000 +vt 0.6458 0.2525 0.0000 +vt 0.8599 0.3147 0.0000 +vt 0.8591 0.2734 0.0000 +vt 0.8876 0.2730 0.0000 +vt 0.8884 0.3143 0.0000 +vt 0.5505 0.2039 0.0000 +vt 0.5603 0.2039 0.0000 +vt 0.5620 0.1345 0.0000 +vt 0.5490 0.1345 0.0000 +vt 0.5444 0.2732 0.0000 +vt 0.5665 0.2732 0.0000 +vt 0.6499 0.1976 0.0000 +vt 0.6585 0.1393 0.0000 +vt 0.9218 0.6342 0.0000 +vt 0.9286 0.6561 0.0000 +vt 0.9576 0.6342 0.0000 +vt 0.4434 0.7103 0.0000 +vt 0.4434 0.7035 0.0000 +vt 0.4750 0.7035 0.0000 +vt 0.4750 0.7103 0.0000 +vt 0.1709 0.7103 0.0000 +vt 0.1709 0.7035 0.0000 +vt 0.2008 0.7035 0.0000 +vt 0.2008 0.7103 0.0000 +vt 0.2299 0.7035 0.0000 +vt 0.2299 0.7103 0.0000 +vt 0.2598 0.7035 0.0000 +vt 0.2598 0.7103 0.0000 +vt 0.2914 0.7035 0.0000 +vt 0.2914 0.7103 0.0000 +vt 0.3230 0.7035 0.0000 +vt 0.3230 0.7103 0.0000 +vt 0.3529 0.7035 0.0000 +vt 0.3529 0.7103 0.0000 +vt 0.3819 0.7035 0.0000 +vt 0.3819 0.7103 0.0000 +vt 0.4119 0.7035 0.0000 +vt 0.4119 0.7103 0.0000 +vt 0.9866 0.6124 0.0000 +vt 0.9934 0.6342 0.0000 +vt 0.9866 0.6561 0.0000 +vt 0.9687 0.6696 0.0000 +vt 0.9286 0.6124 0.0000 +vt 0.9687 0.5989 0.0000 +vt 0.9465 0.6696 0.0000 +vt 0.9465 0.5989 0.0000 +vt 0.8958 0.6005 0.0000 +vt 0.8832 0.6005 0.0000 +vt 0.8832 0.6195 0.0000 +vt 0.8958 0.6195 0.0000 +vt 0.8796 0.4709 0.0000 +vt 0.8714 0.4709 0.0000 +vt 0.8714 0.5890 0.0000 +vt 0.8796 0.5890 0.0000 +vt 0.8836 0.4716 0.0000 +vt 0.8950 0.4716 0.0000 +vt 0.8950 0.5947 0.0000 +vt 0.8836 0.5947 0.0000 +vt 0.9506 0.4767 0.0000 +vt 0.9378 0.4727 0.0000 +vt 0.9267 0.4894 0.0000 +vt 0.9467 0.4944 0.0000 +vt 0.9598 0.4779 0.0000 +vt 0.9572 0.4957 0.0000 +vt 0.9742 0.4789 0.0000 +vt 0.9778 0.4971 0.0000 +vt 0.9810 0.4776 0.0000 +vt 0.9884 0.4959 0.0000 +vt 0.9501 0.3524 0.0000 +vt 0.9360 0.3511 0.0000 +vt 0.9285 0.3709 0.0000 +vt 0.9509 0.3719 0.0000 +vt 0.9590 0.3514 0.0000 +vt 0.9623 0.3707 0.0000 +vt 0.9674 0.3502 0.0000 +vt 0.9737 0.3692 0.0000 +vt 0.9744 0.3479 0.0000 +vt 0.9848 0.3662 0.0000 +vt 0.9210 0.5089 0.0000 +vt 0.9255 0.5375 0.0000 +vt 0.9443 0.5347 0.0000 +vt 0.9443 0.5102 0.0000 +vt 0.9532 0.5351 0.0000 +vt 0.9553 0.5111 0.0000 +vt 0.9715 0.5382 0.0000 +vt 0.9781 0.5139 0.0000 +vt 0.9802 0.5424 0.0000 +vt 0.9900 0.5156 0.0000 +vt 0.9267 0.3919 0.0000 +vt 0.9356 0.4208 0.0000 +vt 0.9554 0.4150 0.0000 +vt 0.9520 0.3890 0.0000 +vt 0.9653 0.4142 0.0000 +vt 0.9643 0.3879 0.0000 +vt 0.9754 0.4143 0.0000 +vt 0.9768 0.3871 0.0000 +vt 0.9858 0.4163 0.0000 +vt 0.9899 0.3864 0.0000 +vt 0.9332 0.5471 0.0000 +vt 0.9455 0.5444 0.0000 +vt 0.9529 0.5446 0.0000 +vt 0.9658 0.5468 0.0000 +vt 0.9714 0.5502 0.0000 +vt 0.9446 0.4298 0.0000 +vt 0.9572 0.4254 0.0000 +vt 0.9649 0.4248 0.0000 +vt 0.9724 0.4249 0.0000 +vt 0.9792 0.4268 0.0000 +vt 0.9375 0.5535 0.0000 +vt 0.9465 0.5523 0.0000 +vt 0.9523 0.5525 0.0000 +vt 0.9618 0.5539 0.0000 +vt 0.9662 0.5554 0.0000 +vt 0.9497 0.4362 0.0000 +vt 0.9590 0.4338 0.0000 +vt 0.9648 0.4332 0.0000 +vt 0.9704 0.4331 0.0000 +vt 0.9753 0.4336 0.0000 +vt 0.9371 0.5550 0.0000 +vt 0.9463 0.5550 0.0000 +vt 0.9522 0.5551 0.0000 +vt 0.9617 0.5565 0.0000 +vt 0.9663 0.5566 0.0000 +vt 0.9497 0.4381 0.0000 +vt 0.9592 0.4368 0.0000 +vt 0.9651 0.4360 0.0000 +vt 0.9707 0.4357 0.0000 +vt 0.9756 0.4351 0.0000 +vt 0.9328 0.5621 0.0000 +vt 0.9455 0.5618 0.0000 +vt 0.9513 0.5618 0.0000 +vt 0.9635 0.5637 0.0000 +vt 0.9699 0.5637 0.0000 +vt 0.9464 0.4463 0.0000 +vt 0.9601 0.4443 0.0000 +vt 0.9665 0.4434 0.0000 +vt 0.9732 0.4431 0.0000 +vt 0.9801 0.4421 0.0000 +vt 0.9336 0.5747 0.0000 +vt 0.9455 0.5712 0.0000 +vt 0.9507 0.5709 0.0000 +vt 0.9625 0.5735 0.0000 +vt 0.9682 0.5760 0.0000 +vt 0.9488 0.4591 0.0000 +vt 0.9615 0.4542 0.0000 +vt 0.9677 0.4536 0.0000 +vt 0.9741 0.4538 0.0000 +vt 0.9809 0.4549 0.0000 +vt 0.9407 0.5825 0.0000 +vt 0.9470 0.5785 0.0000 +vt 0.9509 0.5781 0.0000 +vt 0.9582 0.5803 0.0000 +vt 0.9609 0.5830 0.0000 +vt 0.9565 0.4665 0.0000 +vt 0.9633 0.4620 0.0000 +vt 0.9676 0.4616 0.0000 +vt 0.9719 0.4622 0.0000 +vt 0.9756 0.4641 0.0000 +vt 0.9509 0.5867 0.0000 +vt 0.9668 0.4710 0.0000 +vt 0.9343 0.4652 0.0000 +vt 0.9352 0.4618 0.0000 +vt 0.9158 0.4614 0.0000 +vt 0.9150 0.4649 0.0000 +vt 0.9353 0.4583 0.0000 +vt 0.9158 0.4579 0.0000 +vt 0.9345 0.4549 0.0000 +vt 0.9153 0.4544 0.0000 +vt 0.8888 0.4581 0.0000 +vt 0.8880 0.4615 0.0000 +vt 0.8886 0.4546 0.0000 +vt 0.8884 0.4511 0.0000 +vt 0.8855 0.4593 0.0000 +vt 0.8853 0.4536 0.0000 +vt 0.8833 0.4566 0.0000 +vt 0.9201 0.5346 0.0000 +vt 0.9201 0.5950 0.0000 +vt 0.9054 0.5950 0.0000 +vt 0.9054 0.5346 0.0000 +vt 0.9061 0.4693 0.0000 +vt 0.9061 0.5278 0.0000 +vt 0.9167 0.5278 0.0000 +vt 0.9167 0.4693 0.0000 +vt 0.4954 0.3295 0.0000 +vt 0.4954 0.3372 0.0000 +vt 0.4998 0.3372 0.0000 +vt 0.4998 0.3295 0.0000 +vt 0.4905 0.3389 0.0000 +vt 0.4905 0.3465 0.0000 +vt 0.5029 0.3466 0.0000 +vt 0.5030 0.3390 0.0000 +vt 0.5409 0.3573 0.0000 +vt 0.5409 0.3495 0.0000 +vt 0.5218 0.3495 0.0000 +vt 0.5218 0.3573 0.0000 +vt 0.5278 0.3857 0.0000 +vt 0.5277 0.3906 0.0000 +vt 0.5086 0.3911 0.0000 +vt 0.5088 0.3863 0.0000 +vt 0.4148 0.3557 0.0000 +vt 0.5182 0.3573 0.0000 +vt 0.5182 0.3495 0.0000 +vt 0.4148 0.3511 0.0000 +vt 0.4012 0.3904 0.0000 +vt 0.5052 0.3864 0.0000 +vt 0.5050 0.3912 0.0000 +vt 0.4011 0.3932 0.0000 +vt 0.5151 0.2984 0.0000 +vt 0.5151 0.3464 0.0000 +vt 0.5066 0.3464 0.0000 +vt 0.5066 0.2984 0.0000 +vt 0.5182 0.3817 0.0000 +vt 0.5218 0.3817 0.0000 +vt 0.5218 0.3250 0.0000 +vt 0.5182 0.3250 0.0000 +vt 0.2714 0.0585 0.0000 +vt 0.2715 0.0626 0.0000 +vt 0.2256 0.0626 0.0000 +vt 0.2257 0.0585 0.0000 +vt 0.3377 0.0529 0.0000 +vt 0.3377 0.0578 0.0000 +vt 0.2942 0.0578 0.0000 +vt 0.2942 0.0529 0.0000 +vt 0.3393 0.1174 0.0000 +vt 0.3336 0.1174 0.0000 +vt 0.3336 0.1244 0.0000 +vt 0.3393 0.1244 0.0000 +vt 0.2940 0.0529 0.0000 +vt 0.2941 0.0578 0.0000 +vt 0.3378 0.0578 0.0000 +vt 0.3379 0.0529 0.0000 +vt 0.2837 0.1158 0.0000 +vt 0.2837 0.1205 0.0000 +vt 0.2759 0.1205 0.0000 +vt 0.2759 0.1158 0.0000 +vt 0.2174 0.1205 0.0000 +vt 0.2174 0.1158 0.0000 +vt 0.2252 0.1158 0.0000 +vt 0.2252 0.1205 0.0000 +vt 0.3444 0.0529 0.0000 +vt 0.3444 0.0578 0.0000 +vt 0.2875 0.0578 0.0000 +vt 0.2875 0.0529 0.0000 +vt 0.3058 0.1905 0.0000 +vt 0.3116 0.1905 0.0000 +vt 0.3377 0.1040 0.0000 +vt 0.3444 0.1041 0.0000 +vt 0.3336 0.1243 0.0000 +vt 0.3116 0.1906 0.0000 +vt 0.3444 0.1040 0.0000 +vt 0.3377 0.1041 0.0000 +vt 0.2942 0.1042 0.0000 +vt 0.2875 0.1042 0.0000 +vt 0.3058 0.1906 0.0000 +vt 0.3116 0.1907 0.0000 +vt 0.2874 0.0578 0.0000 +vt 0.2875 0.1041 0.0000 +vt 0.2942 0.1041 0.0000 +vt 0.3058 0.1997 0.0000 +vt 0.3116 0.1997 0.0000 +vt 0.3444 0.1105 0.0000 +vt 0.3377 0.1105 0.0000 +vt 0.2942 0.1105 0.0000 +vt 0.2875 0.1105 0.0000 +vt 0.2689 0.1124 0.0000 +vt 0.2798 0.1124 0.0000 +vt 0.2798 0.1020 0.0000 +vt 0.2689 0.1020 0.0000 +vt 0.2252 0.1417 0.0000 +vt 0.2174 0.1417 0.0000 +vt 0.2797 0.1906 0.0000 +vt 0.2797 0.1997 0.0000 +vt 0.2837 0.1417 0.0000 +vt 0.2759 0.1417 0.0000 +vt 0.2797 0.1905 0.0000 +vt 0.2877 0.1174 0.0000 +vt 0.2877 0.1244 0.0000 +vt 0.2877 0.1175 0.0000 +vt 0.2877 0.1243 0.0000 +vt 0.2255 0.0955 0.0000 +vt 0.2185 0.0955 0.0000 +vt 0.2186 0.0626 0.0000 +vt 0.2786 0.0955 0.0000 +vt 0.2715 0.0955 0.0000 +vt 0.2785 0.0626 0.0000 +# 1115 texture coords + +o barracks +g barracks +f 1/1/1 2/2/2 3/3/3 +f 3/3/3 4/4/4 1/1/1 +f 5/5/5 6/6/5 7/7/5 +f 7/7/5 8/8/5 5/5/5 +f 9/9/6 10/10/6 2/11/6 +f 2/11/6 1/12/6 9/9/6 +f 5/13/7 4/4/4 3/3/3 +f 3/3/3 6/14/2 5/13/7 +f 11/15/8 12/16/8 8/17/8 +f 8/17/8 7/18/8 11/15/8 +f 13/19/9 14/20/10 15/21/11 +f 15/21/11 16/22/12 13/19/9 +f 17/23/13 18/24/13 19/25/13 +f 19/25/13 20/26/13 17/23/13 +f 21/27/14 22/28/14 23/29/15 +f 23/29/15 24/30/15 21/27/14 +f 25/26/16 26/31/16 27/32/16 +f 27/32/16 28/23/16 25/26/16 +f 29/33/17 30/34/17 31/35/18 +f 31/35/18 32/36/18 29/33/17 +f 33/37/2 34/38/2 35/39/2 +f 36/40/2 21/41/2 24/42/2 +f 24/42/2 37/43/2 36/40/2 +f 38/44/2 39/45/2 40/46/2 +f 40/46/2 39/45/2 41/47/2 +f 41/47/2 42/48/2 40/46/2 +f 13/19/9 16/22/12 43/49/19 +f 43/49/19 44/50/20 13/19/9 +f 24/30/15 23/29/15 45/51/21 +f 45/51/21 46/52/21 24/30/15 +f 32/36/18 31/35/18 47/53/22 +f 47/53/22 48/54/22 32/36/18 +f 37/43/2 24/42/2 46/55/2 +f 46/55/2 49/56/2 37/43/2 +f 35/39/2 42/48/2 41/47/2 +f 41/47/2 33/37/2 35/39/2 +f 15/57/16 14/58/16 50/59/16 +f 50/59/16 36/60/16 15/57/16 +f 15/57/23 36/60/23 37/61/23 +f 37/61/23 16/62/23 15/57/23 +f 16/62/24 37/61/24 49/63/24 +f 49/63/24 43/64/24 16/62/24 +f 43/64/13 49/63/13 51/65/13 +f 51/65/13 44/66/13 43/64/13 +f 44/67/25 51/68/25 52/69/25 +f 52/69/26 13/70/26 44/67/26 +f 13/70/27 52/69/27 50/71/27 +f 50/71/28 14/72/28 13/70/28 +f 53/73/29 51/74/29 49/56/29 +f 49/56/30 46/55/30 53/73/30 +f 45/51/16 54/75/16 53/76/16 +f 53/76/16 46/52/16 45/51/16 +f 55/77/13 56/78/13 22/28/13 +f 22/28/13 21/27/13 55/77/13 +f 36/40/31 50/79/31 55/80/31 +f 55/80/32 21/41/32 36/40/32 +f 57/32/13 17/23/13 20/26/13 +f 20/26/13 58/31/13 57/32/13 +f 34/81/33 55/82/33 50/71/33 +f 50/71/33 35/83/33 34/81/33 +f 35/83/28 50/71/28 52/69/28 +f 52/69/34 42/84/34 35/83/34 +f 42/84/25 52/69/25 51/68/25 +f 51/68/25 40/85/25 42/84/25 +f 40/85/35 51/68/35 53/86/35 +f 53/86/35 38/87/35 40/85/35 +f 59/25/16 25/26/16 28/23/16 +f 28/23/16 60/24/16 59/25/16 +f 39/88/17 29/33/17 32/36/17 +f 32/36/17 41/89/17 39/88/17 +f 41/89/22 32/36/22 48/54/22 +f 48/54/22 33/90/22 41/89/22 +f 19/91/36 56/92/36 55/82/36 +f 55/82/36 20/93/36 19/91/36 +f 20/93/36 55/82/36 34/81/36 +f 34/81/36 58/94/36 20/93/36 +f 58/95/2 34/38/2 33/37/2 +f 33/37/2 57/96/2 58/95/2 +f 57/97/18 33/90/18 48/54/18 +f 48/54/18 17/98/18 57/97/18 +f 17/98/18 48/54/18 47/53/18 +f 47/53/18 18/99/18 17/98/18 +f 27/100/18 30/34/18 29/33/18 +f 29/33/18 28/101/18 27/100/18 +f 28/101/18 29/33/18 39/88/18 +f 39/88/18 60/102/18 28/101/18 +f 60/103/2 39/45/2 38/44/2 +f 38/44/2 59/104/2 60/103/2 +f 59/105/36 38/87/36 53/86/36 +f 53/86/36 25/106/36 59/105/36 +f 25/106/36 53/86/36 54/107/36 +f 54/107/36 26/108/36 25/106/36 +f 61/109/15 62/110/15 63/111/15 +f 63/111/15 64/112/15 61/109/15 +f 62/110/13 65/113/13 66/114/13 +f 66/114/13 63/111/13 62/110/13 +f 67/115/37 68/116/37 69/117/15 +f 69/117/15 70/118/15 67/115/37 +f 68/116/2 71/119/2 72/120/2 +f 72/120/2 69/117/2 68/116/2 +f 73/121/38 74/122/39 75/123/40 +f 75/123/40 76/124/41 73/121/38 +f 76/125/41 77/126/42 78/127/43 +f 78/127/43 79/128/44 76/125/41 +f 75/129/16 74/130/16 80/131/16 +f 80/131/6 81/132/6 75/129/6 +f 82/133/45 83/134/45 84/135/45 +f 84/135/46 85/136/46 82/133/46 +f 86/137/47 85/136/47 84/135/47 +f 84/135/47 87/138/47 86/137/47 +f 88/137/8 89/138/8 90/135/8 +f 90/135/8 91/136/8 88/137/8 +f 81/139/48 80/140/48 92/141/48 +f 92/141/49 93/142/49 81/139/49 +f 77/143/42 94/144/50 82/145/51 +f 82/145/51 85/146/52 77/143/42 +f 76/124/41 75/123/40 94/144/50 +f 94/144/50 77/143/42 76/124/41 +f 95/147/53 74/122/39 73/121/38 +f 73/121/38 91/148/54 95/147/53 +f 73/149/38 96/150/55 88/151/56 +f 88/151/56 91/152/54 73/149/38 +f 73/149/38 76/125/41 79/128/44 +f 79/128/44 96/150/55 73/149/38 +f 86/153/57 78/127/43 77/126/42 +f 77/126/42 85/154/52 86/153/57 +f 82/155/6 94/156/6 97/157/6 +f 97/157/6 83/158/6 82/155/6 +f 94/156/6 75/129/6 81/132/6 +f 81/132/6 97/157/6 94/156/6 +f 98/159/16 80/131/16 74/130/16 +f 74/130/16 95/160/16 98/159/16 +f 96/161/13 99/162/13 89/163/13 +f 89/163/13 88/164/13 96/161/13 +f 100/165/13 78/166/13 86/167/13 +f 86/167/13 87/168/13 100/165/13 +f 83/169/58 97/170/58 101/171/58 +f 101/171/59 84/172/59 83/169/59 +f 97/173/60 81/139/60 93/142/60 +f 93/142/61 101/174/61 97/173/61 +f 92/141/48 80/140/48 98/175/48 +f 98/175/62 90/176/62 92/141/62 +f 101/171/63 100/177/63 87/178/63 +f 87/178/64 84/172/64 101/171/64 +f 89/179/63 99/180/63 92/141/63 +f 92/141/65 90/176/65 89/179/65 +f 102/181/2 103/182/2 104/183/2 +f 104/183/2 105/184/2 102/181/2 +f 106/185/66 107/186/67 108/187/68 +f 108/187/68 109/188/68 106/185/66 +f 106/189/69 109/190/70 110/191/70 +f 110/191/70 111/192/69 106/189/69 +f 111/185/71 110/188/72 112/187/72 +f 112/187/72 113/186/73 111/185/71 +f 113/192/74 112/191/75 108/190/75 +f 108/190/75 107/189/74 113/192/74 +f 107/186/67 106/185/66 104/193/76 +f 104/193/76 103/194/76 107/186/67 +f 106/189/69 111/192/69 105/195/77 +f 105/195/77 104/196/77 106/189/69 +f 105/193/78 111/185/71 113/186/73 +f 113/186/73 102/194/78 105/193/78 +f 113/192/74 107/189/74 103/196/79 +f 103/196/79 102/195/79 113/192/74 +f 114/197/15 115/198/15 116/199/15 +f 116/199/15 117/200/15 114/197/15 +f 115/198/80 118/201/80 119/202/80 +f 119/202/80 116/199/80 115/198/80 +f 120/203/13 121/204/13 122/205/13 +f 122/205/13 123/206/13 120/203/13 +f 123/206/81 122/207/81 124/208/81 +f 124/208/82 125/209/82 123/206/82 +f 126/210/83 120/203/83 123/206/83 +f 123/206/83 125/209/83 126/210/83 +f 127/211/84 121/212/84 120/203/84 +f 120/203/85 126/210/85 127/211/85 +f 125/209/86 124/208/86 128/213/86 +f 128/213/87 129/214/87 125/209/87 +f 129/214/88 130/215/88 126/210/88 +f 126/210/88 125/209/88 129/214/88 +f 126/210/85 130/215/85 131/216/85 +f 131/216/89 127/211/89 126/210/89 +f 132/217/16 133/218/16 134/219/16 +f 134/219/16 135/220/16 132/217/16 +f 136/221/90 132/222/90 135/220/90 +f 135/220/86 137/223/86 136/221/86 +f 138/224/91 137/223/91 135/220/91 +f 135/220/91 134/219/91 138/224/91 +f 139/225/85 138/224/85 134/219/85 +f 134/219/85 133/226/85 139/225/85 +f 128/227/82 136/221/82 137/223/82 +f 137/223/92 129/214/92 128/227/92 +f 138/224/93 130/215/93 129/214/93 +f 129/214/93 137/223/93 138/224/93 +f 138/224/94 139/225/94 131/228/94 +f 131/228/95 130/215/95 138/224/95 +f 140/229/13 141/230/13 142/231/13 +f 142/231/13 143/232/13 140/229/13 +f 144/233/83 145/234/83 143/232/83 +f 143/232/83 142/231/83 144/233/83 +f 146/235/96 144/233/96 142/231/96 +f 142/231/96 141/236/96 146/235/96 +f 144/233/97 147/237/97 148/238/97 +f 148/238/97 145/234/97 144/233/97 +f 144/233/98 146/239/98 149/240/98 +f 149/240/99 147/237/99 144/233/99 +f 150/241/16 151/242/16 152/243/16 +f 152/243/16 153/244/16 150/241/16 +f 154/245/91 150/241/91 153/244/91 +f 153/244/91 155/246/91 154/245/91 +f 156/247/90 151/248/90 150/241/90 +f 150/241/96 154/245/96 156/247/96 +f 148/238/100 147/237/100 154/245/100 +f 154/245/100 155/246/100 148/238/100 +f 154/245/101 147/237/101 149/240/101 +f 149/240/96 156/249/96 154/245/96 +f 157/229/13 158/230/13 159/231/13 +f 159/231/13 160/232/13 157/229/13 +f 161/233/102 162/234/102 160/232/102 +f 160/232/103 159/231/103 161/233/103 +f 163/235/104 161/233/104 159/231/104 +f 159/231/105 158/236/105 163/235/105 +f 161/233/106 164/237/106 165/238/106 +f 165/238/106 162/234/106 161/233/106 +f 161/233/107 163/239/107 166/240/107 +f 166/240/108 164/237/108 161/233/108 +f 167/241/16 168/242/16 169/243/16 +f 169/243/6 170/244/6 167/241/6 +f 171/245/109 167/241/109 170/244/109 +f 170/244/110 172/246/110 171/245/110 +f 173/247/108 168/248/108 167/241/108 +f 167/241/111 171/245/111 173/247/111 +f 165/238/112 164/237/112 171/245/112 +f 171/245/112 172/246/112 165/238/112 +f 171/245/105 164/237/105 166/240/105 +f 166/240/113 173/249/113 171/245/113 +f 174/229/13 175/230/13 176/231/13 +f 176/231/13 177/232/13 174/229/13 +f 178/233/114 179/234/114 177/232/114 +f 177/232/114 176/231/114 178/233/114 +f 180/235/115 178/233/115 176/231/115 +f 176/231/115 175/236/115 180/235/115 +f 178/233/116 181/237/116 182/238/116 +f 182/238/117 179/234/117 178/233/117 +f 178/233/115 180/239/115 183/240/115 +f 183/240/118 181/237/118 178/233/118 +f 184/241/16 185/242/16 186/243/16 +f 186/243/16 187/244/16 184/241/16 +f 188/245/119 184/241/119 187/244/119 +f 187/244/119 189/246/119 188/245/119 +f 190/247/118 185/248/118 184/241/118 +f 184/241/118 188/245/118 190/247/118 +f 182/238/120 181/237/120 188/245/120 +f 188/245/121 189/246/121 182/238/121 +f 188/245/115 181/237/115 183/240/115 +f 183/240/118 190/249/118 188/245/118 +f 191/229/13 192/230/13 193/231/13 +f 193/231/13 194/232/13 191/229/13 +f 195/233/114 196/234/114 194/232/114 +f 194/232/114 193/231/114 195/233/114 +f 197/235/118 195/233/118 193/231/118 +f 193/231/118 192/236/118 197/235/118 +f 195/233/117 198/237/117 199/238/117 +f 199/238/117 196/234/117 195/233/117 +f 195/233/122 197/239/122 200/240/122 +f 200/240/115 198/237/115 195/233/115 +f 201/241/16 202/242/16 203/243/16 +f 203/243/16 204/244/16 201/241/16 +f 205/245/119 201/241/119 204/244/119 +f 204/244/123 206/246/123 205/245/123 +f 207/247/115 202/248/115 201/241/115 +f 201/241/115 205/245/115 207/247/115 +f 199/238/121 198/237/121 205/245/121 +f 205/245/121 206/246/121 199/238/121 +f 205/245/118 198/237/118 200/240/118 +f 200/240/124 207/249/124 205/245/124 +f 208/229/13 209/230/13 210/231/13 +f 210/231/13 211/232/13 208/229/13 +f 212/233/114 213/234/114 211/232/114 +f 211/232/114 210/231/114 212/233/114 +f 214/235/115 212/233/115 210/231/115 +f 210/231/115 209/236/115 214/235/115 +f 212/233/116 215/237/116 216/238/116 +f 216/238/117 213/234/117 212/233/117 +f 212/233/115 214/239/115 217/240/115 +f 217/240/115 215/237/115 212/233/115 +f 218/241/6 219/242/6 220/243/6 +f 220/243/6 221/244/6 218/241/6 +f 222/245/119 218/241/119 221/244/119 +f 221/244/119 223/246/119 222/245/119 +f 224/247/118 219/248/118 218/241/118 +f 218/241/118 222/245/118 224/247/118 +f 216/238/120 215/237/120 222/245/120 +f 222/245/121 223/246/121 216/238/121 +f 222/245/118 215/237/118 217/240/118 +f 217/240/118 224/249/118 222/245/118 +f 225/229/13 226/230/13 227/231/13 +f 227/231/13 228/232/13 225/229/13 +f 229/233/125 230/234/125 228/232/125 +f 228/232/125 227/231/125 229/233/125 +f 231/235/126 229/233/126 227/231/126 +f 227/231/126 226/236/126 231/235/126 +f 229/233/127 232/237/127 233/238/127 +f 233/238/128 230/234/128 229/233/128 +f 229/233/129 231/239/129 234/240/129 +f 234/240/129 232/237/129 229/233/129 +f 235/241/16 236/242/16 237/243/16 +f 237/243/16 238/244/16 235/241/16 +f 239/245/130 235/241/130 238/244/130 +f 238/244/130 240/246/130 239/245/130 +f 241/247/129 236/248/129 235/241/129 +f 235/241/129 239/245/129 241/247/129 +f 233/238/131 232/237/131 239/245/131 +f 239/245/132 240/246/132 233/238/132 +f 239/245/126 232/237/126 234/240/126 +f 234/240/126 241/249/126 239/245/126 +f 242/205/13 243/204/13 244/203/13 +f 244/203/5 245/206/5 242/205/5 +f 245/206/133 246/209/133 247/208/133 +f 247/208/134 242/207/134 245/206/134 +f 245/206/135 244/203/135 248/210/135 +f 248/210/135 246/209/135 245/206/135 +f 244/203/136 243/212/136 249/211/136 +f 249/211/137 248/210/137 244/203/137 +f 250/213/138 247/208/138 246/209/138 +f 246/209/139 251/214/139 250/213/139 +f 248/210/140 252/215/140 251/214/140 +f 251/214/140 246/209/140 248/210/140 +f 248/210/141 249/211/141 253/216/141 +f 253/216/136 252/215/136 248/210/136 +f 254/219/142 255/218/142 256/217/142 +f 256/217/6 257/220/6 254/219/6 +f 258/221/143 259/223/143 257/220/143 +f 257/220/144 256/222/144 258/221/144 +f 257/220/145 259/223/145 260/224/145 +f 260/224/145 254/219/145 257/220/145 +f 254/219/136 260/224/136 261/225/136 +f 261/225/136 255/226/136 254/219/136 +f 259/223/146 258/221/146 250/227/146 +f 250/227/147 251/214/147 259/223/147 +f 251/214/148 252/215/148 260/224/148 +f 260/224/148 259/223/148 251/214/148 +f 260/224/137 252/215/137 253/228/137 +f 253/228/149 261/225/149 260/224/149 +f 262/231/13 263/230/13 264/229/13 +f 264/229/13 265/232/13 262/231/13 +f 265/232/150 266/234/150 267/233/150 +f 267/233/150 262/231/150 265/232/150 +f 262/231/151 267/233/151 268/235/151 +f 268/235/151 263/236/151 262/231/151 +f 269/238/152 270/237/152 267/233/152 +f 267/233/153 266/234/153 269/238/153 +f 267/233/154 270/237/154 271/240/154 +f 271/240/155 268/239/155 267/233/155 +f 272/243/16 273/242/16 274/241/16 +f 274/241/16 275/244/16 272/243/16 +f 275/244/156 274/241/156 276/245/156 +f 276/245/156 277/246/156 275/244/156 +f 274/241/155 273/248/155 278/247/155 +f 278/247/155 276/245/155 274/241/155 +f 276/245/157 270/237/157 269/238/157 +f 269/238/158 277/246/158 276/245/158 +f 276/245/151 278/249/151 271/240/151 +f 271/240/159 270/237/159 276/245/159 +f 279/231/13 280/230/13 281/229/13 +f 281/229/13 282/232/13 279/231/13 +f 282/232/160 283/234/160 284/233/160 +f 284/233/160 279/231/160 282/232/160 +f 279/231/161 284/233/161 285/235/161 +f 285/235/161 280/236/161 279/231/161 +f 286/238/162 287/237/162 284/233/162 +f 284/233/162 283/234/162 286/238/162 +f 284/233/163 287/237/163 288/240/163 +f 288/240/164 285/239/164 284/233/164 +f 289/243/16 290/242/16 291/241/16 +f 291/241/16 292/244/16 289/243/16 +f 292/244/165 291/241/165 293/245/165 +f 293/245/165 294/246/165 292/244/165 +f 291/241/166 290/248/166 295/247/166 +f 295/247/166 293/245/166 291/241/166 +f 293/245/167 287/237/167 286/238/167 +f 286/238/167 294/246/167 293/245/167 +f 293/245/168 295/249/168 288/240/168 +f 288/240/169 287/237/169 293/245/169 +f 296/231/13 297/230/13 298/229/13 +f 298/229/13 299/232/13 296/231/13 +f 299/232/135 300/234/135 301/233/135 +f 301/233/135 296/231/135 299/232/135 +f 296/231/144 301/233/144 302/235/144 +f 302/235/144 297/236/144 296/231/144 +f 303/238/170 304/237/170 301/233/170 +f 301/233/140 300/234/140 303/238/140 +f 301/233/134 304/237/134 305/240/134 +f 305/240/144 302/239/144 301/233/144 +f 306/243/16 307/242/16 308/241/16 +f 308/241/16 309/244/16 306/243/16 +f 309/244/171 308/241/171 310/245/171 +f 310/245/145 311/246/145 309/244/145 +f 308/241/134 307/248/134 312/247/134 +f 312/247/134 310/245/134 308/241/134 +f 310/245/172 304/237/172 303/238/172 +f 303/238/148 311/246/148 310/245/148 +f 310/245/134 312/249/134 305/240/134 +f 305/240/144 304/237/144 310/245/144 +f 313/231/13 314/230/13 315/229/13 +f 315/229/13 316/232/13 313/231/13 +f 316/232/135 317/234/135 318/233/135 +f 318/233/135 313/231/135 316/232/135 +f 313/231/144 318/233/144 319/235/144 +f 319/235/144 314/236/144 313/231/144 +f 320/238/140 321/237/140 318/233/140 +f 318/233/140 317/234/140 320/238/140 +f 318/233/147 321/237/147 322/240/147 +f 322/240/144 319/239/144 318/233/144 +f 323/243/16 324/242/16 325/241/16 +f 325/241/16 326/244/16 323/243/16 +f 326/244/145 325/241/145 327/245/145 +f 327/245/145 328/246/145 326/244/145 +f 325/241/134 324/248/134 329/247/134 +f 329/247/134 327/245/134 325/241/134 +f 327/245/148 321/237/148 320/238/148 +f 320/238/148 328/246/148 327/245/148 +f 327/245/134 329/249/134 322/240/134 +f 322/240/139 321/237/139 327/245/139 +f 330/231/13 331/230/13 332/229/13 +f 332/229/13 333/232/13 330/231/13 +f 333/232/150 334/234/150 335/233/150 +f 335/233/150 330/231/150 333/232/150 +f 330/231/173 335/233/173 336/235/173 +f 336/235/173 331/236/173 330/231/173 +f 337/238/152 338/237/152 335/233/152 +f 335/233/174 334/234/174 337/238/174 +f 335/233/175 338/237/175 339/240/175 +f 339/240/175 336/239/175 335/233/175 +f 340/243/16 341/242/16 342/241/16 +f 342/241/16 343/244/16 340/243/16 +f 343/244/156 342/241/156 344/245/156 +f 344/245/156 345/246/156 343/244/156 +f 342/241/175 341/248/175 346/247/175 +f 346/247/175 344/245/175 342/241/175 +f 344/245/157 338/237/157 337/238/157 +f 337/238/176 345/246/176 344/245/176 +f 344/245/173 346/249/173 339/240/173 +f 339/240/173 338/237/173 344/245/173 +f 347/231/13 348/230/13 349/229/13 +f 349/229/13 350/232/13 347/231/13 +f 350/232/114 351/234/114 352/233/114 +f 352/233/114 347/231/114 350/232/114 +f 347/231/177 352/233/177 353/235/177 +f 353/235/177 348/236/177 347/231/177 +f 354/238/116 355/237/116 352/233/116 +f 352/233/117 351/234/117 354/238/117 +f 352/233/177 355/237/177 356/240/177 +f 356/240/178 353/239/178 352/233/178 +f 357/243/16 358/242/16 359/241/16 +f 359/241/16 360/244/16 357/243/16 +f 360/244/119 359/241/119 361/245/119 +f 361/245/119 362/246/119 360/244/119 +f 359/241/179 358/248/179 363/247/179 +f 363/247/178 361/245/178 359/241/178 +f 361/245/120 355/237/120 354/238/120 +f 354/238/121 362/246/121 361/245/121 +f 361/245/177 363/249/177 356/240/177 +f 356/240/178 355/237/178 361/245/178 +f 364/205/13 365/204/13 366/203/13 +f 366/203/13 367/206/13 364/205/13 +f 367/206/144 368/209/144 369/208/144 +f 369/208/144 364/207/144 367/206/144 +f 367/206/135 366/203/135 370/210/135 +f 370/210/135 368/209/135 367/206/135 +f 366/203/180 365/212/180 371/211/180 +f 371/211/181 370/210/181 366/203/181 +f 372/213/144 369/208/144 368/209/144 +f 368/209/134 373/214/134 372/213/134 +f 370/210/140 374/215/140 373/214/140 +f 373/214/170 368/209/170 370/210/170 +f 370/210/182 371/211/182 375/216/182 +f 375/216/141 374/215/141 370/210/141 +f 376/219/16 377/218/16 378/217/16 +f 378/217/183 379/220/183 376/219/183 +f 380/221/134 381/223/134 379/220/134 +f 379/220/134 378/222/134 380/221/134 +f 379/220/145 381/223/145 382/224/145 +f 382/224/145 376/219/145 379/220/145 +f 376/219/184 382/224/184 383/225/184 +f 383/225/185 377/226/185 376/219/185 +f 381/223/134 380/221/134 372/227/134 +f 372/227/144 373/214/144 381/223/144 +f 373/214/148 374/215/148 382/224/148 +f 382/224/172 381/223/172 373/214/172 +f 382/224/149 374/215/149 375/228/149 +f 375/228/186 383/225/186 382/224/186 +f 384/205/13 385/204/13 386/203/13 +f 386/203/13 387/206/13 384/205/13 +f 387/206/133 388/209/133 389/208/133 +f 389/208/144 384/207/144 387/206/144 +f 387/206/135 386/203/135 390/210/135 +f 390/210/135 388/209/135 387/206/135 +f 386/203/136 385/212/136 391/211/136 +f 391/211/181 390/210/181 386/203/181 +f 392/213/143 389/208/143 388/209/143 +f 388/209/139 393/214/139 392/213/139 +f 390/210/140 394/215/140 393/214/140 +f 393/214/140 388/209/140 390/210/140 +f 390/210/184 391/211/184 395/216/184 +f 395/216/136 394/215/136 390/210/136 +f 396/219/16 397/218/16 398/217/16 +f 398/217/16 399/220/16 396/219/16 +f 400/221/143 401/223/143 399/220/143 +f 399/220/134 398/222/134 400/221/134 +f 399/220/145 401/223/145 402/224/145 +f 402/224/145 396/219/145 399/220/145 +f 396/219/184 402/224/184 403/225/184 +f 403/225/137 397/226/137 396/219/137 +f 401/223/133 400/221/133 392/227/133 +f 392/227/147 393/214/147 401/223/147 +f 393/214/148 394/215/148 402/224/148 +f 402/224/148 401/223/148 393/214/148 +f 402/224/137 394/215/137 395/228/137 +f 395/228/181 403/225/181 402/224/181 +f 404/19/187 405/20/188 406/21/189 +f 406/21/189 407/22/190 404/19/187 +f 408/23/191 409/24/191 410/25/191 +f 410/25/191 411/26/191 408/23/191 +f 412/27/192 413/28/192 414/29/37 +f 414/29/37 415/30/36 412/27/192 +f 416/26/8 417/31/8 418/32/8 +f 418/32/8 419/23/8 416/26/8 +f 420/33/193 421/34/193 422/35/18 +f 422/35/18 423/36/194 420/33/193 +f 424/37/16 425/38/16 426/39/16 +f 427/40/183 412/41/183 415/42/183 +f 415/42/16 428/43/16 427/40/16 +f 429/44/183 430/45/183 431/46/183 +f 431/46/183 430/45/183 432/47/183 +f 432/47/16 433/48/16 431/46/16 +f 404/19/187 407/22/190 434/49/195 +f 434/49/195 435/50/196 404/19/187 +f 415/30/36 414/29/37 436/51/197 +f 436/51/197 437/52/197 415/30/36 +f 423/36/194 422/35/18 438/53/198 +f 438/53/198 439/54/198 423/36/194 +f 428/43/16 415/42/16 437/55/16 +f 437/55/16 440/56/16 428/43/16 +f 426/39/16 433/48/16 432/47/16 +f 432/47/6 424/37/6 426/39/6 +f 406/57/199 405/58/199 441/59/199 +f 441/59/200 427/60/200 406/57/200 +f 406/57/201 427/60/201 428/61/201 +f 428/61/201 407/62/201 406/57/201 +f 407/62/202 428/61/202 440/63/202 +f 440/63/203 434/64/203 407/62/203 +f 434/64/204 440/63/204 442/65/204 +f 442/65/205 435/66/205 434/64/205 +f 435/67/206 442/68/206 443/69/206 +f 443/69/207 404/70/207 435/67/207 +f 404/70/208 443/69/208 441/71/208 +f 441/71/208 405/72/208 404/70/208 +f 444/73/209 442/74/209 440/56/209 +f 440/56/210 437/55/210 444/73/210 +f 436/51/211 445/75/212 444/76/212 +f 444/76/212 437/52/213 436/51/211 +f 446/77/214 447/78/215 413/28/216 +f 413/28/216 412/27/216 446/77/214 +f 427/40/217 441/79/217 446/80/217 +f 446/80/218 412/41/218 427/40/218 +f 448/32/219 408/23/219 411/26/219 +f 411/26/219 449/31/219 448/32/219 +f 425/81/220 446/82/220 441/71/220 +f 441/71/220 426/83/220 425/81/220 +f 426/83/208 441/71/208 443/69/208 +f 443/69/208 433/84/208 426/83/208 +f 433/84/206 443/69/206 442/68/206 +f 442/68/206 431/85/206 433/84/206 +f 431/85/221 442/68/221 444/86/221 +f 444/86/221 429/87/221 431/85/221 +f 450/25/222 416/26/222 419/23/222 +f 419/23/222 451/24/222 450/25/222 +f 430/88/193 420/33/193 423/36/193 +f 423/36/193 432/89/193 430/88/193 +f 432/89/223 423/36/223 439/54/223 +f 439/54/223 424/90/223 432/89/223 +f 410/91/36 447/92/36 446/82/36 +f 446/82/36 411/93/36 410/91/36 +f 411/93/36 446/82/36 425/81/36 +f 425/81/36 449/94/36 411/93/36 +f 449/95/16 425/38/16 424/37/16 +f 424/37/16 448/96/16 449/95/16 +f 448/97/18 424/90/18 439/54/18 +f 439/54/18 408/98/18 448/97/18 +f 408/98/18 439/54/18 438/53/18 +f 438/53/18 409/99/18 408/98/18 +f 418/100/18 421/34/18 420/33/18 +f 420/33/18 419/101/18 418/100/18 +f 419/101/224 420/33/224 430/88/224 +f 430/88/224 451/102/224 419/101/224 +f 451/103/225 430/45/225 429/44/225 +f 429/44/225 450/104/225 451/103/225 +f 450/105/226 429/87/226 444/86/226 +f 444/86/226 416/106/226 450/105/226 +f 416/106/36 444/86/36 445/107/36 +f 445/107/36 417/108/36 416/106/36 +f 452/19/187 453/20/188 454/21/189 +f 454/21/189 455/22/190 452/19/187 +f 456/23/191 457/24/191 458/25/191 +f 458/25/191 459/26/191 456/23/191 +f 460/27/192 461/28/192 462/29/37 +f 462/29/37 463/30/36 460/27/192 +f 464/26/8 465/31/8 466/32/8 +f 466/32/8 467/23/8 464/26/8 +f 468/33/193 469/34/193 470/35/18 +f 470/35/18 471/36/194 468/33/193 +f 472/37/16 473/38/16 474/39/16 +f 475/40/183 460/41/183 463/42/183 +f 463/42/16 476/43/16 475/40/16 +f 477/44/183 478/45/183 479/46/183 +f 479/46/183 478/45/183 480/47/183 +f 480/47/16 481/48/16 479/46/16 +f 452/19/187 455/22/190 482/49/195 +f 482/49/195 483/50/196 452/19/187 +f 463/30/36 462/29/37 484/51/197 +f 484/51/197 485/52/197 463/30/36 +f 471/36/194 470/35/18 486/53/198 +f 486/53/198 487/54/198 471/36/194 +f 476/43/16 463/42/16 485/55/16 +f 485/55/16 488/56/16 476/43/16 +f 474/39/16 481/48/16 480/47/16 +f 480/47/6 472/37/6 474/39/6 +f 454/57/199 453/58/199 489/59/199 +f 489/59/200 475/60/200 454/57/200 +f 454/57/201 475/60/201 476/61/201 +f 476/61/201 455/62/201 454/57/201 +f 455/62/202 476/61/202 488/63/202 +f 488/63/203 482/64/203 455/62/203 +f 482/64/204 488/63/204 490/65/204 +f 490/65/205 483/66/205 482/64/205 +f 483/67/206 490/68/206 491/69/206 +f 491/69/207 452/70/207 483/67/207 +f 452/70/208 491/69/208 489/71/208 +f 489/71/208 453/72/208 452/70/208 +f 492/73/209 490/74/209 488/56/209 +f 488/56/210 485/55/210 492/73/210 +f 484/51/211 493/75/212 492/76/212 +f 492/76/212 485/52/213 484/51/211 +f 494/77/214 495/78/215 461/28/216 +f 461/28/216 460/27/216 494/77/214 +f 475/40/217 489/79/217 494/80/217 +f 494/80/218 460/41/218 475/40/218 +f 496/32/219 456/23/219 459/26/219 +f 459/26/219 497/31/219 496/32/219 +f 473/81/220 494/82/220 489/71/220 +f 489/71/220 474/83/220 473/81/220 +f 474/83/208 489/71/208 491/69/208 +f 491/69/208 481/84/208 474/83/208 +f 481/84/206 491/69/206 490/68/206 +f 490/68/206 479/85/206 481/84/206 +f 479/85/221 490/68/221 492/86/221 +f 492/86/221 477/87/221 479/85/221 +f 498/25/222 464/26/222 467/23/222 +f 467/23/222 499/24/222 498/25/222 +f 478/88/193 468/33/193 471/36/193 +f 471/36/193 480/89/193 478/88/193 +f 480/89/223 471/36/223 487/54/223 +f 487/54/223 472/90/223 480/89/223 +f 458/91/36 495/92/36 494/82/36 +f 494/82/36 459/93/36 458/91/36 +f 459/93/36 494/82/36 473/81/36 +f 473/81/36 497/94/36 459/93/36 +f 497/95/16 473/38/16 472/37/16 +f 472/37/16 496/96/16 497/95/16 +f 496/97/18 472/90/18 487/54/18 +f 487/54/18 456/98/18 496/97/18 +f 456/98/18 487/54/18 486/53/18 +f 486/53/18 457/99/18 456/98/18 +f 466/100/18 469/34/18 468/33/18 +f 468/33/18 467/101/18 466/100/18 +f 467/101/224 468/33/224 478/88/224 +f 478/88/224 499/102/224 467/101/224 +f 499/103/225 478/45/225 477/44/225 +f 477/44/225 498/104/225 499/103/225 +f 498/105/226 477/87/226 492/86/226 +f 492/86/226 464/106/226 498/105/226 +f 464/106/36 492/86/36 493/107/36 +f 493/107/36 465/108/36 464/106/36 +f 500/250/227 501/251/228 502/252/229 +f 502/252/229 503/253/230 500/250/227 +f 504/254/231 500/250/227 503/253/230 +f 503/253/230 505/255/232 504/254/231 +f 506/256/233 504/254/231 505/255/232 +f 505/255/232 507/257/234 506/256/233 +f 508/258/235 506/256/233 507/257/234 +f 507/257/234 509/259/236 508/258/235 +f 510/260/237 508/261/235 509/262/236 +f 509/262/236 511/263/238 510/260/237 +f 512/264/239 510/260/237 511/263/238 +f 511/263/238 513/265/240 512/264/239 +f 514/266/241 512/264/239 513/265/240 +f 513/265/240 515/267/242 514/266/241 +f 501/251/228 514/266/241 515/267/242 +f 515/267/242 502/252/229 501/251/228 +f 516/268/243 516/268/244 501/251/228 +f 501/251/228 500/250/227 516/268/243 +f 516/268/245 516/268/243 500/250/227 +f 500/250/227 504/254/231 516/268/245 +f 516/269/246 516/268/245 504/254/231 +f 504/254/231 506/256/233 516/269/246 +f 516/269/247 516/269/246 506/256/233 +f 506/256/233 508/258/235 516/269/247 +f 516/268/248 516/269/247 508/261/235 +f 508/261/235 510/260/237 516/268/248 +f 516/268/249 516/268/248 510/260/237 +f 510/260/237 512/264/239 516/268/249 +f 516/268/250 516/268/249 512/264/239 +f 512/264/239 514/266/241 516/268/250 +f 516/268/244 516/268/250 514/266/241 +f 514/266/241 501/251/228 516/268/244 +f 516/269/2 516/269/2 516/268/2 +f 516/268/2 516/268/2 516/268/2 +f 516/268/2 516/268/2 516/268/2 +f 516/268/2 516/268/2 516/268/2 +f 516/269/2 516/268/2 516/268/2 +f 516/269/2 516/268/2 516/268/2 +f 517/270/251 518/271/251 503/253/251 +f 503/253/252 502/252/252 517/270/252 +f 518/271/253 519/272/253 505/255/253 +f 505/255/253 503/253/253 518/271/253 +f 519/272/254 520/273/254 507/257/254 +f 507/257/254 505/255/254 519/272/254 +f 520/273/255 521/274/255 509/259/255 +f 509/259/256 507/257/256 520/273/256 +f 521/275/257 522/276/257 511/263/257 +f 511/263/257 509/262/257 521/275/257 +f 522/276/258 523/277/258 513/265/258 +f 513/265/258 511/263/258 522/276/258 +f 523/277/259 524/278/259 515/267/259 +f 515/267/259 513/265/259 523/277/259 +f 524/278/260 517/270/260 502/252/260 +f 502/252/260 515/267/260 524/278/260 +f 525/279/261 526/280/262 527/281/262 +f 527/281/262 528/282/261 525/279/261 +f 529/283/263 525/279/261 528/282/261 +f 528/282/261 530/284/263 529/283/263 +f 531/285/264 529/283/263 530/284/263 +f 530/284/263 532/286/264 531/285/264 +f 533/287/265 531/285/264 532/286/264 +f 532/286/264 534/288/265 533/287/265 +f 535/289/261 536/290/262 526/280/262 +f 526/280/262 525/279/261 535/289/261 +f 537/291/263 535/289/261 525/279/261 +f 525/279/261 529/283/263 537/291/263 +f 538/292/264 537/291/263 529/283/263 +f 529/283/263 531/285/264 538/292/264 +f 539/293/265 538/292/264 531/285/264 +f 531/285/264 533/287/265 539/293/265 +f 540/294/261 541/295/262 536/290/262 +f 536/290/262 535/289/261 540/294/261 +f 542/296/263 540/294/261 535/289/261 +f 535/289/261 537/291/263 542/296/263 +f 543/297/264 542/296/263 537/291/263 +f 537/291/263 538/292/264 543/297/264 +f 544/298/265 543/297/264 538/292/264 +f 538/292/264 539/293/265 544/298/265 +f 545/299/261 546/300/262 541/295/262 +f 541/295/262 540/294/261 545/299/261 +f 547/301/263 545/299/261 540/294/261 +f 540/294/261 542/296/263 547/301/263 +f 548/302/264 547/301/263 542/296/263 +f 542/296/263 543/297/264 548/302/264 +f 549/303/265 548/302/264 543/297/264 +f 543/297/264 544/298/265 549/303/265 +f 550/304/36 551/305/36 552/306/36 +f 552/306/36 553/307/36 550/304/36 +f 554/308/266 555/309/267 556/310/267 +f 556/310/267 557/311/266 554/308/266 +f 557/312/268 556/313/269 558/314/269 +f 558/314/269 559/315/268 557/312/268 +f 559/311/270 558/310/271 560/309/271 +f 560/309/271 561/308/270 559/311/270 +f 561/315/272 560/314/273 555/313/273 +f 555/313/273 554/312/272 561/315/272 +f 554/308/266 557/311/266 553/316/274 +f 553/316/274 552/317/274 554/308/266 +f 557/312/268 559/315/268 550/318/275 +f 550/318/275 553/319/275 557/312/268 +f 559/311/270 561/308/270 551/317/276 +f 551/317/276 550/316/276 559/311/270 +f 561/315/272 554/312/272 552/319/277 +f 552/319/277 551/318/277 561/315/272 +f 562/307/226 563/304/36 564/305/226 +f 564/305/226 565/306/226 562/307/226 +f 566/308/278 567/311/278 568/310/279 +f 568/310/279 569/309/279 566/308/278 +f 567/312/268 570/315/268 571/314/269 +f 571/314/269 568/313/269 567/312/268 +f 570/311/280 572/308/280 573/309/281 +f 573/309/281 571/310/281 570/311/280 +f 572/315/272 566/312/272 569/313/282 +f 569/313/282 573/314/282 572/315/272 +f 566/308/278 564/317/283 563/316/283 +f 563/316/283 567/311/278 566/308/278 +f 567/312/268 563/319/284 562/318/284 +f 562/318/284 570/315/268 567/312/268 +f 570/311/280 562/316/285 565/317/285 +f 565/317/285 572/308/280 570/311/280 +f 572/315/272 565/318/277 564/319/277 +f 564/319/277 566/312/272 572/315/272 +f 574/320/286 575/321/287 576/322/288 +f 576/322/288 577/323/289 574/320/286 +f 578/324/290 574/320/286 577/323/289 +f 577/323/289 579/325/291 578/324/290 +f 580/326/292 578/324/290 579/325/291 +f 579/325/291 581/327/293 580/326/292 +f 582/328/294 580/326/292 581/327/293 +f 581/327/293 583/329/295 582/328/294 +f 584/330/296 582/328/294 583/329/295 +f 583/329/295 585/331/295 584/330/296 +f 586/332/297 587/333/298 575/321/287 +f 575/321/287 574/320/286 586/332/297 +f 586/332/297 574/320/286 578/324/290 +f 578/324/290 588/334/299 586/332/297 +f 588/334/299 578/324/290 580/326/292 +f 580/326/292 589/335/300 588/334/299 +f 589/335/300 580/326/292 582/328/294 +f 582/328/294 590/336/301 589/335/300 +f 591/337/302 590/336/301 582/328/294 +f 582/328/294 584/330/296 591/337/302 +f 592/338/303 593/339/304 594/340/305 +f 594/340/305 595/341/306 592/338/303 +f 596/342/307 592/338/303 595/341/306 +f 595/341/306 597/343/308 596/342/307 +f 598/344/309 596/342/307 597/343/308 +f 597/343/308 599/345/310 598/344/309 +f 600/346/311 598/344/309 599/345/310 +f 599/345/310 601/347/312 600/346/311 +f 602/348/313 600/346/311 601/347/312 +f 601/347/312 591/349/314 602/348/313 +f 603/350/315 604/351/316 593/339/304 +f 593/339/304 592/338/303 603/350/315 +f 605/352/317 603/350/315 592/338/303 +f 592/338/303 596/342/307 605/352/317 +f 606/353/318 605/352/317 596/342/307 +f 596/342/307 598/344/309 606/353/318 +f 607/354/319 606/353/318 598/344/309 +f 598/344/309 600/346/311 607/354/319 +f 608/355/319 607/354/319 600/346/311 +f 600/346/311 602/348/313 608/355/319 +f 609/356/320 610/357/321 604/351/316 +f 604/351/316 603/350/315 609/356/320 +f 611/358/322 609/356/320 603/350/315 +f 603/350/315 605/352/317 611/358/322 +f 612/359/323 611/358/322 605/352/317 +f 605/352/317 606/353/318 612/359/323 +f 613/360/324 612/359/323 606/353/318 +f 606/353/318 607/354/319 613/360/324 +f 614/361/324 613/360/324 607/354/319 +f 607/354/319 608/355/319 614/361/324 +f 615/362/325 616/363/326 610/357/321 +f 610/357/321 609/356/320 615/362/325 +f 617/364/327 615/362/325 609/356/320 +f 609/356/320 611/358/322 617/364/327 +f 618/365/328 617/364/327 611/358/322 +f 611/358/322 612/359/323 618/365/328 +f 619/366/329 618/365/328 612/359/323 +f 612/359/323 613/360/324 619/366/329 +f 620/367/329 619/366/329 613/360/324 +f 613/360/324 614/361/324 620/367/329 +f 577/323/289 576/322/288 616/368/326 +f 616/368/326 615/369/325 577/323/289 +f 579/325/291 577/323/289 615/369/325 +f 615/369/325 617/370/327 579/325/291 +f 581/327/293 579/325/291 617/370/327 +f 617/370/327 618/371/328 581/327/293 +f 583/329/295 581/327/293 618/371/328 +f 618/371/328 619/372/329 583/329/295 +f 585/331/295 583/329/295 619/372/329 +f 619/372/329 620/373/329 585/331/295 +f 621/374/36 622/375/36 623/376/36 +f 623/376/36 624/377/36 621/374/36 +f 625/378/36 626/379/36 627/380/36 +f 627/380/36 628/381/36 625/378/36 +f 622/375/16 629/382/16 630/383/16 +f 630/383/16 623/376/16 622/375/16 +f 631/384/16 625/378/16 628/381/16 +f 628/381/16 632/385/16 631/384/16 +f 633/386/36 634/387/36 635/388/36 +f 635/388/36 636/389/36 633/386/36 +f 637/390/2 638/391/2 635/388/2 +f 635/388/2 634/387/2 637/390/2 +f 639/392/8 640/393/8 633/386/8 +f 633/386/8 636/389/8 639/392/8 +f 637/394/6 634/395/6 641/396/6 +f 641/396/6 642/397/6 637/394/6 +f 634/395/6 633/398/6 643/399/6 +f 643/399/6 641/396/6 634/395/6 +f 633/398/6 640/400/6 644/401/6 +f 644/401/142 643/399/142 633/398/142 +f 642/402/8 641/403/8 645/404/8 +f 645/404/8 646/405/8 642/402/8 +f 641/395/18 643/398/18 647/398/18 +f 647/398/18 645/395/18 641/395/18 +f 643/403/2 644/402/2 648/405/2 +f 648/405/2 647/404/2 643/403/2 +f 648/406/6 646/407/6 645/408/6 +f 645/408/6 647/409/16 648/406/6 +f 649/410/330 650/411/331 651/412/332 +f 651/412/332 652/413/333 649/410/330 +f 653/414/334 650/411/334 649/410/335 +f 649/410/335 654/415/335 653/414/334 +f 655/416/336 656/417/337 657/418/338 +f 657/418/338 658/419/338 655/416/336 +f 659/420/15 660/421/15 661/422/339 +f 661/422/339 662/423/339 659/420/15 +f 663/424/340 652/413/341 664/425/342 +f 664/425/342 665/426/342 663/424/340 +f 657/418/343 656/417/344 651/412/332 +f 651/412/332 650/411/331 657/418/343 +f 658/419/345 657/418/345 650/411/334 +f 650/411/334 653/427/334 658/419/345 +f 665/428/346 664/425/346 660/421/15 +f 660/421/15 659/420/15 665/428/346 +f 660/421/347 664/425/348 652/413/333 +f 652/413/333 651/412/332 660/421/347 +f 662/429/349 661/422/349 656/417/337 +f 656/417/337 655/416/336 662/429/349 +f 654/415/350 649/410/350 652/413/341 +f 652/413/341 663/424/340 654/415/350 +f 656/417/344 661/422/351 660/421/347 +f 660/421/347 651/412/332 656/417/344 +f 666/410/352 667/411/353 668/412/354 +f 668/412/354 669/413/355 666/410/352 +f 670/414/334 667/411/334 666/410/345 +f 666/410/345 671/415/345 670/414/334 +f 672/416/340 673/417/341 674/418/350 +f 674/418/350 675/419/350 672/416/340 +f 676/420/15 677/421/15 678/422/346 +f 678/422/346 679/423/346 676/420/15 +f 680/424/336 669/413/337 681/425/349 +f 681/425/349 682/426/349 680/424/336 +f 674/418/356 673/417/357 668/412/354 +f 668/412/354 667/411/353 674/418/356 +f 675/419/335 674/418/335 667/411/334 +f 667/411/334 670/427/334 675/419/335 +f 682/428/339 681/425/339 677/421/15 +f 677/421/15 676/420/15 682/428/339 +f 677/421/358 681/425/359 669/413/355 +f 669/413/355 668/412/354 677/421/358 +f 679/429/342 678/422/342 673/417/341 +f 673/417/341 672/416/340 679/429/342 +f 671/415/338 666/410/338 669/413/337 +f 669/413/337 680/424/336 671/415/338 +f 673/417/357 678/422/360 677/421/358 +f 677/421/358 668/412/354 673/417/357 +f 683/430/2 684/431/2 685/432/2 +f 685/432/2 686/433/2 683/430/2 +f 687/434/361 688/435/15 684/436/15 +f 684/436/15 683/437/361 687/434/361 +f 689/433/8 690/432/8 688/431/8 +f 688/431/8 687/430/8 689/433/8 +f 690/435/334 685/436/334 691/438/362 +f 691/438/362 692/439/362 690/435/334 +f 691/440/16 693/441/16 694/442/16 +f 694/442/16 692/443/16 691/440/16 +f 693/444/2 691/445/2 685/432/2 +f 685/432/2 684/431/2 693/444/2 +f 694/439/363 693/438/363 684/436/15 +f 684/436/15 688/435/15 694/439/363 +f 692/445/8 694/444/8 688/431/8 +f 688/431/8 690/432/8 692/445/8 +f 689/434/364 686/437/364 685/436/334 +f 685/436/334 690/435/334 689/434/364 +f 695/446/365 696/447/366 697/448/367 +f 697/448/367 698/449/368 695/446/365 +f 699/450/369 700/451/370 696/447/366 +f 696/447/366 695/446/365 699/450/369 +f 698/452/368 697/453/367 700/451/370 +f 700/451/370 699/450/369 698/452/368 +f 701/454/8 702/455/8 703/456/8 +f 696/447/366 704/457/371 705/458/372 +f 705/458/372 697/448/367 696/447/366 +f 706/459/373 704/457/371 696/447/366 +f 696/447/366 700/451/370 706/459/373 +f 705/460/372 706/459/373 700/451/370 +f 700/451/370 697/453/367 705/460/372 +f 704/457/371 703/461/374 702/462/375 +f 702/462/375 705/458/372 704/457/371 +f 701/463/376 703/461/374 704/457/371 +f 704/457/371 706/459/373 701/463/376 +f 702/464/375 701/463/376 706/459/373 +f 706/459/373 705/460/372 702/464/375 +f 707/446/377 708/447/378 709/448/379 +f 709/448/379 710/449/380 707/446/377 +f 711/450/381 712/451/382 708/447/378 +f 708/447/378 707/446/377 711/450/381 +f 710/452/380 709/453/379 712/451/382 +f 712/451/382 711/450/381 710/452/380 +f 713/454/2 714/455/2 715/456/2 +f 708/447/378 716/457/383 717/458/384 +f 717/458/384 709/448/379 708/447/378 +f 718/459/385 716/457/383 708/447/378 +f 708/447/378 712/451/382 718/459/385 +f 717/460/384 718/459/385 712/451/382 +f 712/451/382 709/453/379 717/460/384 +f 716/457/383 715/461/386 714/462/387 +f 714/462/387 717/458/384 716/457/383 +f 713/463/388 715/461/386 716/457/383 +f 716/457/383 718/459/385 713/463/388 +f 714/464/387 713/463/388 718/459/385 +f 718/459/385 717/460/384 714/464/387 +f 719/465/37 720/466/36 721/467/37 +f 721/467/37 722/468/37 719/465/37 +f 723/469/6 724/470/6 725/471/6 +f 726/472/6 723/469/6 725/471/6 +f 727/473/6 726/472/6 725/471/6 +f 727/473/6 725/471/6 728/474/142 +f 729/475/389 730/476/389 726/477/2 +f 731/478/2 729/475/389 726/477/2 +f 732/479/2 731/478/2 726/477/2 +f 732/479/2 726/477/2 727/480/2 +f 733/481/5 734/482/5 731/483/5 +f 735/484/5 733/481/5 731/483/5 +f 736/485/13 735/484/5 731/483/5 +f 736/485/13 731/483/5 732/486/13 +f 737/487/390 738/488/390 735/489/391 +f 725/490/8 737/487/390 735/489/391 +f 728/491/391 725/490/8 735/489/391 +f 728/491/391 735/489/391 736/492/391 +f 739/493/392 740/494/393 741/495/394 +f 741/495/394 742/496/395 743/497/396 +f 739/493/392 741/495/394 743/497/396 +f 744/498/397 739/493/392 743/497/396 +f 745/499/398 746/500/399 740/494/393 +f 740/494/393 739/493/392 747/501/15 +f 745/499/398 740/494/393 747/501/15 +f 748/502/15 745/499/398 747/501/15 +f 749/503/400 750/504/401 746/500/399 +f 746/500/399 745/499/398 751/505/402 +f 749/503/400 746/500/399 751/505/402 +f 752/506/403 749/503/400 751/505/402 +f 742/496/395 741/495/394 750/504/401 +f 750/504/401 749/503/400 753/507/36 +f 742/496/395 750/504/401 753/507/36 +f 754/508/37 742/496/395 753/507/36 +f 755/509/5 721/510/13 720/511/13 +f 720/511/13 756/512/5 755/509/5 +f 756/509/404 720/510/405 719/511/406 +f 719/511/406 757/512/404 756/509/404 +f 757/512/6 719/511/6 722/510/6 +f 722/510/6 758/509/6 757/512/6 +f 758/512/407 722/511/8 721/510/8 +f 721/510/8 755/509/407 758/512/407 +f 759/513/6 760/514/16 761/515/6 +f 761/515/6 762/516/6 759/513/6 +f 763/513/2 764/517/2 765/518/2 +f 765/518/2 766/516/2 763/513/2 +f 767/513/13 768/517/13 769/518/13 +f 769/518/13 770/516/13 767/513/13 +f 771/513/8 772/514/8 773/515/8 +f 773/515/8 774/516/8 771/513/8 +f 775/519/408 761/520/409 774/521/410 +f 774/521/410 776/522/334 775/519/408 +f 777/523/411 773/524/412 770/525/413 +f 770/525/413 778/526/18 777/523/411 +f 779/527/414 769/528/415 766/529/416 +f 766/529/416 780/530/334 779/527/414 +f 781/531/417 765/532/418 762/533/419 +f 762/533/419 782/534/18 781/531/417 +f 783/535/15 760/536/15 759/537/15 +f 759/537/15 784/538/226 783/535/15 +f 785/539/37 764/540/37 763/541/15 +f 763/541/15 786/542/15 785/539/37 +f 787/543/15 768/544/15 767/545/36 +f 767/545/36 788/546/36 787/543/15 +f 789/547/37 772/548/37 771/549/37 +f 771/549/37 790/550/15 789/547/37 +f 767/513/13 770/516/13 773/515/13 +f 773/515/13 772/514/13 767/513/13 +f 771/513/8 774/516/8 761/518/8 +f 761/518/8 760/517/8 771/513/8 +f 777/523/411 776/522/334 774/521/410 +f 774/521/410 773/524/412 777/523/411 +f 779/527/414 778/526/18 770/525/413 +f 770/525/413 769/528/415 779/527/414 +f 781/531/417 780/530/334 766/529/416 +f 766/529/416 765/532/418 781/531/417 +f 789/547/37 788/546/36 767/545/36 +f 767/545/36 772/548/37 789/547/37 +f 783/535/15 790/550/15 771/549/37 +f 771/549/37 760/536/15 783/535/15 +f 759/513/6 762/516/6 765/518/6 +f 765/518/6 764/517/16 759/513/6 +f 763/513/2 766/516/2 769/515/2 +f 769/515/2 768/514/2 763/513/2 +f 775/519/408 782/534/18 762/533/419 +f 762/533/419 761/520/409 775/519/408 +f 785/539/37 784/538/226 759/537/15 +f 759/537/15 764/540/37 785/539/37 +f 787/543/15 786/542/15 763/541/15 +f 763/541/15 768/544/15 787/543/15 +f 791/19/187 792/20/188 793/21/189 +f 793/21/189 794/22/190 791/19/187 +f 795/23/2 796/24/191 797/25/191 +f 797/25/191 798/26/2 795/23/2 +f 799/27/192 800/28/420 801/29/421 +f 801/29/421 802/30/421 799/27/192 +f 803/26/80 804/31/8 805/32/8 +f 805/32/8 806/23/80 803/26/80 +f 807/33/422 808/34/423 809/35/18 +f 809/35/18 810/36/194 807/33/422 +f 811/37/6 812/38/16 813/39/6 +f 814/40/424 799/41/425 802/42/16 +f 802/42/16 815/43/16 814/40/424 +f 816/44/225 817/45/225 818/46/183 +f 818/46/183 817/45/225 819/47/16 +f 819/47/16 820/48/16 818/46/183 +f 791/19/187 794/22/190 821/49/195 +f 821/49/195 822/50/196 791/19/187 +f 802/30/426 801/29/426 823/51/197 +f 823/51/197 824/52/197 802/30/426 +f 810/36/194 809/35/18 825/53/427 +f 825/53/427 826/54/427 810/36/194 +f 815/43/16 802/42/16 824/55/428 +f 824/55/428 827/56/429 815/43/16 +f 813/39/6 820/48/16 819/47/16 +f 819/47/16 811/37/6 813/39/6 +f 793/57/430 792/58/199 828/59/199 +f 828/59/199 814/60/430 793/57/430 +f 793/57/201 814/60/201 815/61/431 +f 815/61/431 794/62/431 793/57/201 +f 794/62/432 815/61/432 827/63/432 +f 827/63/432 821/64/432 794/62/432 +f 821/64/433 827/63/433 829/65/434 +f 829/65/434 822/66/434 821/64/433 +f 822/67/206 829/68/435 830/69/436 +f 830/69/436 791/70/437 822/67/206 +f 791/70/437 830/69/436 828/71/438 +f 828/71/438 792/72/208 791/70/437 +f 831/73/439 829/74/209 827/56/429 +f 827/56/429 824/55/428 831/73/439 +f 823/51/211 832/75/212 831/76/212 +f 831/76/212 824/52/213 823/51/211 +f 833/77/214 834/78/215 800/28/216 +f 800/28/216 799/27/440 833/77/214 +f 814/40/424 828/79/217 833/80/441 +f 833/80/441 799/41/425 814/40/424 +f 835/32/219 795/23/2 798/26/2 +f 798/26/2 836/31/219 835/32/219 +f 812/81/442 833/82/443 828/71/438 +f 828/71/438 813/83/444 812/81/442 +f 813/83/444 828/71/438 830/69/436 +f 830/69/436 820/84/445 813/83/444 +f 820/84/445 830/69/436 829/68/435 +f 829/68/435 818/85/446 820/84/445 +f 818/85/446 829/68/435 831/86/447 +f 831/86/447 816/87/448 818/85/446 +f 837/25/449 803/26/80 806/23/80 +f 806/23/80 838/24/449 837/25/449 +f 817/88/422 807/33/422 810/36/194 +f 810/36/194 819/89/194 817/88/422 +f 819/89/194 810/36/194 826/54/427 +f 826/54/427 811/90/427 819/89/194 +f 797/91/36 834/92/36 833/82/443 +f 833/82/443 798/93/15 797/91/36 +f 798/93/15 833/82/443 812/81/442 +f 812/81/442 836/94/15 798/93/15 +f 836/95/16 812/38/16 811/37/6 +f 811/37/6 835/96/16 836/95/16 +f 835/97/334 811/90/427 826/54/427 +f 826/54/427 795/98/334 835/97/334 +f 795/98/334 826/54/427 825/53/427 +f 825/53/427 796/99/18 795/98/334 +f 805/100/18 808/34/423 807/33/422 +f 807/33/422 806/101/194 805/100/18 +f 806/101/194 807/33/422 817/88/422 +f 817/88/422 838/102/194 806/101/194 +f 838/103/225 817/45/225 816/44/225 +f 816/44/225 837/104/225 838/103/225 +f 837/105/37 816/87/448 831/86/447 +f 831/86/447 803/106/37 837/105/37 +f 803/106/37 831/86/447 832/107/36 +f 832/107/36 804/108/36 803/106/37 +f 755/509/5 756/512/5 741/551/5 +f 741/551/5 740/552/5 755/509/5 +f 756/509/404 757/512/404 750/551/450 +f 750/551/450 741/552/450 756/509/404 +f 757/512/6 758/509/6 746/552/16 +f 746/552/16 750/551/16 757/512/6 +f 758/512/407 755/509/407 740/552/451 +f 740/552/451 746/551/451 758/512/407 +f 724/553/6 723/554/6 744/555/6 +f 744/555/6 743/556/6 724/553/6 +f 730/553/389 729/554/389 748/555/452 +f 748/555/452 747/556/452 730/553/389 +f 734/554/5 733/553/5 752/556/5 +f 752/556/5 751/555/5 734/554/5 +f 738/553/390 737/554/390 754/555/451 +f 754/555/451 753/556/451 738/553/390 +f 725/471/453 724/470/453 737/557/453 +f 726/472/454 730/558/454 723/469/454 +f 731/483/455 734/482/455 729/559/455 +f 735/484/456 738/560/456 733/481/456 +f 839/561/457 840/562/457 841/563/457 +f 842/564/458 843/565/458 844/566/458 +f 845/567/459 846/568/459 847/569/459 +f 848/570/460 849/571/460 850/572/460 +f 737/554/461 724/573/461 743/574/461 +f 743/574/461 754/555/461 737/554/461 +f 723/575/462 730/553/462 747/556/462 +f 747/556/462 744/576/462 723/575/462 +f 729/554/463 734/573/463 751/574/463 +f 751/574/463 748/555/463 729/554/463 +f 733/575/464 738/553/464 753/556/464 +f 753/556/464 752/576/464 733/575/464 +f 743/577/465 742/578/465 840/579/465 +f 840/579/465 839/580/465 743/577/465 +f 742/578/466 754/581/466 841/582/466 +f 841/582/466 840/579/466 742/578/466 +f 754/555/467 743/574/467 839/583/467 +f 839/583/467 841/584/467 754/555/467 +f 747/577/468 739/578/468 843/579/468 +f 843/579/468 842/580/468 747/577/468 +f 739/578/469 744/581/469 844/582/469 +f 844/582/469 843/579/469 739/578/469 +f 744/576/470 747/556/470 842/585/470 +f 842/585/470 844/586/470 744/576/470 +f 751/577/471 745/578/471 846/579/471 +f 846/579/471 845/580/471 751/577/471 +f 745/578/472 748/581/472 847/582/472 +f 847/582/472 846/579/472 745/578/472 +f 748/555/473 751/574/473 845/583/473 +f 845/583/473 847/584/473 748/555/473 +f 753/577/474 749/578/474 849/579/474 +f 849/579/474 848/580/474 753/577/474 +f 749/578/475 752/581/475 850/582/475 +f 850/582/475 849/579/475 749/578/475 +f 752/576/476 753/556/476 848/585/476 +f 848/585/476 850/586/476 752/576/476 +f 851/513/16 852/514/16 853/515/16 +f 853/515/16 854/516/16 851/513/16 +f 855/587/2 856/588/2 857/589/2 +f 857/589/2 858/590/2 855/587/2 +f 859/591/5 860/592/5 861/593/5 +f 861/593/5 862/594/5 859/591/5 +f 863/513/8 864/514/8 865/515/8 +f 865/515/8 866/516/8 863/513/8 +f 867/519/408 853/520/409 866/521/410 +f 866/521/410 868/522/334 867/519/408 +f 869/523/411 865/524/412 862/525/413 +f 862/525/413 870/526/18 869/523/411 +f 871/527/414 861/528/415 858/529/416 +f 858/529/416 872/530/334 871/527/414 +f 873/531/417 857/532/418 854/533/419 +f 854/533/419 874/534/194 873/531/417 +f 875/535/226 852/536/15 851/537/15 +f 851/537/15 876/538/226 875/535/226 +f 877/539/36 856/540/37 855/541/15 +f 855/541/15 878/542/15 877/539/36 +f 879/543/15 860/544/15 859/545/36 +f 859/545/36 880/546/36 879/543/15 +f 881/547/37 864/548/37 863/549/37 +f 863/549/37 882/550/15 881/547/37 +f 859/591/5 862/594/5 865/595/5 +f 865/595/5 864/596/5 859/591/5 +f 863/513/8 866/516/8 853/518/8 +f 853/518/8 852/517/8 863/513/8 +f 869/523/411 868/522/334 866/521/410 +f 866/521/410 865/524/412 869/523/411 +f 871/527/414 870/526/18 862/525/413 +f 862/525/413 861/528/415 871/527/414 +f 873/531/417 872/530/334 858/529/416 +f 858/529/416 857/532/418 873/531/417 +f 881/547/37 880/546/36 859/545/36 +f 859/545/36 864/548/37 881/547/37 +f 875/535/226 882/550/15 863/549/37 +f 863/549/37 852/536/15 875/535/226 +f 851/513/16 854/516/16 857/518/16 +f 857/518/16 856/517/16 851/513/16 +f 855/587/2 858/590/2 861/597/2 +f 861/597/2 860/598/2 855/587/2 +f 867/519/408 874/534/194 854/533/419 +f 854/533/419 853/520/409 867/519/408 +f 877/539/36 876/538/226 851/537/15 +f 851/537/15 856/540/37 877/539/36 +f 879/543/15 878/542/15 855/541/15 +f 855/541/15 860/544/15 879/543/15 +f 883/599/477 884/600/478 885/601/479 +f 885/601/479 886/602/480 883/599/477 +f 887/603/481 884/600/478 883/599/477 +f 883/599/477 888/604/482 887/603/481 +f 883/605/2 886/606/483 889/607/483 +f 889/607/483 890/608/484 883/605/2 +f 888/609/485 883/605/2 890/608/484 +f 890/608/484 891/610/486 888/609/485 +f 890/611/487 889/612/488 892/613/489 +f 892/613/489 893/614/490 890/611/487 +f 894/615/491 891/616/492 890/611/487 +f 890/611/487 893/614/490 894/615/491 +f 884/617/80 893/618/493 892/619/494 +f 892/619/494 885/620/494 884/617/80 +f 887/621/495 894/622/496 893/618/493 +f 893/618/493 884/617/80 887/621/495 +f 895/599/497 896/602/480 897/601/498 +f 897/601/498 898/600/499 895/599/497 +f 899/603/500 900/604/482 895/599/497 +f 895/599/497 898/600/499 899/603/500 +f 895/605/501 901/608/502 902/607/503 +f 902/607/503 896/606/504 895/605/501 +f 900/609/505 903/610/506 901/608/502 +f 901/608/502 895/605/501 900/609/505 +f 901/611/507 904/614/508 905/613/509 +f 905/613/509 902/612/488 901/611/507 +f 906/615/510 904/614/508 901/611/507 +f 901/611/507 903/616/492 906/615/510 +f 898/617/511 897/620/512 905/619/512 +f 905/619/512 904/618/513 898/617/511 +f 899/621/514 898/617/511 904/618/513 +f 904/618/513 906/622/515 899/621/514 +f 907/599/497 908/602/480 909/601/498 +f 909/601/498 910/600/499 907/599/497 +f 911/603/500 912/604/482 907/599/497 +f 907/599/497 910/600/499 911/603/500 +f 907/605/501 913/608/502 914/607/503 +f 914/607/503 908/606/504 907/605/501 +f 912/609/505 915/610/506 913/608/502 +f 913/608/502 907/605/501 912/609/505 +f 913/611/507 916/614/508 917/613/509 +f 917/613/509 914/612/488 913/611/507 +f 918/615/510 916/614/508 913/611/507 +f 913/611/507 915/616/492 918/615/510 +f 910/617/2 909/620/512 917/619/512 +f 917/619/512 916/618/513 910/617/2 +f 911/621/514 910/617/2 916/618/513 +f 916/618/513 918/622/515 911/621/514 +f 919/599/516 920/602/517 921/601/518 +f 921/601/518 922/600/519 919/599/516 +f 923/603/520 924/604/521 919/599/516 +f 919/599/516 922/600/519 923/603/520 +f 919/605/406 925/608/522 926/607/523 +f 926/607/523 920/606/483 919/605/406 +f 924/609/524 927/610/525 925/608/522 +f 925/608/522 919/605/406 924/609/524 +f 925/611/526 928/614/527 929/613/528 +f 929/613/528 926/612/529 925/611/526 +f 930/615/530 928/614/527 925/611/526 +f 925/611/526 927/616/531 930/615/530 +f 922/617/8 921/620/494 929/619/494 +f 929/619/494 928/618/532 922/617/8 +f 923/621/533 922/617/8 928/618/532 +f 928/618/532 930/622/534 923/621/533 +f 931/623/535 932/624/13 933/625/536 +f 933/625/536 934/626/537 931/623/535 +f 931/627/2 935/628/2 936/629/2 +f 936/629/2 932/630/2 931/627/2 +f 937/631/538 934/626/537 933/625/536 +f 933/625/536 938/632/13 937/631/538 +f 939/19/539 940/20/540 941/21/541 +f 941/21/541 942/22/542 939/19/539 +f 943/23/8 944/24/8 945/25/8 +f 945/25/8 946/26/8 943/23/8 +f 947/27/426 948/28/426 949/29/226 +f 949/29/226 950/30/226 947/27/426 +f 951/26/2 952/31/2 953/32/2 +f 953/32/2 954/23/2 951/26/2 +f 955/33/223 956/34/223 957/35/18 +f 957/35/18 958/36/18 955/33/223 +f 959/37/13 960/38/13 961/39/13 +f 962/40/13 947/41/13 950/42/13 +f 950/42/13 963/43/13 962/40/13 +f 964/44/13 965/45/13 966/46/13 +f 966/46/13 965/45/13 967/47/13 +f 967/47/13 968/48/13 966/46/13 +f 939/19/539 942/22/542 969/49/543 +f 969/49/543 970/50/544 939/19/539 +f 950/30/226 949/29/226 971/51/421 +f 971/51/421 972/52/421 950/30/226 +f 958/36/18 957/35/18 973/53/193 +f 973/53/193 974/54/193 958/36/18 +f 963/43/13 950/42/13 972/55/13 +f 972/55/13 975/56/13 963/43/13 +f 961/39/13 968/48/13 967/47/13 +f 967/47/13 959/37/13 961/39/13 +f 941/57/2 940/58/2 976/59/2 +f 976/59/545 962/60/545 941/57/545 +f 941/57/546 962/60/546 963/61/546 +f 963/61/547 942/62/547 941/57/547 +f 942/62/548 963/61/548 975/63/548 +f 975/63/548 969/64/548 942/62/548 +f 969/64/8 975/63/8 977/65/8 +f 977/65/8 970/66/8 969/64/8 +f 970/67/549 977/68/549 978/69/549 +f 978/69/550 939/70/550 970/67/550 +f 939/70/551 978/69/551 976/71/551 +f 976/71/552 940/72/552 939/70/552 +f 979/73/553 977/74/553 975/56/553 +f 975/56/554 972/55/554 979/73/554 +f 971/51/2 980/75/2 979/76/2 +f 979/76/2 972/52/2 971/51/2 +f 981/77/8 982/78/8 948/28/8 +f 948/28/8 947/27/8 981/77/8 +f 962/40/555 976/79/555 981/80/555 +f 981/80/556 947/41/556 962/40/556 +f 983/32/8 943/23/8 946/26/8 +f 946/26/8 984/31/8 983/32/8 +f 960/81/557 981/82/557 976/71/557 +f 976/71/557 961/83/557 960/81/557 +f 961/83/552 976/71/552 978/69/552 +f 978/69/552 968/84/552 961/83/552 +f 968/84/549 978/69/549 977/68/549 +f 977/68/558 966/85/558 968/84/558 +f 966/85/559 977/68/559 979/86/559 +f 979/86/559 964/87/559 966/85/559 +f 985/25/2 951/26/2 954/23/2 +f 954/23/2 986/24/2 985/25/2 +f 965/88/223 955/33/223 958/36/223 +f 958/36/223 967/89/223 965/88/223 +f 967/89/193 958/36/193 974/54/193 +f 974/54/193 959/90/193 967/89/193 +f 945/91/36 982/92/36 981/82/36 +f 981/82/36 946/93/36 945/91/36 +f 946/93/36 981/82/36 960/81/36 +f 960/81/36 984/94/36 946/93/36 +f 984/95/13 960/38/13 959/37/13 +f 959/37/13 983/96/13 984/95/13 +f 983/97/18 959/90/18 974/54/18 +f 974/54/18 943/98/18 983/97/18 +f 943/98/18 974/54/18 973/53/18 +f 973/53/18 944/99/18 943/98/18 +f 953/100/18 956/34/18 955/33/18 +f 955/33/18 954/101/18 953/100/18 +f 954/101/18 955/33/18 965/88/18 +f 965/88/18 986/102/18 954/101/18 +f 986/103/13 965/45/13 964/44/13 +f 964/44/13 985/104/13 986/103/13 +f 985/105/36 964/87/36 979/86/36 +f 979/86/36 951/106/36 985/105/36 +f 951/106/36 979/86/36 980/107/36 +f 980/107/36 952/108/36 951/106/36 +f 987/633/15 988/634/15 989/635/15 +f 989/635/15 990/636/15 987/633/15 +f 988/634/13 991/637/13 992/638/13 +f 992/638/13 989/635/13 988/634/13 +f 993/639/560 994/640/561 995/641/562 +f 995/641/562 996/642/563 993/639/560 +f 997/643/564 998/644/564 999/645/564 +f 999/645/565 1000/646/565 997/643/565 +f 1001/647/566 1000/646/566 999/645/566 +f 999/645/566 1002/648/566 1001/647/566 +f 994/640/561 1003/641/567 997/649/568 +f 997/649/568 1000/650/569 994/640/561 +f 993/639/560 1004/642/570 1003/641/567 +f 1003/641/567 994/640/561 993/639/560 +f 1001/649/571 995/641/562 994/640/561 +f 994/640/561 1000/650/569 1001/649/571 +f 997/651/2 1003/652/2 1005/653/2 +f 1005/653/2 998/654/2 997/651/2 +f 1006/654/8 995/651/8 1001/652/8 +f 1001/652/8 1002/653/8 1006/654/8 +f 998/655/572 1005/656/572 1007/657/572 +f 1007/657/573 999/658/573 998/655/573 +f 1007/657/574 1006/659/574 1002/660/574 +f 1002/660/575 999/658/575 1007/657/575 +f 1008/661/13 1009/662/13 1010/663/13 +f 1010/663/13 1011/664/13 1008/661/13 +f 1012/665/576 1013/666/577 1014/667/578 +f 1014/667/578 1015/668/578 1012/665/576 +f 1012/669/579 1015/670/580 1016/671/580 +f 1016/671/580 1017/672/579 1012/669/579 +f 1017/665/581 1016/668/582 1018/667/582 +f 1018/667/582 1019/666/583 1017/665/581 +f 1019/672/584 1018/671/585 1014/670/585 +f 1014/670/585 1013/669/584 1019/672/584 +f 1013/666/577 1012/665/576 1010/673/586 +f 1010/673/586 1009/674/586 1013/666/577 +f 1012/669/579 1017/672/579 1011/675/587 +f 1011/675/587 1010/676/587 1012/669/579 +f 1011/673/588 1017/665/581 1019/666/583 +f 1019/666/583 1008/674/588 1011/673/588 +f 1019/672/584 1013/669/584 1009/676/589 +f 1009/676/589 1008/675/589 1019/672/584 +f 1020/203/8 1021/204/8 1022/205/8 +f 1022/205/8 1023/206/8 1020/203/8 +f 1023/206/590 1022/207/590 1024/208/590 +f 1024/208/591 1025/209/591 1023/206/591 +f 1026/210/592 1020/203/592 1023/206/592 +f 1023/206/592 1025/209/592 1026/210/592 +f 1027/211/593 1021/212/593 1020/203/593 +f 1020/203/594 1026/210/594 1027/211/594 +f 1025/209/595 1024/208/595 1028/213/595 +f 1028/213/596 1029/214/596 1025/209/596 +f 1029/214/597 1030/215/597 1026/210/597 +f 1026/210/598 1025/209/598 1029/214/598 +f 1026/210/599 1030/215/599 1031/216/599 +f 1031/216/600 1027/211/600 1026/210/600 +f 1032/217/2 1033/218/2 1034/219/2 +f 1034/219/2 1035/220/2 1032/217/2 +f 1036/221/601 1032/222/601 1035/220/601 +f 1035/220/595 1037/223/595 1036/221/595 +f 1038/224/602 1037/223/602 1035/220/602 +f 1035/220/602 1034/219/602 1038/224/602 +f 1039/225/599 1038/224/599 1034/219/599 +f 1034/219/599 1033/226/599 1039/225/599 +f 1028/227/591 1036/221/591 1037/223/591 +f 1037/223/603 1029/214/603 1028/227/603 +f 1038/224/604 1030/215/604 1029/214/604 +f 1029/214/605 1037/223/605 1038/224/605 +f 1038/224/606 1039/225/606 1031/228/606 +f 1031/228/594 1030/215/594 1038/224/594 +f 1040/229/8 1041/230/8 1042/231/8 +f 1042/231/8 1043/232/8 1040/229/8 +f 1044/233/607 1045/234/607 1043/232/607 +f 1043/232/592 1042/231/592 1044/233/592 +f 1046/235/608 1044/233/608 1042/231/608 +f 1042/231/608 1041/236/608 1046/235/608 +f 1044/233/598 1047/237/598 1048/238/598 +f 1048/238/598 1045/234/598 1044/233/598 +f 1044/233/609 1046/239/609 1049/240/609 +f 1049/240/596 1047/237/596 1044/233/596 +f 1050/241/2 1051/242/2 1052/243/2 +f 1052/243/2 1053/244/2 1050/241/2 +f 1054/245/602 1050/241/602 1053/244/602 +f 1053/244/602 1055/246/602 1054/245/602 +f 1056/247/608 1051/248/608 1050/241/608 +f 1050/241/608 1054/245/608 1056/247/608 +f 1048/238/605 1047/237/605 1054/245/605 +f 1054/245/605 1055/246/605 1048/238/605 +f 1054/245/603 1047/237/603 1049/240/603 +f 1049/240/608 1056/249/608 1054/245/608 +f 1057/229/8 1058/230/8 1059/231/8 +f 1059/231/8 1060/232/8 1057/229/8 +f 1061/233/610 1062/234/610 1060/232/610 +f 1060/232/611 1059/231/611 1061/233/611 +f 1063/235/612 1061/233/612 1059/231/612 +f 1059/231/613 1058/236/613 1063/235/613 +f 1061/233/614 1064/237/614 1065/238/614 +f 1065/238/615 1062/234/615 1061/233/615 +f 1061/233/616 1063/239/616 1066/240/616 +f 1066/240/612 1064/237/612 1061/233/612 +f 1067/241/2 1068/242/2 1069/243/2 +f 1069/243/2 1070/244/2 1067/241/2 +f 1071/245/617 1067/241/617 1070/244/617 +f 1070/244/618 1072/246/618 1071/245/618 +f 1073/247/612 1068/248/612 1067/241/612 +f 1067/241/613 1071/245/613 1073/247/613 +f 1065/238/619 1064/237/619 1071/245/619 +f 1071/245/620 1072/246/620 1065/238/620 +f 1071/245/613 1064/237/613 1066/240/613 +f 1066/240/621 1073/249/621 1071/245/621 +f 1074/229/8 1075/230/8 1076/231/8 +f 1076/231/8 1077/232/8 1074/229/8 +f 1078/233/622 1079/234/622 1077/232/622 +f 1077/232/622 1076/231/622 1078/233/622 +f 1080/235/623 1078/233/623 1076/231/623 +f 1076/231/624 1075/236/624 1080/235/624 +f 1078/233/625 1081/237/625 1082/238/625 +f 1082/238/626 1079/234/626 1078/233/626 +f 1078/233/624 1080/239/624 1083/240/624 +f 1083/240/627 1081/237/627 1078/233/627 +f 1084/241/2 1085/242/2 1086/243/2 +f 1086/243/2 1087/244/2 1084/241/2 +f 1088/245/628 1084/241/628 1087/244/628 +f 1087/244/628 1089/246/628 1088/245/628 +f 1090/247/623 1085/248/623 1084/241/623 +f 1084/241/624 1088/245/624 1090/247/624 +f 1082/238/629 1081/237/629 1088/245/629 +f 1088/245/630 1089/246/630 1082/238/630 +f 1088/245/631 1081/237/631 1083/240/631 +f 1083/240/623 1090/249/623 1088/245/623 +f 1091/229/8 1092/230/8 1093/231/8 +f 1093/231/8 1094/232/8 1091/229/8 +f 1095/233/632 1096/234/632 1094/232/632 +f 1094/232/622 1093/231/622 1095/233/622 +f 1097/235/623 1095/233/623 1093/231/623 +f 1093/231/623 1092/236/623 1097/235/623 +f 1095/233/626 1098/237/626 1099/238/626 +f 1099/238/626 1096/234/626 1095/233/626 +f 1095/233/631 1097/239/631 1100/240/631 +f 1100/240/624 1098/237/624 1095/233/624 +f 1101/241/2 1102/242/2 1103/243/2 +f 1103/243/2 1104/244/2 1101/241/2 +f 1105/245/628 1101/241/628 1104/244/628 +f 1104/244/633 1106/246/633 1105/245/633 +f 1107/247/624 1102/248/624 1101/241/624 +f 1101/241/624 1105/245/624 1107/247/624 +f 1099/238/630 1098/237/630 1105/245/630 +f 1105/245/630 1106/246/630 1099/238/630 +f 1105/245/623 1098/237/623 1100/240/623 +f 1100/240/627 1107/249/627 1105/245/627 +f 1108/229/8 1109/230/8 1110/231/8 +f 1110/231/8 1111/232/8 1108/229/8 +f 1112/233/622 1113/234/622 1111/232/622 +f 1111/232/622 1110/231/622 1112/233/622 +f 1114/235/624 1112/233/624 1110/231/624 +f 1110/231/624 1109/236/624 1114/235/624 +f 1112/233/625 1115/237/625 1116/238/625 +f 1116/238/626 1113/234/626 1112/233/626 +f 1112/233/624 1114/239/624 1117/240/624 +f 1117/240/624 1115/237/624 1112/233/624 +f 1118/241/2 1119/242/2 1120/243/2 +f 1120/243/2 1121/244/2 1118/241/2 +f 1122/245/628 1118/241/628 1121/244/628 +f 1121/244/628 1123/246/628 1122/245/628 +f 1124/247/623 1119/248/623 1118/241/623 +f 1118/241/623 1122/245/623 1124/247/623 +f 1116/238/629 1115/237/629 1122/245/629 +f 1122/245/630 1123/246/630 1116/238/630 +f 1122/245/623 1115/237/623 1117/240/623 +f 1117/240/623 1124/249/623 1122/245/623 +f 1125/229/8 1126/230/8 1127/231/8 +f 1127/231/8 1128/232/8 1125/229/8 +f 1129/233/634 1130/234/634 1128/232/634 +f 1128/232/634 1127/231/634 1129/233/634 +f 1131/235/635 1129/233/635 1127/231/635 +f 1127/231/636 1126/236/636 1131/235/636 +f 1129/233/637 1132/237/637 1133/238/637 +f 1133/238/638 1130/234/638 1129/233/638 +f 1129/233/635 1131/239/635 1134/240/635 +f 1134/240/635 1132/237/635 1129/233/635 +f 1135/241/2 1136/242/2 1137/243/2 +f 1137/243/2 1138/244/2 1135/241/2 +f 1139/245/639 1135/241/639 1138/244/639 +f 1138/244/639 1140/246/639 1139/245/639 +f 1141/247/640 1136/248/640 1135/241/640 +f 1135/241/641 1139/245/641 1141/247/641 +f 1133/238/642 1132/237/642 1139/245/642 +f 1139/245/643 1140/246/643 1133/238/643 +f 1139/245/641 1132/237/641 1134/240/641 +f 1134/240/641 1141/249/641 1139/245/641 +f 1142/231/8 1143/230/8 1144/229/8 +f 1144/229/8 1145/232/8 1142/231/8 +f 1145/232/644 1146/234/644 1147/233/644 +f 1147/233/644 1142/231/644 1145/232/644 +f 1142/231/645 1147/233/645 1148/235/645 +f 1148/235/645 1143/236/645 1142/231/645 +f 1149/238/646 1150/237/646 1147/233/646 +f 1147/233/647 1146/234/647 1149/238/647 +f 1147/233/648 1150/237/648 1151/240/648 +f 1151/240/648 1148/239/648 1147/233/648 +f 1152/243/2 1153/242/2 1154/241/2 +f 1154/241/2 1155/244/2 1152/243/2 +f 1155/244/649 1154/241/649 1156/245/649 +f 1156/245/649 1157/246/649 1155/244/649 +f 1154/241/648 1153/248/648 1158/247/648 +f 1158/247/648 1156/245/648 1154/241/648 +f 1156/245/650 1150/237/650 1149/238/650 +f 1149/238/651 1157/246/651 1156/245/651 +f 1156/245/645 1158/249/645 1151/240/645 +f 1151/240/645 1150/237/645 1156/245/645 +f 1159/231/8 1160/230/8 1161/229/8 +f 1161/229/8 1162/232/8 1159/231/8 +f 1162/232/622 1163/234/622 1164/233/622 +f 1164/233/652 1159/231/652 1162/232/652 +f 1159/231/653 1164/233/653 1165/235/653 +f 1165/235/653 1160/236/653 1159/231/653 +f 1166/238/625 1167/237/625 1164/233/625 +f 1164/233/626 1163/234/626 1166/238/626 +f 1164/233/653 1167/237/653 1168/240/653 +f 1168/240/654 1165/239/654 1164/233/654 +f 1169/243/2 1170/242/2 1171/241/2 +f 1171/241/2 1172/244/2 1169/243/2 +f 1172/244/628 1171/241/628 1173/245/628 +f 1173/245/628 1174/246/628 1172/244/628 +f 1171/241/654 1170/248/654 1175/247/654 +f 1175/247/654 1173/245/654 1171/241/654 +f 1173/245/629 1167/237/629 1166/238/629 +f 1166/238/630 1174/246/630 1173/245/630 +f 1173/245/653 1175/249/653 1168/240/653 +f 1168/240/654 1167/237/654 1173/245/654 +f 1176/677/36 1177/678/36 1178/679/36 +f 1178/679/36 1179/680/36 1176/677/36 +f 1180/681/2 1176/677/2 1179/680/2 +f 1179/680/2 1181/682/2 1180/681/2 +f 937/627/8 938/630/8 1182/629/8 +f 1182/629/8 1183/628/8 937/627/8 +f 1184/683/15 1185/684/15 1186/685/15 +f 1186/685/15 1187/686/15 1184/683/15 +f 1185/684/8 1188/687/8 1189/688/8 +f 1189/688/8 1186/685/8 1185/684/8 +f 1190/599/655 1191/600/656 1192/601/657 +f 1192/601/657 1193/602/658 1190/599/655 +f 1194/603/659 1191/600/656 1190/599/655 +f 1190/599/655 1195/604/660 1194/603/659 +f 1190/605/13 1193/606/661 1196/607/661 +f 1196/607/661 1197/608/662 1190/605/13 +f 1195/609/663 1190/605/13 1197/608/662 +f 1197/608/662 1198/610/664 1195/609/663 +f 1197/611/665 1196/612/666 1199/613/667 +f 1199/613/667 1200/614/668 1197/611/665 +f 1201/615/669 1198/616/670 1197/611/665 +f 1197/611/665 1200/614/668 1201/615/669 +f 1191/617/16 1200/618/671 1199/619/672 +f 1199/619/672 1192/620/672 1191/617/16 +f 1194/621/673 1201/622/674 1200/618/671 +f 1200/618/671 1191/617/16 1194/621/673 +f 1202/599/675 1203/602/676 1204/601/677 +f 1204/601/677 1205/600/678 1202/599/675 +f 1206/603/679 1207/604/680 1202/599/675 +f 1202/599/675 1205/600/678 1206/603/679 +f 1202/605/681 1208/608/682 1209/607/683 +f 1209/607/683 1203/606/661 1202/605/681 +f 1207/609/684 1210/610/685 1208/608/682 +f 1208/608/682 1202/605/681 1207/609/684 +f 1208/611/686 1211/614/687 1212/613/688 +f 1212/613/688 1209/612/689 1208/611/686 +f 1213/615/690 1211/614/687 1208/611/686 +f 1208/611/686 1210/616/691 1213/615/690 +f 1205/617/16 1204/620/672 1212/619/672 +f 1212/619/672 1211/618/692 1205/617/16 +f 1206/621/693 1205/617/16 1211/618/692 +f 1211/618/692 1213/622/694 1206/621/693 +f 1214/599/695 1215/602/517 1216/601/518 +f 1216/601/518 1217/600/519 1214/599/695 +f 1218/603/520 1219/604/521 1214/599/695 +f 1214/599/695 1217/600/519 1218/603/520 +f 1214/605/406 1220/608/696 1221/607/523 +f 1221/607/523 1215/606/483 1214/605/406 +f 1219/609/524 1222/610/525 1220/608/696 +f 1220/608/696 1214/605/406 1219/609/524 +f 1220/611/526 1223/614/527 1224/613/528 +f 1224/613/528 1221/612/529 1220/611/526 +f 1225/615/530 1223/614/527 1220/611/526 +f 1220/611/526 1222/616/531 1225/615/530 +f 1217/617/8 1216/620/494 1224/619/494 +f 1224/619/494 1223/618/532 1217/617/8 +f 1218/621/533 1217/617/8 1223/618/532 +f 1223/618/532 1225/622/534 1218/621/533 +f 1226/599/477 1227/600/478 1228/601/479 +f 1228/601/479 1229/602/480 1226/599/477 +f 1230/603/481 1227/600/478 1226/599/477 +f 1226/599/477 1231/604/482 1230/603/481 +f 1226/605/2 1229/606/483 1232/607/483 +f 1232/607/483 1233/608/484 1226/605/2 +f 1231/609/485 1226/605/2 1233/608/484 +f 1233/608/484 1234/610/486 1231/609/485 +f 1233/611/487 1232/612/488 1235/613/489 +f 1235/613/489 1236/614/490 1233/611/487 +f 1237/615/491 1234/616/492 1233/611/487 +f 1233/611/487 1236/614/490 1237/615/491 +f 1227/617/8 1236/618/493 1235/619/494 +f 1235/619/494 1228/620/494 1227/617/8 +f 1230/621/495 1237/622/496 1236/618/493 +f 1236/618/493 1227/617/8 1230/621/495 +f 1238/599/697 1239/600/698 1240/601/699 +f 1240/601/699 1241/602/517 1238/599/697 +f 1242/603/700 1239/600/698 1238/599/697 +f 1238/599/697 1243/604/521 1242/603/700 +f 1238/605/80 1241/606/504 1244/607/504 +f 1244/607/504 1245/608/701 1238/605/80 +f 1243/609/702 1238/605/80 1245/608/701 +f 1245/608/701 1246/610/703 1243/609/702 +f 1245/611/704 1244/612/529 1247/613/705 +f 1247/613/705 1248/614/706 1245/611/704 +f 1249/615/707 1246/616/531 1245/611/704 +f 1245/611/704 1248/614/706 1249/615/707 +f 1239/617/2 1248/618/708 1247/619/512 +f 1247/619/512 1240/620/512 1239/617/2 +f 1242/621/709 1249/622/710 1248/618/708 +f 1248/618/708 1239/617/2 1242/621/709 +f 1250/599/697 1251/600/711 1252/601/699 +f 1252/601/699 1253/602/517 1250/599/697 +f 1254/603/700 1251/600/711 1250/599/697 +f 1250/599/697 1255/604/521 1254/603/700 +f 1250/605/8 1253/606/504 1256/607/504 +f 1256/607/504 1257/608/712 1250/605/8 +f 1255/609/702 1250/605/8 1257/608/712 +f 1257/608/712 1258/610/703 1255/609/702 +f 1257/611/704 1256/612/529 1259/613/705 +f 1259/613/705 1260/614/706 1257/611/704 +f 1261/615/707 1258/616/531 1257/611/704 +f 1257/611/704 1260/614/706 1261/615/707 +f 1251/617/2 1260/618/708 1259/619/512 +f 1259/619/512 1252/620/512 1251/617/2 +f 1254/621/709 1261/622/710 1260/618/708 +f 1260/618/708 1251/617/2 1254/621/709 +f 1262/599/713 1263/600/711 1264/601/699 +f 1264/601/699 1265/602/517 1262/599/713 +f 1266/603/700 1263/600/711 1262/599/713 +f 1262/599/713 1267/604/521 1266/603/700 +f 1262/605/8 1265/606/504 1268/607/504 +f 1268/607/504 1269/608/712 1262/605/8 +f 1267/609/702 1262/605/8 1269/608/712 +f 1269/608/712 1270/610/703 1267/609/702 +f 1269/611/704 1268/612/529 1271/613/705 +f 1271/613/705 1272/614/706 1269/611/704 +f 1273/615/707 1270/616/531 1269/611/704 +f 1269/611/704 1272/614/706 1273/615/707 +f 1263/617/2 1272/618/708 1271/619/512 +f 1271/619/512 1264/620/512 1263/617/2 +f 1266/621/709 1273/622/710 1272/618/708 +f 1272/618/708 1263/617/2 1266/621/709 +f 1274/599/516 1275/602/517 1276/601/518 +f 1276/601/518 1277/600/714 1274/599/516 +f 1278/603/520 1279/604/521 1274/599/516 +f 1274/599/516 1277/600/714 1278/603/520 +f 1274/605/406 1280/608/522 1281/607/523 +f 1281/607/523 1275/606/483 1274/605/406 +f 1279/609/524 1282/610/525 1280/608/522 +f 1280/608/522 1274/605/406 1279/609/524 +f 1280/611/526 1283/614/527 1284/613/528 +f 1284/613/528 1281/612/529 1280/611/526 +f 1285/615/530 1283/614/527 1280/611/526 +f 1280/611/526 1282/616/531 1285/615/530 +f 1277/617/8 1276/620/494 1284/619/494 +f 1284/619/494 1283/618/532 1277/617/8 +f 1278/621/533 1277/617/8 1283/618/532 +f 1283/618/532 1285/622/534 1278/621/533 +f 1286/599/477 1287/600/478 1288/601/479 +f 1288/601/479 1289/602/480 1286/599/477 +f 1290/603/481 1287/600/478 1286/599/477 +f 1286/599/477 1291/604/482 1290/603/481 +f 1286/605/2 1289/606/483 1292/607/483 +f 1292/607/483 1293/608/484 1286/605/2 +f 1291/609/485 1286/605/2 1293/608/484 +f 1293/608/484 1294/610/486 1291/609/485 +f 1293/611/487 1292/612/488 1295/613/489 +f 1295/613/489 1296/614/490 1293/611/487 +f 1297/615/491 1294/616/492 1293/611/487 +f 1293/611/487 1296/614/490 1297/615/491 +f 1287/617/8 1296/618/493 1295/619/494 +f 1295/619/494 1288/620/494 1287/617/8 +f 1290/621/495 1297/622/496 1296/618/493 +f 1296/618/493 1287/617/8 1290/621/495 +f 1298/689/715 1299/690/716 1300/691/717 +f 1300/691/717 1301/692/718 1298/689/715 +f 1302/693/719 1299/690/719 1298/689/720 +f 1298/689/720 1303/694/720 1302/693/719 +f 1304/695/721 1305/696/722 1306/697/723 +f 1306/697/723 1307/698/723 1304/695/721 +f 1308/699/724 1309/700/724 1310/701/725 +f 1310/701/725 1311/702/725 1308/699/724 +f 1312/703/726 1301/692/727 1313/704/728 +f 1313/704/728 1314/705/728 1312/703/726 +f 1306/697/729 1305/696/730 1300/691/717 +f 1300/691/717 1299/690/716 1306/697/729 +f 1307/698/731 1306/697/731 1299/690/719 +f 1299/690/719 1302/706/719 1307/698/731 +f 1314/707/732 1313/704/732 1309/700/724 +f 1309/700/724 1308/699/724 1314/707/732 +f 1309/700/733 1313/704/734 1301/692/718 +f 1301/692/718 1300/691/717 1309/700/733 +f 1311/708/735 1310/701/735 1305/696/722 +f 1305/696/722 1304/695/721 1311/708/735 +f 1303/694/736 1298/689/736 1301/692/727 +f 1301/692/727 1312/703/726 1303/694/736 +f 1305/696/730 1310/701/737 1309/700/733 +f 1309/700/733 1300/691/717 1305/696/730 +f 1315/709/738 1316/710/739 1317/711/740 +f 1317/711/740 1318/712/741 1315/709/738 +f 1319/713/742 1320/714/742 1316/715/742 +f 1316/715/742 1315/716/742 1319/713/742 +f 1321/712/743 1322/711/744 1320/710/745 +f 1320/710/745 1319/709/746 1321/712/743 +f 1321/717/747 1318/718/747 1317/719/747 +f 1317/719/747 1322/720/747 1321/717/747 +f 1323/721/36 1324/722/36 1325/723/36 +f 1325/723/36 1326/724/36 1323/721/36 +f 1327/725/748 1328/726/748 1329/727/749 +f 1329/727/749 1330/728/749 1327/725/748 +f 1326/729/750 1325/730/750 1328/726/748 +f 1328/726/748 1327/725/748 1326/729/750 +f 1331/731/751 1327/732/752 1330/733/753 +f 1330/733/753 1332/734/753 1331/731/751 +f 1323/735/754 1326/736/754 1327/732/752 +f 1327/732/752 1331/731/751 1323/735/754 +f 1333/726/755 1331/725/755 1332/728/756 +f 1332/728/756 1334/727/756 1333/726/755 +f 1324/730/757 1323/729/757 1331/725/755 +f 1331/725/755 1333/726/755 1324/730/757 +f 1328/737/758 1333/738/758 1334/739/759 +f 1334/739/759 1329/740/759 1328/737/758 +f 1325/741/760 1324/742/760 1333/738/758 +f 1333/738/758 1328/737/758 1325/741/760 +f 1335/743/36 1336/744/36 1337/745/36 +f 1337/745/36 1338/746/36 1335/743/36 +f 1339/747/761 1340/748/761 1341/749/762 +f 1341/749/762 1342/750/762 1339/747/761 +f 1338/751/763 1337/752/763 1340/748/761 +f 1340/748/761 1339/747/761 1338/751/763 +f 1343/753/764 1339/754/765 1342/755/766 +f 1342/755/766 1344/756/766 1343/753/764 +f 1335/757/767 1338/758/767 1339/754/765 +f 1339/754/765 1343/753/764 1335/757/767 +f 1345/748/768 1343/747/769 1344/750/770 +f 1344/750/770 1346/749/770 1345/748/768 +f 1336/752/771 1335/751/771 1343/747/769 +f 1343/747/769 1345/748/768 1336/752/771 +f 1340/754/772 1345/759/773 1346/760/774 +f 1346/760/774 1341/755/774 1340/754/772 +f 1337/758/775 1336/761/775 1345/759/773 +f 1345/759/773 1340/754/772 1337/758/775 +f 1347/762/776 1348/763/777 1349/764/778 +f 1349/764/778 1350/765/778 1347/762/776 +f 1351/766/779 1352/767/779 1348/763/777 +f 1348/763/777 1347/762/776 1351/766/779 +f 1353/768/780 1347/769/781 1350/770/782 +f 1350/770/782 1354/771/782 1353/768/780 +f 1355/772/783 1351/773/783 1347/769/781 +f 1347/769/781 1353/768/780 1355/772/783 +f 1356/763/784 1353/762/785 1354/765/786 +f 1354/765/786 1357/764/786 1356/763/784 +f 1358/767/787 1355/766/787 1353/762/785 +f 1353/762/785 1356/763/784 1358/767/787 +f 1348/774/788 1356/768/789 1357/771/790 +f 1357/771/790 1349/775/790 1348/774/788 +f 1352/776/791 1358/777/791 1356/768/789 +f 1356/768/789 1348/774/788 1352/776/791 +f 1359/778/792 1360/779/793 1361/780/794 +f 1361/780/794 1362/781/794 1359/778/792 +f 1363/782/795 1364/783/795 1360/779/793 +f 1360/779/793 1359/778/792 1363/782/795 +f 1365/784/796 1359/785/797 1362/786/798 +f 1362/786/798 1366/787/798 1365/784/796 +f 1367/788/799 1363/789/799 1359/785/797 +f 1359/785/797 1365/784/796 1367/788/799 +f 1368/790/800 1365/791/801 1366/792/802 +f 1366/792/802 1369/793/802 1368/790/800 +f 1370/794/803 1367/795/803 1365/791/801 +f 1365/791/801 1368/790/800 1370/794/803 +f 1360/785/804 1368/796/805 1369/787/806 +f 1369/787/806 1361/797/806 1360/785/804 +f 1364/789/807 1370/798/807 1368/796/805 +f 1368/796/805 1360/785/804 1364/789/807 +f 1371/799/36 1372/800/36 1373/801/36 +f 1373/801/36 1374/802/36 1371/799/36 +f 1375/803/808 1376/804/809 1377/805/810 +f 1377/805/810 1378/806/810 1375/803/808 +f 1374/807/811 1373/808/811 1376/804/809 +f 1376/804/809 1375/803/808 1374/807/811 +f 1379/809/812 1375/810/812 1378/811/813 +f 1378/811/813 1380/812/813 1379/809/812 +f 1371/813/814 1374/814/814 1375/810/812 +f 1375/810/812 1379/809/812 1371/813/814 +f 1381/804/815 1379/803/816 1380/806/817 +f 1380/806/817 1382/805/817 1381/804/815 +f 1372/808/818 1371/807/818 1379/803/816 +f 1379/803/816 1381/804/815 1372/808/818 +f 1376/815/819 1381/809/819 1382/816/820 +f 1382/816/820 1377/817/820 1376/815/819 +f 1373/818/821 1372/819/822 1381/809/819 +f 1381/809/819 1376/815/819 1373/818/821 +f 1383/820/36 1384/821/36 1385/822/36 +f 1385/822/36 1386/823/36 1383/820/36 +f 1387/824/823 1388/825/824 1389/826/825 +f 1389/826/825 1390/827/825 1387/824/823 +f 1386/828/826 1385/829/826 1388/825/824 +f 1388/825/824 1387/824/823 1386/828/826 +f 1391/737/827 1387/738/828 1390/734/829 +f 1390/734/829 1392/740/829 1391/737/827 +f 1383/741/830 1386/735/830 1387/738/828 +f 1387/738/828 1391/737/827 1383/741/830 +f 1393/825/831 1391/824/832 1392/827/833 +f 1392/827/833 1394/826/833 1393/825/831 +f 1384/829/834 1383/828/834 1391/824/832 +f 1391/824/832 1393/825/831 1384/829/834 +f 1388/731/835 1393/737/836 1394/733/837 +f 1394/733/837 1389/830/837 1388/731/835 +f 1385/831/838 1384/736/838 1393/737/836 +f 1393/737/836 1388/731/835 1385/831/838 +f 1395/832/36 1396/833/36 1397/834/36 +f 1397/834/36 1398/835/36 1395/832/36 +f 1399/836/839 1400/837/839 1401/838/840 +f 1401/838/840 1402/839/840 1399/836/839 +f 1398/840/841 1397/841/841 1400/837/839 +f 1400/837/839 1399/836/839 1398/840/841 +f 1403/737/842 1399/731/842 1402/734/843 +f 1402/734/843 1404/733/843 1403/737/842 +f 1395/741/844 1398/735/844 1399/731/842 +f 1399/731/842 1403/737/842 1395/741/844 +f 1405/837/845 1403/836/845 1404/839/846 +f 1404/839/846 1406/838/846 1405/837/845 +f 1396/841/847 1395/840/847 1403/836/845 +f 1403/836/845 1405/837/845 1396/841/847 +f 1400/842/848 1405/732/848 1406/843/849 +f 1406/843/849 1401/734/849 1400/842/848 +f 1397/831/850 1396/736/851 1405/732/848 +f 1405/732/848 1400/842/848 1397/831/850 +f 1407/721/36 1408/722/36 1409/723/36 +f 1409/723/36 1410/724/36 1407/721/36 +f 1411/725/852 1412/726/748 1413/727/749 +f 1413/727/749 1414/728/749 1411/725/852 +f 1410/729/750 1409/730/750 1412/726/748 +f 1412/726/748 1411/725/852 1410/729/750 +f 1415/731/751 1411/732/752 1414/733/753 +f 1414/733/753 1416/734/753 1415/731/751 +f 1407/735/754 1410/736/754 1411/732/752 +f 1411/732/752 1415/731/751 1407/735/754 +f 1417/726/755 1415/725/755 1416/728/756 +f 1416/728/756 1418/727/756 1417/726/755 +f 1408/730/757 1407/729/757 1415/725/755 +f 1415/725/755 1417/726/755 1408/730/757 +f 1412/737/758 1417/738/758 1418/739/759 +f 1418/739/759 1413/740/759 1412/737/758 +f 1409/741/760 1408/742/760 1417/738/758 +f 1417/738/758 1412/737/758 1409/741/760 +f 1419/743/36 1420/744/36 1421/745/36 +f 1421/745/36 1422/746/36 1419/743/36 +f 1423/747/761 1424/748/761 1425/749/762 +f 1425/749/762 1426/750/762 1423/747/761 +f 1422/751/763 1421/752/763 1424/748/761 +f 1424/748/761 1423/747/761 1422/751/763 +f 1427/753/764 1423/754/765 1426/755/766 +f 1426/755/766 1428/756/766 1427/753/764 +f 1419/757/767 1422/758/767 1423/754/765 +f 1423/754/765 1427/753/764 1419/757/767 +f 1429/748/768 1427/747/769 1428/750/770 +f 1428/750/770 1430/749/770 1429/748/768 +f 1420/752/771 1419/751/771 1427/747/769 +f 1427/747/769 1429/748/768 1420/752/771 +f 1424/754/772 1429/759/773 1430/760/774 +f 1430/760/774 1425/755/774 1424/754/772 +f 1421/758/775 1420/761/775 1429/759/773 +f 1429/759/773 1424/754/772 1421/758/775 +f 1431/762/776 1432/763/777 1433/764/778 +f 1433/764/778 1434/765/778 1431/762/776 +f 1435/766/779 1436/767/779 1432/763/777 +f 1432/763/777 1431/762/776 1435/766/779 +f 1437/768/780 1431/769/781 1434/770/782 +f 1434/770/782 1438/771/782 1437/768/780 +f 1439/772/783 1435/773/783 1431/769/781 +f 1431/769/781 1437/768/780 1439/772/783 +f 1440/763/784 1437/762/785 1438/765/786 +f 1438/765/786 1441/764/786 1440/763/784 +f 1442/767/787 1439/766/787 1437/762/785 +f 1437/762/785 1440/763/784 1442/767/787 +f 1432/774/788 1440/768/789 1441/771/790 +f 1441/771/790 1433/775/790 1432/774/788 +f 1436/776/791 1442/777/791 1440/768/789 +f 1440/768/789 1432/774/788 1436/776/791 +f 1443/778/792 1444/779/793 1445/780/794 +f 1445/780/794 1446/781/794 1443/778/792 +f 1447/782/795 1448/783/795 1444/779/793 +f 1444/779/793 1443/778/792 1447/782/795 +f 1449/784/796 1443/785/797 1446/786/798 +f 1446/786/798 1450/787/798 1449/784/796 +f 1451/788/799 1447/789/799 1443/785/797 +f 1443/785/797 1449/784/796 1451/788/799 +f 1452/790/853 1449/791/854 1450/792/802 +f 1450/792/802 1453/793/802 1452/790/853 +f 1454/794/803 1451/795/803 1449/791/854 +f 1449/791/854 1452/790/853 1454/794/803 +f 1444/785/804 1452/796/805 1453/787/806 +f 1453/787/806 1445/797/806 1444/785/804 +f 1448/789/807 1454/798/807 1452/796/805 +f 1452/796/805 1444/785/804 1448/789/807 +f 1455/799/36 1456/800/36 1457/801/36 +f 1457/801/36 1458/802/36 1455/799/36 +f 1459/803/855 1460/804/856 1461/805/810 +f 1461/805/810 1462/806/810 1459/803/855 +f 1458/807/811 1457/808/811 1460/804/856 +f 1460/804/856 1459/803/855 1458/807/811 +f 1463/809/812 1459/810/812 1462/811/813 +f 1462/811/813 1464/812/813 1463/809/812 +f 1455/813/814 1458/814/814 1459/810/812 +f 1459/810/812 1463/809/812 1455/813/814 +f 1465/804/815 1463/803/816 1464/806/817 +f 1464/806/817 1466/805/817 1465/804/815 +f 1456/808/818 1455/807/818 1463/803/816 +f 1463/803/816 1465/804/815 1456/808/818 +f 1460/815/819 1465/809/819 1466/816/820 +f 1466/816/820 1461/817/820 1460/815/819 +f 1457/818/821 1456/819/822 1465/809/819 +f 1465/809/819 1460/815/819 1457/818/821 +f 1467/820/36 1468/821/36 1469/822/36 +f 1469/822/36 1470/823/36 1467/820/36 +f 1471/824/857 1472/825/858 1473/826/825 +f 1473/826/825 1474/827/825 1471/824/857 +f 1470/828/826 1469/829/826 1472/825/858 +f 1472/825/858 1471/824/857 1470/828/826 +f 1475/737/827 1471/738/828 1474/734/829 +f 1474/734/829 1476/740/829 1475/737/827 +f 1467/741/830 1470/735/830 1471/738/828 +f 1471/738/828 1475/737/827 1467/741/830 +f 1477/825/831 1475/824/832 1476/827/833 +f 1476/827/833 1478/826/833 1477/825/831 +f 1468/829/834 1467/828/834 1475/824/832 +f 1475/824/832 1477/825/831 1468/829/834 +f 1472/731/835 1477/737/836 1478/733/837 +f 1478/733/837 1473/830/837 1472/731/835 +f 1469/831/838 1468/736/838 1477/737/836 +f 1477/737/836 1472/731/835 1469/831/838 +f 1479/832/36 1480/833/36 1481/834/36 +f 1481/834/36 1482/835/36 1479/832/36 +f 1483/836/839 1484/837/839 1485/838/840 +f 1485/838/840 1486/839/840 1483/836/839 +f 1482/840/841 1481/841/841 1484/837/839 +f 1484/837/839 1483/836/839 1482/840/841 +f 1487/737/842 1483/731/842 1486/734/843 +f 1486/734/843 1488/733/843 1487/737/842 +f 1479/741/844 1482/735/844 1483/731/842 +f 1483/731/842 1487/737/842 1479/741/844 +f 1489/837/859 1487/836/859 1488/839/846 +f 1488/839/846 1490/838/846 1489/837/859 +f 1480/841/847 1479/840/847 1487/836/859 +f 1487/836/859 1489/837/859 1480/841/847 +f 1484/842/848 1489/732/848 1490/843/849 +f 1490/843/849 1485/734/849 1484/842/848 +f 1481/831/850 1480/736/851 1489/732/848 +f 1489/732/848 1484/842/848 1481/831/850 +f 1491/721/36 1492/722/36 1493/723/36 +f 1493/723/36 1494/724/36 1491/721/36 +f 1495/725/852 1496/726/748 1497/727/860 +f 1497/727/860 1498/728/860 1495/725/852 +f 1494/729/750 1493/730/750 1496/726/748 +f 1496/726/748 1495/725/852 1494/729/750 +f 1499/731/751 1495/732/752 1498/733/753 +f 1498/733/753 1500/734/753 1499/731/751 +f 1491/735/754 1494/736/754 1495/732/752 +f 1495/732/752 1499/731/751 1491/735/754 +f 1501/726/755 1499/725/755 1500/728/756 +f 1500/728/756 1502/727/756 1501/726/755 +f 1492/730/757 1491/729/757 1499/725/755 +f 1499/725/755 1501/726/755 1492/730/757 +f 1496/737/758 1501/738/758 1502/739/759 +f 1502/739/759 1497/740/759 1496/737/758 +f 1493/741/760 1492/742/760 1501/738/758 +f 1501/738/758 1496/737/758 1493/741/760 +f 1503/743/36 1504/744/36 1505/745/36 +f 1505/745/36 1506/746/36 1503/743/36 +f 1507/747/761 1508/748/761 1509/749/762 +f 1509/749/762 1510/750/762 1507/747/761 +f 1506/751/763 1505/752/763 1508/748/761 +f 1508/748/761 1507/747/761 1506/751/763 +f 1511/753/764 1507/754/765 1510/755/766 +f 1510/755/766 1512/756/766 1511/753/764 +f 1503/757/767 1506/758/767 1507/754/765 +f 1507/754/765 1511/753/764 1503/757/767 +f 1513/748/768 1511/747/769 1512/750/770 +f 1512/750/770 1514/749/770 1513/748/768 +f 1504/752/771 1503/751/771 1511/747/769 +f 1511/747/769 1513/748/768 1504/752/771 +f 1508/754/772 1513/759/773 1514/760/774 +f 1514/760/774 1509/755/774 1508/754/772 +f 1505/758/775 1504/761/775 1513/759/773 +f 1513/759/773 1508/754/772 1505/758/775 +f 1515/762/776 1516/763/777 1517/764/778 +f 1517/764/778 1518/765/778 1515/762/776 +f 1519/766/779 1520/767/779 1516/763/777 +f 1516/763/777 1515/762/776 1519/766/779 +f 1521/768/780 1515/769/781 1518/770/782 +f 1518/770/782 1522/771/782 1521/768/780 +f 1523/772/783 1519/773/783 1515/769/781 +f 1515/769/781 1521/768/780 1523/772/783 +f 1524/763/784 1521/762/785 1522/765/786 +f 1522/765/786 1525/764/786 1524/763/784 +f 1526/767/787 1523/766/787 1521/762/785 +f 1521/762/785 1524/763/784 1526/767/787 +f 1516/774/788 1524/768/789 1525/771/790 +f 1525/771/790 1517/775/790 1516/774/788 +f 1520/776/791 1526/777/791 1524/768/789 +f 1524/768/789 1516/774/788 1520/776/791 +f 1527/778/792 1528/779/793 1529/780/794 +f 1529/780/794 1530/781/794 1527/778/792 +f 1531/782/795 1532/783/795 1528/779/793 +f 1528/779/793 1527/778/792 1531/782/795 +f 1533/784/796 1527/785/797 1530/786/798 +f 1530/786/798 1534/787/798 1533/784/796 +f 1535/788/799 1531/789/799 1527/785/797 +f 1527/785/797 1533/784/796 1535/788/799 +f 1536/790/800 1533/791/801 1534/792/802 +f 1534/792/802 1537/793/802 1536/790/800 +f 1538/794/803 1535/795/803 1533/791/801 +f 1533/791/801 1536/790/800 1538/794/803 +f 1528/785/804 1536/796/805 1537/787/806 +f 1537/787/806 1529/797/806 1528/785/804 +f 1532/789/807 1538/798/807 1536/796/805 +f 1536/796/805 1528/785/804 1532/789/807 +f 1539/799/36 1540/800/36 1541/801/36 +f 1541/801/36 1542/802/36 1539/799/36 +f 1543/803/808 1544/804/809 1545/805/810 +f 1545/805/810 1546/806/810 1543/803/808 +f 1542/807/811 1541/808/811 1544/804/809 +f 1544/804/809 1543/803/808 1542/807/811 +f 1547/809/812 1543/810/812 1546/811/813 +f 1546/811/813 1548/812/813 1547/809/812 +f 1539/813/814 1542/814/814 1543/810/812 +f 1543/810/812 1547/809/812 1539/813/814 +f 1549/804/815 1547/803/816 1548/806/817 +f 1548/806/817 1550/805/817 1549/804/815 +f 1540/808/818 1539/807/818 1547/803/816 +f 1547/803/816 1549/804/815 1540/808/818 +f 1544/815/819 1549/809/819 1550/816/820 +f 1550/816/820 1545/817/820 1544/815/819 +f 1541/818/821 1540/819/822 1549/809/819 +f 1549/809/819 1544/815/819 1541/818/821 +f 1551/820/36 1552/821/36 1553/822/36 +f 1553/822/36 1554/823/36 1551/820/36 +f 1555/824/823 1556/825/824 1557/826/825 +f 1557/826/825 1558/827/825 1555/824/823 +f 1554/828/826 1553/829/826 1556/825/824 +f 1556/825/824 1555/824/823 1554/828/826 +f 1559/737/827 1555/738/828 1558/734/829 +f 1558/734/829 1560/740/829 1559/737/827 +f 1551/741/830 1554/735/830 1555/738/828 +f 1555/738/828 1559/737/827 1551/741/830 +f 1561/825/832 1559/824/832 1560/827/833 +f 1560/827/833 1562/826/833 1561/825/832 +f 1552/829/834 1551/828/834 1559/824/832 +f 1559/824/832 1561/825/832 1552/829/834 +f 1556/731/835 1561/737/836 1562/733/837 +f 1562/733/837 1557/830/837 1556/731/835 +f 1553/831/838 1552/736/838 1561/737/836 +f 1561/737/836 1556/731/835 1553/831/838 +f 1563/832/36 1564/833/36 1565/834/36 +f 1565/834/36 1566/835/36 1563/832/36 +f 1567/836/839 1568/837/839 1569/838/840 +f 1569/838/840 1570/839/840 1567/836/839 +f 1566/840/841 1565/841/841 1568/837/839 +f 1568/837/839 1567/836/839 1566/840/841 +f 1571/737/842 1567/731/842 1570/734/843 +f 1570/734/843 1572/733/843 1571/737/842 +f 1563/741/844 1566/735/844 1567/731/842 +f 1567/731/842 1571/737/842 1563/741/844 +f 1573/837/859 1571/836/859 1572/839/846 +f 1572/839/846 1574/838/846 1573/837/859 +f 1564/841/847 1563/840/847 1571/836/859 +f 1571/836/859 1573/837/859 1564/841/847 +f 1568/842/848 1573/732/848 1574/843/849 +f 1574/843/849 1569/734/849 1568/842/848 +f 1565/831/850 1564/736/851 1573/732/848 +f 1573/732/848 1568/842/848 1565/831/850 +f 1575/721/36 1576/722/36 1577/723/36 +f 1577/723/36 1578/724/36 1575/721/36 +f 1579/725/852 1580/726/748 1581/727/860 +f 1581/727/860 1582/728/860 1579/725/852 +f 1578/729/750 1577/730/750 1580/726/748 +f 1580/726/748 1579/725/852 1578/729/750 +f 1583/731/751 1579/732/752 1582/733/753 +f 1582/733/753 1584/734/753 1583/731/751 +f 1575/735/754 1578/736/754 1579/732/752 +f 1579/732/752 1583/731/751 1575/735/754 +f 1585/726/755 1583/725/755 1584/728/756 +f 1584/728/756 1586/727/756 1585/726/755 +f 1576/730/757 1575/729/757 1583/725/755 +f 1583/725/755 1585/726/755 1576/730/757 +f 1580/737/758 1585/738/758 1586/739/759 +f 1586/739/759 1581/740/759 1580/737/758 +f 1577/741/760 1576/742/760 1585/738/758 +f 1585/738/758 1580/737/758 1577/741/760 +f 1587/743/36 1588/744/36 1589/745/36 +f 1589/745/36 1590/746/36 1587/743/36 +f 1591/747/761 1592/748/761 1593/749/762 +f 1593/749/762 1594/750/762 1591/747/761 +f 1590/751/763 1589/752/763 1592/748/761 +f 1592/748/761 1591/747/761 1590/751/763 +f 1595/753/764 1591/754/765 1594/755/766 +f 1594/755/766 1596/756/766 1595/753/764 +f 1587/757/767 1590/758/767 1591/754/765 +f 1591/754/765 1595/753/764 1587/757/767 +f 1597/748/768 1595/747/769 1596/750/770 +f 1596/750/770 1598/749/770 1597/748/768 +f 1588/752/771 1587/751/771 1595/747/769 +f 1595/747/769 1597/748/768 1588/752/771 +f 1592/754/772 1597/759/773 1598/760/774 +f 1598/760/774 1593/755/774 1592/754/772 +f 1589/758/775 1588/761/775 1597/759/773 +f 1597/759/773 1592/754/772 1589/758/775 +f 1599/762/776 1600/763/777 1601/764/778 +f 1601/764/778 1602/765/778 1599/762/776 +f 1603/766/779 1604/767/779 1600/763/777 +f 1600/763/777 1599/762/776 1603/766/779 +f 1605/768/780 1599/769/781 1602/770/782 +f 1602/770/782 1606/771/782 1605/768/780 +f 1607/772/783 1603/773/783 1599/769/781 +f 1599/769/781 1605/768/780 1607/772/783 +f 1608/763/784 1605/762/785 1606/765/786 +f 1606/765/786 1609/764/786 1608/763/784 +f 1610/767/787 1607/766/787 1605/762/785 +f 1605/762/785 1608/763/784 1610/767/787 +f 1600/774/788 1608/768/789 1609/771/790 +f 1609/771/790 1601/775/790 1600/774/788 +f 1604/776/791 1610/777/791 1608/768/789 +f 1608/768/789 1600/774/788 1604/776/791 +f 1611/778/792 1612/779/793 1613/780/794 +f 1613/780/794 1614/781/794 1611/778/792 +f 1615/782/795 1616/783/795 1612/779/793 +f 1612/779/793 1611/778/792 1615/782/795 +f 1617/784/796 1611/785/797 1614/786/798 +f 1614/786/798 1618/787/798 1617/784/796 +f 1619/788/799 1615/789/799 1611/785/797 +f 1611/785/797 1617/784/796 1619/788/799 +f 1620/790/800 1617/791/801 1618/792/802 +f 1618/792/802 1621/793/802 1620/790/800 +f 1622/794/803 1619/795/803 1617/791/801 +f 1617/791/801 1620/790/800 1622/794/803 +f 1612/785/804 1620/796/805 1621/787/806 +f 1621/787/806 1613/797/806 1612/785/804 +f 1616/789/807 1622/798/807 1620/796/805 +f 1620/796/805 1612/785/804 1616/789/807 +f 1623/799/36 1624/800/36 1625/801/36 +f 1625/801/36 1626/802/36 1623/799/36 +f 1627/803/808 1628/804/809 1629/805/810 +f 1629/805/810 1630/806/810 1627/803/808 +f 1626/807/811 1625/808/811 1628/804/809 +f 1628/804/809 1627/803/808 1626/807/811 +f 1631/809/812 1627/810/812 1630/811/813 +f 1630/811/813 1632/812/813 1631/809/812 +f 1623/813/814 1626/814/814 1627/810/812 +f 1627/810/812 1631/809/812 1623/813/814 +f 1633/804/815 1631/803/816 1632/806/817 +f 1632/806/817 1634/805/817 1633/804/815 +f 1624/808/818 1623/807/818 1631/803/816 +f 1631/803/816 1633/804/815 1624/808/818 +f 1628/815/819 1633/809/819 1634/816/820 +f 1634/816/820 1629/817/820 1628/815/819 +f 1625/818/821 1624/819/822 1633/809/819 +f 1633/809/819 1628/815/819 1625/818/821 +f 1635/820/36 1636/821/36 1637/822/36 +f 1637/822/36 1638/823/36 1635/820/36 +f 1639/824/823 1640/825/824 1641/826/825 +f 1641/826/825 1642/827/825 1639/824/823 +f 1638/828/826 1637/829/826 1640/825/824 +f 1640/825/824 1639/824/823 1638/828/826 +f 1643/737/827 1639/738/828 1642/734/829 +f 1642/734/829 1644/740/829 1643/737/827 +f 1635/741/830 1638/735/830 1639/738/828 +f 1639/738/828 1643/737/827 1635/741/830 +f 1645/825/831 1643/824/832 1644/827/833 +f 1644/827/833 1646/826/833 1645/825/831 +f 1636/829/834 1635/828/834 1643/824/832 +f 1643/824/832 1645/825/831 1636/829/834 +f 1640/731/835 1645/737/836 1646/733/837 +f 1646/733/837 1641/830/837 1640/731/835 +f 1637/831/838 1636/736/838 1645/737/836 +f 1645/737/836 1640/731/835 1637/831/838 +f 1647/832/36 1648/833/36 1649/834/36 +f 1649/834/36 1650/835/36 1647/832/36 +f 1651/836/839 1652/837/839 1653/838/840 +f 1653/838/840 1654/839/840 1651/836/839 +f 1650/840/841 1649/841/841 1652/837/839 +f 1652/837/839 1651/836/839 1650/840/841 +f 1655/737/842 1651/731/842 1654/734/843 +f 1654/734/843 1656/733/843 1655/737/842 +f 1647/741/844 1650/735/844 1651/731/842 +f 1651/731/842 1655/737/842 1647/741/844 +f 1657/837/845 1655/836/845 1656/839/846 +f 1656/839/846 1658/838/846 1657/837/845 +f 1648/841/847 1647/840/847 1655/836/845 +f 1655/836/845 1657/837/845 1648/841/847 +f 1652/842/848 1657/732/848 1658/843/849 +f 1658/843/849 1653/734/849 1652/842/848 +f 1649/831/850 1648/736/851 1657/732/848 +f 1657/732/848 1652/842/848 1649/831/850 +f 1659/721/36 1660/722/36 1661/723/36 +f 1661/723/36 1662/724/36 1659/721/36 +f 1663/725/852 1664/726/748 1665/727/749 +f 1665/727/749 1666/728/749 1663/725/852 +f 1662/729/750 1661/730/750 1664/726/748 +f 1664/726/748 1663/725/852 1662/729/750 +f 1667/731/751 1663/732/752 1666/733/753 +f 1666/733/753 1668/734/753 1667/731/751 +f 1659/735/754 1662/736/754 1663/732/752 +f 1663/732/752 1667/731/751 1659/735/754 +f 1669/726/755 1667/725/755 1668/728/756 +f 1668/728/756 1670/727/756 1669/726/755 +f 1660/730/757 1659/729/757 1667/725/755 +f 1667/725/755 1669/726/755 1660/730/757 +f 1664/737/758 1669/738/758 1670/739/759 +f 1670/739/759 1665/740/759 1664/737/758 +f 1661/741/760 1660/742/760 1669/738/758 +f 1669/738/758 1664/737/758 1661/741/760 +f 1671/743/36 1672/744/36 1673/745/36 +f 1673/745/36 1674/746/36 1671/743/36 +f 1675/747/761 1676/748/761 1677/749/762 +f 1677/749/762 1678/750/762 1675/747/761 +f 1674/751/763 1673/752/763 1676/748/761 +f 1676/748/761 1675/747/761 1674/751/763 +f 1679/753/764 1675/754/765 1678/755/766 +f 1678/755/766 1680/756/766 1679/753/764 +f 1671/757/767 1674/758/767 1675/754/765 +f 1675/754/765 1679/753/764 1671/757/767 +f 1681/748/768 1679/747/769 1680/750/770 +f 1680/750/770 1682/749/770 1681/748/768 +f 1672/752/771 1671/751/771 1679/747/769 +f 1679/747/769 1681/748/768 1672/752/771 +f 1676/754/772 1681/759/773 1682/760/774 +f 1682/760/774 1677/755/774 1676/754/772 +f 1673/758/775 1672/761/775 1681/759/773 +f 1681/759/773 1676/754/772 1673/758/775 +f 1683/762/776 1684/763/777 1685/764/778 +f 1685/764/778 1686/765/778 1683/762/776 +f 1687/766/779 1688/767/779 1684/763/777 +f 1684/763/777 1683/762/776 1687/766/779 +f 1689/768/780 1683/769/781 1686/770/782 +f 1686/770/782 1690/771/782 1689/768/780 +f 1691/772/783 1687/773/783 1683/769/781 +f 1683/769/781 1689/768/780 1691/772/783 +f 1692/763/784 1689/762/785 1690/765/786 +f 1690/765/786 1693/764/786 1692/763/784 +f 1694/767/787 1691/766/787 1689/762/785 +f 1689/762/785 1692/763/784 1694/767/787 +f 1684/774/788 1692/768/789 1693/771/790 +f 1693/771/790 1685/775/790 1684/774/788 +f 1688/776/791 1694/777/791 1692/768/789 +f 1692/768/789 1684/774/788 1688/776/791 +f 1695/778/792 1696/779/793 1697/780/794 +f 1697/780/794 1698/781/794 1695/778/792 +f 1699/782/795 1700/783/795 1696/779/793 +f 1696/779/793 1695/778/792 1699/782/795 +f 1701/784/796 1695/785/797 1698/786/798 +f 1698/786/798 1702/787/798 1701/784/796 +f 1703/788/799 1699/789/799 1695/785/797 +f 1695/785/797 1701/784/796 1703/788/799 +f 1704/790/853 1701/791/854 1702/792/802 +f 1702/792/802 1705/793/802 1704/790/853 +f 1706/794/803 1703/795/803 1701/791/854 +f 1701/791/854 1704/790/853 1706/794/803 +f 1696/785/804 1704/796/805 1705/787/806 +f 1705/787/806 1697/797/806 1696/785/804 +f 1700/789/807 1706/798/807 1704/796/805 +f 1704/796/805 1696/785/804 1700/789/807 +f 1707/799/36 1708/800/36 1709/801/36 +f 1709/801/36 1710/802/36 1707/799/36 +f 1711/803/855 1712/804/856 1713/805/810 +f 1713/805/810 1714/806/810 1711/803/855 +f 1710/807/811 1709/808/811 1712/804/856 +f 1712/804/856 1711/803/855 1710/807/811 +f 1715/809/812 1711/810/812 1714/811/813 +f 1714/811/813 1716/812/813 1715/809/812 +f 1707/813/814 1710/814/814 1711/810/812 +f 1711/810/812 1715/809/812 1707/813/814 +f 1717/804/815 1715/803/816 1716/806/817 +f 1716/806/817 1718/805/817 1717/804/815 +f 1708/808/818 1707/807/818 1715/803/816 +f 1715/803/816 1717/804/815 1708/808/818 +f 1712/815/819 1717/809/819 1718/816/820 +f 1718/816/820 1713/817/820 1712/815/819 +f 1709/818/821 1708/819/822 1717/809/819 +f 1717/809/819 1712/815/819 1709/818/821 +f 1719/820/36 1720/821/36 1721/822/36 +f 1721/822/36 1722/823/36 1719/820/36 +f 1723/824/857 1724/825/858 1725/826/825 +f 1725/826/825 1726/827/825 1723/824/857 +f 1722/828/826 1721/829/826 1724/825/858 +f 1724/825/858 1723/824/857 1722/828/826 +f 1727/737/827 1723/738/828 1726/734/829 +f 1726/734/829 1728/740/829 1727/737/827 +f 1719/741/830 1722/735/830 1723/738/828 +f 1723/738/828 1727/737/827 1719/741/830 +f 1729/825/831 1727/824/832 1728/827/833 +f 1728/827/833 1730/826/833 1729/825/831 +f 1720/829/834 1719/828/834 1727/824/832 +f 1727/824/832 1729/825/831 1720/829/834 +f 1724/731/835 1729/737/836 1730/733/837 +f 1730/733/837 1725/830/837 1724/731/835 +f 1721/831/838 1720/736/838 1729/737/836 +f 1729/737/836 1724/731/835 1721/831/838 +f 1731/832/36 1732/833/36 1733/834/36 +f 1733/834/36 1734/835/36 1731/832/36 +f 1735/836/839 1736/837/839 1737/838/840 +f 1737/838/840 1738/839/840 1735/836/839 +f 1734/840/861 1733/841/861 1736/837/839 +f 1736/837/839 1735/836/839 1734/840/861 +f 1739/737/842 1735/731/842 1738/734/843 +f 1738/734/843 1740/733/843 1739/737/842 +f 1731/741/844 1734/735/844 1735/731/842 +f 1735/731/842 1739/737/842 1731/741/844 +f 1741/837/859 1739/836/859 1740/839/846 +f 1740/839/846 1742/838/846 1741/837/859 +f 1732/841/847 1731/840/847 1739/836/859 +f 1739/836/859 1741/837/859 1732/841/847 +f 1736/842/848 1741/732/848 1742/843/849 +f 1742/843/849 1737/734/849 1736/842/848 +f 1733/831/850 1732/736/851 1741/732/848 +f 1741/732/848 1736/842/848 1733/831/850 +f 1743/721/36 1744/722/36 1745/723/36 +f 1745/723/36 1746/724/36 1743/721/36 +f 1747/725/852 1748/726/748 1749/727/860 +f 1749/727/860 1750/728/860 1747/725/852 +f 1746/729/750 1745/730/750 1748/726/748 +f 1748/726/748 1747/725/852 1746/729/750 +f 1751/731/751 1747/732/752 1750/733/753 +f 1750/733/753 1752/734/753 1751/731/751 +f 1743/735/754 1746/736/754 1747/732/752 +f 1747/732/752 1751/731/751 1743/735/754 +f 1753/726/755 1751/725/755 1752/728/756 +f 1752/728/756 1754/727/756 1753/726/755 +f 1744/730/757 1743/729/757 1751/725/755 +f 1751/725/755 1753/726/755 1744/730/757 +f 1748/737/758 1753/738/758 1754/739/759 +f 1754/739/759 1749/740/759 1748/737/758 +f 1745/741/760 1744/742/760 1753/738/758 +f 1753/738/758 1748/737/758 1745/741/760 +f 1755/743/36 1756/744/36 1757/745/36 +f 1757/745/36 1758/746/36 1755/743/36 +f 1759/747/761 1760/748/761 1761/749/762 +f 1761/749/762 1762/750/762 1759/747/761 +f 1758/751/763 1757/752/763 1760/748/761 +f 1760/748/761 1759/747/761 1758/751/763 +f 1763/753/764 1759/754/765 1762/755/766 +f 1762/755/766 1764/756/766 1763/753/764 +f 1755/757/767 1758/758/767 1759/754/765 +f 1759/754/765 1763/753/764 1755/757/767 +f 1765/748/768 1763/747/769 1764/750/770 +f 1764/750/770 1766/749/770 1765/748/768 +f 1756/752/771 1755/751/771 1763/747/769 +f 1763/747/769 1765/748/768 1756/752/771 +f 1760/754/772 1765/759/773 1766/760/774 +f 1766/760/774 1761/755/774 1760/754/772 +f 1757/758/775 1756/761/775 1765/759/773 +f 1765/759/773 1760/754/772 1757/758/775 +f 1767/762/776 1768/763/777 1769/764/778 +f 1769/764/778 1770/765/778 1767/762/776 +f 1771/766/779 1772/767/779 1768/763/777 +f 1768/763/777 1767/762/776 1771/766/779 +f 1773/768/780 1767/769/781 1770/770/782 +f 1770/770/782 1774/771/782 1773/768/780 +f 1775/772/783 1771/773/783 1767/769/781 +f 1767/769/781 1773/768/780 1775/772/783 +f 1776/763/784 1773/762/785 1774/765/786 +f 1774/765/786 1777/764/786 1776/763/784 +f 1778/767/787 1775/766/787 1773/762/785 +f 1773/762/785 1776/763/784 1778/767/787 +f 1768/774/788 1776/768/789 1777/771/790 +f 1777/771/790 1769/775/790 1768/774/788 +f 1772/776/791 1778/777/791 1776/768/789 +f 1776/768/789 1768/774/788 1772/776/791 +f 1779/778/792 1780/779/793 1781/780/794 +f 1781/780/794 1782/781/794 1779/778/792 +f 1783/782/795 1784/783/795 1780/779/793 +f 1780/779/793 1779/778/792 1783/782/795 +f 1785/784/796 1779/785/797 1782/786/798 +f 1782/786/798 1786/787/798 1785/784/796 +f 1787/788/799 1783/789/799 1779/785/797 +f 1779/785/797 1785/784/796 1787/788/799 +f 1788/790/800 1785/791/801 1786/792/802 +f 1786/792/802 1789/793/802 1788/790/800 +f 1790/794/803 1787/795/803 1785/791/801 +f 1785/791/801 1788/790/800 1790/794/803 +f 1780/785/804 1788/796/805 1789/787/806 +f 1789/787/806 1781/797/806 1780/785/804 +f 1784/789/807 1790/798/807 1788/796/805 +f 1788/796/805 1780/785/804 1784/789/807 +f 1791/799/36 1792/800/36 1793/801/36 +f 1793/801/36 1794/802/36 1791/799/36 +f 1795/803/808 1796/804/809 1797/805/810 +f 1797/805/810 1798/806/810 1795/803/808 +f 1794/807/811 1793/808/811 1796/804/809 +f 1796/804/809 1795/803/808 1794/807/811 +f 1799/809/812 1795/810/812 1798/811/813 +f 1798/811/813 1800/812/813 1799/809/812 +f 1791/813/814 1794/814/814 1795/810/812 +f 1795/810/812 1799/809/812 1791/813/814 +f 1801/804/815 1799/803/816 1800/806/817 +f 1800/806/817 1802/805/817 1801/804/815 +f 1792/808/818 1791/807/818 1799/803/816 +f 1799/803/816 1801/804/815 1792/808/818 +f 1796/815/819 1801/809/819 1802/816/820 +f 1802/816/820 1797/817/820 1796/815/819 +f 1793/818/821 1792/819/822 1801/809/819 +f 1801/809/819 1796/815/819 1793/818/821 +f 1803/820/36 1804/821/36 1805/822/36 +f 1805/822/36 1806/823/36 1803/820/36 +f 1807/824/823 1808/825/824 1809/826/825 +f 1809/826/825 1810/827/825 1807/824/823 +f 1806/828/826 1805/829/826 1808/825/824 +f 1808/825/824 1807/824/823 1806/828/826 +f 1811/737/827 1807/738/828 1810/734/829 +f 1810/734/829 1812/740/829 1811/737/827 +f 1803/741/830 1806/735/830 1807/738/828 +f 1807/738/828 1811/737/827 1803/741/830 +f 1813/825/832 1811/824/832 1812/827/833 +f 1812/827/833 1814/826/833 1813/825/832 +f 1804/829/834 1803/828/834 1811/824/832 +f 1811/824/832 1813/825/832 1804/829/834 +f 1808/731/835 1813/737/836 1814/733/837 +f 1814/733/837 1809/830/837 1808/731/835 +f 1805/831/838 1804/736/838 1813/737/836 +f 1813/737/836 1808/731/835 1805/831/838 +f 1815/832/36 1816/833/36 1817/834/36 +f 1817/834/36 1818/835/36 1815/832/36 +f 1819/836/839 1820/837/839 1821/838/840 +f 1821/838/840 1822/839/840 1819/836/839 +f 1818/840/841 1817/841/841 1820/837/839 +f 1820/837/839 1819/836/839 1818/840/841 +f 1823/737/842 1819/731/842 1822/734/843 +f 1822/734/843 1824/733/843 1823/737/842 +f 1815/741/844 1818/735/844 1819/731/842 +f 1819/731/842 1823/737/842 1815/741/844 +f 1825/837/859 1823/836/859 1824/839/846 +f 1824/839/846 1826/838/846 1825/837/859 +f 1816/841/847 1815/840/847 1823/836/859 +f 1823/836/859 1825/837/859 1816/841/847 +f 1820/842/848 1825/732/848 1826/843/849 +f 1826/843/849 1821/734/849 1820/842/848 +f 1817/831/850 1816/736/851 1825/732/848 +f 1825/732/848 1820/842/848 1817/831/850 +f 1827/721/36 1828/722/36 1829/723/36 +f 1829/723/36 1830/724/36 1827/721/36 +f 1831/725/852 1832/726/748 1833/727/860 +f 1833/727/860 1834/728/860 1831/725/852 +f 1830/729/750 1829/730/750 1832/726/748 +f 1832/726/748 1831/725/852 1830/729/750 +f 1835/731/751 1831/732/752 1834/733/753 +f 1834/733/753 1836/734/753 1835/731/751 +f 1827/735/754 1830/736/754 1831/732/752 +f 1831/732/752 1835/731/751 1827/735/754 +f 1837/726/755 1835/725/755 1836/728/756 +f 1836/728/756 1838/727/756 1837/726/755 +f 1828/730/757 1827/729/757 1835/725/755 +f 1835/725/755 1837/726/755 1828/730/757 +f 1832/737/758 1837/738/758 1838/739/759 +f 1838/739/759 1833/740/759 1832/737/758 +f 1829/741/760 1828/742/760 1837/738/758 +f 1837/738/758 1832/737/758 1829/741/760 +f 1839/743/36 1840/744/36 1841/745/36 +f 1841/745/36 1842/746/36 1839/743/36 +f 1843/747/761 1844/748/761 1845/749/762 +f 1845/749/762 1846/750/762 1843/747/761 +f 1842/751/763 1841/752/763 1844/748/761 +f 1844/748/761 1843/747/761 1842/751/763 +f 1847/753/764 1843/754/765 1846/755/766 +f 1846/755/766 1848/756/766 1847/753/764 +f 1839/757/767 1842/758/767 1843/754/765 +f 1843/754/765 1847/753/764 1839/757/767 +f 1849/748/768 1847/747/769 1848/750/770 +f 1848/750/770 1850/749/770 1849/748/768 +f 1840/752/771 1839/751/771 1847/747/769 +f 1847/747/769 1849/748/768 1840/752/771 +f 1844/754/772 1849/759/773 1850/760/774 +f 1850/760/774 1845/755/774 1844/754/772 +f 1841/758/775 1840/761/775 1849/759/773 +f 1849/759/773 1844/754/772 1841/758/775 +f 1851/762/776 1852/763/777 1853/764/778 +f 1853/764/778 1854/765/778 1851/762/776 +f 1855/766/779 1856/767/779 1852/763/777 +f 1852/763/777 1851/762/776 1855/766/779 +f 1857/768/780 1851/769/781 1854/770/782 +f 1854/770/782 1858/771/782 1857/768/780 +f 1859/772/783 1855/773/783 1851/769/781 +f 1851/769/781 1857/768/780 1859/772/783 +f 1860/763/784 1857/762/785 1858/765/786 +f 1858/765/786 1861/764/786 1860/763/784 +f 1862/767/787 1859/766/787 1857/762/785 +f 1857/762/785 1860/763/784 1862/767/787 +f 1852/774/788 1860/768/789 1861/771/790 +f 1861/771/790 1853/775/790 1852/774/788 +f 1856/776/791 1862/777/791 1860/768/789 +f 1860/768/789 1852/774/788 1856/776/791 +f 1863/778/792 1864/779/793 1865/780/794 +f 1865/780/794 1866/781/794 1863/778/792 +f 1867/782/795 1868/783/795 1864/779/793 +f 1864/779/793 1863/778/792 1867/782/795 +f 1869/784/796 1863/785/797 1866/786/798 +f 1866/786/798 1870/787/798 1869/784/796 +f 1871/788/799 1867/789/799 1863/785/797 +f 1863/785/797 1869/784/796 1871/788/799 +f 1872/790/800 1869/791/801 1870/792/802 +f 1870/792/802 1873/793/802 1872/790/800 +f 1874/794/803 1871/795/803 1869/791/801 +f 1869/791/801 1872/790/800 1874/794/803 +f 1864/785/804 1872/796/805 1873/787/806 +f 1873/787/806 1865/797/806 1864/785/804 +f 1868/789/807 1874/798/807 1872/796/805 +f 1872/796/805 1864/785/804 1868/789/807 +f 1875/799/36 1876/800/36 1877/801/36 +f 1877/801/36 1878/802/36 1875/799/36 +f 1879/803/808 1880/804/809 1881/805/810 +f 1881/805/810 1882/806/810 1879/803/808 +f 1878/807/811 1877/808/811 1880/804/809 +f 1880/804/809 1879/803/808 1878/807/811 +f 1883/809/812 1879/810/812 1882/811/813 +f 1882/811/813 1884/812/813 1883/809/812 +f 1875/813/814 1878/814/814 1879/810/812 +f 1879/810/812 1883/809/812 1875/813/814 +f 1885/804/815 1883/803/816 1884/806/817 +f 1884/806/817 1886/805/817 1885/804/815 +f 1876/808/818 1875/807/818 1883/803/816 +f 1883/803/816 1885/804/815 1876/808/818 +f 1880/815/819 1885/809/819 1886/816/820 +f 1886/816/820 1881/817/820 1880/815/819 +f 1877/818/821 1876/819/822 1885/809/819 +f 1885/809/819 1880/815/819 1877/818/821 +f 1887/820/36 1888/821/36 1889/822/36 +f 1889/822/36 1890/823/36 1887/820/36 +f 1891/824/823 1892/825/824 1893/826/825 +f 1893/826/825 1894/827/825 1891/824/823 +f 1890/828/826 1889/829/826 1892/825/824 +f 1892/825/824 1891/824/823 1890/828/826 +f 1895/737/827 1891/738/828 1894/734/829 +f 1894/734/829 1896/740/829 1895/737/827 +f 1887/741/830 1890/735/830 1891/738/828 +f 1891/738/828 1895/737/827 1887/741/830 +f 1897/825/831 1895/824/832 1896/827/833 +f 1896/827/833 1898/826/833 1897/825/831 +f 1888/829/834 1887/828/834 1895/824/832 +f 1895/824/832 1897/825/831 1888/829/834 +f 1892/731/835 1897/737/836 1898/733/837 +f 1898/733/837 1893/830/837 1892/731/835 +f 1889/831/838 1888/736/838 1897/737/836 +f 1897/737/836 1892/731/835 1889/831/838 +f 1899/832/36 1900/833/36 1901/834/36 +f 1901/834/36 1902/835/36 1899/832/36 +f 1903/836/839 1904/837/839 1905/838/840 +f 1905/838/840 1906/839/840 1903/836/839 +f 1902/840/841 1901/841/841 1904/837/839 +f 1904/837/839 1903/836/839 1902/840/841 +f 1907/737/842 1903/731/842 1906/734/843 +f 1906/734/843 1908/733/843 1907/737/842 +f 1899/741/844 1902/735/844 1903/731/842 +f 1903/731/842 1907/737/842 1899/741/844 +f 1909/837/859 1907/836/859 1908/839/846 +f 1908/839/846 1910/838/846 1909/837/859 +f 1900/841/847 1899/840/847 1907/836/859 +f 1907/836/859 1909/837/859 1900/841/847 +f 1904/842/848 1909/732/848 1910/843/849 +f 1910/843/849 1905/734/849 1904/842/848 +f 1901/831/850 1900/736/851 1909/732/848 +f 1909/732/848 1904/842/848 1901/831/850 +f 1911/721/36 1912/722/36 1913/723/36 +f 1913/723/36 1914/724/36 1911/721/36 +f 1915/725/852 1916/726/748 1917/727/749 +f 1917/727/749 1918/728/749 1915/725/852 +f 1914/729/750 1913/730/750 1916/726/748 +f 1916/726/748 1915/725/852 1914/729/750 +f 1919/731/751 1915/732/752 1918/733/753 +f 1918/733/753 1920/734/753 1919/731/751 +f 1911/735/754 1914/736/754 1915/732/752 +f 1915/732/752 1919/731/751 1911/735/754 +f 1921/726/755 1919/725/755 1920/728/756 +f 1920/728/756 1922/727/756 1921/726/755 +f 1912/730/757 1911/729/757 1919/725/755 +f 1919/725/755 1921/726/755 1912/730/757 +f 1916/737/758 1921/738/758 1922/739/759 +f 1922/739/759 1917/740/759 1916/737/758 +f 1913/741/760 1912/742/760 1921/738/758 +f 1921/738/758 1916/737/758 1913/741/760 +f 1923/743/36 1924/744/36 1925/745/36 +f 1925/745/36 1926/746/36 1923/743/36 +f 1927/747/761 1928/748/761 1929/749/762 +f 1929/749/762 1930/750/762 1927/747/761 +f 1926/751/763 1925/752/763 1928/748/761 +f 1928/748/761 1927/747/761 1926/751/763 +f 1931/753/764 1927/754/765 1930/755/766 +f 1930/755/766 1932/756/766 1931/753/764 +f 1923/757/767 1926/758/767 1927/754/765 +f 1927/754/765 1931/753/764 1923/757/767 +f 1933/748/768 1931/747/769 1932/750/770 +f 1932/750/770 1934/749/770 1933/748/768 +f 1924/752/771 1923/751/771 1931/747/769 +f 1931/747/769 1933/748/768 1924/752/771 +f 1928/754/772 1933/759/773 1934/760/774 +f 1934/760/774 1929/755/774 1928/754/772 +f 1925/758/775 1924/761/775 1933/759/773 +f 1933/759/773 1928/754/772 1925/758/775 +f 1935/762/776 1936/763/777 1937/764/778 +f 1937/764/778 1938/765/778 1935/762/776 +f 1939/766/779 1940/767/779 1936/763/777 +f 1936/763/777 1935/762/776 1939/766/779 +f 1941/768/780 1935/769/781 1938/770/782 +f 1938/770/782 1942/771/782 1941/768/780 +f 1943/772/783 1939/773/783 1935/769/781 +f 1935/769/781 1941/768/780 1943/772/783 +f 1944/763/784 1941/762/785 1942/765/786 +f 1942/765/786 1945/764/786 1944/763/784 +f 1946/767/787 1943/766/787 1941/762/785 +f 1941/762/785 1944/763/784 1946/767/787 +f 1936/774/788 1944/768/789 1945/771/790 +f 1945/771/790 1937/775/790 1936/774/788 +f 1940/776/791 1946/777/791 1944/768/789 +f 1944/768/789 1936/774/788 1940/776/791 +f 1947/778/792 1948/779/793 1949/780/794 +f 1949/780/794 1950/781/794 1947/778/792 +f 1951/782/795 1952/783/795 1948/779/793 +f 1948/779/793 1947/778/792 1951/782/795 +f 1953/784/796 1947/785/797 1950/786/798 +f 1950/786/798 1954/787/798 1953/784/796 +f 1955/788/799 1951/789/799 1947/785/797 +f 1947/785/797 1953/784/796 1955/788/799 +f 1956/790/853 1953/791/854 1954/792/802 +f 1954/792/802 1957/793/802 1956/790/853 +f 1958/794/803 1955/795/803 1953/791/854 +f 1953/791/854 1956/790/853 1958/794/803 +f 1948/785/804 1956/796/805 1957/787/806 +f 1957/787/806 1949/797/806 1948/785/804 +f 1952/789/807 1958/798/807 1956/796/805 +f 1956/796/805 1948/785/804 1952/789/807 +f 1959/799/36 1960/800/36 1961/801/36 +f 1961/801/36 1962/802/36 1959/799/36 +f 1963/803/855 1964/804/856 1965/805/810 +f 1965/805/810 1966/806/810 1963/803/855 +f 1962/807/811 1961/808/811 1964/804/856 +f 1964/804/856 1963/803/855 1962/807/811 +f 1967/809/812 1963/810/812 1966/811/813 +f 1966/811/813 1968/812/813 1967/809/812 +f 1959/813/814 1962/814/814 1963/810/812 +f 1963/810/812 1967/809/812 1959/813/814 +f 1969/804/815 1967/803/816 1968/806/817 +f 1968/806/817 1970/805/817 1969/804/815 +f 1960/808/818 1959/807/818 1967/803/816 +f 1967/803/816 1969/804/815 1960/808/818 +f 1964/815/819 1969/809/819 1970/816/820 +f 1970/816/820 1965/817/820 1964/815/819 +f 1961/818/821 1960/819/822 1969/809/819 +f 1969/809/819 1964/815/819 1961/818/821 +f 1971/820/36 1972/821/36 1973/822/36 +f 1973/822/36 1974/823/36 1971/820/36 +f 1975/824/857 1976/825/858 1977/826/825 +f 1977/826/825 1978/827/825 1975/824/857 +f 1974/828/826 1973/829/826 1976/825/858 +f 1976/825/858 1975/824/857 1974/828/826 +f 1979/737/827 1975/738/828 1978/734/829 +f 1978/734/829 1980/740/829 1979/737/827 +f 1971/741/830 1974/735/830 1975/738/828 +f 1975/738/828 1979/737/827 1971/741/830 +f 1981/825/831 1979/824/832 1980/827/833 +f 1980/827/833 1982/826/833 1981/825/831 +f 1972/829/834 1971/828/834 1979/824/832 +f 1979/824/832 1981/825/831 1972/829/834 +f 1976/731/835 1981/737/836 1982/733/837 +f 1982/733/837 1977/830/837 1976/731/835 +f 1973/831/838 1972/736/838 1981/737/836 +f 1981/737/836 1976/731/835 1973/831/838 +f 1983/832/36 1984/833/36 1985/834/36 +f 1985/834/36 1986/835/36 1983/832/36 +f 1987/836/839 1988/837/839 1989/838/840 +f 1989/838/840 1990/839/840 1987/836/839 +f 1986/840/861 1985/841/861 1988/837/839 +f 1988/837/839 1987/836/839 1986/840/861 +f 1991/737/842 1987/731/842 1990/734/843 +f 1990/734/843 1992/733/843 1991/737/842 +f 1983/741/844 1986/735/844 1987/731/842 +f 1987/731/842 1991/737/842 1983/741/844 +f 1993/837/859 1991/836/859 1992/839/846 +f 1992/839/846 1994/838/846 1993/837/859 +f 1984/841/847 1983/840/847 1991/836/859 +f 1991/836/859 1993/837/859 1984/841/847 +f 1988/842/848 1993/732/848 1994/843/849 +f 1994/843/849 1989/734/849 1988/842/848 +f 1985/831/850 1984/736/851 1993/732/848 +f 1993/732/848 1988/842/848 1985/831/850 +f 1995/721/36 1996/722/36 1997/723/36 +f 1997/723/36 1998/724/36 1995/721/36 +f 1999/725/852 2000/726/748 2001/727/860 +f 2001/727/860 2002/728/860 1999/725/852 +f 1998/729/750 1997/730/750 2000/726/748 +f 2000/726/748 1999/725/852 1998/729/750 +f 2003/731/751 1999/732/752 2002/733/753 +f 2002/733/753 2004/734/753 2003/731/751 +f 1995/735/754 1998/736/754 1999/732/752 +f 1999/732/752 2003/731/751 1995/735/754 +f 2005/726/755 2003/725/755 2004/728/756 +f 2004/728/756 2006/727/756 2005/726/755 +f 1996/730/757 1995/729/757 2003/725/755 +f 2003/725/755 2005/726/755 1996/730/757 +f 2000/737/758 2005/738/758 2006/739/759 +f 2006/739/759 2001/740/759 2000/737/758 +f 1997/741/760 1996/742/760 2005/738/758 +f 2005/738/758 2000/737/758 1997/741/760 +f 2007/743/36 2008/744/36 2009/745/36 +f 2009/745/36 2010/746/36 2007/743/36 +f 2011/747/761 2012/748/761 2013/749/762 +f 2013/749/762 2014/750/762 2011/747/761 +f 2010/751/763 2009/752/763 2012/748/761 +f 2012/748/761 2011/747/761 2010/751/763 +f 2015/753/764 2011/754/765 2014/755/766 +f 2014/755/766 2016/756/766 2015/753/764 +f 2007/757/767 2010/758/767 2011/754/765 +f 2011/754/765 2015/753/764 2007/757/767 +f 2017/748/768 2015/747/769 2016/750/770 +f 2016/750/770 2018/749/770 2017/748/768 +f 2008/752/771 2007/751/771 2015/747/769 +f 2015/747/769 2017/748/768 2008/752/771 +f 2012/754/772 2017/759/773 2018/760/774 +f 2018/760/774 2013/755/774 2012/754/772 +f 2009/758/775 2008/761/775 2017/759/773 +f 2017/759/773 2012/754/772 2009/758/775 +f 2019/762/776 2020/763/777 2021/764/778 +f 2021/764/778 2022/765/778 2019/762/776 +f 2023/766/779 2024/767/779 2020/763/777 +f 2020/763/777 2019/762/776 2023/766/779 +f 2025/768/780 2019/769/781 2022/770/782 +f 2022/770/782 2026/771/782 2025/768/780 +f 2027/772/783 2023/773/783 2019/769/781 +f 2019/769/781 2025/768/780 2027/772/783 +f 2028/763/784 2025/762/785 2026/765/786 +f 2026/765/786 2029/764/786 2028/763/784 +f 2030/767/787 2027/766/787 2025/762/785 +f 2025/762/785 2028/763/784 2030/767/787 +f 2020/774/788 2028/768/789 2029/771/790 +f 2029/771/790 2021/775/790 2020/774/788 +f 2024/776/791 2030/777/791 2028/768/789 +f 2028/768/789 2020/774/788 2024/776/791 +f 2031/778/792 2032/779/793 2033/780/794 +f 2033/780/794 2034/781/794 2031/778/792 +f 2035/782/795 2036/783/795 2032/779/793 +f 2032/779/793 2031/778/792 2035/782/795 +f 2037/784/796 2031/785/797 2034/786/798 +f 2034/786/798 2038/787/798 2037/784/796 +f 2039/788/799 2035/789/799 2031/785/797 +f 2031/785/797 2037/784/796 2039/788/799 +f 2040/790/800 2037/791/801 2038/792/802 +f 2038/792/802 2041/793/802 2040/790/800 +f 2042/794/803 2039/795/803 2037/791/801 +f 2037/791/801 2040/790/800 2042/794/803 +f 2032/785/804 2040/796/805 2041/787/806 +f 2041/787/806 2033/797/806 2032/785/804 +f 2036/789/807 2042/798/807 2040/796/805 +f 2040/796/805 2032/785/804 2036/789/807 +f 2043/799/36 2044/800/36 2045/801/36 +f 2045/801/36 2046/802/36 2043/799/36 +f 2047/803/808 2048/804/809 2049/805/810 +f 2049/805/810 2050/806/810 2047/803/808 +f 2046/807/811 2045/808/811 2048/804/809 +f 2048/804/809 2047/803/808 2046/807/811 +f 2051/809/812 2047/810/812 2050/811/813 +f 2050/811/813 2052/812/813 2051/809/812 +f 2043/813/814 2046/814/814 2047/810/812 +f 2047/810/812 2051/809/812 2043/813/814 +f 2053/804/815 2051/803/816 2052/806/817 +f 2052/806/817 2054/805/817 2053/804/815 +f 2044/808/818 2043/807/818 2051/803/816 +f 2051/803/816 2053/804/815 2044/808/818 +f 2048/815/819 2053/809/819 2054/816/820 +f 2054/816/820 2049/817/820 2048/815/819 +f 2045/818/821 2044/819/822 2053/809/819 +f 2053/809/819 2048/815/819 2045/818/821 +f 2055/820/36 2056/821/36 2057/822/36 +f 2057/822/36 2058/823/36 2055/820/36 +f 2059/824/857 2060/825/858 2061/826/825 +f 2061/826/825 2062/827/825 2059/824/857 +f 2058/828/826 2057/829/826 2060/825/858 +f 2060/825/858 2059/824/857 2058/828/826 +f 2063/737/827 2059/738/828 2062/734/829 +f 2062/734/829 2064/740/829 2063/737/827 +f 2055/741/830 2058/735/830 2059/738/828 +f 2059/738/828 2063/737/827 2055/741/830 +f 2065/825/832 2063/824/832 2064/827/833 +f 2064/827/833 2066/826/833 2065/825/832 +f 2056/829/834 2055/828/834 2063/824/832 +f 2063/824/832 2065/825/832 2056/829/834 +f 2060/731/835 2065/737/836 2066/733/837 +f 2066/733/837 2061/830/837 2060/731/835 +f 2057/831/838 2056/736/838 2065/737/836 +f 2065/737/836 2060/731/835 2057/831/838 +f 2067/832/36 2068/833/36 2069/834/36 +f 2069/834/36 2070/835/36 2067/832/36 +f 2071/836/839 2072/837/839 2073/838/840 +f 2073/838/840 2074/839/840 2071/836/839 +f 2070/840/841 2069/841/841 2072/837/839 +f 2072/837/839 2071/836/839 2070/840/841 +f 2075/737/842 2071/731/842 2074/734/843 +f 2074/734/843 2076/733/843 2075/737/842 +f 2067/741/844 2070/735/844 2071/731/842 +f 2071/731/842 2075/737/842 2067/741/844 +f 2077/837/859 2075/836/859 2076/839/846 +f 2076/839/846 2078/838/846 2077/837/859 +f 2068/841/847 2067/840/847 2075/836/859 +f 2075/836/859 2077/837/859 2068/841/847 +f 2072/842/848 2077/732/848 2078/843/849 +f 2078/843/849 2073/734/849 2072/842/848 +f 2069/831/850 2068/736/851 2077/732/848 +f 2077/732/848 2072/842/848 2069/831/850 +f 2079/721/36 2080/722/36 2081/723/36 +f 2081/723/36 2082/724/36 2079/721/36 +f 2083/725/852 2084/726/748 2085/727/860 +f 2085/727/860 2086/728/860 2083/725/852 +f 2082/729/750 2081/730/750 2084/726/748 +f 2084/726/748 2083/725/852 2082/729/750 +f 2087/731/751 2083/732/752 2086/733/753 +f 2086/733/753 2088/734/753 2087/731/751 +f 2079/735/754 2082/736/754 2083/732/752 +f 2083/732/752 2087/731/751 2079/735/754 +f 2089/726/755 2087/725/755 2088/728/756 +f 2088/728/756 2090/727/756 2089/726/755 +f 2080/730/757 2079/729/757 2087/725/755 +f 2087/725/755 2089/726/755 2080/730/757 +f 2084/737/758 2089/738/758 2090/739/759 +f 2090/739/759 2085/740/759 2084/737/758 +f 2081/741/760 2080/742/760 2089/738/758 +f 2089/738/758 2084/737/758 2081/741/760 +f 2091/743/36 2092/744/36 2093/745/36 +f 2093/745/36 2094/746/36 2091/743/36 +f 2095/747/761 2096/748/761 2097/749/762 +f 2097/749/762 2098/750/762 2095/747/761 +f 2094/751/763 2093/752/763 2096/748/761 +f 2096/748/761 2095/747/761 2094/751/763 +f 2099/753/764 2095/754/765 2098/755/766 +f 2098/755/766 2100/756/766 2099/753/764 +f 2091/757/767 2094/758/767 2095/754/765 +f 2095/754/765 2099/753/764 2091/757/767 +f 2101/748/768 2099/747/769 2100/750/770 +f 2100/750/770 2102/749/770 2101/748/768 +f 2092/752/771 2091/751/771 2099/747/769 +f 2099/747/769 2101/748/768 2092/752/771 +f 2096/754/772 2101/759/773 2102/760/774 +f 2102/760/774 2097/755/774 2096/754/772 +f 2093/758/775 2092/761/775 2101/759/773 +f 2101/759/773 2096/754/772 2093/758/775 +f 2103/762/776 2104/763/777 2105/764/778 +f 2105/764/778 2106/765/778 2103/762/776 +f 2107/766/779 2108/767/779 2104/763/777 +f 2104/763/777 2103/762/776 2107/766/779 +f 2109/768/780 2103/769/781 2106/770/782 +f 2106/770/782 2110/771/782 2109/768/780 +f 2111/772/783 2107/773/783 2103/769/781 +f 2103/769/781 2109/768/780 2111/772/783 +f 2112/763/784 2109/762/785 2110/765/786 +f 2110/765/786 2113/764/786 2112/763/784 +f 2114/767/787 2111/766/787 2109/762/785 +f 2109/762/785 2112/763/784 2114/767/787 +f 2104/774/788 2112/768/789 2113/771/790 +f 2113/771/790 2105/775/790 2104/774/788 +f 2108/776/791 2114/777/791 2112/768/789 +f 2112/768/789 2104/774/788 2108/776/791 +f 2115/778/792 2116/779/793 2117/780/794 +f 2117/780/794 2118/781/794 2115/778/792 +f 2119/782/795 2120/783/795 2116/779/793 +f 2116/779/793 2115/778/792 2119/782/795 +f 2121/784/796 2115/785/797 2118/786/798 +f 2118/786/798 2122/787/798 2121/784/796 +f 2123/788/799 2119/789/799 2115/785/797 +f 2115/785/797 2121/784/796 2123/788/799 +f 2124/790/800 2121/791/801 2122/792/802 +f 2122/792/802 2125/793/802 2124/790/800 +f 2126/794/803 2123/795/803 2121/791/801 +f 2121/791/801 2124/790/800 2126/794/803 +f 2116/785/804 2124/796/805 2125/787/806 +f 2125/787/806 2117/797/806 2116/785/804 +f 2120/789/807 2126/798/807 2124/796/805 +f 2124/796/805 2116/785/804 2120/789/807 +f 2127/799/36 2128/800/36 2129/801/36 +f 2129/801/36 2130/802/36 2127/799/36 +f 2131/803/808 2132/804/809 2133/805/810 +f 2133/805/810 2134/806/810 2131/803/808 +f 2130/807/811 2129/808/811 2132/804/809 +f 2132/804/809 2131/803/808 2130/807/811 +f 2135/809/812 2131/810/812 2134/811/813 +f 2134/811/813 2136/812/813 2135/809/812 +f 2127/813/814 2130/814/814 2131/810/812 +f 2131/810/812 2135/809/812 2127/813/814 +f 2137/804/815 2135/803/816 2136/806/817 +f 2136/806/817 2138/805/817 2137/804/815 +f 2128/808/818 2127/807/818 2135/803/816 +f 2135/803/816 2137/804/815 2128/808/818 +f 2132/815/819 2137/809/819 2138/816/820 +f 2138/816/820 2133/817/820 2132/815/819 +f 2129/818/821 2128/819/822 2137/809/819 +f 2137/809/819 2132/815/819 2129/818/821 +f 2139/820/36 2140/821/36 2141/822/36 +f 2141/822/36 2142/823/36 2139/820/36 +f 2143/824/823 2144/825/824 2145/826/825 +f 2145/826/825 2146/827/825 2143/824/823 +f 2142/828/826 2141/829/826 2144/825/824 +f 2144/825/824 2143/824/823 2142/828/826 +f 2147/737/827 2143/738/828 2146/734/829 +f 2146/734/829 2148/740/829 2147/737/827 +f 2139/741/830 2142/735/830 2143/738/828 +f 2143/738/828 2147/737/827 2139/741/830 +f 2149/825/832 2147/824/832 2148/827/833 +f 2148/827/833 2150/826/833 2149/825/832 +f 2140/829/834 2139/828/834 2147/824/832 +f 2147/824/832 2149/825/832 2140/829/834 +f 2144/731/835 2149/737/836 2150/733/837 +f 2150/733/837 2145/830/837 2144/731/835 +f 2141/831/838 2140/736/838 2149/737/836 +f 2149/737/836 2144/731/835 2141/831/838 +f 2151/832/36 2152/833/36 2153/834/36 +f 2153/834/36 2154/835/36 2151/832/36 +f 2155/836/839 2156/837/839 2157/838/840 +f 2157/838/840 2158/839/840 2155/836/839 +f 2154/840/841 2153/841/841 2156/837/839 +f 2156/837/839 2155/836/839 2154/840/841 +f 2159/737/842 2155/731/842 2158/734/843 +f 2158/734/843 2160/733/843 2159/737/842 +f 2151/741/844 2154/735/844 2155/731/842 +f 2155/731/842 2159/737/842 2151/741/844 +f 2161/837/859 2159/836/859 2160/839/846 +f 2160/839/846 2162/838/846 2161/837/859 +f 2152/841/847 2151/840/847 2159/836/859 +f 2159/836/859 2161/837/859 2152/841/847 +f 2156/842/848 2161/732/848 2162/843/849 +f 2162/843/849 2157/734/849 2156/842/848 +f 2153/831/850 2152/736/851 2161/732/848 +f 2161/732/848 2156/842/848 2153/831/850 +f 2163/721/36 2164/722/36 2165/723/36 +f 2165/723/36 2166/724/36 2163/721/36 +f 2167/725/852 2168/726/748 2169/727/749 +f 2169/727/749 2170/728/749 2167/725/852 +f 2166/729/750 2165/730/750 2168/726/748 +f 2168/726/748 2167/725/852 2166/729/750 +f 2171/731/751 2167/732/752 2170/733/753 +f 2170/733/753 2172/734/753 2171/731/751 +f 2163/735/754 2166/736/754 2167/732/752 +f 2167/732/752 2171/731/751 2163/735/754 +f 2173/726/755 2171/725/755 2172/728/756 +f 2172/728/756 2174/727/756 2173/726/755 +f 2164/730/757 2163/729/757 2171/725/755 +f 2171/725/755 2173/726/755 2164/730/757 +f 2168/737/758 2173/738/758 2174/739/759 +f 2174/739/759 2169/740/759 2168/737/758 +f 2165/741/760 2164/742/760 2173/738/758 +f 2173/738/758 2168/737/758 2165/741/760 +f 2175/743/36 2176/744/36 2177/745/36 +f 2177/745/36 2178/746/36 2175/743/36 +f 2179/747/761 2180/748/761 2181/749/762 +f 2181/749/762 2182/750/762 2179/747/761 +f 2178/751/763 2177/752/763 2180/748/761 +f 2180/748/761 2179/747/761 2178/751/763 +f 2183/753/764 2179/754/765 2182/755/766 +f 2182/755/766 2184/756/766 2183/753/764 +f 2175/757/767 2178/758/767 2179/754/765 +f 2179/754/765 2183/753/764 2175/757/767 +f 2185/748/768 2183/747/769 2184/750/770 +f 2184/750/770 2186/749/770 2185/748/768 +f 2176/752/771 2175/751/771 2183/747/769 +f 2183/747/769 2185/748/768 2176/752/771 +f 2180/754/772 2185/759/773 2186/760/774 +f 2186/760/774 2181/755/774 2180/754/772 +f 2177/758/775 2176/761/775 2185/759/773 +f 2185/759/773 2180/754/772 2177/758/775 +f 2187/762/776 2188/763/777 2189/764/778 +f 2189/764/778 2190/765/778 2187/762/776 +f 2191/766/779 2192/767/779 2188/763/777 +f 2188/763/777 2187/762/776 2191/766/779 +f 2193/768/780 2187/769/781 2190/770/782 +f 2190/770/782 2194/771/782 2193/768/780 +f 2195/772/783 2191/773/783 2187/769/781 +f 2187/769/781 2193/768/780 2195/772/783 +f 2196/763/784 2193/762/785 2194/765/786 +f 2194/765/786 2197/764/786 2196/763/784 +f 2198/767/787 2195/766/787 2193/762/785 +f 2193/762/785 2196/763/784 2198/767/787 +f 2188/774/788 2196/768/789 2197/771/790 +f 2197/771/790 2189/775/790 2188/774/788 +f 2192/776/791 2198/777/791 2196/768/789 +f 2196/768/789 2188/774/788 2192/776/791 +f 2199/778/792 2200/779/793 2201/780/794 +f 2201/780/794 2202/781/794 2199/778/792 +f 2203/782/795 2204/783/795 2200/779/793 +f 2200/779/793 2199/778/792 2203/782/795 +f 2205/784/796 2199/785/797 2202/786/798 +f 2202/786/798 2206/787/798 2205/784/796 +f 2207/788/799 2203/789/799 2199/785/797 +f 2199/785/797 2205/784/796 2207/788/799 +f 2208/790/800 2205/791/801 2206/792/802 +f 2206/792/802 2209/793/802 2208/790/800 +f 2210/794/803 2207/795/803 2205/791/801 +f 2205/791/801 2208/790/800 2210/794/803 +f 2200/785/804 2208/796/805 2209/787/806 +f 2209/787/806 2201/797/806 2200/785/804 +f 2204/789/807 2210/798/807 2208/796/805 +f 2208/796/805 2200/785/804 2204/789/807 +f 2211/799/36 2212/800/36 2213/801/36 +f 2213/801/36 2214/802/36 2211/799/36 +f 2215/803/808 2216/804/809 2217/805/810 +f 2217/805/810 2218/806/810 2215/803/808 +f 2214/807/811 2213/808/811 2216/804/809 +f 2216/804/809 2215/803/808 2214/807/811 +f 2219/809/812 2215/810/812 2218/811/813 +f 2218/811/813 2220/812/813 2219/809/812 +f 2211/813/814 2214/814/814 2215/810/812 +f 2215/810/812 2219/809/812 2211/813/814 +f 2221/804/815 2219/803/816 2220/806/817 +f 2220/806/817 2222/805/817 2221/804/815 +f 2212/808/818 2211/807/818 2219/803/816 +f 2219/803/816 2221/804/815 2212/808/818 +f 2216/815/819 2221/809/819 2222/816/820 +f 2222/816/820 2217/817/820 2216/815/819 +f 2213/818/821 2212/819/822 2221/809/819 +f 2221/809/819 2216/815/819 2213/818/821 +f 2223/820/36 2224/821/36 2225/822/36 +f 2225/822/36 2226/823/36 2223/820/36 +f 2227/824/857 2228/825/858 2229/826/825 +f 2229/826/825 2230/827/825 2227/824/857 +f 2226/828/862 2225/829/862 2228/825/858 +f 2228/825/858 2227/824/857 2226/828/862 +f 2231/737/863 2227/738/864 2230/734/829 +f 2230/734/829 2232/740/829 2231/737/863 +f 2223/741/830 2226/735/830 2227/738/864 +f 2227/738/864 2231/737/863 2223/741/830 +f 2233/825/832 2231/824/832 2232/827/833 +f 2232/827/833 2234/826/833 2233/825/832 +f 2224/829/834 2223/828/834 2231/824/832 +f 2231/824/832 2233/825/832 2224/829/834 +f 2228/731/835 2233/737/836 2234/733/837 +f 2234/733/837 2229/830/837 2228/731/835 +f 2225/831/838 2224/736/838 2233/737/836 +f 2233/737/836 2228/731/835 2225/831/838 +f 2235/832/36 2236/833/36 2237/834/36 +f 2237/834/36 2238/835/36 2235/832/36 +f 2239/836/839 2240/837/839 2241/838/865 +f 2241/838/865 2242/839/865 2239/836/839 +f 2238/840/866 2237/841/866 2240/837/839 +f 2240/837/839 2239/836/839 2238/840/866 +f 2243/737/842 2239/731/842 2242/734/843 +f 2242/734/843 2244/733/843 2243/737/842 +f 2235/741/844 2238/735/844 2239/731/842 +f 2239/731/842 2243/737/842 2235/741/844 +f 2245/837/859 2243/836/859 2244/839/846 +f 2244/839/846 2246/838/846 2245/837/859 +f 2236/841/847 2235/840/847 2243/836/859 +f 2243/836/859 2245/837/859 2236/841/847 +f 2240/842/867 2245/732/848 2246/843/849 +f 2246/843/849 2241/734/849 2240/842/867 +f 2237/831/850 2236/736/851 2245/732/848 +f 2245/732/848 2240/842/867 2237/831/850 +f 2247/721/36 2248/722/36 2249/723/36 +f 2249/723/36 2250/724/36 2247/721/36 +f 2251/725/852 2252/726/748 2253/727/860 +f 2253/727/860 2254/728/860 2251/725/852 +f 2250/729/750 2249/730/750 2252/726/748 +f 2252/726/748 2251/725/852 2250/729/750 +f 2255/731/751 2251/732/752 2254/733/753 +f 2254/733/753 2256/734/753 2255/731/751 +f 2247/735/754 2250/736/754 2251/732/752 +f 2251/732/752 2255/731/751 2247/735/754 +f 2257/726/755 2255/725/755 2256/728/756 +f 2256/728/756 2258/727/756 2257/726/755 +f 2248/730/757 2247/729/757 2255/725/755 +f 2255/725/755 2257/726/755 2248/730/757 +f 2252/737/758 2257/738/758 2258/739/759 +f 2258/739/759 2253/740/759 2252/737/758 +f 2249/741/760 2248/742/760 2257/738/758 +f 2257/738/758 2252/737/758 2249/741/760 +f 2259/743/36 2260/744/36 2261/745/36 +f 2261/745/36 2262/746/36 2259/743/36 +f 2263/747/761 2264/748/761 2265/749/762 +f 2265/749/762 2266/750/762 2263/747/761 +f 2262/751/763 2261/752/763 2264/748/761 +f 2264/748/761 2263/747/761 2262/751/763 +f 2267/753/764 2263/754/765 2266/755/766 +f 2266/755/766 2268/756/766 2267/753/764 +f 2259/757/767 2262/758/767 2263/754/765 +f 2263/754/765 2267/753/764 2259/757/767 +f 2269/748/768 2267/747/769 2268/750/770 +f 2268/750/770 2270/749/770 2269/748/768 +f 2260/752/771 2259/751/771 2267/747/769 +f 2267/747/769 2269/748/768 2260/752/771 +f 2264/754/772 2269/759/773 2270/760/774 +f 2270/760/774 2265/755/774 2264/754/772 +f 2261/758/775 2260/761/775 2269/759/773 +f 2269/759/773 2264/754/772 2261/758/775 +f 2271/762/776 2272/763/777 2273/764/778 +f 2273/764/778 2274/765/778 2271/762/776 +f 2275/766/779 2276/767/779 2272/763/777 +f 2272/763/777 2271/762/776 2275/766/779 +f 2277/768/780 2271/769/781 2274/770/782 +f 2274/770/782 2278/771/782 2277/768/780 +f 2279/772/783 2275/773/783 2271/769/781 +f 2271/769/781 2277/768/780 2279/772/783 +f 2280/763/784 2277/762/785 2278/765/786 +f 2278/765/786 2281/764/786 2280/763/784 +f 2282/767/787 2279/766/787 2277/762/785 +f 2277/762/785 2280/763/784 2282/767/787 +f 2272/774/788 2280/768/789 2281/771/790 +f 2281/771/790 2273/775/790 2272/774/788 +f 2276/776/791 2282/777/791 2280/768/789 +f 2280/768/789 2272/774/788 2276/776/791 +f 2283/778/868 2284/779/793 2285/780/794 +f 2285/780/794 2286/781/794 2283/778/868 +f 2287/782/795 2288/783/795 2284/779/793 +f 2284/779/793 2283/778/868 2287/782/795 +f 2289/784/796 2283/785/797 2286/786/798 +f 2286/786/798 2290/787/798 2289/784/796 +f 2291/788/799 2287/789/799 2283/785/797 +f 2283/785/797 2289/784/796 2291/788/799 +f 2292/790/800 2289/791/801 2290/792/802 +f 2290/792/802 2293/793/802 2292/790/800 +f 2294/794/803 2291/795/803 2289/791/801 +f 2289/791/801 2292/790/800 2294/794/803 +f 2284/785/804 2292/796/805 2293/787/806 +f 2293/787/806 2285/797/806 2284/785/804 +f 2288/789/807 2294/798/807 2292/796/805 +f 2292/796/805 2284/785/804 2288/789/807 +f 2295/799/36 2296/800/36 2297/801/36 +f 2297/801/36 2298/802/36 2295/799/36 +f 2299/803/808 2300/804/809 2301/805/810 +f 2301/805/810 2302/806/810 2299/803/808 +f 2298/807/811 2297/808/811 2300/804/809 +f 2300/804/809 2299/803/808 2298/807/811 +f 2303/809/812 2299/810/812 2302/811/813 +f 2302/811/813 2304/812/813 2303/809/812 +f 2295/813/814 2298/814/814 2299/810/812 +f 2299/810/812 2303/809/812 2295/813/814 +f 2305/804/815 2303/803/816 2304/806/869 +f 2304/806/869 2306/805/869 2305/804/815 +f 2296/808/870 2295/807/870 2303/803/816 +f 2303/803/816 2305/804/815 2296/808/870 +f 2300/815/819 2305/809/819 2306/816/820 +f 2306/816/820 2301/817/820 2300/815/819 +f 2297/818/821 2296/819/821 2305/809/819 +f 2305/809/819 2300/815/819 2297/818/821 +f 2307/820/36 2308/821/36 2309/822/36 +f 2309/822/36 2310/823/36 2307/820/36 +f 2311/824/857 2312/825/858 2313/826/825 +f 2313/826/825 2314/827/825 2311/824/857 +f 2310/828/826 2309/829/826 2312/825/858 +f 2312/825/858 2311/824/857 2310/828/826 +f 2315/737/827 2311/738/864 2314/734/829 +f 2314/734/829 2316/740/829 2315/737/827 +f 2307/741/830 2310/735/830 2311/738/864 +f 2311/738/864 2315/737/827 2307/741/830 +f 2317/825/832 2315/824/832 2316/827/833 +f 2316/827/833 2318/826/833 2317/825/832 +f 2308/829/834 2307/828/834 2315/824/832 +f 2315/824/832 2317/825/832 2308/829/834 +f 2312/731/835 2317/737/836 2318/733/837 +f 2318/733/837 2313/830/837 2312/731/835 +f 2309/831/838 2308/736/838 2317/737/836 +f 2317/737/836 2312/731/835 2309/831/838 +f 2319/832/36 2320/833/36 2321/834/36 +f 2321/834/36 2322/835/36 2319/832/36 +f 2323/836/839 2324/837/839 2325/838/840 +f 2325/838/840 2326/839/840 2323/836/839 +f 2322/840/841 2321/841/841 2324/837/839 +f 2324/837/839 2323/836/839 2322/840/841 +f 2327/737/842 2323/731/842 2326/734/843 +f 2326/734/843 2328/733/843 2327/737/842 +f 2319/741/844 2322/735/844 2323/731/842 +f 2323/731/842 2327/737/842 2319/741/844 +f 2329/837/859 2327/836/859 2328/839/871 +f 2328/839/871 2330/838/871 2329/837/859 +f 2320/841/847 2319/840/847 2327/836/859 +f 2327/836/859 2329/837/859 2320/841/847 +f 2324/842/848 2329/732/848 2330/843/849 +f 2330/843/849 2325/734/849 2324/842/848 +f 2321/831/850 2320/736/851 2329/732/848 +f 2329/732/848 2324/842/848 2321/831/850 +f 2331/721/36 2332/722/36 2333/723/36 +f 2333/723/36 2334/724/36 2331/721/36 +f 2335/725/852 2336/726/748 2337/727/860 +f 2337/727/860 2338/728/860 2335/725/852 +f 2334/729/750 2333/730/750 2336/726/748 +f 2336/726/748 2335/725/852 2334/729/750 +f 2339/731/751 2335/732/752 2338/733/753 +f 2338/733/753 2340/734/753 2339/731/751 +f 2331/735/754 2334/736/754 2335/732/752 +f 2335/732/752 2339/731/751 2331/735/754 +f 2341/726/872 2339/725/755 2340/728/756 +f 2340/728/756 2342/727/756 2341/726/872 +f 2332/730/757 2331/729/757 2339/725/755 +f 2339/725/755 2341/726/872 2332/730/757 +f 2336/737/758 2341/738/758 2342/739/759 +f 2342/739/759 2337/740/759 2336/737/758 +f 2333/741/760 2332/742/760 2341/738/758 +f 2341/738/758 2336/737/758 2333/741/760 +f 2343/743/36 2344/744/36 2345/745/36 +f 2345/745/36 2346/746/36 2343/743/36 +f 2347/747/761 2348/748/761 2349/749/762 +f 2349/749/762 2350/750/762 2347/747/761 +f 2346/751/763 2345/752/763 2348/748/761 +f 2348/748/761 2347/747/761 2346/751/763 +f 2351/753/764 2347/754/765 2350/755/766 +f 2350/755/766 2352/756/766 2351/753/764 +f 2343/757/767 2346/758/767 2347/754/765 +f 2347/754/765 2351/753/764 2343/757/767 +f 2353/748/768 2351/747/769 2352/750/873 +f 2352/750/873 2354/749/873 2353/748/768 +f 2344/752/874 2343/751/771 2351/747/769 +f 2351/747/769 2353/748/768 2344/752/874 +f 2348/754/772 2353/759/773 2354/760/774 +f 2354/760/774 2349/755/774 2348/754/772 +f 2345/758/775 2344/761/775 2353/759/773 +f 2353/759/773 2348/754/772 2345/758/775 +f 2355/762/776 2356/763/777 2357/764/778 +f 2357/764/778 2358/765/778 2355/762/776 +f 2359/766/779 2360/767/779 2356/763/777 +f 2356/763/777 2355/762/776 2359/766/779 +f 2361/768/780 2355/769/781 2358/770/782 +f 2358/770/782 2362/771/782 2361/768/780 +f 2363/772/783 2359/773/783 2355/769/781 +f 2355/769/781 2361/768/780 2363/772/783 +f 2364/763/784 2361/762/785 2362/765/786 +f 2362/765/786 2365/764/786 2364/763/784 +f 2366/767/787 2363/766/787 2361/762/785 +f 2361/762/785 2364/763/784 2366/767/787 +f 2356/774/788 2364/768/789 2365/771/790 +f 2365/771/790 2357/775/790 2356/774/788 +f 2360/776/791 2366/777/791 2364/768/789 +f 2364/768/789 2356/774/788 2360/776/791 +f 2367/778/792 2368/779/793 2369/780/794 +f 2369/780/794 2370/781/794 2367/778/792 +f 2371/782/795 2372/783/795 2368/779/793 +f 2368/779/793 2367/778/792 2371/782/795 +f 2373/784/796 2367/785/797 2370/786/798 +f 2370/786/798 2374/787/798 2373/784/796 +f 2375/788/799 2371/789/799 2367/785/797 +f 2367/785/797 2373/784/796 2375/788/799 +f 2376/790/800 2373/791/801 2374/792/802 +f 2374/792/802 2377/793/802 2376/790/800 +f 2378/794/803 2375/795/803 2373/791/801 +f 2373/791/801 2376/790/800 2378/794/803 +f 2368/785/804 2376/796/805 2377/787/806 +f 2377/787/806 2369/797/806 2368/785/804 +f 2372/789/807 2378/798/807 2376/796/805 +f 2376/796/805 2368/785/804 2372/789/807 +f 2379/799/36 2380/800/36 2381/801/36 +f 2381/801/36 2382/802/36 2379/799/36 +f 2383/803/808 2384/804/809 2385/805/810 +f 2385/805/810 2386/806/810 2383/803/808 +f 2382/807/811 2381/808/811 2384/804/809 +f 2384/804/809 2383/803/808 2382/807/811 +f 2387/809/812 2383/810/812 2386/811/813 +f 2386/811/813 2388/812/813 2387/809/812 +f 2379/813/814 2382/814/814 2383/810/812 +f 2383/810/812 2387/809/812 2379/813/814 +f 2389/804/815 2387/803/816 2388/806/875 +f 2388/806/875 2390/805/875 2389/804/815 +f 2380/808/876 2379/807/876 2387/803/816 +f 2387/803/816 2389/804/815 2380/808/876 +f 2384/815/819 2389/809/819 2390/816/820 +f 2390/816/820 2385/817/820 2384/815/819 +f 2381/818/821 2380/819/822 2389/809/819 +f 2389/809/819 2384/815/819 2381/818/821 +f 2391/820/36 2392/821/36 2393/822/36 +f 2393/822/36 2394/823/36 2391/820/36 +f 2395/824/857 2396/825/858 2397/826/825 +f 2397/826/825 2398/827/825 2395/824/857 +f 2394/828/826 2393/829/826 2396/825/858 +f 2396/825/858 2395/824/857 2394/828/826 +f 2399/737/827 2395/738/828 2398/734/829 +f 2398/734/829 2400/740/829 2399/737/827 +f 2391/741/830 2394/735/830 2395/738/828 +f 2395/738/828 2399/737/827 2391/741/830 +f 2401/825/877 2399/824/878 2400/827/833 +f 2400/827/833 2402/826/833 2401/825/877 +f 2392/829/834 2391/828/879 2399/824/878 +f 2399/824/878 2401/825/877 2392/829/834 +f 2396/731/835 2401/737/836 2402/733/837 +f 2402/733/837 2397/830/837 2396/731/835 +f 2393/831/838 2392/736/838 2401/737/836 +f 2401/737/836 2396/731/835 2393/831/838 +f 2403/832/36 2404/833/36 2405/834/36 +f 2405/834/36 2406/835/36 2403/832/36 +f 2407/836/839 2408/837/839 2409/838/880 +f 2409/838/880 2410/839/880 2407/836/839 +f 2406/840/841 2405/841/841 2408/837/839 +f 2408/837/839 2407/836/839 2406/840/841 +f 2411/737/842 2407/731/842 2410/734/843 +f 2410/734/843 2412/733/843 2411/737/842 +f 2403/741/844 2406/735/844 2407/731/842 +f 2407/731/842 2411/737/842 2403/741/844 +f 2413/837/859 2411/836/859 2412/839/881 +f 2412/839/881 2414/838/881 2413/837/859 +f 2404/841/882 2403/840/882 2411/836/859 +f 2411/836/859 2413/837/859 2404/841/882 +f 2408/842/848 2413/732/848 2414/843/849 +f 2414/843/849 2409/734/849 2408/842/848 +f 2405/831/850 2404/736/851 2413/732/848 +f 2413/732/848 2408/842/848 2405/831/850 +f 2415/721/36 2416/722/36 2417/723/36 +f 2417/723/36 2418/724/36 2415/721/36 +f 2419/725/852 2420/726/748 2421/727/860 +f 2421/727/860 2422/728/860 2419/725/852 +f 2418/729/750 2417/730/750 2420/726/748 +f 2420/726/748 2419/725/852 2418/729/750 +f 2423/731/751 2419/732/752 2422/733/753 +f 2422/733/753 2424/734/753 2423/731/751 +f 2415/735/754 2418/736/754 2419/732/752 +f 2419/732/752 2423/731/751 2415/735/754 +f 2425/726/755 2423/725/755 2424/728/756 +f 2424/728/756 2426/727/756 2425/726/755 +f 2416/730/757 2415/729/757 2423/725/755 +f 2423/725/755 2425/726/755 2416/730/757 +f 2420/737/758 2425/738/758 2426/739/759 +f 2426/739/759 2421/740/759 2420/737/758 +f 2417/741/760 2416/742/760 2425/738/758 +f 2425/738/758 2420/737/758 2417/741/760 +f 2427/743/36 2428/744/36 2429/745/36 +f 2429/745/36 2430/746/36 2427/743/36 +f 2431/747/761 2432/748/761 2433/749/762 +f 2433/749/762 2434/750/762 2431/747/761 +f 2430/751/763 2429/752/763 2432/748/761 +f 2432/748/761 2431/747/761 2430/751/763 +f 2435/753/764 2431/754/765 2434/755/766 +f 2434/755/766 2436/756/766 2435/753/764 +f 2427/757/767 2430/758/767 2431/754/765 +f 2431/754/765 2435/753/764 2427/757/767 +f 2437/748/768 2435/747/769 2436/750/873 +f 2436/750/873 2438/749/873 2437/748/768 +f 2428/752/874 2427/751/771 2435/747/769 +f 2435/747/769 2437/748/768 2428/752/874 +f 2432/754/772 2437/759/773 2438/760/774 +f 2438/760/774 2433/755/774 2432/754/772 +f 2429/758/775 2428/761/775 2437/759/773 +f 2437/759/773 2432/754/772 2429/758/775 +f 2439/762/776 2440/763/777 2441/764/778 +f 2441/764/778 2442/765/778 2439/762/776 +f 2443/766/779 2444/767/779 2440/763/777 +f 2440/763/777 2439/762/776 2443/766/779 +f 2445/768/780 2439/769/781 2442/770/782 +f 2442/770/782 2446/771/782 2445/768/780 +f 2447/772/783 2443/773/783 2439/769/781 +f 2439/769/781 2445/768/780 2447/772/783 +f 2448/763/784 2445/762/785 2446/765/786 +f 2446/765/786 2449/764/786 2448/763/784 +f 2450/767/787 2447/766/787 2445/762/785 +f 2445/762/785 2448/763/784 2450/767/787 +f 2440/774/788 2448/768/789 2449/771/790 +f 2449/771/790 2441/775/790 2440/774/788 +f 2444/776/791 2450/777/791 2448/768/789 +f 2448/768/789 2440/774/788 2444/776/791 +f 2451/778/792 2452/779/793 2453/780/794 +f 2453/780/794 2454/781/794 2451/778/792 +f 2455/782/795 2456/783/795 2452/779/793 +f 2452/779/793 2451/778/792 2455/782/795 +f 2457/784/796 2451/785/797 2454/786/798 +f 2454/786/798 2458/787/798 2457/784/796 +f 2459/788/799 2455/789/799 2451/785/797 +f 2451/785/797 2457/784/796 2459/788/799 +f 2460/790/800 2457/791/801 2458/792/802 +f 2458/792/802 2461/793/802 2460/790/800 +f 2462/794/803 2459/795/803 2457/791/801 +f 2457/791/801 2460/790/800 2462/794/803 +f 2452/785/804 2460/796/805 2461/787/806 +f 2461/787/806 2453/797/806 2452/785/804 +f 2456/789/807 2462/798/807 2460/796/805 +f 2460/796/805 2452/785/804 2456/789/807 +f 2463/799/36 2464/800/36 2465/801/36 +f 2465/801/36 2466/802/36 2463/799/36 +f 2467/803/808 2468/804/809 2469/805/810 +f 2469/805/810 2470/806/810 2467/803/808 +f 2466/807/811 2465/808/811 2468/804/809 +f 2468/804/809 2467/803/808 2466/807/811 +f 2471/809/812 2467/810/812 2470/811/813 +f 2470/811/813 2472/812/813 2471/809/812 +f 2463/813/814 2466/814/814 2467/810/812 +f 2467/810/812 2471/809/812 2463/813/814 +f 2473/804/815 2471/803/816 2472/806/869 +f 2472/806/869 2474/805/869 2473/804/815 +f 2464/808/870 2463/807/870 2471/803/816 +f 2471/803/816 2473/804/815 2464/808/870 +f 2468/815/819 2473/809/819 2474/816/820 +f 2474/816/820 2469/817/820 2468/815/819 +f 2465/818/821 2464/819/821 2473/809/819 +f 2473/809/819 2468/815/819 2465/818/821 +f 2475/820/36 2476/821/36 2477/822/36 +f 2477/822/36 2478/823/36 2475/820/36 +f 2479/824/857 2480/825/858 2481/826/825 +f 2481/826/825 2482/827/825 2479/824/857 +f 2478/828/862 2477/829/862 2480/825/858 +f 2480/825/858 2479/824/857 2478/828/862 +f 2483/737/863 2479/738/864 2482/734/829 +f 2482/734/829 2484/740/829 2483/737/863 +f 2475/741/830 2478/735/830 2479/738/864 +f 2479/738/864 2483/737/863 2475/741/830 +f 2485/825/832 2483/824/832 2484/827/833 +f 2484/827/833 2486/826/833 2485/825/832 +f 2476/829/834 2475/828/834 2483/824/832 +f 2483/824/832 2485/825/832 2476/829/834 +f 2480/731/835 2485/737/836 2486/733/837 +f 2486/733/837 2481/830/837 2480/731/835 +f 2477/831/838 2476/736/838 2485/737/836 +f 2485/737/836 2480/731/835 2477/831/838 +f 2487/832/36 2488/833/36 2489/834/36 +f 2489/834/36 2490/835/36 2487/832/36 +f 2491/836/839 2492/837/839 2493/838/865 +f 2493/838/865 2494/839/865 2491/836/839 +f 2490/840/866 2489/841/866 2492/837/839 +f 2492/837/839 2491/836/839 2490/840/866 +f 2495/737/842 2491/731/842 2494/734/843 +f 2494/734/843 2496/733/843 2495/737/842 +f 2487/741/844 2490/735/844 2491/731/842 +f 2491/731/842 2495/737/842 2487/741/844 +f 2497/837/859 2495/836/859 2496/839/846 +f 2496/839/846 2498/838/846 2497/837/859 +f 2488/841/847 2487/840/847 2495/836/859 +f 2495/836/859 2497/837/859 2488/841/847 +f 2492/842/867 2497/732/848 2498/843/849 +f 2498/843/849 2493/734/849 2492/842/867 +f 2489/831/850 2488/736/851 2497/732/848 +f 2497/732/848 2492/842/867 2489/831/850 +f 2499/721/36 2500/722/36 2501/723/36 +f 2501/723/36 2502/724/36 2499/721/36 +f 2503/725/852 2504/726/748 2505/727/749 +f 2505/727/749 2506/728/749 2503/725/852 +f 2502/729/750 2501/730/750 2504/726/748 +f 2504/726/748 2503/725/852 2502/729/750 +f 2507/731/751 2503/732/752 2506/733/753 +f 2506/733/753 2508/734/753 2507/731/751 +f 2499/735/754 2502/736/754 2503/732/752 +f 2503/732/752 2507/731/751 2499/735/754 +f 2509/726/872 2507/725/755 2508/728/756 +f 2508/728/756 2510/727/756 2509/726/872 +f 2500/730/757 2499/729/757 2507/725/755 +f 2507/725/755 2509/726/872 2500/730/757 +f 2504/737/758 2509/738/758 2510/739/759 +f 2510/739/759 2505/740/759 2504/737/758 +f 2501/741/760 2500/742/760 2509/738/758 +f 2509/738/758 2504/737/758 2501/741/760 +f 2511/743/36 2512/744/36 2513/745/36 +f 2513/745/36 2514/746/36 2511/743/36 +f 2515/747/761 2516/748/761 2517/749/762 +f 2517/749/762 2518/750/762 2515/747/761 +f 2514/751/763 2513/752/763 2516/748/761 +f 2516/748/761 2515/747/761 2514/751/763 +f 2519/753/764 2515/754/765 2518/755/766 +f 2518/755/766 2520/756/766 2519/753/764 +f 2511/757/767 2514/758/767 2515/754/765 +f 2515/754/765 2519/753/764 2511/757/767 +f 2521/748/768 2519/747/769 2520/750/873 +f 2520/750/873 2522/749/873 2521/748/768 +f 2512/752/874 2511/751/771 2519/747/769 +f 2519/747/769 2521/748/768 2512/752/874 +f 2516/754/772 2521/759/773 2522/760/774 +f 2522/760/774 2517/755/774 2516/754/772 +f 2513/758/775 2512/761/775 2521/759/773 +f 2521/759/773 2516/754/772 2513/758/775 +f 2523/762/776 2524/763/777 2525/764/778 +f 2525/764/778 2526/765/778 2523/762/776 +f 2527/766/779 2528/767/779 2524/763/777 +f 2524/763/777 2523/762/776 2527/766/779 +f 2529/768/780 2523/769/781 2526/770/782 +f 2526/770/782 2530/771/782 2529/768/780 +f 2531/772/783 2527/773/783 2523/769/781 +f 2523/769/781 2529/768/780 2531/772/783 +f 2532/763/784 2529/762/785 2530/765/786 +f 2530/765/786 2533/764/786 2532/763/784 +f 2534/767/787 2531/766/787 2529/762/785 +f 2529/762/785 2532/763/784 2534/767/787 +f 2524/774/788 2532/768/789 2533/771/790 +f 2533/771/790 2525/775/790 2524/774/788 +f 2528/776/791 2534/777/791 2532/768/789 +f 2532/768/789 2524/774/788 2528/776/791 +f 2535/778/868 2536/779/793 2537/780/794 +f 2537/780/794 2538/781/794 2535/778/868 +f 2539/782/795 2540/783/795 2536/779/793 +f 2536/779/793 2535/778/868 2539/782/795 +f 2541/784/796 2535/785/797 2538/786/798 +f 2538/786/798 2542/787/798 2541/784/796 +f 2543/788/799 2539/789/799 2535/785/797 +f 2535/785/797 2541/784/796 2543/788/799 +f 2544/790/853 2541/791/854 2542/792/802 +f 2542/792/802 2545/793/802 2544/790/853 +f 2546/794/803 2543/795/803 2541/791/854 +f 2541/791/854 2544/790/853 2546/794/803 +f 2536/785/804 2544/796/805 2545/787/806 +f 2545/787/806 2537/797/806 2536/785/804 +f 2540/789/807 2546/798/807 2544/796/805 +f 2544/796/805 2536/785/804 2540/789/807 +f 2547/799/36 2548/800/36 2549/801/36 +f 2549/801/36 2550/802/36 2547/799/36 +f 2551/803/808 2552/804/809 2553/805/810 +f 2553/805/810 2554/806/810 2551/803/808 +f 2550/807/811 2549/808/811 2552/804/809 +f 2552/804/809 2551/803/808 2550/807/811 +f 2555/809/812 2551/810/812 2554/811/813 +f 2554/811/813 2556/812/813 2555/809/812 +f 2547/813/814 2550/814/814 2551/810/812 +f 2551/810/812 2555/809/812 2547/813/814 +f 2557/804/815 2555/803/816 2556/806/869 +f 2556/806/869 2558/805/869 2557/804/815 +f 2548/808/870 2547/807/870 2555/803/816 +f 2555/803/816 2557/804/815 2548/808/870 +f 2552/815/819 2557/809/819 2558/816/820 +f 2558/816/820 2553/817/820 2552/815/819 +f 2549/818/821 2548/819/821 2557/809/819 +f 2557/809/819 2552/815/819 2549/818/821 +f 2559/820/36 2560/821/36 2561/822/36 +f 2561/822/36 2562/823/36 2559/820/36 +f 2563/824/857 2564/825/858 2565/826/825 +f 2565/826/825 2566/827/825 2563/824/857 +f 2562/828/826 2561/829/826 2564/825/858 +f 2564/825/858 2563/824/857 2562/828/826 +f 2567/737/827 2563/738/828 2566/734/829 +f 2566/734/829 2568/740/829 2567/737/827 +f 2559/741/830 2562/735/830 2563/738/828 +f 2563/738/828 2567/737/827 2559/741/830 +f 2569/825/832 2567/824/832 2568/827/833 +f 2568/827/833 2570/826/833 2569/825/832 +f 2560/829/834 2559/828/834 2567/824/832 +f 2567/824/832 2569/825/832 2560/829/834 +f 2564/731/835 2569/737/836 2570/733/837 +f 2570/733/837 2565/830/837 2564/731/835 +f 2561/831/838 2560/736/838 2569/737/836 +f 2569/737/836 2564/731/835 2561/831/838 +f 2571/832/36 2572/833/36 2573/834/36 +f 2573/834/36 2574/835/36 2571/832/36 +f 2575/836/839 2576/837/839 2577/838/865 +f 2577/838/865 2578/839/865 2575/836/839 +f 2574/840/861 2573/841/861 2576/837/839 +f 2576/837/839 2575/836/839 2574/840/861 +f 2579/737/842 2575/731/842 2578/734/843 +f 2578/734/843 2580/733/843 2579/737/842 +f 2571/741/844 2574/735/844 2575/731/842 +f 2575/731/842 2579/737/842 2571/741/844 +f 2581/837/859 2579/836/859 2580/839/881 +f 2580/839/881 2582/838/881 2581/837/859 +f 2572/841/882 2571/840/882 2579/836/859 +f 2579/836/859 2581/837/859 2572/841/882 +f 2576/842/848 2581/732/848 2582/843/849 +f 2582/843/849 2577/734/849 2576/842/848 +f 2573/831/850 2572/736/851 2581/732/848 +f 2581/732/848 2576/842/848 2573/831/850 +f 2583/721/36 2584/722/36 2585/723/36 +f 2585/723/36 2586/724/36 2583/721/36 +f 2587/725/852 2588/726/748 2589/727/860 +f 2589/727/860 2590/728/860 2587/725/852 +f 2586/729/750 2585/730/750 2588/726/748 +f 2588/726/748 2587/725/852 2586/729/750 +f 2591/731/751 2587/732/752 2590/733/753 +f 2590/733/753 2592/734/753 2591/731/751 +f 2583/735/754 2586/736/754 2587/732/752 +f 2587/732/752 2591/731/751 2583/735/754 +f 2593/726/755 2591/725/755 2592/728/756 +f 2592/728/756 2594/727/756 2593/726/755 +f 2584/730/757 2583/729/757 2591/725/755 +f 2591/725/755 2593/726/755 2584/730/757 +f 2588/737/758 2593/738/758 2594/739/759 +f 2594/739/759 2589/740/759 2588/737/758 +f 2585/741/760 2584/742/760 2593/738/758 +f 2593/738/758 2588/737/758 2585/741/760 +f 2595/743/36 2596/744/36 2597/745/36 +f 2597/745/36 2598/746/36 2595/743/36 +f 2599/747/883 2600/748/884 2601/749/762 +f 2601/749/762 2602/750/762 2599/747/883 +f 2598/751/763 2597/752/763 2600/748/884 +f 2600/748/884 2599/747/883 2598/751/763 +f 2603/753/764 2599/754/765 2602/755/766 +f 2602/755/766 2604/756/766 2603/753/764 +f 2595/757/767 2598/758/767 2599/754/765 +f 2599/754/765 2603/753/764 2595/757/767 +f 2605/748/768 2603/747/769 2604/750/885 +f 2604/750/885 2606/749/885 2605/748/768 +f 2596/752/771 2595/751/771 2603/747/769 +f 2603/747/769 2605/748/768 2596/752/771 +f 2600/754/772 2605/759/773 2606/760/774 +f 2606/760/774 2601/755/774 2600/754/772 +f 2597/758/775 2596/761/775 2605/759/773 +f 2605/759/773 2600/754/772 2597/758/775 +f 2607/762/776 2608/763/777 2609/764/778 +f 2609/764/778 2610/765/778 2607/762/776 +f 2611/766/779 2612/767/779 2608/763/777 +f 2608/763/777 2607/762/776 2611/766/779 +f 2613/768/780 2607/769/781 2610/770/782 +f 2610/770/782 2614/771/782 2613/768/780 +f 2615/772/783 2611/773/783 2607/769/781 +f 2607/769/781 2613/768/780 2615/772/783 +f 2616/763/784 2613/762/785 2614/765/786 +f 2614/765/786 2617/764/786 2616/763/784 +f 2618/767/787 2615/766/787 2613/762/785 +f 2613/762/785 2616/763/784 2618/767/787 +f 2608/774/788 2616/768/789 2617/771/790 +f 2617/771/790 2609/775/790 2608/774/788 +f 2612/776/791 2618/777/791 2616/768/789 +f 2616/768/789 2608/774/788 2612/776/791 +f 2619/778/792 2620/779/793 2621/780/794 +f 2621/780/794 2622/781/794 2619/778/792 +f 2623/782/795 2624/783/795 2620/779/793 +f 2620/779/793 2619/778/792 2623/782/795 +f 2625/784/796 2619/785/797 2622/786/798 +f 2622/786/798 2626/787/798 2625/784/796 +f 2627/788/799 2623/789/799 2619/785/797 +f 2619/785/797 2625/784/796 2627/788/799 +f 2628/790/800 2625/791/801 2626/792/802 +f 2626/792/802 2629/793/802 2628/790/800 +f 2630/794/803 2627/795/803 2625/791/801 +f 2625/791/801 2628/790/800 2630/794/803 +f 2620/785/804 2628/796/805 2629/787/806 +f 2629/787/806 2621/797/806 2620/785/804 +f 2624/789/807 2630/798/807 2628/796/805 +f 2628/796/805 2620/785/804 2624/789/807 +f 2631/799/36 2632/800/36 2633/801/36 +f 2633/801/36 2634/802/36 2631/799/36 +f 2635/803/808 2636/804/809 2637/805/810 +f 2637/805/810 2638/806/810 2635/803/808 +f 2634/807/811 2633/808/811 2636/804/809 +f 2636/804/809 2635/803/808 2634/807/811 +f 2639/809/812 2635/810/812 2638/811/813 +f 2638/811/813 2640/812/813 2639/809/812 +f 2631/813/814 2634/814/814 2635/810/812 +f 2635/810/812 2639/809/812 2631/813/814 +f 2641/804/815 2639/803/816 2640/806/869 +f 2640/806/869 2642/805/869 2641/804/815 +f 2632/808/870 2631/807/870 2639/803/816 +f 2639/803/816 2641/804/815 2632/808/870 +f 2636/815/819 2641/809/819 2642/816/820 +f 2642/816/820 2637/817/820 2636/815/819 +f 2633/818/821 2632/819/821 2641/809/819 +f 2641/809/819 2636/815/819 2633/818/821 +f 2643/820/36 2644/821/36 2645/822/36 +f 2645/822/36 2646/823/36 2643/820/36 +f 2647/824/857 2648/825/858 2649/826/825 +f 2649/826/825 2650/827/825 2647/824/857 +f 2646/828/826 2645/829/826 2648/825/858 +f 2648/825/858 2647/824/857 2646/828/826 +f 2651/737/863 2647/738/864 2650/734/829 +f 2650/734/829 2652/740/829 2651/737/863 +f 2643/741/830 2646/735/830 2647/738/864 +f 2647/738/864 2651/737/863 2643/741/830 +f 2653/825/831 2651/824/832 2652/827/833 +f 2652/827/833 2654/826/886 2653/825/831 +f 2644/829/834 2643/828/887 2651/824/832 +f 2651/824/832 2653/825/831 2644/829/834 +f 2648/731/835 2653/737/836 2654/733/837 +f 2654/733/837 2649/830/837 2648/731/835 +f 2645/831/838 2644/736/838 2653/737/836 +f 2653/737/836 2648/731/835 2645/831/838 +f 2655/832/36 2656/833/36 2657/834/36 +f 2657/834/36 2658/835/36 2655/832/36 +f 2659/836/839 2660/837/839 2661/838/840 +f 2661/838/840 2662/839/840 2659/836/839 +f 2658/840/841 2657/841/841 2660/837/839 +f 2660/837/839 2659/836/839 2658/840/841 +f 2663/737/842 2659/731/842 2662/734/843 +f 2662/734/843 2664/733/843 2663/737/842 +f 2655/741/844 2658/735/844 2659/731/842 +f 2659/731/842 2663/737/842 2655/741/844 +f 2665/837/859 2663/836/859 2664/839/871 +f 2664/839/871 2666/838/871 2665/837/859 +f 2656/841/847 2655/840/847 2663/836/859 +f 2663/836/859 2665/837/859 2656/841/847 +f 2660/842/848 2665/732/848 2666/843/849 +f 2666/843/849 2661/734/849 2660/842/848 +f 2657/831/850 2656/736/851 2665/732/848 +f 2665/732/848 2660/842/848 2657/831/850 +f 2667/721/36 2668/722/36 2669/723/36 +f 2669/723/36 2670/724/36 2667/721/36 +f 2671/725/888 2672/726/888 2673/727/889 +f 2673/727/889 2674/728/889 2671/725/888 +f 2670/729/890 2669/730/890 2672/726/888 +f 2672/726/888 2671/725/888 2670/729/890 +f 2675/731/891 2671/732/892 2674/733/893 +f 2674/733/893 2676/734/894 2675/731/891 +f 2667/735/895 2670/736/895 2671/732/892 +f 2671/732/892 2675/731/891 2667/735/895 +f 2677/726/896 2675/725/896 2676/728/897 +f 2676/728/897 2678/727/897 2677/726/896 +f 2668/730/898 2667/729/898 2675/725/896 +f 2675/725/896 2677/726/896 2668/730/898 +f 2672/737/899 2677/738/899 2678/739/900 +f 2678/739/900 2673/740/900 2672/737/899 +f 2669/741/901 2668/742/901 2677/738/899 +f 2677/738/899 2672/737/899 2669/741/901 +f 2679/743/36 2680/744/36 2681/745/36 +f 2681/745/36 2682/746/36 2679/743/36 +f 2683/747/902 2684/748/902 2685/749/903 +f 2685/749/903 2686/750/903 2683/747/902 +f 2682/751/904 2681/752/904 2684/748/902 +f 2684/748/902 2683/747/902 2682/751/904 +f 2687/753/905 2683/754/906 2686/755/907 +f 2686/755/907 2688/756/908 2687/753/905 +f 2679/757/909 2682/758/909 2683/754/906 +f 2683/754/906 2687/753/905 2679/757/909 +f 2689/748/910 2687/747/911 2688/750/912 +f 2688/750/912 2690/749/912 2689/748/910 +f 2680/752/913 2679/751/913 2687/747/911 +f 2687/747/911 2689/748/910 2680/752/913 +f 2684/754/914 2689/759/915 2690/760/916 +f 2690/760/916 2685/755/916 2684/754/914 +f 2681/758/917 2680/761/917 2689/759/915 +f 2689/759/915 2684/754/914 2681/758/917 +f 2691/762/918 2692/763/919 2693/764/920 +f 2693/764/920 2694/765/920 2691/762/918 +f 2695/766/921 2696/767/921 2692/763/919 +f 2692/763/919 2691/762/918 2695/766/921 +f 2697/768/922 2691/769/923 2694/770/924 +f 2694/770/924 2698/771/924 2697/768/922 +f 2699/772/925 2695/773/925 2691/769/923 +f 2691/769/923 2697/768/922 2699/772/925 +f 2700/763/926 2697/762/927 2698/765/928 +f 2698/765/928 2701/764/928 2700/763/926 +f 2702/767/929 2699/766/929 2697/762/927 +f 2697/762/927 2700/763/926 2702/767/929 +f 2692/774/930 2700/768/931 2701/771/932 +f 2701/771/932 2693/775/932 2692/774/930 +f 2696/776/933 2702/777/933 2700/768/931 +f 2700/768/931 2692/774/930 2696/776/933 +f 2703/778/934 2704/779/935 2705/780/936 +f 2705/780/936 2706/781/936 2703/778/934 +f 2707/782/937 2708/783/937 2704/779/935 +f 2704/779/935 2703/778/934 2707/782/937 +f 2709/784/938 2703/785/939 2706/786/940 +f 2706/786/940 2710/787/940 2709/784/938 +f 2711/788/941 2707/789/941 2703/785/939 +f 2703/785/939 2709/784/938 2711/788/941 +f 2712/790/942 2709/791/943 2710/792/944 +f 2710/792/944 2713/793/944 2712/790/942 +f 2714/794/945 2711/795/945 2709/791/943 +f 2709/791/943 2712/790/942 2714/794/945 +f 2704/785/946 2712/796/947 2713/787/948 +f 2713/787/948 2705/797/948 2704/785/946 +f 2708/789/949 2714/798/949 2712/796/947 +f 2712/796/947 2704/785/946 2708/789/949 +f 2715/799/36 2716/800/36 2717/801/36 +f 2717/801/36 2718/802/36 2715/799/36 +f 2719/803/950 2720/804/951 2721/805/952 +f 2721/805/952 2722/806/952 2719/803/950 +f 2718/807/953 2717/808/953 2720/804/951 +f 2720/804/951 2719/803/950 2718/807/953 +f 2723/809/954 2719/810/954 2722/811/955 +f 2722/811/955 2724/812/955 2723/809/954 +f 2715/813/956 2718/814/956 2719/810/954 +f 2719/810/954 2723/809/954 2715/813/956 +f 2725/804/957 2723/803/958 2724/806/959 +f 2724/806/959 2726/805/959 2725/804/957 +f 2716/808/960 2715/807/960 2723/803/958 +f 2723/803/958 2725/804/957 2716/808/960 +f 2720/815/961 2725/809/961 2726/816/962 +f 2726/816/962 2721/817/962 2720/815/961 +f 2717/818/963 2716/819/963 2725/809/961 +f 2725/809/961 2720/815/961 2717/818/963 +f 2727/820/36 2728/821/36 2729/822/36 +f 2729/822/36 2730/823/36 2727/820/36 +f 2731/824/964 2732/825/965 2733/826/966 +f 2733/826/966 2734/827/966 2731/824/964 +f 2730/828/967 2729/829/967 2732/825/965 +f 2732/825/965 2731/824/964 2730/828/967 +f 2735/737/968 2731/738/969 2734/734/970 +f 2734/734/970 2736/740/970 2735/737/968 +f 2727/741/971 2730/735/971 2731/738/969 +f 2731/738/969 2735/737/968 2727/741/971 +f 2737/825/972 2735/824/972 2736/827/973 +f 2736/827/973 2738/826/973 2737/825/972 +f 2728/829/974 2727/828/974 2735/824/972 +f 2735/824/972 2737/825/972 2728/829/974 +f 2732/731/975 2737/737/976 2738/733/977 +f 2738/733/977 2733/830/977 2732/731/975 +f 2729/831/978 2728/736/978 2737/737/976 +f 2737/737/976 2732/731/975 2729/831/978 +f 2739/832/36 2740/833/36 2741/834/36 +f 2741/834/36 2742/835/36 2739/832/36 +f 2743/836/979 2744/837/979 2745/838/980 +f 2745/838/980 2746/839/980 2743/836/979 +f 2742/840/981 2741/841/981 2744/837/979 +f 2744/837/979 2743/836/979 2742/840/981 +f 2747/737/982 2743/731/982 2746/734/983 +f 2746/734/983 2748/733/983 2747/737/982 +f 2739/741/984 2742/735/985 2743/731/982 +f 2743/731/982 2747/737/982 2739/741/984 +f 2749/837/986 2747/836/986 2748/839/987 +f 2748/839/987 2750/838/987 2749/837/986 +f 2740/841/988 2739/840/988 2747/836/986 +f 2747/836/986 2749/837/986 2740/841/988 +f 2744/842/989 2749/732/989 2750/843/990 +f 2750/843/990 2745/734/990 2744/842/989 +f 2741/831/991 2740/736/991 2749/732/989 +f 2749/732/989 2744/842/989 2741/831/991 +f 2751/721/226 2752/722/226 2753/723/226 +f 2753/723/226 2754/724/226 2751/721/226 +f 2755/725/888 2756/726/888 2757/727/889 +f 2757/727/889 2758/728/889 2755/725/888 +f 2754/729/890 2753/730/890 2756/726/888 +f 2756/726/888 2755/725/888 2754/729/890 +f 2759/731/891 2755/732/892 2758/733/893 +f 2758/733/893 2760/734/893 2759/731/891 +f 2751/735/895 2754/736/895 2755/732/892 +f 2755/732/892 2759/731/891 2751/735/895 +f 2761/726/896 2759/725/896 2760/728/897 +f 2760/728/897 2762/727/897 2761/726/896 +f 2752/730/898 2751/729/898 2759/725/896 +f 2759/725/896 2761/726/896 2752/730/898 +f 2756/737/899 2761/738/899 2762/739/900 +f 2762/739/900 2757/740/900 2756/737/899 +f 2753/741/901 2752/742/901 2761/738/899 +f 2761/738/899 2756/737/899 2753/741/901 +f 2763/743/36 2764/744/36 2765/745/36 +f 2765/745/36 2766/746/36 2763/743/36 +f 2767/747/902 2768/748/902 2769/749/903 +f 2769/749/903 2770/750/903 2767/747/902 +f 2766/751/904 2765/752/904 2768/748/902 +f 2768/748/902 2767/747/902 2766/751/904 +f 2771/753/905 2767/754/906 2770/755/907 +f 2770/755/907 2772/756/908 2771/753/905 +f 2763/757/909 2766/758/909 2767/754/906 +f 2767/754/906 2771/753/905 2763/757/909 +f 2773/748/910 2771/747/911 2772/750/912 +f 2772/750/912 2774/749/912 2773/748/910 +f 2764/752/913 2763/751/913 2771/747/911 +f 2771/747/911 2773/748/910 2764/752/913 +f 2768/754/914 2773/759/915 2774/760/916 +f 2774/760/916 2769/755/916 2768/754/914 +f 2765/758/917 2764/761/917 2773/759/915 +f 2773/759/915 2768/754/914 2765/758/917 +f 2775/762/918 2776/763/919 2777/764/920 +f 2777/764/920 2778/765/920 2775/762/918 +f 2779/766/921 2780/767/921 2776/763/919 +f 2776/763/919 2775/762/918 2779/766/921 +f 2781/768/922 2775/769/923 2778/770/924 +f 2778/770/924 2782/771/924 2781/768/922 +f 2783/772/925 2779/773/925 2775/769/923 +f 2775/769/923 2781/768/922 2783/772/925 +f 2784/763/926 2781/762/927 2782/765/928 +f 2782/765/928 2785/764/928 2784/763/926 +f 2786/767/929 2783/766/929 2781/762/927 +f 2781/762/927 2784/763/926 2786/767/929 +f 2776/774/930 2784/768/931 2785/771/932 +f 2785/771/932 2777/775/932 2776/774/930 +f 2780/776/933 2786/777/933 2784/768/931 +f 2784/768/931 2776/774/930 2780/776/933 +f 2787/778/934 2788/779/935 2789/780/936 +f 2789/780/936 2790/781/936 2787/778/934 +f 2791/782/937 2792/783/937 2788/779/935 +f 2788/779/935 2787/778/934 2791/782/937 +f 2793/784/938 2787/785/939 2790/786/940 +f 2790/786/940 2794/787/940 2793/784/938 +f 2795/788/941 2791/789/941 2787/785/939 +f 2787/785/939 2793/784/938 2795/788/941 +f 2796/790/942 2793/791/943 2794/792/944 +f 2794/792/944 2797/793/944 2796/790/942 +f 2798/794/945 2795/795/945 2793/791/943 +f 2793/791/943 2796/790/942 2798/794/945 +f 2788/785/946 2796/796/947 2797/787/948 +f 2797/787/948 2789/797/948 2788/785/946 +f 2792/789/949 2798/798/949 2796/796/947 +f 2796/796/947 2788/785/946 2792/789/949 +f 2799/799/37 2800/800/37 2801/801/37 +f 2801/801/37 2802/802/37 2799/799/37 +f 2803/803/950 2804/804/951 2805/805/952 +f 2805/805/952 2806/806/952 2803/803/950 +f 2802/807/953 2801/808/953 2804/804/951 +f 2804/804/951 2803/803/950 2802/807/953 +f 2807/809/954 2803/810/954 2806/811/955 +f 2806/811/955 2808/812/955 2807/809/954 +f 2799/813/956 2802/814/956 2803/810/954 +f 2803/810/954 2807/809/954 2799/813/956 +f 2809/804/957 2807/803/958 2808/806/959 +f 2808/806/959 2810/805/959 2809/804/957 +f 2800/808/960 2799/807/960 2807/803/958 +f 2807/803/958 2809/804/957 2800/808/960 +f 2804/815/961 2809/809/961 2810/816/962 +f 2810/816/962 2805/817/962 2804/815/961 +f 2801/818/963 2800/819/963 2809/809/961 +f 2809/809/961 2804/815/961 2801/818/963 +f 2811/820/36 2812/821/36 2813/822/36 +f 2813/822/36 2814/823/36 2811/820/36 +f 2815/824/964 2816/825/965 2817/826/966 +f 2817/826/966 2818/827/966 2815/824/964 +f 2814/828/992 2813/829/967 2816/825/965 +f 2816/825/965 2815/824/964 2814/828/992 +f 2819/737/968 2815/738/969 2818/734/970 +f 2818/734/970 2820/740/970 2819/737/968 +f 2811/741/971 2814/735/971 2815/738/969 +f 2815/738/969 2819/737/968 2811/741/971 +f 2821/825/972 2819/824/972 2820/827/973 +f 2820/827/973 2822/826/973 2821/825/972 +f 2812/829/974 2811/828/974 2819/824/972 +f 2819/824/972 2821/825/972 2812/829/974 +f 2816/731/975 2821/737/976 2822/733/977 +f 2822/733/977 2817/830/977 2816/731/975 +f 2813/831/978 2812/736/978 2821/737/976 +f 2821/737/976 2816/731/975 2813/831/978 +f 2823/832/37 2824/833/37 2825/834/37 +f 2825/834/37 2826/835/37 2823/832/37 +f 2827/836/993 2828/837/993 2829/838/994 +f 2829/838/994 2830/839/980 2827/836/993 +f 2826/840/981 2825/841/981 2828/837/993 +f 2828/837/993 2827/836/993 2826/840/981 +f 2831/737/982 2827/731/982 2830/734/983 +f 2830/734/983 2832/733/983 2831/737/982 +f 2823/741/984 2826/735/985 2827/731/982 +f 2827/731/982 2831/737/982 2823/741/984 +f 2833/837/986 2831/836/986 2832/839/987 +f 2832/839/987 2834/838/987 2833/837/986 +f 2824/841/988 2823/840/988 2831/836/986 +f 2831/836/986 2833/837/986 2824/841/988 +f 2828/842/989 2833/732/989 2834/843/990 +f 2834/843/990 2829/734/990 2828/842/989 +f 2825/831/991 2824/736/991 2833/732/989 +f 2833/732/989 2828/842/989 2825/831/991 +f 2835/721/36 2836/722/36 2837/723/36 +f 2837/723/36 2838/724/36 2835/721/36 +f 2839/725/888 2840/726/888 2841/727/889 +f 2841/727/889 2842/728/889 2839/725/888 +f 2838/729/890 2837/730/890 2840/726/888 +f 2840/726/888 2839/725/888 2838/729/890 +f 2843/731/891 2839/732/892 2842/733/893 +f 2842/733/893 2844/734/893 2843/731/891 +f 2835/735/895 2838/736/895 2839/732/892 +f 2839/732/892 2843/731/891 2835/735/895 +f 2845/726/896 2843/725/896 2844/728/897 +f 2844/728/897 2846/727/897 2845/726/896 +f 2836/730/898 2835/729/898 2843/725/896 +f 2843/725/896 2845/726/896 2836/730/898 +f 2840/737/899 2845/738/899 2846/739/900 +f 2846/739/900 2841/740/900 2840/737/899 +f 2837/741/901 2836/742/901 2845/738/899 +f 2845/738/899 2840/737/899 2837/741/901 +f 2847/743/36 2848/744/36 2849/745/36 +f 2849/745/36 2850/746/36 2847/743/36 +f 2851/747/995 2852/748/995 2853/749/903 +f 2853/749/903 2854/750/903 2851/747/995 +f 2850/751/904 2849/752/904 2852/748/995 +f 2852/748/995 2851/747/995 2850/751/904 +f 2855/753/905 2851/754/906 2854/755/907 +f 2854/755/907 2856/756/908 2855/753/905 +f 2847/757/909 2850/758/909 2851/754/906 +f 2851/754/906 2855/753/905 2847/757/909 +f 2857/748/910 2855/747/911 2856/750/912 +f 2856/750/912 2858/749/912 2857/748/910 +f 2848/752/913 2847/751/913 2855/747/911 +f 2855/747/911 2857/748/910 2848/752/913 +f 2852/754/914 2857/759/915 2858/760/916 +f 2858/760/916 2853/755/916 2852/754/914 +f 2849/758/917 2848/761/917 2857/759/915 +f 2857/759/915 2852/754/914 2849/758/917 +f 2859/762/918 2860/763/919 2861/764/920 +f 2861/764/920 2862/765/920 2859/762/918 +f 2863/766/921 2864/767/921 2860/763/919 +f 2860/763/919 2859/762/918 2863/766/921 +f 2865/768/922 2859/769/923 2862/770/924 +f 2862/770/924 2866/771/924 2865/768/922 +f 2867/772/925 2863/773/925 2859/769/923 +f 2859/769/923 2865/768/922 2867/772/925 +f 2868/763/926 2865/762/927 2866/765/928 +f 2866/765/928 2869/764/928 2868/763/926 +f 2870/767/929 2867/766/929 2865/762/927 +f 2865/762/927 2868/763/926 2870/767/929 +f 2860/774/930 2868/768/931 2869/771/932 +f 2869/771/932 2861/775/932 2860/774/930 +f 2864/776/933 2870/777/933 2868/768/931 +f 2868/768/931 2860/774/930 2864/776/933 +f 2871/778/934 2872/779/935 2873/780/936 +f 2873/780/936 2874/781/936 2871/778/934 +f 2875/782/937 2876/783/937 2872/779/935 +f 2872/779/935 2871/778/934 2875/782/937 +f 2877/784/938 2871/785/939 2874/786/940 +f 2874/786/940 2878/787/940 2877/784/938 +f 2879/788/941 2875/789/941 2871/785/939 +f 2871/785/939 2877/784/938 2879/788/941 +f 2880/790/942 2877/791/943 2878/792/944 +f 2878/792/944 2881/793/944 2880/790/942 +f 2882/794/945 2879/795/945 2877/791/943 +f 2877/791/943 2880/790/942 2882/794/945 +f 2872/785/946 2880/796/947 2881/787/948 +f 2881/787/948 2873/797/948 2872/785/946 +f 2876/789/949 2882/798/949 2880/796/947 +f 2880/796/947 2872/785/946 2876/789/949 +f 2883/799/36 2884/800/36 2885/801/36 +f 2885/801/36 2886/802/36 2883/799/36 +f 2887/803/996 2888/804/997 2889/805/952 +f 2889/805/952 2890/806/952 2887/803/996 +f 2886/807/953 2885/808/953 2888/804/997 +f 2888/804/997 2887/803/996 2886/807/953 +f 2891/809/954 2887/810/954 2890/811/955 +f 2890/811/955 2892/812/955 2891/809/954 +f 2883/813/956 2886/814/956 2887/810/954 +f 2887/810/954 2891/809/954 2883/813/956 +f 2893/804/957 2891/803/958 2892/806/959 +f 2892/806/959 2894/805/959 2893/804/957 +f 2884/808/960 2883/807/960 2891/803/958 +f 2891/803/958 2893/804/957 2884/808/960 +f 2888/815/961 2893/809/961 2894/816/962 +f 2894/816/962 2889/817/962 2888/815/961 +f 2885/818/963 2884/819/963 2893/809/961 +f 2893/809/961 2888/815/961 2885/818/963 +f 2895/820/36 2896/821/36 2897/822/36 +f 2897/822/36 2898/823/36 2895/820/36 +f 2899/824/998 2900/825/999 2901/826/966 +f 2901/826/966 2902/827/966 2899/824/998 +f 2898/828/967 2897/829/967 2900/825/999 +f 2900/825/999 2899/824/998 2898/828/967 +f 2903/737/968 2899/738/969 2902/734/970 +f 2902/734/970 2904/740/970 2903/737/968 +f 2895/741/971 2898/735/971 2899/738/969 +f 2899/738/969 2903/737/968 2895/741/971 +f 2905/825/972 2903/824/972 2904/827/973 +f 2904/827/973 2906/826/973 2905/825/972 +f 2896/829/974 2895/828/974 2903/824/972 +f 2903/824/972 2905/825/972 2896/829/974 +f 2900/731/975 2905/737/976 2906/733/977 +f 2906/733/977 2901/830/977 2900/731/975 +f 2897/831/978 2896/736/978 2905/737/976 +f 2905/737/976 2900/731/975 2897/831/978 +f 2907/832/226 2908/833/226 2909/834/226 +f 2909/834/226 2910/835/226 2907/832/226 +f 2911/836/993 2912/837/993 2913/838/980 +f 2913/838/980 2914/839/980 2911/836/993 +f 2910/840/981 2909/841/981 2912/837/993 +f 2912/837/993 2911/836/993 2910/840/981 +f 2915/737/982 2911/731/982 2914/734/983 +f 2914/734/983 2916/733/983 2915/737/982 +f 2907/741/984 2910/735/985 2911/731/982 +f 2911/731/982 2915/737/982 2907/741/984 +f 2917/837/986 2915/836/986 2916/839/987 +f 2916/839/987 2918/838/987 2917/837/986 +f 2908/841/988 2907/840/988 2915/836/986 +f 2915/836/986 2917/837/986 2908/841/988 +f 2912/842/989 2917/732/989 2918/843/990 +f 2918/843/990 2913/734/990 2912/842/989 +f 2909/831/991 2908/736/991 2917/732/989 +f 2917/732/989 2912/842/989 2909/831/991 +f 2919/721/36 2920/722/36 2921/723/36 +f 2921/723/36 2922/724/36 2919/721/36 +f 2923/725/888 2924/726/888 2925/727/889 +f 2925/727/889 2926/728/889 2923/725/888 +f 2922/729/890 2921/730/890 2924/726/888 +f 2924/726/888 2923/725/888 2922/729/890 +f 2927/731/891 2923/732/892 2926/733/893 +f 2926/733/893 2928/734/893 2927/731/891 +f 2919/735/895 2922/736/895 2923/732/892 +f 2923/732/892 2927/731/891 2919/735/895 +f 2929/726/896 2927/725/896 2928/728/897 +f 2928/728/897 2930/727/897 2929/726/896 +f 2920/730/898 2919/729/898 2927/725/896 +f 2927/725/896 2929/726/896 2920/730/898 +f 2924/737/899 2929/738/899 2930/739/900 +f 2930/739/900 2925/740/900 2924/737/899 +f 2921/741/901 2920/742/901 2929/738/899 +f 2929/738/899 2924/737/899 2921/741/901 +f 2931/743/37 2932/744/37 2933/745/37 +f 2933/745/37 2934/746/37 2931/743/37 +f 2935/747/995 2936/748/995 2937/749/903 +f 2937/749/903 2938/750/903 2935/747/995 +f 2934/751/904 2933/752/904 2936/748/995 +f 2936/748/995 2935/747/995 2934/751/904 +f 2939/753/905 2935/754/906 2938/755/907 +f 2938/755/907 2940/756/908 2939/753/905 +f 2931/757/909 2934/758/909 2935/754/906 +f 2935/754/906 2939/753/905 2931/757/909 +f 2941/748/910 2939/747/911 2940/750/912 +f 2940/750/912 2942/749/912 2941/748/910 +f 2932/752/913 2931/751/913 2939/747/911 +f 2939/747/911 2941/748/910 2932/752/913 +f 2936/754/914 2941/759/915 2942/760/916 +f 2942/760/916 2937/755/916 2936/754/914 +f 2933/758/917 2932/761/917 2941/759/915 +f 2941/759/915 2936/754/914 2933/758/917 +f 2943/762/918 2944/763/919 2945/764/920 +f 2945/764/920 2946/765/920 2943/762/918 +f 2947/766/921 2948/767/921 2944/763/919 +f 2944/763/919 2943/762/918 2947/766/921 +f 2949/768/922 2943/769/923 2946/770/924 +f 2946/770/924 2950/771/924 2949/768/922 +f 2951/772/925 2947/773/925 2943/769/923 +f 2943/769/923 2949/768/922 2951/772/925 +f 2952/763/926 2949/762/927 2950/765/928 +f 2950/765/928 2953/764/928 2952/763/926 +f 2954/767/929 2951/766/929 2949/762/927 +f 2949/762/927 2952/763/926 2954/767/929 +f 2944/774/930 2952/768/931 2953/771/932 +f 2953/771/932 2945/775/932 2944/774/930 +f 2948/776/933 2954/777/933 2952/768/931 +f 2952/768/931 2944/774/930 2948/776/933 +f 2955/778/934 2956/779/935 2957/780/936 +f 2957/780/936 2958/781/936 2955/778/934 +f 2959/782/937 2960/783/937 2956/779/935 +f 2956/779/935 2955/778/934 2959/782/937 +f 2961/784/938 2955/785/939 2958/786/940 +f 2958/786/940 2962/787/940 2961/784/938 +f 2963/788/941 2959/789/941 2955/785/939 +f 2955/785/939 2961/784/938 2963/788/941 +f 2964/790/1000 2961/791/943 2962/792/944 +f 2962/792/944 2965/793/944 2964/790/1000 +f 2966/794/945 2963/795/945 2961/791/943 +f 2961/791/943 2964/790/1000 2966/794/945 +f 2956/785/946 2964/796/947 2965/787/948 +f 2965/787/948 2957/797/948 2956/785/946 +f 2960/789/949 2966/798/949 2964/796/947 +f 2964/796/947 2956/785/946 2960/789/949 +f 2967/799/36 2968/800/36 2969/801/36 +f 2969/801/36 2970/802/36 2967/799/36 +f 2971/803/996 2972/804/997 2973/805/952 +f 2973/805/952 2974/806/952 2971/803/996 +f 2970/807/953 2969/808/953 2972/804/997 +f 2972/804/997 2971/803/996 2970/807/953 +f 2975/809/954 2971/810/954 2974/811/955 +f 2974/811/955 2976/812/955 2975/809/954 +f 2967/813/956 2970/814/956 2971/810/954 +f 2971/810/954 2975/809/954 2967/813/956 +f 2977/804/957 2975/803/958 2976/806/959 +f 2976/806/959 2978/805/959 2977/804/957 +f 2968/808/960 2967/807/960 2975/803/958 +f 2975/803/958 2977/804/957 2968/808/960 +f 2972/815/961 2977/809/961 2978/816/962 +f 2978/816/962 2973/817/962 2972/815/961 +f 2969/818/963 2968/819/963 2977/809/961 +f 2977/809/961 2972/815/961 2969/818/963 +f 2979/820/37 2980/821/37 2981/822/37 +f 2981/822/37 2982/823/37 2979/820/37 +f 2983/824/998 2984/825/999 2985/826/966 +f 2985/826/966 2986/827/966 2983/824/998 +f 2982/828/967 2981/829/967 2984/825/999 +f 2984/825/999 2983/824/998 2982/828/967 +f 2987/737/968 2983/738/969 2986/734/970 +f 2986/734/970 2988/740/970 2987/737/968 +f 2979/741/971 2982/735/971 2983/738/969 +f 2983/738/969 2987/737/968 2979/741/971 +f 2989/825/972 2987/824/972 2988/827/973 +f 2988/827/973 2990/826/973 2989/825/972 +f 2980/829/974 2979/828/974 2987/824/972 +f 2987/824/972 2989/825/972 2980/829/974 +f 2984/731/975 2989/737/976 2990/733/977 +f 2990/733/977 2985/830/977 2984/731/975 +f 2981/831/978 2980/736/978 2989/737/976 +f 2989/737/976 2984/731/975 2981/831/978 +f 2991/832/36 2992/833/36 2993/834/36 +f 2993/834/36 2994/835/36 2991/832/36 +f 2995/836/993 2996/837/993 2997/838/980 +f 2997/838/980 2998/839/980 2995/836/993 +f 2994/840/981 2993/841/981 2996/837/993 +f 2996/837/993 2995/836/993 2994/840/981 +f 2999/737/982 2995/731/982 2998/734/983 +f 2998/734/983 3000/733/983 2999/737/982 +f 2991/741/984 2994/735/985 2995/731/982 +f 2995/731/982 2999/737/982 2991/741/984 +f 3001/837/986 2999/836/986 3000/839/987 +f 3000/839/987 3002/838/987 3001/837/986 +f 2992/841/988 2991/840/988 2999/836/986 +f 2999/836/986 3001/837/986 2992/841/988 +f 2996/842/989 3001/732/989 3002/843/990 +f 3002/843/990 2997/734/990 2996/842/989 +f 2993/831/991 2992/736/991 3001/732/989 +f 3001/732/989 2996/842/989 2993/831/991 +f 3003/721/36 3004/722/36 3005/723/36 +f 3005/723/36 3006/724/36 3003/721/36 +f 3007/725/888 3008/726/888 3009/727/889 +f 3009/727/889 3010/728/889 3007/725/888 +f 3006/729/890 3005/730/890 3008/726/888 +f 3008/726/888 3007/725/888 3006/729/890 +f 3011/731/891 3007/732/892 3010/733/893 +f 3010/733/893 3012/734/893 3011/731/891 +f 3003/735/895 3006/736/895 3007/732/892 +f 3007/732/892 3011/731/891 3003/735/895 +f 3013/726/896 3011/725/896 3012/728/897 +f 3012/728/897 3014/727/897 3013/726/896 +f 3004/730/898 3003/729/898 3011/725/896 +f 3011/725/896 3013/726/896 3004/730/898 +f 3008/737/899 3013/738/899 3014/739/900 +f 3014/739/900 3009/740/900 3008/737/899 +f 3005/741/901 3004/742/901 3013/738/899 +f 3013/738/899 3008/737/899 3005/741/901 +f 3015/743/36 3016/744/36 3017/745/36 +f 3017/745/36 3018/746/36 3015/743/36 +f 3019/747/902 3020/748/902 3021/749/903 +f 3021/749/903 3022/750/903 3019/747/902 +f 3018/751/904 3017/752/904 3020/748/902 +f 3020/748/902 3019/747/902 3018/751/904 +f 3023/753/905 3019/754/906 3022/755/907 +f 3022/755/907 3024/756/908 3023/753/905 +f 3015/757/909 3018/758/909 3019/754/906 +f 3019/754/906 3023/753/905 3015/757/909 +f 3025/748/910 3023/747/911 3024/750/912 +f 3024/750/912 3026/749/912 3025/748/910 +f 3016/752/913 3015/751/913 3023/747/911 +f 3023/747/911 3025/748/910 3016/752/913 +f 3020/754/914 3025/759/915 3026/760/916 +f 3026/760/916 3021/755/916 3020/754/914 +f 3017/758/917 3016/761/917 3025/759/915 +f 3025/759/915 3020/754/914 3017/758/917 +f 3027/762/918 3028/763/919 3029/764/920 +f 3029/764/920 3030/765/920 3027/762/918 +f 3031/766/921 3032/767/921 3028/763/919 +f 3028/763/919 3027/762/918 3031/766/921 +f 3033/768/922 3027/769/923 3030/770/924 +f 3030/770/924 3034/771/924 3033/768/922 +f 3035/772/925 3031/773/925 3027/769/923 +f 3027/769/923 3033/768/922 3035/772/925 +f 3036/763/926 3033/762/927 3034/765/928 +f 3034/765/928 3037/764/928 3036/763/926 +f 3038/767/929 3035/766/929 3033/762/927 +f 3033/762/927 3036/763/926 3038/767/929 +f 3028/774/930 3036/768/931 3037/771/932 +f 3037/771/932 3029/775/932 3028/774/930 +f 3032/776/933 3038/777/933 3036/768/931 +f 3036/768/931 3028/774/930 3032/776/933 +f 3039/778/934 3040/779/935 3041/780/936 +f 3041/780/936 3042/781/936 3039/778/934 +f 3043/782/937 3044/783/937 3040/779/935 +f 3040/779/935 3039/778/934 3043/782/937 +f 3045/784/938 3039/785/939 3042/786/940 +f 3042/786/940 3046/787/940 3045/784/938 +f 3047/788/941 3043/789/941 3039/785/939 +f 3039/785/939 3045/784/938 3047/788/941 +f 3048/790/942 3045/791/943 3046/792/944 +f 3046/792/944 3049/793/944 3048/790/942 +f 3050/794/945 3047/795/945 3045/791/943 +f 3045/791/943 3048/790/942 3050/794/945 +f 3040/785/946 3048/796/947 3049/787/948 +f 3049/787/948 3041/797/948 3040/785/946 +f 3044/789/949 3050/798/949 3048/796/947 +f 3048/796/947 3040/785/946 3044/789/949 +f 3051/799/36 3052/800/36 3053/801/36 +f 3053/801/36 3054/802/36 3051/799/36 +f 3055/803/950 3056/804/951 3057/805/952 +f 3057/805/952 3058/806/952 3055/803/950 +f 3054/807/953 3053/808/953 3056/804/951 +f 3056/804/951 3055/803/950 3054/807/953 +f 3059/809/954 3055/810/954 3058/811/955 +f 3058/811/955 3060/812/955 3059/809/954 +f 3051/813/956 3054/814/956 3055/810/954 +f 3055/810/954 3059/809/954 3051/813/956 +f 3061/804/957 3059/803/958 3060/806/959 +f 3060/806/959 3062/805/959 3061/804/957 +f 3052/808/960 3051/807/960 3059/803/958 +f 3059/803/958 3061/804/957 3052/808/960 +f 3056/815/961 3061/809/961 3062/816/962 +f 3062/816/962 3057/817/962 3056/815/961 +f 3053/818/963 3052/819/963 3061/809/961 +f 3061/809/961 3056/815/961 3053/818/963 +f 3063/820/226 3064/821/226 3065/822/226 +f 3065/822/226 3066/823/226 3063/820/226 +f 3067/824/998 3068/825/999 3069/826/966 +f 3069/826/966 3070/827/966 3067/824/998 +f 3066/828/967 3065/829/967 3068/825/999 +f 3068/825/999 3067/824/998 3066/828/967 +f 3071/737/968 3067/738/969 3070/734/970 +f 3070/734/970 3072/740/970 3071/737/968 +f 3063/741/971 3066/735/971 3067/738/969 +f 3067/738/969 3071/737/968 3063/741/971 +f 3073/825/972 3071/824/972 3072/827/973 +f 3072/827/973 3074/826/973 3073/825/972 +f 3064/829/974 3063/828/974 3071/824/972 +f 3071/824/972 3073/825/972 3064/829/974 +f 3068/731/975 3073/737/976 3074/733/977 +f 3074/733/977 3069/830/977 3068/731/975 +f 3065/831/978 3064/736/978 3073/737/976 +f 3073/737/976 3068/731/975 3065/831/978 +f 3075/832/36 3076/833/36 3077/834/36 +f 3077/834/36 3078/835/36 3075/832/36 +f 3079/836/979 3080/837/979 3081/838/980 +f 3081/838/980 3082/839/980 3079/836/979 +f 3078/840/981 3077/841/981 3080/837/979 +f 3080/837/979 3079/836/979 3078/840/981 +f 3083/737/982 3079/731/982 3082/734/983 +f 3082/734/983 3084/733/983 3083/737/982 +f 3075/741/984 3078/735/985 3079/731/982 +f 3079/731/982 3083/737/982 3075/741/984 +f 3085/837/1001 3083/836/1001 3084/839/987 +f 3084/839/987 3086/838/987 3085/837/1001 +f 3076/841/988 3075/840/988 3083/836/1001 +f 3083/836/1001 3085/837/1001 3076/841/988 +f 3080/842/989 3085/732/989 3086/843/990 +f 3086/843/990 3081/734/990 3080/842/989 +f 3077/831/991 3076/736/991 3085/732/989 +f 3085/732/989 3080/842/989 3077/831/991 +f 3087/721/37 3088/722/37 3089/723/37 +f 3089/723/37 3090/724/37 3087/721/37 +f 3091/725/888 3092/726/888 3093/727/889 +f 3093/727/889 3094/728/889 3091/725/888 +f 3090/729/890 3089/730/890 3092/726/888 +f 3092/726/888 3091/725/888 3090/729/890 +f 3095/731/891 3091/732/892 3094/733/893 +f 3094/733/893 3096/734/893 3095/731/891 +f 3087/735/895 3090/736/895 3091/732/892 +f 3091/732/892 3095/731/891 3087/735/895 +f 3097/726/896 3095/725/896 3096/728/897 +f 3096/728/897 3098/727/897 3097/726/896 +f 3088/730/898 3087/729/898 3095/725/896 +f 3095/725/896 3097/726/896 3088/730/898 +f 3092/737/899 3097/738/899 3098/739/900 +f 3098/739/900 3093/740/900 3092/737/899 +f 3089/741/901 3088/742/901 3097/738/899 +f 3097/738/899 3092/737/899 3089/741/901 +f 3099/743/36 3100/744/36 3101/745/36 +f 3101/745/36 3102/746/36 3099/743/36 +f 3103/747/902 3104/748/995 3105/749/903 +f 3105/749/903 3106/750/903 3103/747/902 +f 3102/751/904 3101/752/904 3104/748/995 +f 3104/748/995 3103/747/902 3102/751/904 +f 3107/753/905 3103/754/906 3106/755/907 +f 3106/755/907 3108/756/908 3107/753/905 +f 3099/757/909 3102/758/909 3103/754/906 +f 3103/754/906 3107/753/905 3099/757/909 +f 3109/748/910 3107/747/911 3108/750/912 +f 3108/750/912 3110/749/912 3109/748/910 +f 3100/752/913 3099/751/913 3107/747/911 +f 3107/747/911 3109/748/910 3100/752/913 +f 3104/754/914 3109/759/915 3110/760/916 +f 3110/760/916 3105/755/916 3104/754/914 +f 3101/758/917 3100/761/917 3109/759/915 +f 3109/759/915 3104/754/914 3101/758/917 +f 3111/762/918 3112/763/919 3113/764/920 +f 3113/764/920 3114/765/920 3111/762/918 +f 3115/766/921 3116/767/921 3112/763/919 +f 3112/763/919 3111/762/918 3115/766/921 +f 3117/768/922 3111/769/923 3114/770/924 +f 3114/770/924 3118/771/924 3117/768/922 +f 3119/772/925 3115/773/925 3111/769/923 +f 3111/769/923 3117/768/922 3119/772/925 +f 3120/763/926 3117/762/927 3118/765/928 +f 3118/765/928 3121/764/928 3120/763/926 +f 3122/767/929 3119/766/929 3117/762/927 +f 3117/762/927 3120/763/926 3122/767/929 +f 3112/774/930 3120/768/931 3121/771/932 +f 3121/771/932 3113/775/932 3112/774/930 +f 3116/776/933 3122/777/933 3120/768/931 +f 3120/768/931 3112/774/930 3116/776/933 +f 3123/778/934 3124/779/935 3125/780/936 +f 3125/780/936 3126/781/936 3123/778/934 +f 3127/782/937 3128/783/937 3124/779/935 +f 3124/779/935 3123/778/934 3127/782/937 +f 3129/784/938 3123/785/939 3126/786/940 +f 3126/786/940 3130/787/940 3129/784/938 +f 3131/788/941 3127/789/941 3123/785/939 +f 3123/785/939 3129/784/938 3131/788/941 +f 3132/790/1000 3129/791/943 3130/792/944 +f 3130/792/944 3133/793/944 3132/790/1000 +f 3134/794/945 3131/795/945 3129/791/943 +f 3129/791/943 3132/790/1000 3134/794/945 +f 3124/785/946 3132/796/947 3133/787/948 +f 3133/787/948 3125/797/948 3124/785/946 +f 3128/789/949 3134/798/949 3132/796/947 +f 3132/796/947 3124/785/946 3128/789/949 +f 3135/799/37 3136/800/37 3137/801/37 +f 3137/801/37 3138/802/37 3135/799/37 +f 3139/803/950 3140/804/951 3141/805/952 +f 3141/805/952 3142/806/952 3139/803/950 +f 3138/807/953 3137/808/953 3140/804/951 +f 3140/804/951 3139/803/950 3138/807/953 +f 3143/809/954 3139/810/954 3142/811/955 +f 3142/811/955 3144/812/955 3143/809/954 +f 3135/813/956 3138/814/956 3139/810/954 +f 3139/810/954 3143/809/954 3135/813/956 +f 3145/804/957 3143/803/958 3144/806/959 +f 3144/806/959 3146/805/959 3145/804/957 +f 3136/808/960 3135/807/960 3143/803/958 +f 3143/803/958 3145/804/957 3136/808/960 +f 3140/815/961 3145/809/961 3146/816/962 +f 3146/816/962 3141/817/962 3140/815/961 +f 3137/818/963 3136/819/963 3145/809/961 +f 3145/809/961 3140/815/961 3137/818/963 +f 3147/820/36 3148/821/36 3149/822/36 +f 3149/822/36 3150/823/36 3147/820/36 +f 3151/824/998 3152/825/999 3153/826/966 +f 3153/826/966 3154/827/966 3151/824/998 +f 3150/828/967 3149/829/967 3152/825/999 +f 3152/825/999 3151/824/998 3150/828/967 +f 3155/737/968 3151/738/969 3154/734/970 +f 3154/734/970 3156/740/970 3155/737/968 +f 3147/741/971 3150/735/971 3151/738/969 +f 3151/738/969 3155/737/968 3147/741/971 +f 3157/825/972 3155/824/972 3156/827/973 +f 3156/827/973 3158/826/973 3157/825/972 +f 3148/829/974 3147/828/974 3155/824/972 +f 3155/824/972 3157/825/972 3148/829/974 +f 3152/731/975 3157/737/976 3158/733/977 +f 3158/733/977 3153/830/977 3152/731/975 +f 3149/831/978 3148/736/978 3157/737/976 +f 3157/737/976 3152/731/975 3149/831/978 +f 3159/832/36 3160/833/36 3161/834/36 +f 3161/834/36 3162/835/36 3159/832/36 +f 3163/836/979 3164/837/979 3165/838/994 +f 3165/838/994 3166/839/994 3163/836/979 +f 3162/840/981 3161/841/981 3164/837/979 +f 3164/837/979 3163/836/979 3162/840/981 +f 3167/737/982 3163/731/982 3166/734/983 +f 3166/734/983 3168/733/983 3167/737/982 +f 3159/741/984 3162/735/985 3163/731/982 +f 3163/731/982 3167/737/982 3159/741/984 +f 3169/837/1001 3167/836/1001 3168/839/987 +f 3168/839/987 3170/838/987 3169/837/1001 +f 3160/841/988 3159/840/988 3167/836/1001 +f 3167/836/1001 3169/837/1001 3160/841/988 +f 3164/842/989 3169/732/989 3170/843/990 +f 3170/843/990 3165/734/990 3164/842/989 +f 3161/831/991 3160/736/991 3169/732/989 +f 3169/732/989 3164/842/989 3161/831/991 +f 3171/721/36 3172/722/36 3173/723/36 +f 3173/723/36 3174/724/36 3171/721/36 +f 3175/725/888 3176/726/888 3177/727/889 +f 3177/727/889 3178/728/889 3175/725/888 +f 3174/729/890 3173/730/890 3176/726/888 +f 3176/726/888 3175/725/888 3174/729/890 +f 3179/731/891 3175/732/892 3178/733/893 +f 3178/733/893 3180/734/893 3179/731/891 +f 3171/735/895 3174/736/895 3175/732/892 +f 3175/732/892 3179/731/891 3171/735/895 +f 3181/726/896 3179/725/896 3180/728/897 +f 3180/728/897 3182/727/897 3181/726/896 +f 3172/730/898 3171/729/898 3179/725/896 +f 3179/725/896 3181/726/896 3172/730/898 +f 3176/737/899 3181/738/899 3182/739/900 +f 3182/739/900 3177/740/900 3176/737/899 +f 3173/741/901 3172/742/901 3181/738/899 +f 3181/738/899 3176/737/899 3173/741/901 +f 3183/743/36 3184/744/36 3185/745/36 +f 3185/745/36 3186/746/36 3183/743/36 +f 3187/747/995 3188/748/995 3189/749/903 +f 3189/749/903 3190/750/903 3187/747/995 +f 3186/751/904 3185/752/904 3188/748/995 +f 3188/748/995 3187/747/995 3186/751/904 +f 3191/753/905 3187/754/906 3190/755/907 +f 3190/755/907 3192/756/908 3191/753/905 +f 3183/757/909 3186/758/909 3187/754/906 +f 3187/754/906 3191/753/905 3183/757/909 +f 3193/748/910 3191/747/911 3192/750/912 +f 3192/750/912 3194/749/912 3193/748/910 +f 3184/752/913 3183/751/913 3191/747/911 +f 3191/747/911 3193/748/910 3184/752/913 +f 3188/754/914 3193/759/915 3194/760/916 +f 3194/760/916 3189/755/916 3188/754/914 +f 3185/758/917 3184/761/917 3193/759/915 +f 3193/759/915 3188/754/914 3185/758/917 +f 3195/762/918 3196/763/919 3197/764/920 +f 3197/764/920 3198/765/920 3195/762/918 +f 3199/766/921 3200/767/921 3196/763/919 +f 3196/763/919 3195/762/918 3199/766/921 +f 3201/768/922 3195/769/923 3198/770/924 +f 3198/770/924 3202/771/924 3201/768/922 +f 3203/772/925 3199/773/925 3195/769/923 +f 3195/769/923 3201/768/922 3203/772/925 +f 3204/763/926 3201/762/927 3202/765/928 +f 3202/765/928 3205/764/928 3204/763/926 +f 3206/767/929 3203/766/929 3201/762/927 +f 3201/762/927 3204/763/926 3206/767/929 +f 3196/774/930 3204/768/931 3205/771/932 +f 3205/771/932 3197/775/932 3196/774/930 +f 3200/776/933 3206/777/933 3204/768/931 +f 3204/768/931 3196/774/930 3200/776/933 +f 3207/778/934 3208/779/935 3209/780/936 +f 3209/780/936 3210/781/936 3207/778/934 +f 3211/782/937 3212/783/937 3208/779/935 +f 3208/779/935 3207/778/934 3211/782/937 +f 3213/784/938 3207/785/939 3210/786/940 +f 3210/786/940 3214/787/940 3213/784/938 +f 3215/788/941 3211/789/941 3207/785/939 +f 3207/785/939 3213/784/938 3215/788/941 +f 3216/790/1000 3213/791/943 3214/792/944 +f 3214/792/944 3217/793/944 3216/790/1000 +f 3218/794/945 3215/795/945 3213/791/943 +f 3213/791/943 3216/790/1000 3218/794/945 +f 3208/785/946 3216/796/947 3217/787/948 +f 3217/787/948 3209/797/948 3208/785/946 +f 3212/789/949 3218/798/949 3216/796/947 +f 3216/796/947 3208/785/946 3212/789/949 +f 3219/799/226 3220/800/226 3221/801/226 +f 3221/801/226 3222/802/226 3219/799/226 +f 3223/803/996 3224/804/997 3225/805/952 +f 3225/805/952 3226/806/952 3223/803/996 +f 3222/807/953 3221/808/953 3224/804/997 +f 3224/804/997 3223/803/996 3222/807/953 +f 3227/809/954 3223/810/954 3226/811/955 +f 3226/811/955 3228/812/955 3227/809/954 +f 3219/813/956 3222/814/956 3223/810/954 +f 3223/810/954 3227/809/954 3219/813/956 +f 3229/804/957 3227/803/958 3228/806/959 +f 3228/806/959 3230/805/959 3229/804/957 +f 3220/808/960 3219/807/960 3227/803/958 +f 3227/803/958 3229/804/957 3220/808/960 +f 3224/815/961 3229/809/961 3230/816/962 +f 3230/816/962 3225/817/962 3224/815/961 +f 3221/818/963 3220/819/963 3229/809/961 +f 3229/809/961 3224/815/961 3221/818/963 +f 3231/820/36 3232/821/36 3233/822/36 +f 3233/822/36 3234/823/36 3231/820/36 +f 3235/824/998 3236/825/999 3237/826/966 +f 3237/826/966 3238/827/966 3235/824/998 +f 3234/828/967 3233/829/967 3236/825/999 +f 3236/825/999 3235/824/998 3234/828/967 +f 3239/737/968 3235/738/969 3238/734/970 +f 3238/734/970 3240/740/970 3239/737/968 +f 3231/741/971 3234/735/971 3235/738/969 +f 3235/738/969 3239/737/968 3231/741/971 +f 3241/825/972 3239/824/972 3240/827/973 +f 3240/827/973 3242/826/973 3241/825/972 +f 3232/829/974 3231/828/974 3239/824/972 +f 3239/824/972 3241/825/972 3232/829/974 +f 3236/731/975 3241/737/976 3242/733/977 +f 3242/733/977 3237/830/977 3236/731/975 +f 3233/831/978 3232/736/978 3241/737/976 +f 3241/737/976 3236/731/975 3233/831/978 +f 3243/832/37 3244/833/37 3245/834/37 +f 3245/834/37 3246/835/37 3243/832/37 +f 3247/836/979 3248/837/979 3249/838/994 +f 3249/838/994 3250/839/994 3247/836/979 +f 3246/840/981 3245/841/981 3248/837/979 +f 3248/837/979 3247/836/979 3246/840/981 +f 3251/737/982 3247/731/982 3250/734/983 +f 3250/734/983 3252/733/983 3251/737/982 +f 3243/741/985 3246/735/985 3247/731/982 +f 3247/731/982 3251/737/982 3243/741/985 +f 3253/837/1001 3251/836/1001 3252/839/987 +f 3252/839/987 3254/838/987 3253/837/1001 +f 3244/841/988 3243/840/988 3251/836/1001 +f 3251/836/1001 3253/837/1001 3244/841/988 +f 3248/842/989 3253/732/989 3254/843/990 +f 3254/843/990 3249/734/990 3248/842/989 +f 3245/831/991 3244/736/991 3253/732/989 +f 3253/732/989 3248/842/989 3245/831/991 +f 3255/721/36 3256/722/36 3257/723/36 +f 3257/723/36 3258/724/36 3255/721/36 +f 3259/725/888 3260/726/888 3261/727/889 +f 3261/727/889 3262/728/889 3259/725/888 +f 3258/729/890 3257/730/890 3260/726/888 +f 3260/726/888 3259/725/888 3258/729/890 +f 3263/731/891 3259/732/892 3262/733/893 +f 3262/733/893 3264/734/893 3263/731/891 +f 3255/735/895 3258/736/895 3259/732/892 +f 3259/732/892 3263/731/891 3255/735/895 +f 3265/726/896 3263/725/896 3264/728/897 +f 3264/728/897 3266/727/897 3265/726/896 +f 3256/730/898 3255/729/898 3263/725/896 +f 3263/725/896 3265/726/896 3256/730/898 +f 3260/737/899 3265/738/899 3266/739/900 +f 3266/739/900 3261/740/900 3260/737/899 +f 3257/741/901 3256/742/901 3265/738/899 +f 3265/738/899 3260/737/899 3257/741/901 +f 3267/743/36 3268/744/36 3269/745/36 +f 3269/745/36 3270/746/36 3267/743/36 +f 3271/747/995 3272/748/995 3273/749/903 +f 3273/749/903 3274/750/903 3271/747/995 +f 3270/751/904 3269/752/904 3272/748/995 +f 3272/748/995 3271/747/995 3270/751/904 +f 3275/753/905 3271/754/906 3274/755/907 +f 3274/755/907 3276/756/908 3275/753/905 +f 3267/757/909 3270/758/909 3271/754/906 +f 3271/754/906 3275/753/905 3267/757/909 +f 3277/748/910 3275/747/911 3276/750/912 +f 3276/750/912 3278/749/912 3277/748/910 +f 3268/752/913 3267/751/913 3275/747/911 +f 3275/747/911 3277/748/910 3268/752/913 +f 3272/754/914 3277/759/915 3278/760/916 +f 3278/760/916 3273/755/916 3272/754/914 +f 3269/758/917 3268/761/917 3277/759/915 +f 3277/759/915 3272/754/914 3269/758/917 +f 3279/762/918 3280/763/919 3281/764/920 +f 3281/764/920 3282/765/920 3279/762/918 +f 3283/766/921 3284/767/921 3280/763/919 +f 3280/763/919 3279/762/918 3283/766/921 +f 3285/768/922 3279/769/923 3282/770/924 +f 3282/770/924 3286/771/924 3285/768/922 +f 3287/772/925 3283/773/925 3279/769/923 +f 3279/769/923 3285/768/922 3287/772/925 +f 3288/763/926 3285/762/927 3286/765/928 +f 3286/765/928 3289/764/928 3288/763/926 +f 3290/767/929 3287/766/929 3285/762/927 +f 3285/762/927 3288/763/926 3290/767/929 +f 3280/774/930 3288/768/931 3289/771/932 +f 3289/771/932 3281/775/932 3280/774/930 +f 3284/776/933 3290/777/933 3288/768/931 +f 3288/768/931 3280/774/930 3284/776/933 +f 3291/778/934 3292/779/935 3293/780/936 +f 3293/780/936 3294/781/936 3291/778/934 +f 3295/782/937 3296/783/937 3292/779/935 +f 3292/779/935 3291/778/934 3295/782/937 +f 3297/784/938 3291/785/939 3294/786/940 +f 3294/786/940 3298/787/940 3297/784/938 +f 3299/788/941 3295/789/941 3291/785/939 +f 3291/785/939 3297/784/938 3299/788/941 +f 3300/790/1000 3297/791/943 3298/792/944 +f 3298/792/944 3301/793/944 3300/790/1000 +f 3302/794/945 3299/795/945 3297/791/943 +f 3297/791/943 3300/790/1000 3302/794/945 +f 3292/785/946 3300/796/947 3301/787/948 +f 3301/787/948 3293/797/948 3292/785/946 +f 3296/789/949 3302/798/949 3300/796/947 +f 3300/796/947 3292/785/946 3296/789/949 +f 3303/799/36 3304/800/36 3305/801/36 +f 3305/801/36 3306/802/36 3303/799/36 +f 3307/803/996 3308/804/997 3309/805/952 +f 3309/805/952 3310/806/952 3307/803/996 +f 3306/807/953 3305/808/953 3308/804/997 +f 3308/804/997 3307/803/996 3306/807/953 +f 3311/809/954 3307/810/954 3310/811/955 +f 3310/811/955 3312/812/955 3311/809/954 +f 3303/813/956 3306/814/956 3307/810/954 +f 3307/810/954 3311/809/954 3303/813/956 +f 3313/804/957 3311/803/958 3312/806/959 +f 3312/806/959 3314/805/959 3313/804/957 +f 3304/808/960 3303/807/960 3311/803/958 +f 3311/803/958 3313/804/957 3304/808/960 +f 3308/815/961 3313/809/961 3314/816/962 +f 3314/816/962 3309/817/962 3308/815/961 +f 3305/818/963 3304/819/963 3313/809/961 +f 3313/809/961 3308/815/961 3305/818/963 +f 3315/820/36 3316/821/36 3317/822/36 +f 3317/822/36 3318/823/36 3315/820/36 +f 3319/824/998 3320/825/999 3321/826/966 +f 3321/826/966 3322/827/966 3319/824/998 +f 3318/828/967 3317/829/967 3320/825/999 +f 3320/825/999 3319/824/998 3318/828/967 +f 3323/737/968 3319/738/969 3322/734/970 +f 3322/734/970 3324/740/970 3323/737/968 +f 3315/741/971 3318/735/971 3319/738/969 +f 3319/738/969 3323/737/968 3315/741/971 +f 3325/825/972 3323/824/972 3324/827/973 +f 3324/827/973 3326/826/973 3325/825/972 +f 3316/829/974 3315/828/974 3323/824/972 +f 3323/824/972 3325/825/972 3316/829/974 +f 3320/731/975 3325/737/976 3326/733/977 +f 3326/733/977 3321/830/977 3320/731/975 +f 3317/831/978 3316/736/978 3325/737/976 +f 3325/737/976 3320/731/975 3317/831/978 +f 3327/832/36 3328/833/36 3329/834/36 +f 3329/834/36 3330/835/36 3327/832/36 +f 3331/836/993 3332/837/979 3333/838/994 +f 3333/838/994 3334/839/994 3331/836/993 +f 3330/840/981 3329/841/981 3332/837/979 +f 3332/837/979 3331/836/993 3330/840/981 +f 3335/737/982 3331/731/982 3334/734/983 +f 3334/734/983 3336/733/983 3335/737/982 +f 3327/741/984 3330/735/985 3331/731/982 +f 3331/731/982 3335/737/982 3327/741/984 +f 3337/837/1001 3335/836/1001 3336/839/987 +f 3336/839/987 3338/838/987 3337/837/1001 +f 3328/841/988 3327/840/988 3335/836/1001 +f 3335/836/1001 3337/837/1001 3328/841/988 +f 3332/842/989 3337/732/989 3338/843/990 +f 3338/843/990 3333/734/990 3332/842/989 +f 3329/831/991 3328/736/991 3337/732/989 +f 3337/732/989 3332/842/989 3329/831/991 +f 3339/721/36 3340/722/36 3341/723/36 +f 3341/723/36 3342/724/36 3339/721/36 +f 3343/725/888 3344/726/888 3345/727/889 +f 3345/727/889 3346/728/889 3343/725/888 +f 3342/729/890 3341/730/890 3344/726/888 +f 3344/726/888 3343/725/888 3342/729/890 +f 3347/731/891 3343/732/892 3346/733/893 +f 3346/733/893 3348/734/893 3347/731/891 +f 3339/735/895 3342/736/895 3343/732/892 +f 3343/732/892 3347/731/891 3339/735/895 +f 3349/726/896 3347/725/896 3348/728/897 +f 3348/728/897 3350/727/897 3349/726/896 +f 3340/730/898 3339/729/898 3347/725/896 +f 3347/725/896 3349/726/896 3340/730/898 +f 3344/737/899 3349/738/899 3350/739/900 +f 3350/739/900 3345/740/900 3344/737/899 +f 3341/741/901 3340/742/901 3349/738/899 +f 3349/738/899 3344/737/899 3341/741/901 +f 3351/743/37 3352/744/37 3353/745/37 +f 3353/745/37 3354/746/37 3351/743/37 +f 3355/747/902 3356/748/995 3357/749/903 +f 3357/749/903 3358/750/903 3355/747/902 +f 3354/751/904 3353/752/904 3356/748/995 +f 3356/748/995 3355/747/902 3354/751/904 +f 3359/753/905 3355/754/906 3358/755/907 +f 3358/755/907 3360/756/908 3359/753/905 +f 3351/757/909 3354/758/909 3355/754/906 +f 3355/754/906 3359/753/905 3351/757/909 +f 3361/748/910 3359/747/911 3360/750/912 +f 3360/750/912 3362/749/912 3361/748/910 +f 3352/752/913 3351/751/913 3359/747/911 +f 3359/747/911 3361/748/910 3352/752/913 +f 3356/754/914 3361/759/915 3362/760/916 +f 3362/760/916 3357/755/916 3356/754/914 +f 3353/758/917 3352/761/917 3361/759/915 +f 3361/759/915 3356/754/914 3353/758/917 +f 3363/762/918 3364/763/919 3365/764/920 +f 3365/764/920 3366/765/920 3363/762/918 +f 3367/766/921 3368/767/921 3364/763/919 +f 3364/763/919 3363/762/918 3367/766/921 +f 3369/768/922 3363/769/923 3366/770/924 +f 3366/770/924 3370/771/924 3369/768/922 +f 3371/772/925 3367/773/925 3363/769/923 +f 3363/769/923 3369/768/922 3371/772/925 +f 3372/763/926 3369/762/927 3370/765/928 +f 3370/765/928 3373/764/928 3372/763/926 +f 3374/767/929 3371/766/929 3369/762/927 +f 3369/762/927 3372/763/926 3374/767/929 +f 3364/774/930 3372/768/931 3373/771/932 +f 3373/771/932 3365/775/932 3364/774/930 +f 3368/776/933 3374/777/933 3372/768/931 +f 3372/768/931 3364/774/930 3368/776/933 +f 3375/778/934 3376/779/935 3377/780/936 +f 3377/780/936 3378/781/936 3375/778/934 +f 3379/782/937 3380/783/937 3376/779/935 +f 3376/779/935 3375/778/934 3379/782/937 +f 3381/784/938 3375/785/939 3378/786/940 +f 3378/786/940 3382/787/940 3381/784/938 +f 3383/788/941 3379/789/941 3375/785/939 +f 3375/785/939 3381/784/938 3383/788/941 +f 3384/790/1000 3381/791/943 3382/792/944 +f 3382/792/944 3385/793/944 3384/790/1000 +f 3386/794/945 3383/795/945 3381/791/943 +f 3381/791/943 3384/790/1000 3386/794/945 +f 3376/785/946 3384/796/947 3385/787/948 +f 3385/787/948 3377/797/948 3376/785/946 +f 3380/789/949 3386/798/949 3384/796/947 +f 3384/796/947 3376/785/946 3380/789/949 +f 3387/799/37 3388/800/37 3389/801/37 +f 3389/801/37 3390/802/37 3387/799/37 +f 3391/803/996 3392/804/997 3393/805/952 +f 3393/805/952 3394/806/952 3391/803/996 +f 3390/807/953 3389/808/953 3392/804/997 +f 3392/804/997 3391/803/996 3390/807/953 +f 3395/809/954 3391/810/954 3394/811/955 +f 3394/811/955 3396/812/955 3395/809/954 +f 3387/813/956 3390/814/956 3391/810/954 +f 3391/810/954 3395/809/954 3387/813/956 +f 3397/804/957 3395/803/958 3396/806/959 +f 3396/806/959 3398/805/959 3397/804/957 +f 3388/808/960 3387/807/960 3395/803/958 +f 3395/803/958 3397/804/957 3388/808/960 +f 3392/815/961 3397/809/961 3398/816/962 +f 3398/816/962 3393/817/962 3392/815/961 +f 3389/818/963 3388/819/963 3397/809/961 +f 3397/809/961 3392/815/961 3389/818/963 +f 3399/820/37 3400/821/37 3401/822/37 +f 3401/822/37 3402/823/37 3399/820/37 +f 3403/824/998 3404/825/999 3405/826/966 +f 3405/826/966 3406/827/966 3403/824/998 +f 3402/828/967 3401/829/967 3404/825/999 +f 3404/825/999 3403/824/998 3402/828/967 +f 3407/737/968 3403/738/969 3406/734/970 +f 3406/734/970 3408/740/970 3407/737/968 +f 3399/741/971 3402/735/971 3403/738/969 +f 3403/738/969 3407/737/968 3399/741/971 +f 3409/825/972 3407/824/972 3408/827/973 +f 3408/827/973 3410/826/973 3409/825/972 +f 3400/829/974 3399/828/974 3407/824/972 +f 3407/824/972 3409/825/972 3400/829/974 +f 3404/731/975 3409/737/976 3410/733/977 +f 3410/733/977 3405/830/977 3404/731/975 +f 3401/831/978 3400/736/978 3409/737/976 +f 3409/737/976 3404/731/975 3401/831/978 +f 3411/832/36 3412/833/36 3413/834/36 +f 3413/834/36 3414/835/36 3411/832/36 +f 3415/836/979 3416/837/979 3417/838/980 +f 3417/838/980 3418/839/980 3415/836/979 +f 3414/840/981 3413/841/981 3416/837/979 +f 3416/837/979 3415/836/979 3414/840/981 +f 3419/737/982 3415/731/982 3418/734/983 +f 3418/734/983 3420/733/983 3419/737/982 +f 3411/741/984 3414/735/985 3415/731/982 +f 3415/731/982 3419/737/982 3411/741/984 +f 3421/837/1001 3419/836/1001 3420/839/987 +f 3420/839/987 3422/838/987 3421/837/1001 +f 3412/841/988 3411/840/988 3419/836/1001 +f 3419/836/1001 3421/837/1001 3412/841/988 +f 3416/842/989 3421/732/989 3422/843/990 +f 3422/843/990 3417/734/990 3416/842/989 +f 3413/831/991 3412/736/991 3421/732/989 +f 3421/732/989 3416/842/989 3413/831/991 +f 3423/721/36 3424/722/36 3425/723/36 +f 3425/723/36 3426/724/36 3423/721/36 +f 3427/725/888 3428/726/888 3429/727/889 +f 3429/727/889 3430/728/889 3427/725/888 +f 3426/729/890 3425/730/890 3428/726/888 +f 3428/726/888 3427/725/888 3426/729/890 +f 3431/731/891 3427/732/892 3430/733/893 +f 3430/733/893 3432/734/893 3431/731/891 +f 3423/735/895 3426/736/895 3427/732/892 +f 3427/732/892 3431/731/891 3423/735/895 +f 3433/726/896 3431/725/896 3432/728/897 +f 3432/728/897 3434/727/897 3433/726/896 +f 3424/730/898 3423/729/898 3431/725/896 +f 3431/725/896 3433/726/896 3424/730/898 +f 3428/737/899 3433/738/899 3434/739/900 +f 3434/739/900 3429/740/900 3428/737/899 +f 3425/741/901 3424/742/901 3433/738/899 +f 3433/738/899 3428/737/899 3425/741/901 +f 3435/743/226 3436/744/226 3437/745/226 +f 3437/745/226 3438/746/226 3435/743/226 +f 3439/747/902 3440/748/995 3441/749/903 +f 3441/749/903 3442/750/903 3439/747/902 +f 3438/751/904 3437/752/904 3440/748/995 +f 3440/748/995 3439/747/902 3438/751/904 +f 3443/753/905 3439/754/906 3442/755/907 +f 3442/755/907 3444/756/908 3443/753/905 +f 3435/757/909 3438/758/909 3439/754/906 +f 3439/754/906 3443/753/905 3435/757/909 +f 3445/748/910 3443/747/911 3444/750/912 +f 3444/750/912 3446/749/912 3445/748/910 +f 3436/752/913 3435/751/913 3443/747/911 +f 3443/747/911 3445/748/910 3436/752/913 +f 3440/754/914 3445/759/915 3446/760/916 +f 3446/760/916 3441/755/916 3440/754/914 +f 3437/758/917 3436/761/917 3445/759/915 +f 3445/759/915 3440/754/914 3437/758/917 +f 3447/762/918 3448/763/919 3449/764/920 +f 3449/764/920 3450/765/920 3447/762/918 +f 3451/766/921 3452/767/921 3448/763/919 +f 3448/763/919 3447/762/918 3451/766/921 +f 3453/768/922 3447/769/923 3450/770/924 +f 3450/770/924 3454/771/924 3453/768/922 +f 3455/772/925 3451/773/925 3447/769/923 +f 3447/769/923 3453/768/922 3455/772/925 +f 3456/763/926 3453/762/927 3454/765/928 +f 3454/765/928 3457/764/928 3456/763/926 +f 3458/767/929 3455/766/929 3453/762/927 +f 3453/762/927 3456/763/926 3458/767/929 +f 3448/774/930 3456/768/931 3457/771/932 +f 3457/771/932 3449/775/932 3448/774/930 +f 3452/776/933 3458/777/933 3456/768/931 +f 3456/768/931 3448/774/930 3452/776/933 +f 3459/778/934 3460/779/935 3461/780/936 +f 3461/780/936 3462/781/936 3459/778/934 +f 3463/782/937 3464/783/937 3460/779/935 +f 3460/779/935 3459/778/934 3463/782/937 +f 3465/784/938 3459/785/939 3462/786/940 +f 3462/786/940 3466/787/940 3465/784/938 +f 3467/788/941 3463/789/941 3459/785/939 +f 3459/785/939 3465/784/938 3467/788/941 +f 3468/790/1000 3465/791/943 3466/792/944 +f 3466/792/944 3469/793/944 3468/790/1000 +f 3470/794/945 3467/795/945 3465/791/943 +f 3465/791/943 3468/790/1000 3470/794/945 +f 3460/785/946 3468/796/947 3469/787/948 +f 3469/787/948 3461/797/948 3460/785/946 +f 3464/789/949 3470/798/949 3468/796/947 +f 3468/796/947 3460/785/946 3464/789/949 +f 3471/799/36 3472/800/36 3473/801/36 +f 3473/801/36 3474/802/36 3471/799/36 +f 3475/803/996 3476/804/997 3477/805/952 +f 3477/805/952 3478/806/952 3475/803/996 +f 3474/807/953 3473/808/953 3476/804/997 +f 3476/804/997 3475/803/996 3474/807/953 +f 3479/809/954 3475/810/954 3478/811/955 +f 3478/811/955 3480/812/955 3479/809/954 +f 3471/813/956 3474/814/956 3475/810/954 +f 3475/810/954 3479/809/954 3471/813/956 +f 3481/804/957 3479/803/958 3480/806/959 +f 3480/806/959 3482/805/959 3481/804/957 +f 3472/808/960 3471/807/960 3479/803/958 +f 3479/803/958 3481/804/957 3472/808/960 +f 3476/815/961 3481/809/961 3482/816/962 +f 3482/816/962 3477/817/962 3476/815/961 +f 3473/818/963 3472/819/963 3481/809/961 +f 3481/809/961 3476/815/961 3473/818/963 +f 3483/820/36 3484/821/36 3485/822/36 +f 3485/822/36 3486/823/36 3483/820/36 +f 3487/824/998 3488/825/999 3489/826/966 +f 3489/826/966 3490/827/966 3487/824/998 +f 3486/828/967 3485/829/967 3488/825/999 +f 3488/825/999 3487/824/998 3486/828/967 +f 3491/737/968 3487/738/969 3490/734/970 +f 3490/734/970 3492/740/970 3491/737/968 +f 3483/741/971 3486/735/971 3487/738/969 +f 3487/738/969 3491/737/968 3483/741/971 +f 3493/825/972 3491/824/972 3492/827/973 +f 3492/827/973 3494/826/973 3493/825/972 +f 3484/829/974 3483/828/974 3491/824/972 +f 3491/824/972 3493/825/972 3484/829/974 +f 3488/731/975 3493/737/976 3494/733/977 +f 3494/733/977 3489/830/977 3488/731/975 +f 3485/831/978 3484/736/978 3493/737/976 +f 3493/737/976 3488/731/975 3485/831/978 +f 3495/832/36 3496/833/36 3497/834/36 +f 3497/834/36 3498/835/36 3495/832/36 +f 3499/836/979 3500/837/979 3501/838/980 +f 3501/838/980 3502/839/980 3499/836/979 +f 3498/840/981 3497/841/981 3500/837/979 +f 3500/837/979 3499/836/979 3498/840/981 +f 3503/737/982 3499/731/982 3502/734/983 +f 3502/734/983 3504/733/983 3503/737/982 +f 3495/741/984 3498/735/985 3499/731/982 +f 3499/731/982 3503/737/982 3495/741/984 +f 3505/837/1001 3503/836/1001 3504/839/987 +f 3504/839/987 3506/838/987 3505/837/1001 +f 3496/841/988 3495/840/988 3503/836/1001 +f 3503/836/1001 3505/837/1001 3496/841/988 +f 3500/842/989 3505/732/989 3506/843/990 +f 3506/843/990 3501/734/990 3500/842/989 +f 3497/831/991 3496/736/991 3505/732/989 +f 3505/732/989 3500/842/989 3497/831/991 +f 3507/721/37 3508/722/37 3509/723/37 +f 3509/723/37 3510/724/37 3507/721/37 +f 3511/725/888 3512/726/888 3513/727/889 +f 3513/727/889 3514/728/889 3511/725/888 +f 3510/729/890 3509/730/890 3512/726/888 +f 3512/726/888 3511/725/888 3510/729/890 +f 3515/731/891 3511/732/892 3514/733/893 +f 3514/733/893 3516/734/893 3515/731/891 +f 3507/735/895 3510/736/895 3511/732/892 +f 3511/732/892 3515/731/891 3507/735/895 +f 3517/726/896 3515/725/896 3516/728/897 +f 3516/728/897 3518/727/897 3517/726/896 +f 3508/730/898 3507/729/898 3515/725/896 +f 3515/725/896 3517/726/896 3508/730/898 +f 3512/737/899 3517/738/899 3518/739/900 +f 3518/739/900 3513/740/900 3512/737/899 +f 3509/741/901 3508/742/901 3517/738/899 +f 3517/738/899 3512/737/899 3509/741/901 +f 3519/743/37 3520/744/37 3521/745/37 +f 3521/745/37 3522/746/37 3519/743/37 +f 3523/747/902 3524/748/995 3525/749/903 +f 3525/749/903 3526/750/903 3523/747/902 +f 3522/751/904 3521/752/904 3524/748/995 +f 3524/748/995 3523/747/902 3522/751/904 +f 3527/753/905 3523/754/906 3526/755/907 +f 3526/755/907 3528/756/908 3527/753/905 +f 3519/757/909 3522/758/909 3523/754/906 +f 3523/754/906 3527/753/905 3519/757/909 +f 3529/748/910 3527/747/911 3528/750/912 +f 3528/750/912 3530/749/912 3529/748/910 +f 3520/752/913 3519/751/913 3527/747/911 +f 3527/747/911 3529/748/910 3520/752/913 +f 3524/754/914 3529/759/915 3530/760/916 +f 3530/760/916 3525/755/916 3524/754/914 +f 3521/758/917 3520/761/917 3529/759/915 +f 3529/759/915 3524/754/914 3521/758/917 +f 3531/762/918 3532/763/919 3533/764/920 +f 3533/764/920 3534/765/920 3531/762/918 +f 3535/766/921 3536/767/921 3532/763/919 +f 3532/763/919 3531/762/918 3535/766/921 +f 3537/768/922 3531/769/923 3534/770/924 +f 3534/770/924 3538/771/924 3537/768/922 +f 3539/772/925 3535/773/925 3531/769/923 +f 3531/769/923 3537/768/922 3539/772/925 +f 3540/763/926 3537/762/927 3538/765/928 +f 3538/765/928 3541/764/928 3540/763/926 +f 3542/767/929 3539/766/929 3537/762/927 +f 3537/762/927 3540/763/926 3542/767/929 +f 3532/774/930 3540/768/931 3541/771/932 +f 3541/771/932 3533/775/932 3532/774/930 +f 3536/776/933 3542/777/933 3540/768/931 +f 3540/768/931 3532/774/930 3536/776/933 +f 3543/778/934 3544/779/935 3545/780/936 +f 3545/780/936 3546/781/936 3543/778/934 +f 3547/782/937 3548/783/937 3544/779/935 +f 3544/779/935 3543/778/934 3547/782/937 +f 3549/784/938 3543/785/939 3546/786/940 +f 3546/786/940 3550/787/940 3549/784/938 +f 3551/788/941 3547/789/941 3543/785/939 +f 3543/785/939 3549/784/938 3551/788/941 +f 3552/790/1000 3549/791/943 3550/792/944 +f 3550/792/944 3553/793/944 3552/790/1000 +f 3554/794/945 3551/795/945 3549/791/943 +f 3549/791/943 3552/790/1000 3554/794/945 +f 3544/785/946 3552/796/947 3553/787/948 +f 3553/787/948 3545/797/948 3544/785/946 +f 3548/789/949 3554/798/949 3552/796/947 +f 3552/796/947 3544/785/946 3548/789/949 +f 3555/799/37 3556/800/37 3557/801/37 +f 3557/801/37 3558/802/37 3555/799/37 +f 3559/803/996 3560/804/997 3561/805/952 +f 3561/805/952 3562/806/952 3559/803/996 +f 3558/807/953 3557/808/953 3560/804/997 +f 3560/804/997 3559/803/996 3558/807/953 +f 3563/809/954 3559/810/954 3562/811/955 +f 3562/811/955 3564/812/955 3563/809/954 +f 3555/813/956 3558/814/956 3559/810/954 +f 3559/810/954 3563/809/954 3555/813/956 +f 3565/804/957 3563/803/958 3564/806/959 +f 3564/806/959 3566/805/959 3565/804/957 +f 3556/808/960 3555/807/960 3563/803/958 +f 3563/803/958 3565/804/957 3556/808/960 +f 3560/815/961 3565/809/961 3566/816/962 +f 3566/816/962 3561/817/962 3560/815/961 +f 3557/818/963 3556/819/963 3565/809/961 +f 3565/809/961 3560/815/961 3557/818/963 +f 3567/820/36 3568/821/36 3569/822/36 +f 3569/822/36 3570/823/36 3567/820/36 +f 3571/824/998 3572/825/999 3573/826/966 +f 3573/826/966 3574/827/966 3571/824/998 +f 3570/828/967 3569/829/967 3572/825/999 +f 3572/825/999 3571/824/998 3570/828/967 +f 3575/737/968 3571/738/969 3574/734/970 +f 3574/734/970 3576/740/970 3575/737/968 +f 3567/741/971 3570/735/971 3571/738/969 +f 3571/738/969 3575/737/968 3567/741/971 +f 3577/825/972 3575/824/972 3576/827/973 +f 3576/827/973 3578/826/973 3577/825/972 +f 3568/829/974 3567/828/974 3575/824/972 +f 3575/824/972 3577/825/972 3568/829/974 +f 3572/731/975 3577/737/976 3578/733/977 +f 3578/733/977 3573/830/977 3572/731/975 +f 3569/831/978 3568/736/978 3577/737/976 +f 3577/737/976 3572/731/975 3569/831/978 +f 3579/832/36 3580/833/36 3581/834/36 +f 3581/834/36 3582/835/36 3579/832/36 +f 3583/836/979 3584/837/979 3585/838/980 +f 3585/838/980 3586/839/980 3583/836/979 +f 3582/840/981 3581/841/981 3584/837/979 +f 3584/837/979 3583/836/979 3582/840/981 +f 3587/737/982 3583/731/982 3586/734/983 +f 3586/734/983 3588/733/983 3587/737/982 +f 3579/741/984 3582/735/985 3583/731/982 +f 3583/731/982 3587/737/982 3579/741/984 +f 3589/837/1001 3587/836/1001 3588/839/987 +f 3588/839/987 3590/838/987 3589/837/1001 +f 3580/841/988 3579/840/988 3587/836/1001 +f 3587/836/1001 3589/837/1001 3580/841/988 +f 3584/842/989 3589/732/989 3590/843/990 +f 3590/843/990 3585/734/990 3584/842/989 +f 3581/831/991 3580/736/991 3589/732/989 +f 3589/732/989 3584/842/989 3581/831/991 +f 3591/721/226 3592/722/226 3593/723/226 +f 3593/723/226 3594/724/226 3591/721/226 +f 3595/725/888 3596/726/888 3597/727/889 +f 3597/727/889 3598/728/889 3595/725/888 +f 3594/729/890 3593/730/890 3596/726/888 +f 3596/726/888 3595/725/888 3594/729/890 +f 3599/731/891 3595/732/892 3598/733/893 +f 3598/733/893 3600/734/893 3599/731/891 +f 3591/735/895 3594/736/895 3595/732/892 +f 3595/732/892 3599/731/891 3591/735/895 +f 3601/726/896 3599/725/896 3600/728/897 +f 3600/728/897 3602/727/897 3601/726/896 +f 3592/730/898 3591/729/898 3599/725/896 +f 3599/725/896 3601/726/896 3592/730/898 +f 3596/737/899 3601/738/899 3602/739/900 +f 3602/739/900 3597/740/900 3596/737/899 +f 3593/741/901 3592/742/901 3601/738/899 +f 3601/738/899 3596/737/899 3593/741/901 +f 3603/743/36 3604/744/36 3605/745/36 +f 3605/745/36 3606/746/36 3603/743/36 +f 3607/747/902 3608/748/995 3609/749/903 +f 3609/749/903 3610/750/903 3607/747/902 +f 3606/751/904 3605/752/904 3608/748/995 +f 3608/748/995 3607/747/902 3606/751/904 +f 3611/753/905 3607/754/906 3610/755/907 +f 3610/755/907 3612/756/908 3611/753/905 +f 3603/757/909 3606/758/909 3607/754/906 +f 3607/754/906 3611/753/905 3603/757/909 +f 3613/748/910 3611/747/911 3612/750/912 +f 3612/750/912 3614/749/912 3613/748/910 +f 3604/752/913 3603/751/913 3611/747/911 +f 3611/747/911 3613/748/910 3604/752/913 +f 3608/754/914 3613/759/915 3614/760/916 +f 3614/760/916 3609/755/916 3608/754/914 +f 3605/758/917 3604/761/917 3613/759/915 +f 3613/759/915 3608/754/914 3605/758/917 +f 3615/762/918 3616/763/919 3617/764/920 +f 3617/764/920 3618/765/920 3615/762/918 +f 3619/766/921 3620/767/921 3616/763/919 +f 3616/763/919 3615/762/918 3619/766/921 +f 3621/768/922 3615/769/923 3618/770/924 +f 3618/770/924 3622/771/924 3621/768/922 +f 3623/772/925 3619/773/925 3615/769/923 +f 3615/769/923 3621/768/922 3623/772/925 +f 3624/763/926 3621/762/927 3622/765/928 +f 3622/765/928 3625/764/928 3624/763/926 +f 3626/767/929 3623/766/929 3621/762/927 +f 3621/762/927 3624/763/926 3626/767/929 +f 3616/774/930 3624/768/931 3625/771/932 +f 3625/771/932 3617/775/932 3616/774/930 +f 3620/776/933 3626/777/933 3624/768/931 +f 3624/768/931 3616/774/930 3620/776/933 +f 3627/778/934 3628/779/935 3629/780/936 +f 3629/780/936 3630/781/936 3627/778/934 +f 3631/782/937 3632/783/937 3628/779/935 +f 3628/779/935 3627/778/934 3631/782/937 +f 3633/784/938 3627/785/939 3630/786/940 +f 3630/786/940 3634/787/940 3633/784/938 +f 3635/788/941 3631/789/941 3627/785/939 +f 3627/785/939 3633/784/938 3635/788/941 +f 3636/790/1000 3633/791/943 3634/792/944 +f 3634/792/944 3637/793/944 3636/790/1000 +f 3638/794/945 3635/795/945 3633/791/943 +f 3633/791/943 3636/790/1000 3638/794/945 +f 3628/785/946 3636/796/947 3637/787/948 +f 3637/787/948 3629/797/948 3628/785/946 +f 3632/789/949 3638/798/949 3636/796/947 +f 3636/796/947 3628/785/946 3632/789/949 +f 3639/799/36 3640/800/36 3641/801/36 +f 3641/801/36 3642/802/36 3639/799/36 +f 3643/803/996 3644/804/997 3645/805/952 +f 3645/805/952 3646/806/952 3643/803/996 +f 3642/807/953 3641/808/953 3644/804/997 +f 3644/804/997 3643/803/996 3642/807/953 +f 3647/809/954 3643/810/954 3646/811/955 +f 3646/811/955 3648/812/955 3647/809/954 +f 3639/813/956 3642/814/956 3643/810/954 +f 3643/810/954 3647/809/954 3639/813/956 +f 3649/804/957 3647/803/958 3648/806/959 +f 3648/806/959 3650/805/959 3649/804/957 +f 3640/808/960 3639/807/960 3647/803/958 +f 3647/803/958 3649/804/957 3640/808/960 +f 3644/815/961 3649/809/961 3650/816/962 +f 3650/816/962 3645/817/962 3644/815/961 +f 3641/818/963 3640/819/963 3649/809/961 +f 3649/809/961 3644/815/961 3641/818/963 +f 3651/820/36 3652/821/36 3653/822/36 +f 3653/822/36 3654/823/36 3651/820/36 +f 3655/824/964 3656/825/965 3657/826/966 +f 3657/826/966 3658/827/966 3655/824/964 +f 3654/828/967 3653/829/967 3656/825/965 +f 3656/825/965 3655/824/964 3654/828/967 +f 3659/737/968 3655/738/969 3658/734/970 +f 3658/734/970 3660/740/970 3659/737/968 +f 3651/741/971 3654/735/971 3655/738/969 +f 3655/738/969 3659/737/968 3651/741/971 +f 3661/825/1002 3659/824/972 3660/827/973 +f 3660/827/973 3662/826/973 3661/825/1002 +f 3652/829/974 3651/828/974 3659/824/972 +f 3659/824/972 3661/825/1002 3652/829/974 +f 3656/731/975 3661/737/976 3662/733/977 +f 3662/733/977 3657/830/977 3656/731/975 +f 3653/831/978 3652/736/978 3661/737/976 +f 3661/737/976 3656/731/975 3653/831/978 +f 3663/832/226 3664/833/226 3665/834/226 +f 3665/834/226 3666/835/226 3663/832/226 +f 3667/836/979 3668/837/979 3669/838/980 +f 3669/838/980 3670/839/980 3667/836/979 +f 3666/840/981 3665/841/981 3668/837/979 +f 3668/837/979 3667/836/979 3666/840/981 +f 3671/737/982 3667/731/982 3670/734/983 +f 3670/734/983 3672/733/983 3671/737/982 +f 3663/741/984 3666/735/985 3667/731/982 +f 3667/731/982 3671/737/982 3663/741/984 +f 3673/837/1001 3671/836/1001 3672/839/987 +f 3672/839/987 3674/838/987 3673/837/1001 +f 3664/841/988 3663/840/988 3671/836/1001 +f 3671/836/1001 3673/837/1001 3664/841/988 +f 3668/842/989 3673/732/989 3674/843/990 +f 3674/843/990 3669/734/990 3668/842/989 +f 3665/831/991 3664/736/991 3673/732/989 +f 3673/732/989 3668/842/989 3665/831/991 +f 3675/721/226 3676/722/226 3677/723/226 +f 3677/723/226 3678/724/226 3675/721/226 +f 3679/725/1003 3680/726/1004 3681/727/1005 +f 3681/727/1005 3682/728/1005 3679/725/1003 +f 3678/729/1006 3677/730/1006 3680/726/1004 +f 3680/726/1004 3679/725/1003 3678/729/1006 +f 3683/731/1007 3679/732/1008 3682/733/1009 +f 3682/733/1009 3684/734/1009 3683/731/1007 +f 3675/735/1010 3678/736/1010 3679/732/1008 +f 3679/732/1008 3683/731/1007 3675/735/1010 +f 3685/726/1011 3683/725/1011 3684/728/1012 +f 3684/728/1012 3686/727/1012 3685/726/1011 +f 3676/730/1013 3675/729/1013 3683/725/1011 +f 3683/725/1011 3685/726/1011 3676/730/1013 +f 3680/737/1014 3685/738/1014 3686/739/1015 +f 3686/739/1015 3681/740/1015 3680/737/1014 +f 3677/741/1016 3676/742/1016 3685/738/1014 +f 3685/738/1014 3680/737/1014 3677/741/1016 +f 3687/743/37 3688/744/37 3689/745/37 +f 3689/745/37 3690/746/37 3687/743/37 +f 3691/747/1017 3692/748/1017 3693/749/1018 +f 3693/749/1018 3694/750/1018 3691/747/1017 +f 3690/751/1019 3689/752/1019 3692/748/1017 +f 3692/748/1017 3691/747/1017 3690/751/1019 +f 3695/753/1020 3691/754/1021 3694/755/1022 +f 3694/755/1022 3696/756/1022 3695/753/1020 +f 3687/757/1023 3690/758/1023 3691/754/1021 +f 3691/754/1021 3695/753/1020 3687/757/1023 +f 3697/748/1024 3695/747/1025 3696/750/1026 +f 3696/750/1026 3698/749/1026 3697/748/1024 +f 3688/752/1027 3687/751/1028 3695/747/1025 +f 3695/747/1025 3697/748/1024 3688/752/1027 +f 3692/754/1029 3697/759/1030 3698/760/1031 +f 3698/760/1031 3693/755/1031 3692/754/1029 +f 3689/758/1032 3688/761/1032 3697/759/1030 +f 3697/759/1030 3692/754/1029 3689/758/1032 +f 3699/762/1033 3700/763/1034 3701/764/1035 +f 3701/764/1035 3702/765/1035 3699/762/1033 +f 3703/766/1036 3704/767/1036 3700/763/1034 +f 3700/763/1034 3699/762/1033 3703/766/1036 +f 3705/768/1037 3699/769/1038 3702/770/1039 +f 3702/770/1039 3706/771/1039 3705/768/1037 +f 3707/772/1040 3703/773/1040 3699/769/1038 +f 3699/769/1038 3705/768/1037 3707/772/1040 +f 3708/763/1041 3705/762/1042 3706/765/1043 +f 3706/765/1043 3709/764/1043 3708/763/1041 +f 3710/767/1044 3707/766/1044 3705/762/1042 +f 3705/762/1042 3708/763/1041 3710/767/1044 +f 3700/774/1045 3708/768/1046 3709/771/1047 +f 3709/771/1047 3701/775/1047 3700/774/1045 +f 3704/776/1048 3710/777/1048 3708/768/1046 +f 3708/768/1046 3700/774/1045 3704/776/1048 +f 3711/778/1049 3712/779/1050 3713/780/1051 +f 3713/780/1051 3714/781/1051 3711/778/1049 +f 3715/782/1052 3716/783/1052 3712/779/1050 +f 3712/779/1050 3711/778/1049 3715/782/1052 +f 3717/784/1053 3711/785/1054 3714/786/1055 +f 3714/786/1055 3718/787/1055 3717/784/1053 +f 3719/788/1056 3715/789/1056 3711/785/1054 +f 3711/785/1054 3717/784/1053 3719/788/1056 +f 3720/790/1057 3717/791/1058 3718/792/1059 +f 3718/792/1059 3721/793/1059 3720/790/1057 +f 3722/794/1060 3719/795/1060 3717/791/1058 +f 3717/791/1058 3720/790/1057 3722/794/1060 +f 3712/785/1061 3720/796/1062 3721/787/1063 +f 3721/787/1063 3713/797/1063 3712/785/1061 +f 3716/789/1064 3722/798/1064 3720/796/1062 +f 3720/796/1062 3712/785/1061 3716/789/1064 +f 3723/799/37 3724/800/37 3725/801/37 +f 3725/801/37 3726/802/37 3723/799/37 +f 3727/803/816 3728/804/815 3729/805/869 +f 3729/805/869 3730/806/869 3727/803/816 +f 3726/807/870 3725/808/870 3728/804/815 +f 3728/804/815 3727/803/816 3726/807/870 +f 3731/809/1065 3727/810/1065 3730/811/1066 +f 3730/811/1066 3732/812/1066 3731/809/1065 +f 3723/813/1067 3726/814/1067 3727/810/1065 +f 3727/810/1065 3731/809/1065 3723/813/1067 +f 3733/804/809 3731/803/808 3732/806/810 +f 3732/806/810 3734/805/810 3733/804/809 +f 3724/808/811 3723/807/811 3731/803/808 +f 3731/803/808 3733/804/809 3724/808/811 +f 3728/815/1068 3733/809/1068 3734/816/1069 +f 3734/816/1069 3729/817/1069 3728/815/1068 +f 3725/818/1070 3724/819/1071 3733/809/1068 +f 3733/809/1068 3728/815/1068 3725/818/1070 +f 3735/820/37 3736/821/37 3737/822/37 +f 3737/822/37 3738/823/37 3735/820/37 +f 3739/824/1072 3740/825/1073 3741/826/1074 +f 3741/826/1074 3742/827/1074 3739/824/1072 +f 3738/828/1075 3737/829/1075 3740/825/1073 +f 3740/825/1073 3739/824/1072 3738/828/1075 +f 3743/737/1076 3739/738/1077 3742/734/1078 +f 3742/734/1078 3744/740/1078 3743/737/1076 +f 3735/741/1079 3738/735/1079 3739/738/1077 +f 3739/738/1077 3743/737/1076 3735/741/1079 +f 3745/825/1080 3743/824/1080 3744/827/1081 +f 3744/827/1081 3746/826/1081 3745/825/1080 +f 3736/829/1082 3735/828/1082 3743/824/1080 +f 3743/824/1080 3745/825/1080 3736/829/1082 +f 3740/731/1083 3745/737/1084 3746/733/1085 +f 3746/733/1085 3741/830/1085 3740/731/1083 +f 3737/831/1086 3736/736/1086 3745/737/1084 +f 3745/737/1084 3740/731/1083 3737/831/1086 +f 3747/832/37 3748/833/37 3749/834/37 +f 3749/834/37 3750/835/37 3747/832/37 +f 3751/836/1087 3752/837/1087 3753/838/1088 +f 3753/838/1088 3754/839/1088 3751/836/1087 +f 3750/840/1089 3749/841/1089 3752/837/1087 +f 3752/837/1087 3751/836/1087 3750/840/1089 +f 3755/737/848 3751/731/848 3754/734/849 +f 3754/734/849 3756/733/849 3755/737/848 +f 3747/741/850 3750/735/850 3751/731/848 +f 3751/731/848 3755/737/848 3747/741/850 +f 3757/837/1090 3755/836/1090 3756/839/1091 +f 3756/839/1091 3758/838/1091 3757/837/1090 +f 3748/841/1092 3747/840/1092 3755/836/1090 +f 3755/836/1090 3757/837/1090 3748/841/1092 +f 3752/842/1093 3757/732/842 3758/843/843 +f 3758/843/843 3753/734/843 3752/842/1093 +f 3749/831/1094 3748/736/1094 3757/732/842 +f 3757/732/842 3752/842/1093 3749/831/1094 +f 3759/721/226 3760/722/226 3761/723/226 +f 3761/723/226 3762/724/226 3759/721/226 +f 3763/725/1003 3764/726/1004 3765/727/1005 +f 3765/727/1005 3766/728/1005 3763/725/1003 +f 3762/729/1006 3761/730/1006 3764/726/1004 +f 3764/726/1004 3763/725/1003 3762/729/1006 +f 3767/731/1007 3763/732/1008 3766/733/1009 +f 3766/733/1009 3768/734/1009 3767/731/1007 +f 3759/735/1095 3762/736/1010 3763/732/1008 +f 3763/732/1008 3767/731/1007 3759/735/1095 +f 3769/726/1011 3767/725/1011 3768/728/1012 +f 3768/728/1012 3770/727/1012 3769/726/1011 +f 3760/730/1013 3759/729/1013 3767/725/1011 +f 3767/725/1011 3769/726/1011 3760/730/1013 +f 3764/737/1014 3769/738/1014 3770/739/1015 +f 3770/739/1015 3765/740/1015 3764/737/1014 +f 3761/741/1016 3760/742/1016 3769/738/1014 +f 3769/738/1014 3764/737/1014 3761/741/1016 +f 3771/743/37 3772/744/37 3773/745/37 +f 3773/745/37 3774/746/37 3771/743/37 +f 3775/747/1017 3776/748/1017 3777/749/1018 +f 3777/749/1018 3778/750/1018 3775/747/1017 +f 3774/751/1096 3773/752/1096 3776/748/1017 +f 3776/748/1017 3775/747/1017 3774/751/1096 +f 3779/753/1020 3775/754/1021 3778/755/1022 +f 3778/755/1022 3780/756/1022 3779/753/1020 +f 3771/757/1023 3774/758/1023 3775/754/1021 +f 3775/754/1021 3779/753/1020 3771/757/1023 +f 3781/748/1024 3779/747/1025 3780/750/1097 +f 3780/750/1097 3782/749/1097 3781/748/1024 +f 3772/752/1028 3771/751/1028 3779/747/1025 +f 3779/747/1025 3781/748/1024 3772/752/1028 +f 3776/754/1029 3781/759/1030 3782/760/1031 +f 3782/760/1031 3777/755/1031 3776/754/1029 +f 3773/758/1032 3772/761/1032 3781/759/1030 +f 3781/759/1030 3776/754/1029 3773/758/1032 +f 3783/762/1033 3784/763/1034 3785/764/1035 +f 3785/764/1035 3786/765/1035 3783/762/1033 +f 3787/766/1036 3788/767/1036 3784/763/1034 +f 3784/763/1034 3783/762/1033 3787/766/1036 +f 3789/768/1098 3783/769/1038 3786/770/1039 +f 3786/770/1039 3790/771/1039 3789/768/1098 +f 3791/772/1040 3787/773/1040 3783/769/1038 +f 3783/769/1038 3789/768/1098 3791/772/1040 +f 3792/763/1041 3789/762/1042 3790/765/1043 +f 3790/765/1043 3793/764/1043 3792/763/1041 +f 3794/767/1044 3791/766/1044 3789/762/1042 +f 3789/762/1042 3792/763/1041 3794/767/1044 +f 3784/774/1045 3792/768/1046 3793/771/1047 +f 3793/771/1047 3785/775/1047 3784/774/1045 +f 3788/776/1048 3794/777/1048 3792/768/1046 +f 3792/768/1046 3784/774/1045 3788/776/1048 +f 3795/778/1049 3796/779/1050 3797/780/1051 +f 3797/780/1051 3798/781/1051 3795/778/1049 +f 3799/782/1052 3800/783/1052 3796/779/1050 +f 3796/779/1050 3795/778/1049 3799/782/1052 +f 3801/784/1053 3795/785/1099 3798/786/1055 +f 3798/786/1055 3802/787/1055 3801/784/1053 +f 3803/788/1056 3799/789/1056 3795/785/1099 +f 3795/785/1099 3801/784/1053 3803/788/1056 +f 3804/790/1057 3801/791/1058 3802/792/1059 +f 3802/792/1059 3805/793/1059 3804/790/1057 +f 3806/794/1060 3803/795/1060 3801/791/1058 +f 3801/791/1058 3804/790/1057 3806/794/1060 +f 3796/785/1061 3804/796/1062 3805/787/1063 +f 3805/787/1063 3797/797/1063 3796/785/1061 +f 3800/789/1064 3806/798/1064 3804/796/1062 +f 3804/796/1062 3796/785/1061 3800/789/1064 +f 3807/799/37 3808/800/37 3809/801/37 +f 3809/801/37 3810/802/37 3807/799/37 +f 3811/803/816 3812/804/815 3813/805/869 +f 3813/805/869 3814/806/869 3811/803/816 +f 3810/807/870 3809/808/870 3812/804/815 +f 3812/804/815 3811/803/816 3810/807/870 +f 3815/809/1065 3811/810/1065 3814/811/1066 +f 3814/811/1066 3816/812/1066 3815/809/1065 +f 3807/813/1067 3810/814/1067 3811/810/1065 +f 3811/810/1065 3815/809/1065 3807/813/1067 +f 3817/804/1100 3815/803/808 3816/806/1101 +f 3816/806/1101 3818/805/1101 3817/804/1100 +f 3808/808/1102 3807/807/1102 3815/803/808 +f 3815/803/808 3817/804/1100 3808/808/1102 +f 3812/815/1068 3817/809/1068 3818/816/1069 +f 3818/816/1069 3813/817/1069 3812/815/1068 +f 3809/818/1071 3808/819/1071 3817/809/1068 +f 3817/809/1068 3812/815/1068 3809/818/1071 +f 3819/820/37 3820/821/37 3821/822/37 +f 3821/822/37 3822/823/37 3819/820/37 +f 3823/824/1103 3824/825/1104 3825/826/1074 +f 3825/826/1074 3826/827/1074 3823/824/1103 +f 3822/828/1105 3821/829/1105 3824/825/1104 +f 3824/825/1104 3823/824/1103 3822/828/1105 +f 3827/737/1076 3823/738/1077 3826/734/1078 +f 3826/734/1078 3828/740/1078 3827/737/1076 +f 3819/741/1079 3822/735/1079 3823/738/1077 +f 3823/738/1077 3827/737/1076 3819/741/1079 +f 3829/825/1106 3827/824/1080 3828/827/1081 +f 3828/827/1081 3830/826/1107 3829/825/1106 +f 3820/829/1082 3819/828/1108 3827/824/1080 +f 3827/824/1080 3829/825/1106 3820/829/1082 +f 3824/731/1083 3829/737/1084 3830/733/1085 +f 3830/733/1085 3825/830/1085 3824/731/1083 +f 3821/831/1086 3820/736/1086 3829/737/1084 +f 3829/737/1084 3824/731/1083 3821/831/1086 +f 3831/832/37 3832/833/37 3833/834/37 +f 3833/834/37 3834/835/37 3831/832/37 +f 3835/836/1087 3836/837/1087 3837/838/1109 +f 3837/838/1109 3838/839/1109 3835/836/1087 +f 3834/840/1110 3833/841/1110 3836/837/1087 +f 3836/837/1087 3835/836/1087 3834/840/1110 +f 3839/737/848 3835/731/848 3838/734/849 +f 3838/734/849 3840/733/849 3839/737/848 +f 3831/741/850 3834/735/850 3835/731/848 +f 3835/731/848 3839/737/848 3831/741/850 +f 3841/837/1090 3839/836/1090 3840/839/1111 +f 3840/839/1111 3842/838/1111 3841/837/1090 +f 3832/841/1092 3831/840/1092 3839/836/1090 +f 3839/836/1090 3841/837/1090 3832/841/1092 +f 3836/842/842 3841/732/842 3842/843/843 +f 3842/843/843 3837/734/843 3836/842/842 +f 3833/831/1094 3832/736/1094 3841/732/842 +f 3841/732/842 3836/842/842 3833/831/1094 +f 3843/721/226 3844/722/226 3845/723/226 +f 3845/723/226 3846/724/226 3843/721/226 +f 3847/725/1004 3848/726/1004 3849/727/1112 +f 3849/727/1112 3850/728/1112 3847/725/1004 +f 3846/729/1006 3845/730/1006 3848/726/1004 +f 3848/726/1004 3847/725/1004 3846/729/1006 +f 3851/731/1007 3847/732/1008 3850/733/1009 +f 3850/733/1009 3852/734/1009 3851/731/1007 +f 3843/735/1010 3846/736/1010 3847/732/1008 +f 3847/732/1008 3851/731/1007 3843/735/1010 +f 3853/726/1113 3851/725/1011 3852/728/1012 +f 3852/728/1012 3854/727/1012 3853/726/1113 +f 3844/730/1013 3843/729/1013 3851/725/1011 +f 3851/725/1011 3853/726/1113 3844/730/1013 +f 3848/737/1014 3853/738/1014 3854/739/1015 +f 3854/739/1015 3849/740/1015 3848/737/1014 +f 3845/741/1016 3844/742/1016 3853/738/1014 +f 3853/738/1014 3848/737/1014 3845/741/1016 +f 3855/743/37 3856/744/37 3857/745/37 +f 3857/745/37 3858/746/37 3855/743/37 +f 3859/747/1017 3860/748/1017 3861/749/1018 +f 3861/749/1018 3862/750/1018 3859/747/1017 +f 3858/751/1019 3857/752/1019 3860/748/1017 +f 3860/748/1017 3859/747/1017 3858/751/1019 +f 3863/753/1020 3859/754/1021 3862/755/1022 +f 3862/755/1022 3864/756/1022 3863/753/1020 +f 3855/757/1023 3858/758/1023 3859/754/1021 +f 3859/754/1021 3863/753/1020 3855/757/1023 +f 3865/748/1024 3863/747/1025 3864/750/1026 +f 3864/750/1026 3866/749/1026 3865/748/1024 +f 3856/752/1027 3855/751/1028 3863/747/1025 +f 3863/747/1025 3865/748/1024 3856/752/1027 +f 3860/754/1029 3865/759/1030 3866/760/1031 +f 3866/760/1031 3861/755/1031 3860/754/1029 +f 3857/758/1032 3856/761/1032 3865/759/1030 +f 3865/759/1030 3860/754/1029 3857/758/1032 +f 3867/762/1033 3868/763/1034 3869/764/1035 +f 3869/764/1035 3870/765/1035 3867/762/1033 +f 3871/766/1036 3872/767/1036 3868/763/1034 +f 3868/763/1034 3867/762/1033 3871/766/1036 +f 3873/768/1098 3867/769/1038 3870/770/1039 +f 3870/770/1039 3874/771/1039 3873/768/1098 +f 3875/772/1040 3871/773/1040 3867/769/1038 +f 3867/769/1038 3873/768/1098 3875/772/1040 +f 3876/763/1041 3873/762/1042 3874/765/1043 +f 3874/765/1043 3877/764/1043 3876/763/1041 +f 3878/767/1044 3875/766/1044 3873/762/1042 +f 3873/762/1042 3876/763/1041 3878/767/1044 +f 3868/774/1045 3876/768/1046 3877/771/1047 +f 3877/771/1047 3869/775/1047 3868/774/1045 +f 3872/776/1048 3878/777/1048 3876/768/1046 +f 3876/768/1046 3868/774/1045 3872/776/1048 +f 3879/778/1114 3880/779/1050 3881/780/1051 +f 3881/780/1051 3882/781/1051 3879/778/1114 +f 3883/782/1052 3884/783/1052 3880/779/1050 +f 3880/779/1050 3879/778/1114 3883/782/1052 +f 3885/784/1053 3879/785/1099 3882/786/1055 +f 3882/786/1055 3886/787/1055 3885/784/1053 +f 3887/788/1056 3883/789/1056 3879/785/1099 +f 3879/785/1099 3885/784/1053 3887/788/1056 +f 3888/790/1057 3885/791/1115 3886/792/1059 +f 3886/792/1059 3889/793/1059 3888/790/1057 +f 3890/794/1060 3887/795/1060 3885/791/1115 +f 3885/791/1115 3888/790/1057 3890/794/1060 +f 3880/785/1061 3888/796/1062 3889/787/1063 +f 3889/787/1063 3881/797/1063 3880/785/1061 +f 3884/789/1064 3890/798/1064 3888/796/1062 +f 3888/796/1062 3880/785/1061 3884/789/1064 +f 3891/799/37 3892/800/37 3893/801/37 +f 3893/801/37 3894/802/37 3891/799/37 +f 3895/803/816 3896/804/815 3897/805/869 +f 3897/805/869 3898/806/869 3895/803/816 +f 3894/807/870 3893/808/870 3896/804/815 +f 3896/804/815 3895/803/816 3894/807/870 +f 3899/809/1065 3895/810/1065 3898/811/1066 +f 3898/811/1066 3900/812/1066 3899/809/1065 +f 3891/813/1067 3894/814/1067 3895/810/1065 +f 3895/810/1065 3899/809/1065 3891/813/1067 +f 3901/804/809 3899/803/808 3900/806/810 +f 3900/806/810 3902/805/810 3901/804/809 +f 3892/808/811 3891/807/811 3899/803/808 +f 3899/803/808 3901/804/809 3892/808/811 +f 3896/815/1068 3901/809/1068 3902/816/1069 +f 3902/816/1069 3897/817/1069 3896/815/1068 +f 3893/818/1070 3892/819/1071 3901/809/1068 +f 3901/809/1068 3896/815/1068 3893/818/1070 +f 3903/820/37 3904/821/37 3905/822/37 +f 3905/822/37 3906/823/37 3903/820/37 +f 3907/824/1103 3908/825/1104 3909/826/1074 +f 3909/826/1074 3910/827/1074 3907/824/1103 +f 3906/828/1105 3905/829/1105 3908/825/1104 +f 3908/825/1104 3907/824/1103 3906/828/1105 +f 3911/737/1076 3907/738/1077 3910/734/1078 +f 3910/734/1078 3912/740/1078 3911/737/1076 +f 3903/741/1079 3906/735/1079 3907/738/1077 +f 3907/738/1077 3911/737/1076 3903/741/1079 +f 3913/825/1080 3911/824/1080 3912/827/1081 +f 3912/827/1081 3914/826/1081 3913/825/1080 +f 3904/829/1082 3903/828/1082 3911/824/1080 +f 3911/824/1080 3913/825/1080 3904/829/1082 +f 3908/731/1083 3913/737/1084 3914/733/1085 +f 3914/733/1085 3909/830/1085 3908/731/1083 +f 3905/831/1086 3904/736/1086 3913/737/1084 +f 3913/737/1084 3908/731/1083 3905/831/1086 +f 3915/832/37 3916/833/37 3917/834/37 +f 3917/834/37 3918/835/37 3915/832/37 +f 3919/836/1087 3920/837/1087 3921/838/1088 +f 3921/838/1088 3922/839/1088 3919/836/1087 +f 3918/840/1116 3917/841/1116 3920/837/1087 +f 3920/837/1087 3919/836/1087 3918/840/1116 +f 3923/737/848 3919/731/848 3922/734/849 +f 3922/734/849 3924/733/849 3923/737/848 +f 3915/741/850 3918/735/850 3919/731/848 +f 3919/731/848 3923/737/848 3915/741/850 +f 3925/837/1090 3923/836/1090 3924/839/1117 +f 3924/839/1117 3926/838/1117 3925/837/1090 +f 3916/841/1118 3915/840/1118 3923/836/1090 +f 3923/836/1090 3925/837/1090 3916/841/1118 +f 3920/842/842 3925/732/842 3926/843/843 +f 3926/843/843 3921/734/843 3920/842/842 +f 3917/831/1094 3916/736/1094 3925/732/842 +f 3925/732/842 3920/842/842 3917/831/1094 +f 3927/721/226 3928/722/226 3929/723/226 +f 3929/723/226 3930/724/226 3927/721/226 +f 3931/725/1004 3932/726/1004 3933/727/1119 +f 3933/727/1119 3934/728/1112 3931/725/1004 +f 3930/729/1006 3929/730/1006 3932/726/1004 +f 3932/726/1004 3931/725/1004 3930/729/1006 +f 3935/731/1007 3931/732/1008 3934/733/1009 +f 3934/733/1009 3936/734/1009 3935/731/1007 +f 3927/735/1010 3930/736/1010 3931/732/1008 +f 3931/732/1008 3935/731/1007 3927/735/1010 +f 3937/726/1113 3935/725/1011 3936/728/1012 +f 3936/728/1012 3938/727/1012 3937/726/1113 +f 3928/730/1013 3927/729/1013 3935/725/1011 +f 3935/725/1011 3937/726/1113 3928/730/1013 +f 3932/737/1014 3937/738/1014 3938/739/1015 +f 3938/739/1015 3933/740/1015 3932/737/1014 +f 3929/741/1016 3928/742/1016 3937/738/1014 +f 3937/738/1014 3932/737/1014 3929/741/1016 +f 3939/743/37 3940/744/37 3941/745/37 +f 3941/745/37 3942/746/37 3939/743/37 +f 3943/747/1017 3944/748/1017 3945/749/1018 +f 3945/749/1018 3946/750/1018 3943/747/1017 +f 3942/751/1019 3941/752/1019 3944/748/1017 +f 3944/748/1017 3943/747/1017 3942/751/1019 +f 3947/753/1020 3943/754/1021 3946/755/1022 +f 3946/755/1022 3948/756/1022 3947/753/1020 +f 3939/757/1023 3942/758/1023 3943/754/1021 +f 3943/754/1021 3947/753/1020 3939/757/1023 +f 3949/748/1024 3947/747/1025 3948/750/1026 +f 3948/750/1026 3950/749/1026 3949/748/1024 +f 3940/752/1027 3939/751/1028 3947/747/1025 +f 3947/747/1025 3949/748/1024 3940/752/1027 +f 3944/754/1029 3949/759/1030 3950/760/1031 +f 3950/760/1031 3945/755/1031 3944/754/1029 +f 3941/758/1032 3940/761/1032 3949/759/1030 +f 3949/759/1030 3944/754/1029 3941/758/1032 +f 3951/762/1033 3952/763/1034 3953/764/1035 +f 3953/764/1035 3954/765/1035 3951/762/1033 +f 3955/766/1036 3956/767/1036 3952/763/1034 +f 3952/763/1034 3951/762/1033 3955/766/1036 +f 3957/768/1098 3951/769/1038 3954/770/1039 +f 3954/770/1039 3958/771/1039 3957/768/1098 +f 3959/772/1040 3955/773/1040 3951/769/1038 +f 3951/769/1038 3957/768/1098 3959/772/1040 +f 3960/763/1041 3957/762/1042 3958/765/1043 +f 3958/765/1043 3961/764/1043 3960/763/1041 +f 3962/767/1044 3959/766/1044 3957/762/1042 +f 3957/762/1042 3960/763/1041 3962/767/1044 +f 3952/774/1045 3960/768/1046 3961/771/1047 +f 3961/771/1047 3953/775/1047 3952/774/1045 +f 3956/776/1048 3962/777/1048 3960/768/1046 +f 3960/768/1046 3952/774/1045 3956/776/1048 +f 3963/778/1114 3964/779/1050 3965/780/1051 +f 3965/780/1051 3966/781/1051 3963/778/1114 +f 3967/782/1052 3968/783/1052 3964/779/1050 +f 3964/779/1050 3963/778/1114 3967/782/1052 +f 3969/784/1053 3963/785/1099 3966/786/1055 +f 3966/786/1055 3970/787/1055 3969/784/1053 +f 3971/788/1056 3967/789/1056 3963/785/1099 +f 3963/785/1099 3969/784/1053 3971/788/1056 +f 3972/790/1057 3969/791/1058 3970/792/1059 +f 3970/792/1059 3973/793/1059 3972/790/1057 +f 3974/794/1060 3971/795/1060 3969/791/1058 +f 3969/791/1058 3972/790/1057 3974/794/1060 +f 3964/785/1061 3972/796/1062 3973/787/1063 +f 3973/787/1063 3965/797/1063 3964/785/1061 +f 3968/789/1064 3974/798/1064 3972/796/1062 +f 3972/796/1062 3964/785/1061 3968/789/1064 +f 3975/799/37 3976/800/37 3977/801/37 +f 3977/801/37 3978/802/37 3975/799/37 +f 3979/803/816 3980/804/815 3981/805/869 +f 3981/805/869 3982/806/869 3979/803/816 +f 3978/807/870 3977/808/870 3980/804/815 +f 3980/804/815 3979/803/816 3978/807/870 +f 3983/809/1065 3979/810/1065 3982/811/1066 +f 3982/811/1066 3984/812/1066 3983/809/1065 +f 3975/813/1067 3978/814/1067 3979/810/1065 +f 3979/810/1065 3983/809/1065 3975/813/1067 +f 3985/804/809 3983/803/808 3984/806/810 +f 3984/806/810 3986/805/810 3985/804/809 +f 3976/808/811 3975/807/811 3983/803/808 +f 3983/803/808 3985/804/809 3976/808/811 +f 3980/815/1068 3985/809/1068 3986/816/1069 +f 3986/816/1069 3981/817/1069 3980/815/1068 +f 3977/818/1070 3976/819/1071 3985/809/1068 +f 3985/809/1068 3980/815/1068 3977/818/1070 +f 3987/820/37 3988/821/37 3989/822/37 +f 3989/822/37 3990/823/37 3987/820/37 +f 3991/824/1072 3992/825/1073 3993/826/1120 +f 3993/826/1120 3994/827/1074 3991/824/1072 +f 3990/828/1121 3989/829/1105 3992/825/1073 +f 3992/825/1073 3991/824/1072 3990/828/1121 +f 3995/737/1076 3991/738/1077 3994/734/1078 +f 3994/734/1078 3996/740/1078 3995/737/1076 +f 3987/741/1079 3990/735/1079 3991/738/1077 +f 3991/738/1077 3995/737/1076 3987/741/1079 +f 3997/825/1080 3995/824/1080 3996/827/1081 +f 3996/827/1081 3998/826/1081 3997/825/1080 +f 3988/829/1082 3987/828/1082 3995/824/1080 +f 3995/824/1080 3997/825/1080 3988/829/1082 +f 3992/731/1083 3997/737/1084 3998/733/1085 +f 3998/733/1085 3993/830/1085 3992/731/1083 +f 3989/831/1086 3988/736/1086 3997/737/1084 +f 3997/737/1084 3992/731/1083 3989/831/1086 +f 3999/832/37 4000/833/37 4001/834/37 +f 4001/834/37 4002/835/37 3999/832/37 +f 4003/836/1087 4004/837/1087 4005/838/1088 +f 4005/838/1088 4006/839/1088 4003/836/1087 +f 4002/840/1089 4001/841/1089 4004/837/1087 +f 4004/837/1087 4003/836/1087 4002/840/1089 +f 4007/737/848 4003/731/848 4006/734/849 +f 4006/734/849 4008/733/849 4007/737/848 +f 3999/741/850 4002/735/850 4003/731/848 +f 4003/731/848 4007/737/848 3999/741/850 +f 4009/837/1122 4007/836/1122 4008/839/1091 +f 4008/839/1091 4010/838/1091 4009/837/1122 +f 4000/841/1118 3999/840/1118 4007/836/1122 +f 4007/836/1122 4009/837/1122 4000/841/1118 +f 4004/842/1093 4009/732/842 4010/843/843 +f 4010/843/843 4005/734/843 4004/842/1093 +f 4001/831/1094 4000/736/1094 4009/732/842 +f 4009/732/842 4004/842/1093 4001/831/1094 +f 4011/721/226 4012/722/226 4013/723/226 +f 4013/723/226 4014/724/226 4011/721/226 +f 4015/725/852 4016/726/748 4017/727/749 +f 4017/727/749 4018/728/749 4015/725/852 +f 4014/729/750 4013/730/750 4016/726/748 +f 4016/726/748 4015/725/852 4014/729/750 +f 4019/731/751 4015/732/752 4018/733/753 +f 4018/733/753 4020/734/753 4019/731/751 +f 4011/735/1123 4014/736/1123 4015/732/752 +f 4015/732/752 4019/731/751 4011/735/1123 +f 4021/726/755 4019/725/755 4020/728/756 +f 4020/728/756 4022/727/756 4021/726/755 +f 4012/730/757 4011/729/757 4019/725/755 +f 4019/725/755 4021/726/755 4012/730/757 +f 4016/737/758 4021/738/758 4022/739/759 +f 4022/739/759 4017/740/759 4016/737/758 +f 4013/741/760 4012/742/760 4021/738/758 +f 4021/738/758 4016/737/758 4013/741/760 +f 4023/743/226 4024/744/226 4025/745/226 +f 4025/745/226 4026/746/226 4023/743/226 +f 4027/747/761 4028/748/761 4029/749/762 +f 4029/749/762 4030/750/762 4027/747/761 +f 4026/751/763 4025/752/763 4028/748/761 +f 4028/748/761 4027/747/761 4026/751/763 +f 4031/753/764 4027/754/765 4030/755/766 +f 4030/755/766 4032/756/766 4031/753/764 +f 4023/757/767 4026/758/767 4027/754/765 +f 4027/754/765 4031/753/764 4023/757/767 +f 4033/748/768 4031/747/769 4032/750/770 +f 4032/750/770 4034/749/770 4033/748/768 +f 4024/752/771 4023/751/771 4031/747/769 +f 4031/747/769 4033/748/768 4024/752/771 +f 4028/754/772 4033/759/773 4034/760/774 +f 4034/760/774 4029/755/774 4028/754/772 +f 4025/758/775 4024/761/775 4033/759/773 +f 4033/759/773 4028/754/772 4025/758/775 +f 4035/762/776 4036/763/777 4037/764/778 +f 4037/764/778 4038/765/778 4035/762/776 +f 4039/766/779 4040/767/779 4036/763/777 +f 4036/763/777 4035/762/776 4039/766/779 +f 4041/768/1124 4035/769/781 4038/770/782 +f 4038/770/782 4042/771/782 4041/768/1124 +f 4043/772/783 4039/773/783 4035/769/781 +f 4035/769/781 4041/768/1124 4043/772/783 +f 4044/763/784 4041/762/785 4042/765/786 +f 4042/765/786 4045/764/786 4044/763/784 +f 4046/767/787 4043/766/787 4041/762/785 +f 4041/762/785 4044/763/784 4046/767/787 +f 4036/774/788 4044/768/789 4045/771/790 +f 4045/771/790 4037/775/790 4036/774/788 +f 4040/776/791 4046/777/791 4044/768/789 +f 4044/768/789 4036/774/788 4040/776/791 +f 4047/778/868 4048/779/793 4049/780/794 +f 4049/780/794 4050/781/794 4047/778/868 +f 4051/782/795 4052/783/795 4048/779/793 +f 4048/779/793 4047/778/868 4051/782/795 +f 4053/784/796 4047/785/797 4050/786/798 +f 4050/786/798 4054/787/798 4053/784/796 +f 4055/788/799 4051/789/799 4047/785/797 +f 4047/785/797 4053/784/796 4055/788/799 +f 4056/790/853 4053/791/854 4054/792/802 +f 4054/792/802 4057/793/802 4056/790/853 +f 4058/794/803 4055/795/803 4053/791/854 +f 4053/791/854 4056/790/853 4058/794/803 +f 4048/785/804 4056/796/805 4057/787/806 +f 4057/787/806 4049/797/806 4048/785/804 +f 4052/789/807 4058/798/807 4056/796/805 +f 4056/796/805 4048/785/804 4052/789/807 +f 4059/799/226 4060/800/226 4061/801/226 +f 4061/801/226 4062/802/226 4059/799/226 +f 4063/803/808 4064/804/809 4065/805/810 +f 4065/805/810 4066/806/810 4063/803/808 +f 4062/807/811 4061/808/811 4064/804/809 +f 4064/804/809 4063/803/808 4062/807/811 +f 4067/809/812 4063/810/812 4066/811/813 +f 4066/811/813 4068/812/813 4067/809/812 +f 4059/813/814 4062/814/814 4063/810/812 +f 4063/810/812 4067/809/812 4059/813/814 +f 4069/804/815 4067/803/816 4068/806/817 +f 4068/806/817 4070/805/817 4069/804/815 +f 4060/808/818 4059/807/818 4067/803/816 +f 4067/803/816 4069/804/815 4060/808/818 +f 4064/815/819 4069/809/819 4070/816/820 +f 4070/816/820 4065/817/820 4064/815/819 +f 4061/818/821 4060/819/822 4069/809/819 +f 4069/809/819 4064/815/819 4061/818/821 +f 4071/820/226 4072/821/226 4073/822/226 +f 4073/822/226 4074/823/226 4071/820/226 +f 4075/824/857 4076/825/858 4077/826/825 +f 4077/826/825 4078/827/825 4075/824/857 +f 4074/828/826 4073/829/826 4076/825/858 +f 4076/825/858 4075/824/857 4074/828/826 +f 4079/737/827 4075/738/828 4078/734/829 +f 4078/734/829 4080/740/829 4079/737/827 +f 4071/741/830 4074/735/830 4075/738/828 +f 4075/738/828 4079/737/827 4071/741/830 +f 4081/825/831 4079/824/832 4080/827/833 +f 4080/827/833 4082/826/833 4081/825/831 +f 4072/829/834 4071/828/834 4079/824/832 +f 4079/824/832 4081/825/831 4072/829/834 +f 4076/731/835 4081/737/836 4082/733/837 +f 4082/733/837 4077/830/837 4076/731/835 +f 4073/831/838 4072/736/838 4081/737/836 +f 4081/737/836 4076/731/835 4073/831/838 +f 4083/832/226 4084/833/226 4085/834/226 +f 4085/834/226 4086/835/226 4083/832/226 +f 4087/836/839 4088/837/839 4089/838/1125 +f 4089/838/1125 4090/839/1125 4087/836/839 +f 4086/840/841 4085/841/841 4088/837/839 +f 4088/837/839 4087/836/839 4086/840/841 +f 4091/737/842 4087/731/842 4090/734/843 +f 4090/734/843 4092/733/843 4091/737/842 +f 4083/741/844 4086/735/844 4087/731/842 +f 4087/731/842 4091/737/842 4083/741/844 +f 4093/837/859 4091/836/859 4092/839/881 +f 4092/839/881 4094/838/881 4093/837/859 +f 4084/841/847 4083/840/847 4091/836/859 +f 4091/836/859 4093/837/859 4084/841/847 +f 4088/842/848 4093/732/848 4094/843/849 +f 4094/843/849 4089/734/849 4088/842/848 +f 4085/831/851 4084/736/851 4093/732/848 +f 4093/732/848 4088/842/848 4085/831/851 +f 4095/721/226 4096/722/226 4097/723/226 +f 4097/723/226 4098/724/226 4095/721/226 +f 4099/725/852 4100/726/748 4101/727/860 +f 4101/727/860 4102/728/860 4099/725/852 +f 4098/729/750 4097/730/750 4100/726/748 +f 4100/726/748 4099/725/852 4098/729/750 +f 4103/731/751 4099/732/752 4102/733/753 +f 4102/733/753 4104/734/753 4103/731/751 +f 4095/735/1123 4098/736/1123 4099/732/752 +f 4099/732/752 4103/731/751 4095/735/1123 +f 4105/726/755 4103/725/755 4104/728/756 +f 4104/728/756 4106/727/756 4105/726/755 +f 4096/730/757 4095/729/757 4103/725/755 +f 4103/725/755 4105/726/755 4096/730/757 +f 4100/737/758 4105/738/758 4106/739/759 +f 4106/739/759 4101/740/759 4100/737/758 +f 4097/741/760 4096/742/760 4105/738/758 +f 4105/738/758 4100/737/758 4097/741/760 +f 4107/743/226 4108/744/226 4109/745/226 +f 4109/745/226 4110/746/226 4107/743/226 +f 4111/747/761 4112/748/761 4113/749/762 +f 4113/749/762 4114/750/762 4111/747/761 +f 4110/751/1126 4109/752/1126 4112/748/761 +f 4112/748/761 4111/747/761 4110/751/1126 +f 4115/753/764 4111/754/765 4114/755/766 +f 4114/755/766 4116/756/766 4115/753/764 +f 4107/757/767 4110/758/767 4111/754/765 +f 4111/754/765 4115/753/764 4107/757/767 +f 4117/748/768 4115/747/769 4116/750/770 +f 4116/750/770 4118/749/770 4117/748/768 +f 4108/752/771 4107/751/771 4115/747/769 +f 4115/747/769 4117/748/768 4108/752/771 +f 4112/754/772 4117/759/773 4118/760/774 +f 4118/760/774 4113/755/774 4112/754/772 +f 4109/758/775 4108/761/775 4117/759/773 +f 4117/759/773 4112/754/772 4109/758/775 +f 4119/762/776 4120/763/777 4121/764/778 +f 4121/764/778 4122/765/1127 4119/762/776 +f 4123/766/779 4124/767/779 4120/763/777 +f 4120/763/777 4119/762/776 4123/766/779 +f 4125/768/1124 4119/769/781 4122/770/782 +f 4122/770/782 4126/771/782 4125/768/1124 +f 4127/772/783 4123/773/783 4119/769/781 +f 4119/769/781 4125/768/1124 4127/772/783 +f 4128/763/784 4125/762/785 4126/765/786 +f 4126/765/786 4129/764/786 4128/763/784 +f 4130/767/787 4127/766/787 4125/762/785 +f 4125/762/785 4128/763/784 4130/767/787 +f 4120/774/788 4128/768/789 4129/771/790 +f 4129/771/790 4121/775/790 4120/774/788 +f 4124/776/791 4130/777/791 4128/768/789 +f 4128/768/789 4120/774/788 4124/776/791 +f 4131/778/792 4132/779/793 4133/780/794 +f 4133/780/794 4134/781/794 4131/778/792 +f 4135/782/795 4136/783/795 4132/779/793 +f 4132/779/793 4131/778/792 4135/782/795 +f 4137/784/796 4131/785/797 4134/786/798 +f 4134/786/798 4138/787/798 4137/784/796 +f 4139/788/799 4135/789/799 4131/785/797 +f 4131/785/797 4137/784/796 4139/788/799 +f 4140/790/800 4137/791/801 4138/792/802 +f 4138/792/802 4141/793/802 4140/790/800 +f 4142/794/803 4139/795/803 4137/791/801 +f 4137/791/801 4140/790/800 4142/794/803 +f 4132/785/804 4140/796/805 4141/787/806 +f 4141/787/806 4133/797/806 4132/785/804 +f 4136/789/807 4142/798/807 4140/796/805 +f 4140/796/805 4132/785/804 4136/789/807 +f 4143/799/226 4144/800/226 4145/801/226 +f 4145/801/226 4146/802/226 4143/799/226 +f 4147/803/808 4148/804/809 4149/805/810 +f 4149/805/810 4150/806/810 4147/803/808 +f 4146/807/811 4145/808/811 4148/804/809 +f 4148/804/809 4147/803/808 4146/807/811 +f 4151/809/812 4147/810/812 4150/811/813 +f 4150/811/813 4152/812/813 4151/809/812 +f 4143/813/814 4146/814/814 4147/810/812 +f 4147/810/812 4151/809/812 4143/813/814 +f 4153/804/815 4151/803/816 4152/806/1128 +f 4152/806/1128 4154/805/1128 4153/804/815 +f 4144/808/870 4143/807/870 4151/803/816 +f 4151/803/816 4153/804/815 4144/808/870 +f 4148/815/819 4153/809/819 4154/816/820 +f 4154/816/820 4149/817/820 4148/815/819 +f 4145/818/821 4144/819/822 4153/809/819 +f 4153/809/819 4148/815/819 4145/818/821 +f 4155/820/226 4156/821/226 4157/822/226 +f 4157/822/226 4158/823/226 4155/820/226 +f 4159/824/857 4160/825/858 4161/826/825 +f 4161/826/825 4162/827/825 4159/824/857 +f 4158/828/862 4157/829/862 4160/825/858 +f 4160/825/858 4159/824/857 4158/828/862 +f 4163/737/827 4159/738/828 4162/734/829 +f 4162/734/829 4164/740/829 4163/737/827 +f 4155/741/830 4158/735/830 4159/738/828 +f 4159/738/828 4163/737/827 4155/741/830 +f 4165/825/832 4163/824/832 4164/827/833 +f 4164/827/833 4166/826/833 4165/825/832 +f 4156/829/834 4155/828/834 4163/824/832 +f 4163/824/832 4165/825/832 4156/829/834 +f 4160/731/835 4165/737/836 4166/733/837 +f 4166/733/837 4161/830/837 4160/731/835 +f 4157/831/838 4156/736/838 4165/737/836 +f 4165/737/836 4160/731/835 4157/831/838 +f 4167/832/226 4168/833/226 4169/834/226 +f 4169/834/226 4170/835/226 4167/832/226 +f 4171/836/839 4172/837/839 4173/838/865 +f 4173/838/865 4174/839/865 4171/836/839 +f 4170/840/866 4169/841/866 4172/837/839 +f 4172/837/839 4171/836/839 4170/840/866 +f 4175/737/842 4171/731/842 4174/734/843 +f 4174/734/843 4176/733/843 4175/737/842 +f 4167/741/844 4170/735/844 4171/731/842 +f 4171/731/842 4175/737/842 4167/741/844 +f 4177/837/859 4175/836/859 4176/839/871 +f 4176/839/871 4178/838/871 4177/837/859 +f 4168/841/847 4167/840/847 4175/836/859 +f 4175/836/859 4177/837/859 4168/841/847 +f 4172/842/867 4177/732/848 4178/843/849 +f 4178/843/849 4173/734/849 4172/842/867 +f 4169/831/851 4168/736/851 4177/732/848 +f 4177/732/848 4172/842/867 4169/831/851 +f 4179/721/226 4180/722/226 4181/723/226 +f 4181/723/226 4182/724/226 4179/721/226 +f 4183/725/1129 4184/726/1129 4185/727/1130 +f 4185/727/1130 4186/728/1130 4183/725/1129 +f 4182/729/1131 4181/730/1131 4184/726/1129 +f 4184/726/1129 4183/725/1129 4182/729/1131 +f 4187/731/1132 4183/732/1133 4186/733/1134 +f 4186/733/1134 4188/734/1134 4187/731/1132 +f 4179/735/1135 4182/736/1135 4183/732/1133 +f 4183/732/1133 4187/731/1132 4179/735/1135 +f 4189/726/1136 4187/725/1136 4188/728/1137 +f 4188/728/1137 4190/727/1137 4189/726/1136 +f 4180/730/1138 4179/729/1138 4187/725/1136 +f 4187/725/1136 4189/726/1136 4180/730/1138 +f 4184/737/1139 4189/738/1139 4190/739/1140 +f 4190/739/1140 4185/740/1140 4184/737/1139 +f 4181/741/1141 4180/742/1142 4189/738/1139 +f 4189/738/1139 4184/737/1139 4181/741/1141 +f 4191/743/36 4192/744/36 4193/745/36 +f 4193/745/36 4194/746/36 4191/743/36 +f 4195/747/1143 4196/748/1144 4197/749/1145 +f 4197/749/1145 4198/750/1145 4195/747/1143 +f 4194/751/1146 4193/752/1146 4196/748/1144 +f 4196/748/1144 4195/747/1143 4194/751/1146 +f 4199/753/1147 4195/754/1148 4198/755/1149 +f 4198/755/1149 4200/756/1149 4199/753/1147 +f 4191/757/1150 4194/758/1150 4195/754/1148 +f 4195/754/1148 4199/753/1147 4191/757/1150 +f 4201/748/1151 4199/747/1152 4200/750/1153 +f 4200/750/1153 4202/749/1153 4201/748/1151 +f 4192/752/1154 4191/751/1154 4199/747/1152 +f 4199/747/1152 4201/748/1151 4192/752/1154 +f 4196/754/1155 4201/759/1156 4202/760/1157 +f 4202/760/1157 4197/755/1157 4196/754/1155 +f 4193/758/1158 4192/761/1158 4201/759/1156 +f 4201/759/1156 4196/754/1155 4193/758/1158 +f 4203/762/1159 4204/763/1160 4205/764/1161 +f 4205/764/1161 4206/765/1161 4203/762/1159 +f 4207/766/1162 4208/767/1162 4204/763/1160 +f 4204/763/1160 4203/762/1159 4207/766/1162 +f 4209/768/1163 4203/769/1164 4206/770/1165 +f 4206/770/1165 4210/771/1165 4209/768/1163 +f 4211/772/1166 4207/773/1167 4203/769/1164 +f 4203/769/1164 4209/768/1163 4211/772/1166 +f 4212/763/1168 4209/762/1169 4210/765/1170 +f 4210/765/1170 4213/764/1170 4212/763/1168 +f 4214/767/1171 4211/766/1171 4209/762/1169 +f 4209/762/1169 4212/763/1168 4214/767/1171 +f 4204/774/1172 4212/768/1173 4213/771/1174 +f 4213/771/1174 4205/775/1174 4204/774/1172 +f 4208/776/1175 4214/777/1175 4212/768/1173 +f 4212/768/1173 4204/774/1172 4208/776/1175 +f 4215/778/1176 4216/779/1177 4217/780/1178 +f 4217/780/1178 4218/781/1178 4215/778/1176 +f 4219/782/1179 4220/783/1179 4216/779/1177 +f 4216/779/1177 4215/778/1176 4219/782/1179 +f 4221/784/1180 4215/785/1181 4218/786/1182 +f 4218/786/1182 4222/787/1182 4221/784/1180 +f 4223/788/1183 4219/789/1184 4215/785/1181 +f 4215/785/1181 4221/784/1180 4223/788/1183 +f 4224/790/1185 4221/791/1186 4222/792/1187 +f 4222/792/1187 4225/793/1187 4224/790/1185 +f 4226/794/1188 4223/795/1188 4221/791/1186 +f 4221/791/1186 4224/790/1185 4226/794/1188 +f 4216/785/1189 4224/796/1190 4225/787/1191 +f 4225/787/1191 4217/797/1191 4216/785/1189 +f 4220/789/1192 4226/798/1192 4224/796/1190 +f 4224/796/1190 4216/785/1189 4220/789/1192 +f 4227/799/36 4228/800/36 4229/801/36 +f 4229/801/36 4230/802/36 4227/799/36 +f 4231/803/958 4232/804/957 4233/805/1193 +f 4233/805/1193 4234/806/1193 4231/803/958 +f 4230/807/1194 4229/808/1194 4232/804/957 +f 4232/804/957 4231/803/958 4230/807/1194 +f 4235/809/1195 4231/810/1195 4234/811/1196 +f 4234/811/1196 4236/812/1196 4235/809/1195 +f 4227/813/1197 4230/814/1197 4231/810/1195 +f 4231/810/1195 4235/809/1195 4227/813/1197 +f 4237/804/997 4235/803/996 4236/806/1198 +f 4236/806/1198 4238/805/1198 4237/804/997 +f 4228/808/1199 4227/807/1199 4235/803/996 +f 4235/803/996 4237/804/997 4228/808/1199 +f 4232/815/1200 4237/809/1200 4238/816/1201 +f 4238/816/1201 4233/817/1201 4232/815/1200 +f 4229/818/1202 4228/819/1203 4237/809/1200 +f 4237/809/1200 4232/815/1200 4229/818/1202 +f 4239/820/36 4240/821/36 4241/822/36 +f 4241/822/36 4242/823/36 4239/820/36 +f 4243/824/1204 4244/825/1205 4245/826/1206 +f 4245/826/1206 4246/827/1206 4243/824/1204 +f 4242/828/1207 4241/829/1207 4244/825/1205 +f 4244/825/1205 4243/824/1204 4242/828/1207 +f 4247/737/1208 4243/738/1209 4246/734/1210 +f 4246/734/1210 4248/740/1210 4247/737/1208 +f 4239/741/1211 4242/735/1211 4243/738/1209 +f 4243/738/1209 4247/737/1208 4239/741/1211 +f 4249/825/1212 4247/824/1213 4248/827/1214 +f 4248/827/1214 4250/826/1214 4249/825/1212 +f 4240/829/1215 4239/828/1215 4247/824/1213 +f 4247/824/1213 4249/825/1212 4240/829/1215 +f 4244/731/1216 4249/737/1217 4250/733/1218 +f 4250/733/1218 4245/830/1218 4244/731/1216 +f 4241/831/1219 4240/736/1219 4249/737/1217 +f 4249/737/1217 4244/731/1216 4241/831/1219 +f 4251/832/226 4252/833/226 4253/834/226 +f 4253/834/226 4254/835/226 4251/832/226 +f 4255/836/1220 4256/837/1220 4257/838/1221 +f 4257/838/1221 4258/839/1221 4255/836/1220 +f 4254/840/1222 4253/841/1222 4256/837/1220 +f 4256/837/1220 4255/836/1220 4254/840/1222 +f 4259/737/989 4255/731/989 4258/734/990 +f 4258/734/990 4260/733/990 4259/737/989 +f 4251/741/1223 4254/735/1223 4255/731/989 +f 4255/731/989 4259/737/989 4251/741/1223 +f 4261/837/1224 4259/836/1224 4260/839/1225 +f 4260/839/1225 4262/838/1225 4261/837/1224 +f 4252/841/1226 4251/840/1226 4259/836/1224 +f 4259/836/1224 4261/837/1224 4252/841/1226 +f 4256/842/982 4261/732/982 4262/843/983 +f 4262/843/983 4257/734/983 4256/842/982 +f 4253/831/985 4252/736/985 4261/732/982 +f 4261/732/982 4256/842/982 4253/831/985 +f 4263/721/36 4264/722/36 4265/723/36 +f 4265/723/36 4266/724/36 4263/721/36 +f 4267/725/1129 4268/726/1129 4269/727/1130 +f 4269/727/1130 4270/728/1130 4267/725/1129 +f 4266/729/1131 4265/730/1131 4268/726/1129 +f 4268/726/1129 4267/725/1129 4266/729/1131 +f 4271/731/1132 4267/732/1133 4270/733/1134 +f 4270/733/1134 4272/734/1134 4271/731/1132 +f 4263/735/1135 4266/736/1135 4267/732/1133 +f 4267/732/1133 4271/731/1132 4263/735/1135 +f 4273/726/1136 4271/725/1136 4272/728/1137 +f 4272/728/1137 4274/727/1137 4273/726/1136 +f 4264/730/1138 4263/729/1138 4271/725/1136 +f 4271/725/1136 4273/726/1136 4264/730/1138 +f 4268/737/1139 4273/738/1139 4274/739/1140 +f 4274/739/1140 4269/740/1140 4268/737/1139 +f 4265/741/1141 4264/742/1142 4273/738/1139 +f 4273/738/1139 4268/737/1139 4265/741/1141 +f 4275/743/36 4276/744/36 4277/745/36 +f 4277/745/36 4278/746/36 4275/743/36 +f 4279/747/1143 4280/748/1144 4281/749/1145 +f 4281/749/1145 4282/750/1145 4279/747/1143 +f 4278/751/1146 4277/752/1146 4280/748/1144 +f 4280/748/1144 4279/747/1143 4278/751/1146 +f 4283/753/1147 4279/754/1148 4282/755/1149 +f 4282/755/1149 4284/756/1149 4283/753/1147 +f 4275/757/1150 4278/758/1150 4279/754/1148 +f 4279/754/1148 4283/753/1147 4275/757/1150 +f 4285/748/1151 4283/747/1152 4284/750/1153 +f 4284/750/1153 4286/749/1153 4285/748/1151 +f 4276/752/1154 4275/751/1154 4283/747/1152 +f 4283/747/1152 4285/748/1151 4276/752/1154 +f 4280/754/1155 4285/759/1156 4286/760/1157 +f 4286/760/1157 4281/755/1157 4280/754/1155 +f 4277/758/1158 4276/761/1158 4285/759/1156 +f 4285/759/1156 4280/754/1155 4277/758/1158 +f 4287/762/1159 4288/763/1160 4289/764/1161 +f 4289/764/1161 4290/765/1161 4287/762/1159 +f 4291/766/1162 4292/767/1162 4288/763/1160 +f 4288/763/1160 4287/762/1159 4291/766/1162 +f 4293/768/1163 4287/769/1164 4290/770/1165 +f 4290/770/1165 4294/771/1165 4293/768/1163 +f 4295/772/1166 4291/773/1167 4287/769/1164 +f 4287/769/1164 4293/768/1163 4295/772/1166 +f 4296/763/1168 4293/762/1169 4294/765/1170 +f 4294/765/1170 4297/764/1170 4296/763/1168 +f 4298/767/1171 4295/766/1171 4293/762/1169 +f 4293/762/1169 4296/763/1168 4298/767/1171 +f 4288/774/1172 4296/768/1173 4297/771/1174 +f 4297/771/1174 4289/775/1174 4288/774/1172 +f 4292/776/1175 4298/777/1175 4296/768/1173 +f 4296/768/1173 4288/774/1172 4292/776/1175 +f 4299/778/1176 4300/779/1177 4301/780/1178 +f 4301/780/1178 4302/781/1178 4299/778/1176 +f 4303/782/1179 4304/783/1179 4300/779/1177 +f 4300/779/1177 4299/778/1176 4303/782/1179 +f 4305/784/1180 4299/785/1181 4302/786/1182 +f 4302/786/1182 4306/787/1182 4305/784/1180 +f 4307/788/1183 4303/789/1184 4299/785/1181 +f 4299/785/1181 4305/784/1180 4307/788/1183 +f 4308/790/1185 4305/791/1186 4306/792/1187 +f 4306/792/1187 4309/793/1187 4308/790/1185 +f 4310/794/1188 4307/795/1188 4305/791/1186 +f 4305/791/1186 4308/790/1185 4310/794/1188 +f 4300/785/1189 4308/796/1190 4309/787/1191 +f 4309/787/1191 4301/797/1191 4300/785/1189 +f 4304/789/1192 4310/798/1192 4308/796/1190 +f 4308/796/1190 4300/785/1189 4304/789/1192 +f 4311/799/37 4312/800/37 4313/801/37 +f 4313/801/37 4314/802/37 4311/799/37 +f 4315/803/958 4316/804/957 4317/805/1193 +f 4317/805/1193 4318/806/1193 4315/803/958 +f 4314/807/1194 4313/808/1194 4316/804/957 +f 4316/804/957 4315/803/958 4314/807/1194 +f 4319/809/1195 4315/810/1195 4318/811/1196 +f 4318/811/1196 4320/812/1196 4319/809/1195 +f 4311/813/1197 4314/814/1197 4315/810/1195 +f 4315/810/1195 4319/809/1195 4311/813/1197 +f 4321/804/997 4319/803/996 4320/806/1198 +f 4320/806/1198 4322/805/1198 4321/804/997 +f 4312/808/1199 4311/807/1199 4319/803/996 +f 4319/803/996 4321/804/997 4312/808/1199 +f 4316/815/1200 4321/809/1200 4322/816/1201 +f 4322/816/1201 4317/817/1201 4316/815/1200 +f 4313/818/1202 4312/819/1203 4321/809/1200 +f 4321/809/1200 4316/815/1200 4313/818/1202 +f 4323/820/37 4324/821/37 4325/822/37 +f 4325/822/37 4326/823/37 4323/820/37 +f 4327/824/1227 4328/825/1228 4329/826/1206 +f 4329/826/1206 4330/827/1206 4327/824/1227 +f 4326/828/1207 4325/829/1207 4328/825/1228 +f 4328/825/1228 4327/824/1227 4326/828/1207 +f 4331/737/1208 4327/738/1209 4330/734/1210 +f 4330/734/1210 4332/740/1210 4331/737/1208 +f 4323/741/1211 4326/735/1211 4327/738/1209 +f 4327/738/1209 4331/737/1208 4323/741/1211 +f 4333/825/1213 4331/824/1213 4332/827/1214 +f 4332/827/1214 4334/826/1214 4333/825/1213 +f 4324/829/1215 4323/828/1215 4331/824/1213 +f 4331/824/1213 4333/825/1213 4324/829/1215 +f 4328/731/1216 4333/737/1217 4334/733/1218 +f 4334/733/1218 4329/830/1218 4328/731/1216 +f 4325/831/1219 4324/736/1219 4333/737/1217 +f 4333/737/1217 4328/731/1216 4325/831/1219 +f 4335/832/37 4336/833/37 4337/834/37 +f 4337/834/37 4338/835/37 4335/832/37 +f 4339/836/1220 4340/837/1220 4341/838/1221 +f 4341/838/1221 4342/839/1221 4339/836/1220 +f 4338/840/1222 4337/841/1222 4340/837/1220 +f 4340/837/1220 4339/836/1220 4338/840/1222 +f 4343/737/989 4339/731/989 4342/734/990 +f 4342/734/990 4344/733/990 4343/737/989 +f 4335/741/1223 4338/735/1223 4339/731/989 +f 4339/731/989 4343/737/989 4335/741/1223 +f 4345/837/1224 4343/836/1224 4344/839/1225 +f 4344/839/1225 4346/838/1225 4345/837/1224 +f 4336/841/1226 4335/840/1226 4343/836/1224 +f 4343/836/1224 4345/837/1224 4336/841/1226 +f 4340/842/982 4345/732/982 4346/843/983 +f 4346/843/983 4341/734/983 4340/842/982 +f 4337/831/985 4336/736/985 4345/732/982 +f 4345/732/982 4340/842/982 4337/831/985 +f 4347/721/226 4348/722/226 4349/723/226 +f 4349/723/226 4350/724/226 4347/721/226 +f 4351/725/852 4352/726/748 4353/727/860 +f 4353/727/860 4354/728/860 4351/725/852 +f 4350/729/750 4349/730/750 4352/726/748 +f 4352/726/748 4351/725/852 4350/729/750 +f 4355/731/751 4351/732/752 4354/733/753 +f 4354/733/753 4356/734/753 4355/731/751 +f 4347/735/754 4350/736/1123 4351/732/752 +f 4351/732/752 4355/731/751 4347/735/754 +f 4357/726/755 4355/725/755 4356/728/756 +f 4356/728/756 4358/727/756 4357/726/755 +f 4348/730/757 4347/729/757 4355/725/755 +f 4355/725/755 4357/726/755 4348/730/757 +f 4352/737/758 4357/738/758 4358/739/759 +f 4358/739/759 4353/740/759 4352/737/758 +f 4349/741/760 4348/742/760 4357/738/758 +f 4357/738/758 4352/737/758 4349/741/760 +f 4359/743/226 4360/744/226 4361/745/226 +f 4361/745/226 4362/746/226 4359/743/226 +f 4363/747/761 4364/748/761 4365/749/762 +f 4365/749/762 4366/750/762 4363/747/761 +f 4362/751/763 4361/752/763 4364/748/761 +f 4364/748/761 4363/747/761 4362/751/763 +f 4367/753/764 4363/754/765 4366/755/766 +f 4366/755/766 4368/756/766 4367/753/764 +f 4359/757/767 4362/758/767 4363/754/765 +f 4363/754/765 4367/753/764 4359/757/767 +f 4369/748/768 4367/747/769 4368/750/770 +f 4368/750/770 4370/749/770 4369/748/768 +f 4360/752/771 4359/751/771 4367/747/769 +f 4367/747/769 4369/748/768 4360/752/771 +f 4364/754/772 4369/759/773 4370/760/774 +f 4370/760/774 4365/755/774 4364/754/772 +f 4361/758/775 4360/761/775 4369/759/773 +f 4369/759/773 4364/754/772 4361/758/775 +f 4371/762/776 4372/763/777 4373/764/778 +f 4373/764/778 4374/765/778 4371/762/776 +f 4375/766/779 4376/767/779 4372/763/777 +f 4372/763/777 4371/762/776 4375/766/779 +f 4377/768/780 4371/769/781 4374/770/782 +f 4374/770/782 4378/771/782 4377/768/780 +f 4379/772/783 4375/773/783 4371/769/781 +f 4371/769/781 4377/768/780 4379/772/783 +f 4380/763/784 4377/762/785 4378/765/786 +f 4378/765/786 4381/764/786 4380/763/784 +f 4382/767/787 4379/766/787 4377/762/785 +f 4377/762/785 4380/763/784 4382/767/787 +f 4372/774/788 4380/768/789 4381/771/790 +f 4381/771/790 4373/775/790 4372/774/788 +f 4376/776/791 4382/777/791 4380/768/789 +f 4380/768/789 4372/774/788 4376/776/791 +f 4383/778/792 4384/779/793 4385/780/794 +f 4385/780/794 4386/781/794 4383/778/792 +f 4387/782/795 4388/783/795 4384/779/793 +f 4384/779/793 4383/778/792 4387/782/795 +f 4389/784/796 4383/785/797 4386/786/798 +f 4386/786/798 4390/787/798 4389/784/796 +f 4391/788/799 4387/789/799 4383/785/797 +f 4383/785/797 4389/784/796 4391/788/799 +f 4392/790/800 4389/791/801 4390/792/802 +f 4390/792/802 4393/793/802 4392/790/800 +f 4394/794/803 4391/795/803 4389/791/801 +f 4389/791/801 4392/790/800 4394/794/803 +f 4384/785/804 4392/796/805 4393/787/806 +f 4393/787/806 4385/797/806 4384/785/804 +f 4388/789/807 4394/798/807 4392/796/805 +f 4392/796/805 4384/785/804 4388/789/807 +f 4395/799/226 4396/800/226 4397/801/226 +f 4397/801/226 4398/802/226 4395/799/226 +f 4399/803/855 4400/804/856 4401/805/810 +f 4401/805/810 4402/806/810 4399/803/855 +f 4398/807/811 4397/808/811 4400/804/856 +f 4400/804/856 4399/803/855 4398/807/811 +f 4403/809/812 4399/810/812 4402/811/1229 +f 4402/811/1229 4404/812/1229 4403/809/812 +f 4395/813/814 4398/814/814 4399/810/812 +f 4399/810/812 4403/809/812 4395/813/814 +f 4405/804/815 4403/803/816 4404/806/817 +f 4404/806/817 4406/805/817 4405/804/815 +f 4396/808/818 4395/807/818 4403/803/816 +f 4403/803/816 4405/804/815 4396/808/818 +f 4400/815/819 4405/809/819 4406/816/820 +f 4406/816/820 4401/817/820 4400/815/819 +f 4397/818/822 4396/819/822 4405/809/819 +f 4405/809/819 4400/815/819 4397/818/822 +f 4407/820/226 4408/821/226 4409/822/226 +f 4409/822/226 4410/823/226 4407/820/226 +f 4411/824/857 4412/825/858 4413/826/825 +f 4413/826/825 4414/827/825 4411/824/857 +f 4410/828/826 4409/829/826 4412/825/858 +f 4412/825/858 4411/824/857 4410/828/826 +f 4415/737/827 4411/738/828 4414/734/829 +f 4414/734/829 4416/740/829 4415/737/827 +f 4407/741/830 4410/735/830 4411/738/828 +f 4411/738/828 4415/737/827 4407/741/830 +f 4417/825/832 4415/824/832 4416/827/833 +f 4416/827/833 4418/826/833 4417/825/832 +f 4408/829/834 4407/828/834 4415/824/832 +f 4415/824/832 4417/825/832 4408/829/834 +f 4412/731/835 4417/737/836 4418/733/837 +f 4418/733/837 4413/830/837 4412/731/835 +f 4409/831/838 4408/736/838 4417/737/836 +f 4417/737/836 4412/731/835 4409/831/838 +f 4419/832/226 4420/833/226 4421/834/226 +f 4421/834/226 4422/835/226 4419/832/226 +f 4423/836/1230 4424/837/1230 4425/838/865 +f 4425/838/865 4426/839/865 4423/836/1230 +f 4422/840/841 4421/841/841 4424/837/1230 +f 4424/837/1230 4423/836/1230 4422/840/841 +f 4427/737/842 4423/731/842 4426/734/843 +f 4426/734/843 4428/733/843 4427/737/842 +f 4419/741/844 4422/735/844 4423/731/842 +f 4423/731/842 4427/737/842 4419/741/844 +f 4429/837/859 4427/836/859 4428/839/846 +f 4428/839/846 4430/838/846 4429/837/859 +f 4420/841/847 4419/840/847 4427/836/859 +f 4427/836/859 4429/837/859 4420/841/847 +f 4424/842/848 4429/732/848 4430/843/849 +f 4430/843/849 4425/734/849 4424/842/848 +f 4421/831/851 4420/736/851 4429/732/848 +f 4429/732/848 4424/842/848 4421/831/851 +f 4431/721/226 4432/722/226 4433/723/226 +f 4433/723/226 4434/724/226 4431/721/226 +f 4435/725/748 4436/726/748 4437/727/749 +f 4437/727/749 4438/728/749 4435/725/748 +f 4434/729/750 4433/730/750 4436/726/748 +f 4436/726/748 4435/725/748 4434/729/750 +f 4439/731/751 4435/732/752 4438/733/753 +f 4438/733/753 4440/734/753 4439/731/751 +f 4431/735/754 4434/736/1123 4435/732/752 +f 4435/732/752 4439/731/751 4431/735/754 +f 4441/726/755 4439/725/755 4440/728/756 +f 4440/728/756 4442/727/756 4441/726/755 +f 4432/730/757 4431/729/757 4439/725/755 +f 4439/725/755 4441/726/755 4432/730/757 +f 4436/737/758 4441/738/758 4442/739/759 +f 4442/739/759 4437/740/759 4436/737/758 +f 4433/741/760 4432/742/760 4441/738/758 +f 4441/738/758 4436/737/758 4433/741/760 +f 4443/743/226 4444/744/226 4445/745/226 +f 4445/745/226 4446/746/226 4443/743/226 +f 4447/747/761 4448/748/761 4449/749/762 +f 4449/749/762 4450/750/762 4447/747/761 +f 4446/751/763 4445/752/763 4448/748/761 +f 4448/748/761 4447/747/761 4446/751/763 +f 4451/753/764 4447/754/765 4450/755/766 +f 4450/755/766 4452/756/766 4451/753/764 +f 4443/757/767 4446/758/767 4447/754/765 +f 4447/754/765 4451/753/764 4443/757/767 +f 4453/748/768 4451/747/769 4452/750/770 +f 4452/750/770 4454/749/770 4453/748/768 +f 4444/752/771 4443/751/771 4451/747/769 +f 4451/747/769 4453/748/768 4444/752/771 +f 4448/754/772 4453/759/773 4454/760/774 +f 4454/760/774 4449/755/774 4448/754/772 +f 4445/758/775 4444/761/775 4453/759/773 +f 4453/759/773 4448/754/772 4445/758/775 +f 4455/762/776 4456/763/777 4457/764/778 +f 4457/764/778 4458/765/778 4455/762/776 +f 4459/766/779 4460/767/779 4456/763/777 +f 4456/763/777 4455/762/776 4459/766/779 +f 4461/768/780 4455/769/781 4458/770/782 +f 4458/770/782 4462/771/782 4461/768/780 +f 4463/772/783 4459/773/783 4455/769/781 +f 4455/769/781 4461/768/780 4463/772/783 +f 4464/763/784 4461/762/785 4462/765/786 +f 4462/765/786 4465/764/786 4464/763/784 +f 4466/767/787 4463/766/787 4461/762/785 +f 4461/762/785 4464/763/784 4466/767/787 +f 4456/774/788 4464/768/789 4465/771/790 +f 4465/771/790 4457/775/790 4456/774/788 +f 4460/776/791 4466/777/791 4464/768/789 +f 4464/768/789 4456/774/788 4460/776/791 +f 4467/778/792 4468/779/793 4469/780/794 +f 4469/780/794 4470/781/794 4467/778/792 +f 4471/782/795 4472/783/795 4468/779/793 +f 4468/779/793 4467/778/792 4471/782/795 +f 4473/784/796 4467/785/797 4470/786/798 +f 4470/786/798 4474/787/798 4473/784/796 +f 4475/788/799 4471/789/799 4467/785/797 +f 4467/785/797 4473/784/796 4475/788/799 +f 4476/790/800 4473/791/801 4474/792/802 +f 4474/792/802 4477/793/802 4476/790/800 +f 4478/794/803 4475/795/803 4473/791/801 +f 4473/791/801 4476/790/800 4478/794/803 +f 4468/785/804 4476/796/805 4477/787/806 +f 4477/787/806 4469/797/806 4468/785/804 +f 4472/789/807 4478/798/807 4476/796/805 +f 4476/796/805 4468/785/804 4472/789/807 +f 4479/799/226 4480/800/226 4481/801/226 +f 4481/801/226 4482/802/226 4479/799/226 +f 4483/803/808 4484/804/809 4485/805/810 +f 4485/805/810 4486/806/810 4483/803/808 +f 4482/807/811 4481/808/811 4484/804/809 +f 4484/804/809 4483/803/808 4482/807/811 +f 4487/809/812 4483/810/812 4486/811/1229 +f 4486/811/1229 4488/812/1229 4487/809/812 +f 4479/813/814 4482/814/814 4483/810/812 +f 4483/810/812 4487/809/812 4479/813/814 +f 4489/804/815 4487/803/816 4488/806/817 +f 4488/806/817 4490/805/817 4489/804/815 +f 4480/808/818 4479/807/818 4487/803/816 +f 4487/803/816 4489/804/815 4480/808/818 +f 4484/815/819 4489/809/819 4490/816/820 +f 4490/816/820 4485/817/820 4484/815/819 +f 4481/818/822 4480/819/822 4489/809/819 +f 4489/809/819 4484/815/819 4481/818/822 +f 4491/820/226 4492/821/226 4493/822/226 +f 4493/822/226 4494/823/226 4491/820/226 +f 4495/824/823 4496/825/824 4497/826/825 +f 4497/826/825 4498/827/825 4495/824/823 +f 4494/828/1231 4493/829/826 4496/825/824 +f 4496/825/824 4495/824/823 4494/828/1231 +f 4499/737/827 4495/738/828 4498/734/829 +f 4498/734/829 4500/740/829 4499/737/827 +f 4491/741/830 4494/735/830 4495/738/828 +f 4495/738/828 4499/737/827 4491/741/830 +f 4501/825/831 4499/824/832 4500/827/833 +f 4500/827/833 4502/826/833 4501/825/831 +f 4492/829/834 4491/828/834 4499/824/832 +f 4499/824/832 4501/825/831 4492/829/834 +f 4496/731/835 4501/737/836 4502/733/837 +f 4502/733/837 4497/830/837 4496/731/835 +f 4493/831/838 4492/736/838 4501/737/836 +f 4501/737/836 4496/731/835 4493/831/838 +f 4503/832/226 4504/833/226 4505/834/226 +f 4505/834/226 4506/835/226 4503/832/226 +f 4507/836/839 4508/837/839 4509/838/840 +f 4509/838/840 4510/839/840 4507/836/839 +f 4506/840/841 4505/841/841 4508/837/839 +f 4508/837/839 4507/836/839 4506/840/841 +f 4511/737/842 4507/731/842 4510/734/843 +f 4510/734/843 4512/733/843 4511/737/842 +f 4503/741/844 4506/735/844 4507/731/842 +f 4507/731/842 4511/737/842 4503/741/844 +f 4513/837/845 4511/836/845 4512/839/846 +f 4512/839/846 4514/838/846 4513/837/845 +f 4504/841/847 4503/840/847 4511/836/845 +f 4511/836/845 4513/837/845 4504/841/847 +f 4508/842/867 4513/732/848 4514/843/849 +f 4514/843/849 4509/734/849 4508/842/867 +f 4505/831/851 4504/736/851 4513/732/848 +f 4513/732/848 4508/842/867 4505/831/851 +f 4515/721/226 4516/722/226 4517/723/226 +f 4517/723/226 4518/724/226 4515/721/226 +f 4519/725/748 4520/726/748 4521/727/749 +f 4521/727/749 4522/728/749 4519/725/748 +f 4518/729/750 4517/730/750 4520/726/748 +f 4520/726/748 4519/725/748 4518/729/750 +f 4523/731/751 4519/732/752 4522/733/753 +f 4522/733/753 4524/734/753 4523/731/751 +f 4515/735/754 4518/736/1123 4519/732/752 +f 4519/732/752 4523/731/751 4515/735/754 +f 4525/726/755 4523/725/755 4524/728/756 +f 4524/728/756 4526/727/756 4525/726/755 +f 4516/730/757 4515/729/757 4523/725/755 +f 4523/725/755 4525/726/755 4516/730/757 +f 4520/737/758 4525/738/758 4526/739/759 +f 4526/739/759 4521/740/759 4520/737/758 +f 4517/741/760 4516/742/760 4525/738/758 +f 4525/738/758 4520/737/758 4517/741/760 +f 4527/743/226 4528/744/226 4529/745/226 +f 4529/745/226 4530/746/226 4527/743/226 +f 4531/747/761 4532/748/761 4533/749/762 +f 4533/749/762 4534/750/762 4531/747/761 +f 4530/751/763 4529/752/763 4532/748/761 +f 4532/748/761 4531/747/761 4530/751/763 +f 4535/753/764 4531/754/765 4534/755/766 +f 4534/755/766 4536/756/766 4535/753/764 +f 4527/757/767 4530/758/767 4531/754/765 +f 4531/754/765 4535/753/764 4527/757/767 +f 4537/748/768 4535/747/769 4536/750/770 +f 4536/750/770 4538/749/770 4537/748/768 +f 4528/752/771 4527/751/771 4535/747/769 +f 4535/747/769 4537/748/768 4528/752/771 +f 4532/754/772 4537/759/773 4538/760/774 +f 4538/760/774 4533/755/774 4532/754/772 +f 4529/758/775 4528/761/775 4537/759/773 +f 4537/759/773 4532/754/772 4529/758/775 +f 4539/762/776 4540/763/777 4541/764/778 +f 4541/764/778 4542/765/778 4539/762/776 +f 4543/766/779 4544/767/779 4540/763/777 +f 4540/763/777 4539/762/776 4543/766/779 +f 4545/768/780 4539/769/781 4542/770/782 +f 4542/770/782 4546/771/782 4545/768/780 +f 4547/772/783 4543/773/783 4539/769/781 +f 4539/769/781 4545/768/780 4547/772/783 +f 4548/763/784 4545/762/785 4546/765/786 +f 4546/765/786 4549/764/786 4548/763/784 +f 4550/767/787 4547/766/787 4545/762/785 +f 4545/762/785 4548/763/784 4550/767/787 +f 4540/774/788 4548/768/789 4549/771/790 +f 4549/771/790 4541/775/790 4540/774/788 +f 4544/776/791 4550/777/791 4548/768/789 +f 4548/768/789 4540/774/788 4544/776/791 +f 4551/778/792 4552/779/793 4553/780/794 +f 4553/780/794 4554/781/794 4551/778/792 +f 4555/782/795 4556/783/795 4552/779/793 +f 4552/779/793 4551/778/792 4555/782/795 +f 4557/784/796 4551/785/797 4554/786/798 +f 4554/786/798 4558/787/798 4557/784/796 +f 4559/788/799 4555/789/799 4551/785/797 +f 4551/785/797 4557/784/796 4559/788/799 +f 4560/790/800 4557/791/801 4558/792/802 +f 4558/792/802 4561/793/802 4560/790/800 +f 4562/794/803 4559/795/803 4557/791/801 +f 4557/791/801 4560/790/800 4562/794/803 +f 4552/785/804 4560/796/805 4561/787/806 +f 4561/787/806 4553/797/806 4552/785/804 +f 4556/789/807 4562/798/807 4560/796/805 +f 4560/796/805 4552/785/804 4556/789/807 +f 4563/799/226 4564/800/226 4565/801/226 +f 4565/801/226 4566/802/226 4563/799/226 +f 4567/803/808 4568/804/809 4569/805/810 +f 4569/805/810 4570/806/810 4567/803/808 +f 4566/807/811 4565/808/811 4568/804/809 +f 4568/804/809 4567/803/808 4566/807/811 +f 4571/809/812 4567/810/812 4570/811/1229 +f 4570/811/1229 4572/812/1229 4571/809/812 +f 4563/813/814 4566/814/814 4567/810/812 +f 4567/810/812 4571/809/812 4563/813/814 +f 4573/804/815 4571/803/816 4572/806/817 +f 4572/806/817 4574/805/817 4573/804/815 +f 4564/808/818 4563/807/818 4571/803/816 +f 4571/803/816 4573/804/815 4564/808/818 +f 4568/815/819 4573/809/819 4574/816/820 +f 4574/816/820 4569/817/820 4568/815/819 +f 4565/818/822 4564/819/822 4573/809/819 +f 4573/809/819 4568/815/819 4565/818/822 +f 4575/820/226 4576/821/226 4577/822/226 +f 4577/822/226 4578/823/226 4575/820/226 +f 4579/824/823 4580/825/824 4581/826/825 +f 4581/826/825 4582/827/825 4579/824/823 +f 4578/828/826 4577/829/826 4580/825/824 +f 4580/825/824 4579/824/823 4578/828/826 +f 4583/737/827 4579/738/828 4582/734/829 +f 4582/734/829 4584/740/829 4583/737/827 +f 4575/741/830 4578/735/830 4579/738/828 +f 4579/738/828 4583/737/827 4575/741/830 +f 4585/825/831 4583/824/832 4584/827/833 +f 4584/827/833 4586/826/833 4585/825/831 +f 4576/829/834 4575/828/834 4583/824/832 +f 4583/824/832 4585/825/831 4576/829/834 +f 4580/731/835 4585/737/836 4586/733/837 +f 4586/733/837 4581/830/837 4580/731/835 +f 4577/831/838 4576/736/838 4585/737/836 +f 4585/737/836 4580/731/835 4577/831/838 +f 4587/832/226 4588/833/226 4589/834/226 +f 4589/834/226 4590/835/226 4587/832/226 +f 4591/836/839 4592/837/839 4593/838/840 +f 4593/838/840 4594/839/840 4591/836/839 +f 4590/840/841 4589/841/841 4592/837/839 +f 4592/837/839 4591/836/839 4590/840/841 +f 4595/737/842 4591/731/842 4594/734/843 +f 4594/734/843 4596/733/843 4595/737/842 +f 4587/741/844 4590/735/844 4591/731/842 +f 4591/731/842 4595/737/842 4587/741/844 +f 4597/837/845 4595/836/845 4596/839/846 +f 4596/839/846 4598/838/846 4597/837/845 +f 4588/841/847 4587/840/847 4595/836/845 +f 4595/836/845 4597/837/845 4588/841/847 +f 4592/842/867 4597/732/848 4598/843/849 +f 4598/843/849 4593/734/849 4592/842/867 +f 4589/831/851 4588/736/851 4597/732/848 +f 4597/732/848 4592/842/867 4589/831/851 +f 4599/721/226 4600/722/226 4601/723/226 +f 4601/723/226 4602/724/226 4599/721/226 +f 4603/725/748 4604/726/748 4605/727/749 +f 4605/727/749 4606/728/749 4603/725/748 +f 4602/729/750 4601/730/750 4604/726/748 +f 4604/726/748 4603/725/748 4602/729/750 +f 4607/731/751 4603/732/752 4606/733/753 +f 4606/733/753 4608/734/753 4607/731/751 +f 4599/735/754 4602/736/1123 4603/732/752 +f 4603/732/752 4607/731/751 4599/735/754 +f 4609/726/755 4607/725/755 4608/728/756 +f 4608/728/756 4610/727/756 4609/726/755 +f 4600/730/757 4599/729/757 4607/725/755 +f 4607/725/755 4609/726/755 4600/730/757 +f 4604/737/758 4609/738/758 4610/739/759 +f 4610/739/759 4605/740/759 4604/737/758 +f 4601/741/760 4600/742/760 4609/738/758 +f 4609/738/758 4604/737/758 4601/741/760 +f 4611/743/226 4612/744/226 4613/745/226 +f 4613/745/226 4614/746/226 4611/743/226 +f 4615/747/761 4616/748/761 4617/749/762 +f 4617/749/762 4618/750/762 4615/747/761 +f 4614/751/763 4613/752/763 4616/748/761 +f 4616/748/761 4615/747/761 4614/751/763 +f 4619/753/764 4615/754/765 4618/755/766 +f 4618/755/766 4620/756/766 4619/753/764 +f 4611/757/767 4614/758/767 4615/754/765 +f 4615/754/765 4619/753/764 4611/757/767 +f 4621/748/768 4619/747/769 4620/750/770 +f 4620/750/770 4622/749/770 4621/748/768 +f 4612/752/771 4611/751/771 4619/747/769 +f 4619/747/769 4621/748/768 4612/752/771 +f 4616/754/772 4621/759/773 4622/760/774 +f 4622/760/774 4617/755/774 4616/754/772 +f 4613/758/775 4612/761/775 4621/759/773 +f 4621/759/773 4616/754/772 4613/758/775 +f 4623/762/776 4624/763/777 4625/764/778 +f 4625/764/778 4626/765/778 4623/762/776 +f 4627/766/779 4628/767/779 4624/763/777 +f 4624/763/777 4623/762/776 4627/766/779 +f 4629/768/780 4623/769/781 4626/770/782 +f 4626/770/782 4630/771/782 4629/768/780 +f 4631/772/783 4627/773/783 4623/769/781 +f 4623/769/781 4629/768/780 4631/772/783 +f 4632/763/784 4629/762/785 4630/765/786 +f 4630/765/786 4633/764/786 4632/763/784 +f 4634/767/787 4631/766/787 4629/762/785 +f 4629/762/785 4632/763/784 4634/767/787 +f 4624/774/788 4632/768/789 4633/771/790 +f 4633/771/790 4625/775/790 4624/774/788 +f 4628/776/791 4634/777/791 4632/768/789 +f 4632/768/789 4624/774/788 4628/776/791 +f 4635/778/792 4636/779/793 4637/780/794 +f 4637/780/794 4638/781/794 4635/778/792 +f 4639/782/795 4640/783/795 4636/779/793 +f 4636/779/793 4635/778/792 4639/782/795 +f 4641/784/796 4635/785/797 4638/786/798 +f 4638/786/798 4642/787/798 4641/784/796 +f 4643/788/799 4639/789/799 4635/785/797 +f 4635/785/797 4641/784/796 4643/788/799 +f 4644/790/800 4641/791/801 4642/792/802 +f 4642/792/802 4645/793/802 4644/790/800 +f 4646/794/803 4643/795/803 4641/791/801 +f 4641/791/801 4644/790/800 4646/794/803 +f 4636/785/804 4644/796/805 4645/787/806 +f 4645/787/806 4637/797/806 4636/785/804 +f 4640/789/807 4646/798/807 4644/796/805 +f 4644/796/805 4636/785/804 4640/789/807 +f 4647/799/226 4648/800/226 4649/801/226 +f 4649/801/226 4650/802/226 4647/799/226 +f 4651/803/808 4652/804/809 4653/805/810 +f 4653/805/810 4654/806/810 4651/803/808 +f 4650/807/811 4649/808/811 4652/804/809 +f 4652/804/809 4651/803/808 4650/807/811 +f 4655/809/812 4651/810/812 4654/811/1229 +f 4654/811/1229 4656/812/1229 4655/809/812 +f 4647/813/814 4650/814/814 4651/810/812 +f 4651/810/812 4655/809/812 4647/813/814 +f 4657/804/815 4655/803/816 4656/806/817 +f 4656/806/817 4658/805/817 4657/804/815 +f 4648/808/818 4647/807/818 4655/803/816 +f 4655/803/816 4657/804/815 4648/808/818 +f 4652/815/819 4657/809/819 4658/816/820 +f 4658/816/820 4653/817/820 4652/815/819 +f 4649/818/822 4648/819/822 4657/809/819 +f 4657/809/819 4652/815/819 4649/818/822 +f 4659/820/226 4660/821/226 4661/822/226 +f 4661/822/226 4662/823/226 4659/820/226 +f 4663/824/823 4664/825/824 4665/826/825 +f 4665/826/825 4666/827/825 4663/824/823 +f 4662/828/1231 4661/829/826 4664/825/824 +f 4664/825/824 4663/824/823 4662/828/1231 +f 4667/737/827 4663/738/828 4666/734/829 +f 4666/734/829 4668/740/829 4667/737/827 +f 4659/741/830 4662/735/830 4663/738/828 +f 4663/738/828 4667/737/827 4659/741/830 +f 4669/825/831 4667/824/832 4668/827/833 +f 4668/827/833 4670/826/833 4669/825/831 +f 4660/829/834 4659/828/834 4667/824/832 +f 4667/824/832 4669/825/831 4660/829/834 +f 4664/731/835 4669/737/836 4670/733/837 +f 4670/733/837 4665/830/837 4664/731/835 +f 4661/831/838 4660/736/838 4669/737/836 +f 4669/737/836 4664/731/835 4661/831/838 +f 4671/832/226 4672/833/226 4673/834/226 +f 4673/834/226 4674/835/226 4671/832/226 +f 4675/836/839 4676/837/839 4677/838/840 +f 4677/838/840 4678/839/840 4675/836/839 +f 4674/840/841 4673/841/841 4676/837/839 +f 4676/837/839 4675/836/839 4674/840/841 +f 4679/737/842 4675/731/842 4678/734/843 +f 4678/734/843 4680/733/843 4679/737/842 +f 4671/741/844 4674/735/844 4675/731/842 +f 4675/731/842 4679/737/842 4671/741/844 +f 4681/837/845 4679/836/845 4680/839/846 +f 4680/839/846 4682/838/846 4681/837/845 +f 4672/841/847 4671/840/847 4679/836/845 +f 4679/836/845 4681/837/845 4672/841/847 +f 4676/842/867 4681/732/848 4682/843/849 +f 4682/843/849 4677/734/849 4676/842/867 +f 4673/831/851 4672/736/851 4681/732/848 +f 4681/732/848 4676/842/867 4673/831/851 +f 4683/721/226 4684/722/226 4685/723/226 +f 4685/723/226 4686/724/226 4683/721/226 +f 4687/725/852 4688/726/748 4689/727/860 +f 4689/727/860 4690/728/860 4687/725/852 +f 4686/729/750 4685/730/750 4688/726/748 +f 4688/726/748 4687/725/852 4686/729/750 +f 4691/731/751 4687/732/752 4690/733/753 +f 4690/733/753 4692/734/753 4691/731/751 +f 4683/735/754 4686/736/1123 4687/732/752 +f 4687/732/752 4691/731/751 4683/735/754 +f 4693/726/755 4691/725/755 4692/728/756 +f 4692/728/756 4694/727/756 4693/726/755 +f 4684/730/757 4683/729/757 4691/725/755 +f 4691/725/755 4693/726/755 4684/730/757 +f 4688/737/758 4693/738/758 4694/739/759 +f 4694/739/759 4689/740/759 4688/737/758 +f 4685/741/760 4684/742/760 4693/738/758 +f 4693/738/758 4688/737/758 4685/741/760 +f 4695/743/226 4696/744/226 4697/745/226 +f 4697/745/226 4698/746/226 4695/743/226 +f 4699/747/761 4700/748/761 4701/749/762 +f 4701/749/762 4702/750/762 4699/747/761 +f 4698/751/763 4697/752/763 4700/748/761 +f 4700/748/761 4699/747/761 4698/751/763 +f 4703/753/764 4699/754/765 4702/755/766 +f 4702/755/766 4704/756/766 4703/753/764 +f 4695/757/767 4698/758/767 4699/754/765 +f 4699/754/765 4703/753/764 4695/757/767 +f 4705/748/768 4703/747/769 4704/750/770 +f 4704/750/770 4706/749/770 4705/748/768 +f 4696/752/771 4695/751/771 4703/747/769 +f 4703/747/769 4705/748/768 4696/752/771 +f 4700/754/772 4705/759/773 4706/760/774 +f 4706/760/774 4701/755/774 4700/754/772 +f 4697/758/775 4696/761/775 4705/759/773 +f 4705/759/773 4700/754/772 4697/758/775 +f 4707/762/776 4708/763/777 4709/764/778 +f 4709/764/778 4710/765/778 4707/762/776 +f 4711/766/779 4712/767/779 4708/763/777 +f 4708/763/777 4707/762/776 4711/766/779 +f 4713/768/780 4707/769/781 4710/770/782 +f 4710/770/782 4714/771/782 4713/768/780 +f 4715/772/783 4711/773/783 4707/769/781 +f 4707/769/781 4713/768/780 4715/772/783 +f 4716/763/784 4713/762/785 4714/765/786 +f 4714/765/786 4717/764/786 4716/763/784 +f 4718/767/787 4715/766/787 4713/762/785 +f 4713/762/785 4716/763/784 4718/767/787 +f 4708/774/788 4716/768/789 4717/771/790 +f 4717/771/790 4709/775/790 4708/774/788 +f 4712/776/791 4718/777/791 4716/768/789 +f 4716/768/789 4708/774/788 4712/776/791 +f 4719/778/792 4720/779/793 4721/780/794 +f 4721/780/794 4722/781/794 4719/778/792 +f 4723/782/795 4724/783/795 4720/779/793 +f 4720/779/793 4719/778/792 4723/782/795 +f 4725/784/796 4719/785/797 4722/786/798 +f 4722/786/798 4726/787/798 4725/784/796 +f 4727/788/799 4723/789/799 4719/785/797 +f 4719/785/797 4725/784/796 4727/788/799 +f 4728/790/800 4725/791/801 4726/792/802 +f 4726/792/802 4729/793/802 4728/790/800 +f 4730/794/803 4727/795/803 4725/791/801 +f 4725/791/801 4728/790/800 4730/794/803 +f 4720/785/804 4728/796/805 4729/787/806 +f 4729/787/806 4721/797/806 4720/785/804 +f 4724/789/807 4730/798/807 4728/796/805 +f 4728/796/805 4720/785/804 4724/789/807 +f 4731/799/226 4732/800/226 4733/801/226 +f 4733/801/226 4734/802/226 4731/799/226 +f 4735/803/808 4736/804/809 4737/805/810 +f 4737/805/810 4738/806/810 4735/803/808 +f 4734/807/811 4733/808/811 4736/804/809 +f 4736/804/809 4735/803/808 4734/807/811 +f 4739/809/812 4735/810/812 4738/811/1229 +f 4738/811/1229 4740/812/1229 4739/809/812 +f 4731/813/814 4734/814/814 4735/810/812 +f 4735/810/812 4739/809/812 4731/813/814 +f 4741/804/815 4739/803/816 4740/806/817 +f 4740/806/817 4742/805/817 4741/804/815 +f 4732/808/818 4731/807/818 4739/803/816 +f 4739/803/816 4741/804/815 4732/808/818 +f 4736/815/819 4741/809/819 4742/816/820 +f 4742/816/820 4737/817/820 4736/815/819 +f 4733/818/822 4732/819/822 4741/809/819 +f 4741/809/819 4736/815/819 4733/818/822 +f 4743/820/226 4744/821/226 4745/822/226 +f 4745/822/226 4746/823/226 4743/820/226 +f 4747/824/857 4748/825/858 4749/826/825 +f 4749/826/825 4750/827/825 4747/824/857 +f 4746/828/826 4745/829/826 4748/825/858 +f 4748/825/858 4747/824/857 4746/828/826 +f 4751/737/827 4747/738/828 4750/734/829 +f 4750/734/829 4752/740/829 4751/737/827 +f 4743/741/830 4746/735/830 4747/738/828 +f 4747/738/828 4751/737/827 4743/741/830 +f 4753/825/831 4751/824/832 4752/827/833 +f 4752/827/833 4754/826/833 4753/825/831 +f 4744/829/834 4743/828/834 4751/824/832 +f 4751/824/832 4753/825/831 4744/829/834 +f 4748/731/835 4753/737/836 4754/733/837 +f 4754/733/837 4749/830/837 4748/731/835 +f 4745/831/838 4744/736/838 4753/737/836 +f 4753/737/836 4748/731/835 4745/831/838 +f 4755/832/226 4756/833/226 4757/834/226 +f 4757/834/226 4758/835/226 4755/832/226 +f 4759/836/1230 4760/837/1230 4761/838/840 +f 4761/838/840 4762/839/840 4759/836/1230 +f 4758/840/841 4757/841/841 4760/837/1230 +f 4760/837/1230 4759/836/1230 4758/840/841 +f 4763/737/842 4759/731/842 4762/734/843 +f 4762/734/843 4764/733/843 4763/737/842 +f 4755/741/844 4758/735/844 4759/731/842 +f 4759/731/842 4763/737/842 4755/741/844 +f 4765/837/859 4763/836/859 4764/839/846 +f 4764/839/846 4766/838/846 4765/837/859 +f 4756/841/847 4755/840/847 4763/836/859 +f 4763/836/859 4765/837/859 4756/841/847 +f 4760/842/848 4765/732/848 4766/843/849 +f 4766/843/849 4761/734/849 4760/842/848 +f 4757/831/851 4756/736/851 4765/732/848 +f 4765/732/848 4760/842/848 4757/831/851 +f 4767/721/226 4768/722/226 4769/723/226 +f 4769/723/226 4770/724/226 4767/721/226 +f 4771/725/748 4772/726/748 4773/727/749 +f 4773/727/749 4774/728/749 4771/725/748 +f 4770/729/750 4769/730/750 4772/726/748 +f 4772/726/748 4771/725/748 4770/729/750 +f 4775/731/751 4771/732/752 4774/733/753 +f 4774/733/753 4776/734/753 4775/731/751 +f 4767/735/754 4770/736/1123 4771/732/752 +f 4771/732/752 4775/731/751 4767/735/754 +f 4777/726/755 4775/725/755 4776/728/756 +f 4776/728/756 4778/727/756 4777/726/755 +f 4768/730/757 4767/729/757 4775/725/755 +f 4775/725/755 4777/726/755 4768/730/757 +f 4772/737/758 4777/738/758 4778/739/759 +f 4778/739/759 4773/740/759 4772/737/758 +f 4769/741/760 4768/742/760 4777/738/758 +f 4777/738/758 4772/737/758 4769/741/760 +f 4779/743/226 4780/744/226 4781/745/226 +f 4781/745/226 4782/746/226 4779/743/226 +f 4783/747/883 4784/748/884 4785/749/762 +f 4785/749/762 4786/750/762 4783/747/883 +f 4782/751/763 4781/752/763 4784/748/884 +f 4784/748/884 4783/747/883 4782/751/763 +f 4787/753/764 4783/754/765 4786/755/766 +f 4786/755/766 4788/756/766 4787/753/764 +f 4779/757/767 4782/758/767 4783/754/765 +f 4783/754/765 4787/753/764 4779/757/767 +f 4789/748/768 4787/747/769 4788/750/770 +f 4788/750/770 4790/749/770 4789/748/768 +f 4780/752/771 4779/751/771 4787/747/769 +f 4787/747/769 4789/748/768 4780/752/771 +f 4784/754/772 4789/759/773 4790/760/774 +f 4790/760/774 4785/755/774 4784/754/772 +f 4781/758/775 4780/761/775 4789/759/773 +f 4789/759/773 4784/754/772 4781/758/775 +f 4791/762/776 4792/763/777 4793/764/778 +f 4793/764/778 4794/765/778 4791/762/776 +f 4795/766/779 4796/767/779 4792/763/777 +f 4792/763/777 4791/762/776 4795/766/779 +f 4797/768/780 4791/769/781 4794/770/782 +f 4794/770/782 4798/771/782 4797/768/780 +f 4799/772/783 4795/773/783 4791/769/781 +f 4791/769/781 4797/768/780 4799/772/783 +f 4800/763/784 4797/762/785 4798/765/786 +f 4798/765/786 4801/764/786 4800/763/784 +f 4802/767/787 4799/766/787 4797/762/785 +f 4797/762/785 4800/763/784 4802/767/787 +f 4792/774/788 4800/768/789 4801/771/790 +f 4801/771/790 4793/775/790 4792/774/788 +f 4796/776/791 4802/777/791 4800/768/789 +f 4800/768/789 4792/774/788 4796/776/791 +f 4803/778/868 4804/779/793 4805/780/794 +f 4805/780/794 4806/781/794 4803/778/868 +f 4807/782/795 4808/783/795 4804/779/793 +f 4804/779/793 4803/778/868 4807/782/795 +f 4809/784/796 4803/785/797 4806/786/798 +f 4806/786/798 4810/787/798 4809/784/796 +f 4811/788/799 4807/789/799 4803/785/797 +f 4803/785/797 4809/784/796 4811/788/799 +f 4812/790/853 4809/791/854 4810/792/802 +f 4810/792/802 4813/793/802 4812/790/853 +f 4814/794/803 4811/795/803 4809/791/854 +f 4809/791/854 4812/790/853 4814/794/803 +f 4804/785/804 4812/796/805 4813/787/806 +f 4813/787/806 4805/797/806 4804/785/804 +f 4808/789/807 4814/798/807 4812/796/805 +f 4812/796/805 4804/785/804 4808/789/807 +f 4815/799/226 4816/800/226 4817/801/226 +f 4817/801/226 4818/802/226 4815/799/226 +f 4819/803/808 4820/804/809 4821/805/810 +f 4821/805/810 4822/806/810 4819/803/808 +f 4818/807/811 4817/808/811 4820/804/809 +f 4820/804/809 4819/803/808 4818/807/811 +f 4823/809/812 4819/810/812 4822/811/1229 +f 4822/811/1229 4824/812/1229 4823/809/812 +f 4815/813/814 4818/814/814 4819/810/812 +f 4819/810/812 4823/809/812 4815/813/814 +f 4825/804/815 4823/803/816 4824/806/817 +f 4824/806/817 4826/805/817 4825/804/815 +f 4816/808/818 4815/807/818 4823/803/816 +f 4823/803/816 4825/804/815 4816/808/818 +f 4820/815/819 4825/809/819 4826/816/820 +f 4826/816/820 4821/817/820 4820/815/819 +f 4817/818/822 4816/819/822 4825/809/819 +f 4825/809/819 4820/815/819 4817/818/822 +f 4827/820/226 4828/821/226 4829/822/226 +f 4829/822/226 4830/823/226 4827/820/226 +f 4831/824/857 4832/825/858 4833/826/825 +f 4833/826/825 4834/827/825 4831/824/857 +f 4830/828/826 4829/829/826 4832/825/858 +f 4832/825/858 4831/824/857 4830/828/826 +f 4835/737/827 4831/738/828 4834/734/829 +f 4834/734/829 4836/740/829 4835/737/827 +f 4827/741/830 4830/735/830 4831/738/828 +f 4831/738/828 4835/737/827 4827/741/830 +f 4837/825/831 4835/824/832 4836/827/833 +f 4836/827/833 4838/826/833 4837/825/831 +f 4828/829/834 4827/828/834 4835/824/832 +f 4835/824/832 4837/825/831 4828/829/834 +f 4832/731/835 4837/737/836 4838/733/837 +f 4838/733/837 4833/830/837 4832/731/835 +f 4829/831/838 4828/736/838 4837/737/836 +f 4837/737/836 4832/731/835 4829/831/838 +f 4839/832/226 4840/833/226 4841/834/226 +f 4841/834/226 4842/835/226 4839/832/226 +f 4843/836/839 4844/837/839 4845/838/840 +f 4845/838/840 4846/839/840 4843/836/839 +f 4842/840/861 4841/841/861 4844/837/839 +f 4844/837/839 4843/836/839 4842/840/861 +f 4847/737/842 4843/731/842 4846/734/843 +f 4846/734/843 4848/733/843 4847/737/842 +f 4839/741/844 4842/735/844 4843/731/842 +f 4843/731/842 4847/737/842 4839/741/844 +f 4849/837/845 4847/836/845 4848/839/846 +f 4848/839/846 4850/838/846 4849/837/845 +f 4840/841/847 4839/840/847 4847/836/845 +f 4847/836/845 4849/837/845 4840/841/847 +f 4844/842/867 4849/732/848 4850/843/849 +f 4850/843/849 4845/734/849 4844/842/867 +f 4841/831/851 4840/736/851 4849/732/848 +f 4849/732/848 4844/842/867 4841/831/851 +f 4851/721/226 4852/722/226 4853/723/226 +f 4853/723/226 4854/724/226 4851/721/226 +f 4855/725/852 4856/726/748 4857/727/749 +f 4857/727/749 4858/728/749 4855/725/852 +f 4854/729/750 4853/730/750 4856/726/748 +f 4856/726/748 4855/725/852 4854/729/750 +f 4859/731/751 4855/732/752 4858/733/753 +f 4858/733/753 4860/734/753 4859/731/751 +f 4851/735/754 4854/736/1123 4855/732/752 +f 4855/732/752 4859/731/751 4851/735/754 +f 4861/726/755 4859/725/755 4860/728/756 +f 4860/728/756 4862/727/756 4861/726/755 +f 4852/730/757 4851/729/757 4859/725/755 +f 4859/725/755 4861/726/755 4852/730/757 +f 4856/737/758 4861/738/758 4862/739/759 +f 4862/739/759 4857/740/759 4856/737/758 +f 4853/741/760 4852/742/760 4861/738/758 +f 4861/738/758 4856/737/758 4853/741/760 +f 4863/743/226 4864/744/226 4865/745/226 +f 4865/745/226 4866/746/226 4863/743/226 +f 4867/747/761 4868/748/761 4869/749/762 +f 4869/749/762 4870/750/762 4867/747/761 +f 4866/751/763 4865/752/763 4868/748/761 +f 4868/748/761 4867/747/761 4866/751/763 +f 4871/753/764 4867/754/765 4870/755/766 +f 4870/755/766 4872/756/766 4871/753/764 +f 4863/757/767 4866/758/767 4867/754/765 +f 4867/754/765 4871/753/764 4863/757/767 +f 4873/748/768 4871/747/769 4872/750/770 +f 4872/750/770 4874/749/770 4873/748/768 +f 4864/752/771 4863/751/771 4871/747/769 +f 4871/747/769 4873/748/768 4864/752/771 +f 4868/754/772 4873/759/773 4874/760/774 +f 4874/760/774 4869/755/774 4868/754/772 +f 4865/758/775 4864/761/775 4873/759/773 +f 4873/759/773 4868/754/772 4865/758/775 +f 4875/762/776 4876/763/777 4877/764/778 +f 4877/764/778 4878/765/778 4875/762/776 +f 4879/766/779 4880/767/779 4876/763/777 +f 4876/763/777 4875/762/776 4879/766/779 +f 4881/768/780 4875/769/781 4878/770/782 +f 4878/770/782 4882/771/782 4881/768/780 +f 4883/772/783 4879/773/783 4875/769/781 +f 4875/769/781 4881/768/780 4883/772/783 +f 4884/763/784 4881/762/785 4882/765/786 +f 4882/765/786 4885/764/786 4884/763/784 +f 4886/767/787 4883/766/787 4881/762/785 +f 4881/762/785 4884/763/784 4886/767/787 +f 4876/774/788 4884/768/789 4885/771/790 +f 4885/771/790 4877/775/790 4876/774/788 +f 4880/776/791 4886/777/791 4884/768/789 +f 4884/768/789 4876/774/788 4880/776/791 +f 4887/778/792 4888/779/793 4889/780/794 +f 4889/780/794 4890/781/794 4887/778/792 +f 4891/782/795 4892/783/795 4888/779/793 +f 4888/779/793 4887/778/792 4891/782/795 +f 4893/784/796 4887/785/797 4890/786/798 +f 4890/786/798 4894/787/798 4893/784/796 +f 4895/788/799 4891/789/799 4887/785/797 +f 4887/785/797 4893/784/796 4895/788/799 +f 4896/790/853 4893/791/854 4894/792/802 +f 4894/792/802 4897/793/802 4896/790/853 +f 4898/794/803 4895/795/803 4893/791/854 +f 4893/791/854 4896/790/853 4898/794/803 +f 4888/785/804 4896/796/805 4897/787/806 +f 4897/787/806 4889/797/806 4888/785/804 +f 4892/789/807 4898/798/807 4896/796/805 +f 4896/796/805 4888/785/804 4892/789/807 +f 4899/799/226 4900/800/226 4901/801/226 +f 4901/801/226 4902/802/226 4899/799/226 +f 4903/803/855 4904/804/856 4905/805/810 +f 4905/805/810 4906/806/810 4903/803/855 +f 4902/807/811 4901/808/811 4904/804/856 +f 4904/804/856 4903/803/855 4902/807/811 +f 4907/809/812 4903/810/812 4906/811/1229 +f 4906/811/1229 4908/812/1229 4907/809/812 +f 4899/813/814 4902/814/814 4903/810/812 +f 4903/810/812 4907/809/812 4899/813/814 +f 4909/804/815 4907/803/816 4908/806/817 +f 4908/806/817 4910/805/817 4909/804/815 +f 4900/808/818 4899/807/818 4907/803/816 +f 4907/803/816 4909/804/815 4900/808/818 +f 4904/815/819 4909/809/819 4910/816/820 +f 4910/816/820 4905/817/820 4904/815/819 +f 4901/818/822 4900/819/822 4909/809/819 +f 4909/809/819 4904/815/819 4901/818/822 +f 4911/820/226 4912/821/226 4913/822/226 +f 4913/822/226 4914/823/226 4911/820/226 +f 4915/824/857 4916/825/858 4917/826/825 +f 4917/826/825 4918/827/825 4915/824/857 +f 4914/828/826 4913/829/826 4916/825/858 +f 4916/825/858 4915/824/857 4914/828/826 +f 4919/737/827 4915/738/828 4918/734/829 +f 4918/734/829 4920/740/829 4919/737/827 +f 4911/741/830 4914/735/830 4915/738/828 +f 4915/738/828 4919/737/827 4911/741/830 +f 4921/825/831 4919/824/832 4920/827/833 +f 4920/827/833 4922/826/833 4921/825/831 +f 4912/829/834 4911/828/834 4919/824/832 +f 4919/824/832 4921/825/831 4912/829/834 +f 4916/731/835 4921/737/836 4922/733/837 +f 4922/733/837 4917/830/837 4916/731/835 +f 4913/831/838 4912/736/838 4921/737/836 +f 4921/737/836 4916/731/835 4913/831/838 +f 4923/832/226 4924/833/226 4925/834/226 +f 4925/834/226 4926/835/226 4923/832/226 +f 4927/836/839 4928/837/839 4929/838/840 +f 4929/838/840 4930/839/840 4927/836/839 +f 4926/840/861 4925/841/861 4928/837/839 +f 4928/837/839 4927/836/839 4926/840/861 +f 4931/737/842 4927/731/842 4930/734/843 +f 4930/734/843 4932/733/843 4931/737/842 +f 4923/741/844 4926/735/844 4927/731/842 +f 4927/731/842 4931/737/842 4923/741/844 +f 4933/837/859 4931/836/859 4932/839/846 +f 4932/839/846 4934/838/846 4933/837/859 +f 4924/841/847 4923/840/847 4931/836/859 +f 4931/836/859 4933/837/859 4924/841/847 +f 4928/842/848 4933/732/848 4934/843/849 +f 4934/843/849 4929/734/849 4928/842/848 +f 4925/831/851 4924/736/851 4933/732/848 +f 4933/732/848 4928/842/848 4925/831/851 +f 4935/721/36 4936/722/36 4937/723/36 +f 4937/723/36 4938/724/36 4935/721/36 +f 4939/725/888 4940/726/888 4941/727/889 +f 4941/727/889 4942/728/889 4939/725/888 +f 4938/729/890 4937/730/890 4940/726/888 +f 4940/726/888 4939/725/888 4938/729/890 +f 4943/731/891 4939/732/892 4942/733/893 +f 4942/733/893 4944/734/893 4943/731/891 +f 4935/735/895 4938/736/895 4939/732/892 +f 4939/732/892 4943/731/891 4935/735/895 +f 4945/726/896 4943/725/896 4944/728/897 +f 4944/728/897 4946/727/897 4945/726/896 +f 4936/730/898 4935/729/898 4943/725/896 +f 4943/725/896 4945/726/896 4936/730/898 +f 4940/737/899 4945/738/899 4946/739/900 +f 4946/739/900 4941/740/900 4940/737/899 +f 4937/741/901 4936/742/1232 4945/738/899 +f 4945/738/899 4940/737/899 4937/741/901 +f 4947/743/226 4948/744/226 4949/745/226 +f 4949/745/226 4950/746/226 4947/743/226 +f 4951/747/902 4952/748/995 4953/749/903 +f 4953/749/903 4954/750/903 4951/747/902 +f 4950/751/904 4949/752/904 4952/748/995 +f 4952/748/995 4951/747/902 4950/751/904 +f 4955/753/905 4951/754/1233 4954/755/907 +f 4954/755/907 4956/756/907 4955/753/905 +f 4947/757/1234 4950/758/1234 4951/754/1233 +f 4951/754/1233 4955/753/905 4947/757/1234 +f 4957/748/910 4955/747/911 4956/750/912 +f 4956/750/912 4958/749/912 4957/748/910 +f 4948/752/913 4947/751/913 4955/747/911 +f 4955/747/911 4957/748/910 4948/752/913 +f 4952/754/914 4957/759/1235 4958/760/916 +f 4958/760/916 4953/755/916 4952/754/914 +f 4949/758/917 4948/761/917 4957/759/1235 +f 4957/759/1235 4952/754/914 4949/758/917 +f 4959/762/918 4960/763/919 4961/764/920 +f 4961/764/920 4962/765/920 4959/762/918 +f 4963/766/921 4964/767/921 4960/763/919 +f 4960/763/919 4959/762/918 4963/766/921 +f 4965/768/1236 4959/769/923 4962/770/924 +f 4962/770/924 4966/771/924 4965/768/1236 +f 4967/772/925 4963/773/925 4959/769/923 +f 4959/769/923 4965/768/1236 4967/772/925 +f 4968/763/926 4965/762/927 4966/765/928 +f 4966/765/928 4969/764/928 4968/763/926 +f 4970/767/929 4967/766/929 4965/762/927 +f 4965/762/927 4968/763/926 4970/767/929 +f 4960/774/1237 4968/768/578 4969/771/932 +f 4969/771/932 4961/775/932 4960/774/1237 +f 4964/776/933 4970/777/933 4968/768/578 +f 4968/768/578 4960/774/1237 4964/776/933 +f 4971/778/934 4972/779/935 4973/780/936 +f 4973/780/936 4974/781/936 4971/778/934 +f 4975/782/937 4976/783/937 4972/779/935 +f 4972/779/935 4971/778/934 4975/782/937 +f 4977/784/1238 4971/785/939 4974/786/940 +f 4974/786/940 4978/787/940 4977/784/1238 +f 4979/788/941 4975/789/941 4971/785/939 +f 4971/785/939 4977/784/1238 4979/788/941 +f 4980/790/1000 4977/791/943 4978/792/944 +f 4978/792/944 4981/793/944 4980/790/1000 +f 4982/794/945 4979/795/945 4977/791/943 +f 4977/791/943 4980/790/1000 4982/794/945 +f 4972/785/946 4980/796/947 4981/787/948 +f 4981/787/948 4973/797/948 4972/785/946 +f 4976/789/949 4982/798/1239 4980/796/947 +f 4980/796/947 4972/785/946 4976/789/949 +f 4983/799/36 4984/800/36 4985/801/36 +f 4985/801/36 4986/802/36 4983/799/36 +f 4987/803/996 4988/804/997 4989/805/952 +f 4989/805/952 4990/806/952 4987/803/996 +f 4986/807/953 4985/808/953 4988/804/997 +f 4988/804/997 4987/803/996 4986/807/953 +f 4991/809/954 4987/810/954 4990/811/955 +f 4990/811/955 4992/812/955 4991/809/954 +f 4983/813/1240 4986/814/1240 4987/810/954 +f 4987/810/954 4991/809/954 4983/813/1240 +f 4993/804/957 4991/803/958 4992/806/959 +f 4992/806/959 4994/805/959 4993/804/957 +f 4984/808/960 4983/807/960 4991/803/958 +f 4991/803/958 4993/804/957 4984/808/960 +f 4988/815/1241 4993/809/1241 4994/816/962 +f 4994/816/962 4989/817/962 4988/815/1241 +f 4985/818/1242 4984/819/963 4993/809/1241 +f 4993/809/1241 4988/815/1241 4985/818/1242 +f 4995/820/36 4996/821/36 4997/822/36 +f 4997/822/36 4998/823/36 4995/820/36 +f 4999/824/998 5000/825/999 5001/826/966 +f 5001/826/966 5002/827/966 4999/824/998 +f 4998/828/967 4997/829/967 5000/825/999 +f 5000/825/999 4999/824/998 4998/828/967 +f 5003/737/968 4999/738/969 5002/734/970 +f 5002/734/970 5004/740/970 5003/737/968 +f 4995/741/1243 4998/735/1243 4999/738/969 +f 4999/738/969 5003/737/968 4995/741/1243 +f 5005/825/972 5003/824/972 5004/827/973 +f 5004/827/973 5006/826/973 5005/825/972 +f 4996/829/974 4995/828/974 5003/824/972 +f 5003/824/972 5005/825/972 4996/829/974 +f 5000/731/975 5005/737/976 5006/733/1244 +f 5006/733/1244 5001/830/1244 5000/731/975 +f 4997/831/1245 4996/736/1245 5005/737/976 +f 5005/737/976 5000/731/975 4997/831/1245 +f 5007/832/36 5008/833/36 5009/834/36 +f 5009/834/36 5010/835/36 5007/832/36 +f 5011/836/979 5012/837/979 5013/838/980 +f 5013/838/980 5014/839/980 5011/836/979 +f 5010/840/981 5009/841/981 5012/837/979 +f 5012/837/979 5011/836/979 5010/840/981 +f 5015/737/1246 5011/731/1246 5014/734/983 +f 5014/734/983 5016/733/983 5015/737/1246 +f 5007/741/985 5010/735/985 5011/731/1246 +f 5011/731/1246 5015/737/1246 5007/741/985 +f 5017/837/1001 5015/836/1001 5016/839/987 +f 5016/839/987 5018/838/987 5017/837/1001 +f 5008/841/988 5007/840/988 5015/836/1001 +f 5015/836/1001 5017/837/1001 5008/841/988 +f 5012/842/1247 5017/732/1247 5018/843/990 +f 5018/843/990 5013/734/990 5012/842/1247 +f 5009/831/991 5008/736/991 5017/732/1247 +f 5017/732/1247 5012/842/1247 5009/831/991 +f 5019/721/37 5020/722/37 5021/723/37 +f 5021/723/37 5022/724/37 5019/721/37 +f 5023/725/888 5024/726/888 5025/727/889 +f 5025/727/889 5026/728/889 5023/725/888 +f 5022/729/890 5021/730/890 5024/726/888 +f 5024/726/888 5023/725/888 5022/729/890 +f 5027/731/891 5023/732/892 5026/733/893 +f 5026/733/893 5028/734/893 5027/731/891 +f 5019/735/895 5022/736/895 5023/732/892 +f 5023/732/892 5027/731/891 5019/735/895 +f 5029/726/896 5027/725/896 5028/728/897 +f 5028/728/897 5030/727/897 5029/726/896 +f 5020/730/898 5019/729/898 5027/725/896 +f 5027/725/896 5029/726/896 5020/730/898 +f 5024/737/899 5029/738/899 5030/739/900 +f 5030/739/900 5025/740/900 5024/737/899 +f 5021/741/901 5020/742/1232 5029/738/899 +f 5029/738/899 5024/737/899 5021/741/901 +f 5031/743/36 5032/744/36 5033/745/36 +f 5033/745/36 5034/746/36 5031/743/36 +f 5035/747/902 5036/748/995 5037/749/903 +f 5037/749/903 5038/750/903 5035/747/902 +f 5034/751/904 5033/752/904 5036/748/995 +f 5036/748/995 5035/747/902 5034/751/904 +f 5039/753/905 5035/754/1233 5038/755/907 +f 5038/755/907 5040/756/907 5039/753/905 +f 5031/757/1234 5034/758/1234 5035/754/1233 +f 5035/754/1233 5039/753/905 5031/757/1234 +f 5041/748/910 5039/747/911 5040/750/912 +f 5040/750/912 5042/749/912 5041/748/910 +f 5032/752/913 5031/751/913 5039/747/911 +f 5039/747/911 5041/748/910 5032/752/913 +f 5036/754/914 5041/759/1235 5042/760/916 +f 5042/760/916 5037/755/916 5036/754/914 +f 5033/758/917 5032/761/917 5041/759/1235 +f 5041/759/1235 5036/754/914 5033/758/917 +f 5043/762/918 5044/763/919 5045/764/920 +f 5045/764/920 5046/765/920 5043/762/918 +f 5047/766/921 5048/767/921 5044/763/919 +f 5044/763/919 5043/762/918 5047/766/921 +f 5049/768/1236 5043/769/923 5046/770/924 +f 5046/770/924 5050/771/924 5049/768/1236 +f 5051/772/925 5047/773/925 5043/769/923 +f 5043/769/923 5049/768/1236 5051/772/925 +f 5052/763/926 5049/762/927 5050/765/928 +f 5050/765/928 5053/764/928 5052/763/926 +f 5054/767/929 5051/766/929 5049/762/927 +f 5049/762/927 5052/763/926 5054/767/929 +f 5044/774/1237 5052/768/578 5053/771/932 +f 5053/771/932 5045/775/932 5044/774/1237 +f 5048/776/933 5054/777/933 5052/768/578 +f 5052/768/578 5044/774/1237 5048/776/933 +f 5055/778/934 5056/779/935 5057/780/936 +f 5057/780/936 5058/781/936 5055/778/934 +f 5059/782/937 5060/783/937 5056/779/935 +f 5056/779/935 5055/778/934 5059/782/937 +f 5061/784/1238 5055/785/939 5058/786/940 +f 5058/786/940 5062/787/940 5061/784/1238 +f 5063/788/941 5059/789/941 5055/785/939 +f 5055/785/939 5061/784/1238 5063/788/941 +f 5064/790/1000 5061/791/943 5062/792/944 +f 5062/792/944 5065/793/944 5064/790/1000 +f 5066/794/945 5063/795/945 5061/791/943 +f 5061/791/943 5064/790/1000 5066/794/945 +f 5056/785/946 5064/796/947 5065/787/948 +f 5065/787/948 5057/797/948 5056/785/946 +f 5060/789/949 5066/798/1239 5064/796/947 +f 5064/796/947 5056/785/946 5060/789/949 +f 5067/799/37 5068/800/37 5069/801/37 +f 5069/801/37 5070/802/37 5067/799/37 +f 5071/803/996 5072/804/997 5073/805/952 +f 5073/805/952 5074/806/952 5071/803/996 +f 5070/807/953 5069/808/953 5072/804/997 +f 5072/804/997 5071/803/996 5070/807/953 +f 5075/809/954 5071/810/954 5074/811/955 +f 5074/811/955 5076/812/955 5075/809/954 +f 5067/813/1240 5070/814/1240 5071/810/954 +f 5071/810/954 5075/809/954 5067/813/1240 +f 5077/804/957 5075/803/958 5076/806/959 +f 5076/806/959 5078/805/959 5077/804/957 +f 5068/808/960 5067/807/960 5075/803/958 +f 5075/803/958 5077/804/957 5068/808/960 +f 5072/815/1241 5077/809/1241 5078/816/962 +f 5078/816/962 5073/817/962 5072/815/1241 +f 5069/818/1242 5068/819/963 5077/809/1241 +f 5077/809/1241 5072/815/1241 5069/818/1242 +f 5079/820/36 5080/821/36 5081/822/36 +f 5081/822/36 5082/823/36 5079/820/36 +f 5083/824/964 5084/825/965 5085/826/966 +f 5085/826/966 5086/827/966 5083/824/964 +f 5082/828/967 5081/829/967 5084/825/965 +f 5084/825/965 5083/824/964 5082/828/967 +f 5087/737/968 5083/738/969 5086/734/970 +f 5086/734/970 5088/740/970 5087/737/968 +f 5079/741/1243 5082/735/1243 5083/738/969 +f 5083/738/969 5087/737/968 5079/741/1243 +f 5089/825/972 5087/824/972 5088/827/973 +f 5088/827/973 5090/826/973 5089/825/972 +f 5080/829/974 5079/828/974 5087/824/972 +f 5087/824/972 5089/825/972 5080/829/974 +f 5084/731/975 5089/737/976 5090/733/1244 +f 5090/733/1244 5085/830/1244 5084/731/975 +f 5081/831/1245 5080/736/1245 5089/737/976 +f 5089/737/976 5084/731/975 5081/831/1245 +f 5091/832/36 5092/833/36 5093/834/36 +f 5093/834/36 5094/835/36 5091/832/36 +f 5095/836/979 5096/837/979 5097/838/994 +f 5097/838/994 5098/839/994 5095/836/979 +f 5094/840/981 5093/841/981 5096/837/979 +f 5096/837/979 5095/836/979 5094/840/981 +f 5099/737/1246 5095/731/1246 5098/734/983 +f 5098/734/983 5100/733/983 5099/737/1246 +f 5091/741/985 5094/735/985 5095/731/1246 +f 5095/731/1246 5099/737/1246 5091/741/985 +f 5101/837/1001 5099/836/1001 5100/839/987 +f 5100/839/987 5102/838/987 5101/837/1001 +f 5092/841/988 5091/840/988 5099/836/1001 +f 5099/836/1001 5101/837/1001 5092/841/988 +f 5096/842/1247 5101/732/1247 5102/843/990 +f 5102/843/990 5097/734/990 5096/842/1247 +f 5093/831/991 5092/736/991 5101/732/1247 +f 5101/732/1247 5096/842/1247 5093/831/991 +f 5103/721/36 5104/722/36 5105/723/36 +f 5105/723/36 5106/724/36 5103/721/36 +f 5107/725/888 5108/726/888 5109/727/889 +f 5109/727/889 5110/728/889 5107/725/888 +f 5106/729/890 5105/730/890 5108/726/888 +f 5108/726/888 5107/725/888 5106/729/890 +f 5111/731/891 5107/732/892 5110/733/893 +f 5110/733/893 5112/734/893 5111/731/891 +f 5103/735/895 5106/736/895 5107/732/892 +f 5107/732/892 5111/731/891 5103/735/895 +f 5113/726/896 5111/725/896 5112/728/897 +f 5112/728/897 5114/727/897 5113/726/896 +f 5104/730/898 5103/729/898 5111/725/896 +f 5111/725/896 5113/726/896 5104/730/898 +f 5108/737/899 5113/738/899 5114/739/900 +f 5114/739/900 5109/740/900 5108/737/899 +f 5105/741/901 5104/742/1232 5113/738/899 +f 5113/738/899 5108/737/899 5105/741/901 +f 5115/743/37 5116/744/37 5117/745/37 +f 5117/745/37 5118/746/37 5115/743/37 +f 5119/747/902 5120/748/995 5121/749/903 +f 5121/749/903 5122/750/903 5119/747/902 +f 5118/751/904 5117/752/904 5120/748/995 +f 5120/748/995 5119/747/902 5118/751/904 +f 5123/753/905 5119/754/1233 5122/755/907 +f 5122/755/907 5124/756/907 5123/753/905 +f 5115/757/1234 5118/758/1234 5119/754/1233 +f 5119/754/1233 5123/753/905 5115/757/1234 +f 5125/748/910 5123/747/911 5124/750/912 +f 5124/750/912 5126/749/912 5125/748/910 +f 5116/752/913 5115/751/913 5123/747/911 +f 5123/747/911 5125/748/910 5116/752/913 +f 5120/754/914 5125/759/1235 5126/760/916 +f 5126/760/916 5121/755/916 5120/754/914 +f 5117/758/917 5116/761/917 5125/759/1235 +f 5125/759/1235 5120/754/914 5117/758/917 +f 5127/762/918 5128/763/919 5129/764/920 +f 5129/764/920 5130/765/920 5127/762/918 +f 5131/766/921 5132/767/921 5128/763/919 +f 5128/763/919 5127/762/918 5131/766/921 +f 5133/768/1236 5127/769/923 5130/770/924 +f 5130/770/924 5134/771/924 5133/768/1236 +f 5135/772/925 5131/773/925 5127/769/923 +f 5127/769/923 5133/768/1236 5135/772/925 +f 5136/763/926 5133/762/927 5134/765/928 +f 5134/765/928 5137/764/928 5136/763/926 +f 5138/767/929 5135/766/929 5133/762/927 +f 5133/762/927 5136/763/926 5138/767/929 +f 5128/774/1237 5136/768/578 5137/771/932 +f 5137/771/932 5129/775/932 5128/774/1237 +f 5132/776/933 5138/777/933 5136/768/578 +f 5136/768/578 5128/774/1237 5132/776/933 +f 5139/778/934 5140/779/935 5141/780/936 +f 5141/780/936 5142/781/936 5139/778/934 +f 5143/782/937 5144/783/937 5140/779/935 +f 5140/779/935 5139/778/934 5143/782/937 +f 5145/784/1238 5139/785/939 5142/786/940 +f 5142/786/940 5146/787/940 5145/784/1238 +f 5147/788/941 5143/789/941 5139/785/939 +f 5139/785/939 5145/784/1238 5147/788/941 +f 5148/790/1000 5145/791/943 5146/792/944 +f 5146/792/944 5149/793/944 5148/790/1000 +f 5150/794/945 5147/795/945 5145/791/943 +f 5145/791/943 5148/790/1000 5150/794/945 +f 5140/785/946 5148/796/947 5149/787/948 +f 5149/787/948 5141/797/948 5140/785/946 +f 5144/789/949 5150/798/1239 5148/796/947 +f 5148/796/947 5140/785/946 5144/789/949 +f 5151/799/37 5152/800/37 5153/801/37 +f 5153/801/37 5154/802/37 5151/799/37 +f 5155/803/996 5156/804/997 5157/805/952 +f 5157/805/952 5158/806/952 5155/803/996 +f 5154/807/953 5153/808/953 5156/804/997 +f 5156/804/997 5155/803/996 5154/807/953 +f 5159/809/954 5155/810/954 5158/811/955 +f 5158/811/955 5160/812/955 5159/809/954 +f 5151/813/1240 5154/814/1240 5155/810/954 +f 5155/810/954 5159/809/954 5151/813/1240 +f 5161/804/957 5159/803/958 5160/806/959 +f 5160/806/959 5162/805/959 5161/804/957 +f 5152/808/960 5151/807/960 5159/803/958 +f 5159/803/958 5161/804/957 5152/808/960 +f 5156/815/1241 5161/809/1241 5162/816/962 +f 5162/816/962 5157/817/962 5156/815/1241 +f 5153/818/1242 5152/819/963 5161/809/1241 +f 5161/809/1241 5156/815/1241 5153/818/1242 +f 5163/820/37 5164/821/37 5165/822/37 +f 5165/822/37 5166/823/37 5163/820/37 +f 5167/824/998 5168/825/999 5169/826/966 +f 5169/826/966 5170/827/966 5167/824/998 +f 5166/828/967 5165/829/967 5168/825/999 +f 5168/825/999 5167/824/998 5166/828/967 +f 5171/737/968 5167/738/969 5170/734/970 +f 5170/734/970 5172/740/970 5171/737/968 +f 5163/741/1243 5166/735/1243 5167/738/969 +f 5167/738/969 5171/737/968 5163/741/1243 +f 5173/825/972 5171/824/972 5172/827/973 +f 5172/827/973 5174/826/973 5173/825/972 +f 5164/829/974 5163/828/974 5171/824/972 +f 5171/824/972 5173/825/972 5164/829/974 +f 5168/731/975 5173/737/976 5174/733/1244 +f 5174/733/1244 5169/830/1244 5168/731/975 +f 5165/831/1245 5164/736/1245 5173/737/976 +f 5173/737/976 5168/731/975 5165/831/1245 +f 5175/832/36 5176/833/36 5177/834/36 +f 5177/834/36 5178/835/36 5175/832/36 +f 5179/836/979 5180/837/979 5181/838/980 +f 5181/838/980 5182/839/980 5179/836/979 +f 5178/840/981 5177/841/981 5180/837/979 +f 5180/837/979 5179/836/979 5178/840/981 +f 5183/737/1246 5179/731/1246 5182/734/983 +f 5182/734/983 5184/733/983 5183/737/1246 +f 5175/741/985 5178/735/985 5179/731/1246 +f 5179/731/1246 5183/737/1246 5175/741/985 +f 5185/837/986 5183/836/986 5184/839/987 +f 5184/839/987 5186/838/987 5185/837/986 +f 5176/841/988 5175/840/988 5183/836/986 +f 5183/836/986 5185/837/986 5176/841/988 +f 5180/842/1247 5185/732/1247 5186/843/990 +f 5186/843/990 5181/734/990 5180/842/1247 +f 5177/831/991 5176/736/991 5185/732/1247 +f 5185/732/1247 5180/842/1247 5177/831/991 +f 5187/721/36 5188/722/36 5189/723/36 +f 5189/723/36 5190/724/36 5187/721/36 +f 5191/725/888 5192/726/888 5193/727/889 +f 5193/727/889 5194/728/889 5191/725/888 +f 5190/729/890 5189/730/890 5192/726/888 +f 5192/726/888 5191/725/888 5190/729/890 +f 5195/731/891 5191/732/892 5194/733/893 +f 5194/733/893 5196/734/893 5195/731/891 +f 5187/735/895 5190/736/895 5191/732/892 +f 5191/732/892 5195/731/891 5187/735/895 +f 5197/726/896 5195/725/896 5196/728/897 +f 5196/728/897 5198/727/897 5197/726/896 +f 5188/730/898 5187/729/898 5195/725/896 +f 5195/725/896 5197/726/896 5188/730/898 +f 5192/737/899 5197/738/899 5198/739/900 +f 5198/739/900 5193/740/900 5192/737/899 +f 5189/741/901 5188/742/1232 5197/738/899 +f 5197/738/899 5192/737/899 5189/741/901 +f 5199/743/226 5200/744/226 5201/745/226 +f 5201/745/226 5202/746/226 5199/743/226 +f 5203/747/902 5204/748/995 5205/749/903 +f 5205/749/903 5206/750/903 5203/747/902 +f 5202/751/904 5201/752/904 5204/748/995 +f 5204/748/995 5203/747/902 5202/751/904 +f 5207/753/905 5203/754/1233 5206/755/907 +f 5206/755/907 5208/756/907 5207/753/905 +f 5199/757/1234 5202/758/1234 5203/754/1233 +f 5203/754/1233 5207/753/905 5199/757/1234 +f 5209/748/910 5207/747/911 5208/750/912 +f 5208/750/912 5210/749/912 5209/748/910 +f 5200/752/913 5199/751/913 5207/747/911 +f 5207/747/911 5209/748/910 5200/752/913 +f 5204/754/914 5209/759/1235 5210/760/916 +f 5210/760/916 5205/755/916 5204/754/914 +f 5201/758/917 5200/761/917 5209/759/1235 +f 5209/759/1235 5204/754/914 5201/758/917 +f 5211/762/918 5212/763/919 5213/764/920 +f 5213/764/920 5214/765/920 5211/762/918 +f 5215/766/921 5216/767/921 5212/763/919 +f 5212/763/919 5211/762/918 5215/766/921 +f 5217/768/1236 5211/769/923 5214/770/924 +f 5214/770/924 5218/771/924 5217/768/1236 +f 5219/772/925 5215/773/925 5211/769/923 +f 5211/769/923 5217/768/1236 5219/772/925 +f 5220/763/926 5217/762/927 5218/765/928 +f 5218/765/928 5221/764/928 5220/763/926 +f 5222/767/929 5219/766/929 5217/762/927 +f 5217/762/927 5220/763/926 5222/767/929 +f 5212/774/1237 5220/768/578 5221/771/932 +f 5221/771/932 5213/775/932 5212/774/1237 +f 5216/776/933 5222/777/933 5220/768/578 +f 5220/768/578 5212/774/1237 5216/776/933 +f 5223/778/934 5224/779/935 5225/780/936 +f 5225/780/936 5226/781/936 5223/778/934 +f 5227/782/937 5228/783/937 5224/779/935 +f 5224/779/935 5223/778/934 5227/782/937 +f 5229/784/1238 5223/785/939 5226/786/940 +f 5226/786/940 5230/787/940 5229/784/1238 +f 5231/788/941 5227/789/941 5223/785/939 +f 5223/785/939 5229/784/1238 5231/788/941 +f 5232/790/1000 5229/791/943 5230/792/944 +f 5230/792/944 5233/793/944 5232/790/1000 +f 5234/794/945 5231/795/945 5229/791/943 +f 5229/791/943 5232/790/1000 5234/794/945 +f 5224/785/946 5232/796/947 5233/787/948 +f 5233/787/948 5225/797/948 5224/785/946 +f 5228/789/949 5234/798/1239 5232/796/947 +f 5232/796/947 5224/785/946 5228/789/949 +f 5235/799/36 5236/800/36 5237/801/36 +f 5237/801/36 5238/802/36 5235/799/36 +f 5239/803/950 5240/804/951 5241/805/952 +f 5241/805/952 5242/806/952 5239/803/950 +f 5238/807/953 5237/808/953 5240/804/951 +f 5240/804/951 5239/803/950 5238/807/953 +f 5243/809/954 5239/810/954 5242/811/955 +f 5242/811/955 5244/812/955 5243/809/954 +f 5235/813/1240 5238/814/1240 5239/810/954 +f 5239/810/954 5243/809/954 5235/813/1240 +f 5245/804/957 5243/803/958 5244/806/959 +f 5244/806/959 5246/805/959 5245/804/957 +f 5236/808/960 5235/807/960 5243/803/958 +f 5243/803/958 5245/804/957 5236/808/960 +f 5240/815/1241 5245/809/1241 5246/816/962 +f 5246/816/962 5241/817/962 5240/815/1241 +f 5237/818/1242 5236/819/963 5245/809/1241 +f 5245/809/1241 5240/815/1241 5237/818/1242 +f 5247/820/36 5248/821/36 5249/822/36 +f 5249/822/36 5250/823/36 5247/820/36 +f 5251/824/998 5252/825/999 5253/826/966 +f 5253/826/966 5254/827/966 5251/824/998 +f 5250/828/967 5249/829/967 5252/825/999 +f 5252/825/999 5251/824/998 5250/828/967 +f 5255/737/968 5251/738/969 5254/734/970 +f 5254/734/970 5256/740/970 5255/737/968 +f 5247/741/1243 5250/735/1243 5251/738/969 +f 5251/738/969 5255/737/968 5247/741/1243 +f 5257/825/972 5255/824/972 5256/827/973 +f 5256/827/973 5258/826/973 5257/825/972 +f 5248/829/974 5247/828/974 5255/824/972 +f 5255/824/972 5257/825/972 5248/829/974 +f 5252/731/975 5257/737/976 5258/733/1244 +f 5258/733/1244 5253/830/1244 5252/731/975 +f 5249/831/1245 5248/736/1245 5257/737/976 +f 5257/737/976 5252/731/975 5249/831/1245 +f 5259/832/36 5260/833/36 5261/834/36 +f 5261/834/36 5262/835/36 5259/832/36 +f 5263/836/979 5264/837/979 5265/838/980 +f 5265/838/980 5266/839/980 5263/836/979 +f 5262/840/981 5261/841/981 5264/837/979 +f 5264/837/979 5263/836/979 5262/840/981 +f 5267/737/1246 5263/731/1246 5266/734/983 +f 5266/734/983 5268/733/983 5267/737/1246 +f 5259/741/985 5262/735/985 5263/731/1246 +f 5263/731/1246 5267/737/1246 5259/741/985 +f 5269/837/1001 5267/836/1001 5268/839/987 +f 5268/839/987 5270/838/987 5269/837/1001 +f 5260/841/988 5259/840/988 5267/836/1001 +f 5267/836/1001 5269/837/1001 5260/841/988 +f 5264/842/1247 5269/732/1247 5270/843/990 +f 5270/843/990 5265/734/990 5264/842/1247 +f 5261/831/991 5260/736/991 5269/732/1247 +f 5269/732/1247 5264/842/1247 5261/831/991 +f 5271/721/36 5272/722/36 5273/723/36 +f 5273/723/36 5274/724/36 5271/721/36 +f 5275/725/888 5276/726/888 5277/727/889 +f 5277/727/889 5278/728/889 5275/725/888 +f 5274/729/890 5273/730/890 5276/726/888 +f 5276/726/888 5275/725/888 5274/729/890 +f 5279/731/891 5275/732/892 5278/733/893 +f 5278/733/893 5280/734/893 5279/731/891 +f 5271/735/895 5274/736/895 5275/732/892 +f 5275/732/892 5279/731/891 5271/735/895 +f 5281/726/896 5279/725/896 5280/728/897 +f 5280/728/897 5282/727/897 5281/726/896 +f 5272/730/898 5271/729/898 5279/725/896 +f 5279/725/896 5281/726/896 5272/730/898 +f 5276/737/899 5281/738/899 5282/739/900 +f 5282/739/900 5277/740/900 5276/737/899 +f 5273/741/901 5272/742/1232 5281/738/899 +f 5281/738/899 5276/737/899 5273/741/901 +f 5283/743/36 5284/744/36 5285/745/36 +f 5285/745/36 5286/746/36 5283/743/36 +f 5287/747/902 5288/748/995 5289/749/903 +f 5289/749/903 5290/750/903 5287/747/902 +f 5286/751/904 5285/752/904 5288/748/995 +f 5288/748/995 5287/747/902 5286/751/904 +f 5291/753/905 5287/754/1233 5290/755/907 +f 5290/755/907 5292/756/907 5291/753/905 +f 5283/757/1234 5286/758/1234 5287/754/1233 +f 5287/754/1233 5291/753/905 5283/757/1234 +f 5293/748/910 5291/747/911 5292/750/912 +f 5292/750/912 5294/749/912 5293/748/910 +f 5284/752/913 5283/751/913 5291/747/911 +f 5291/747/911 5293/748/910 5284/752/913 +f 5288/754/914 5293/759/1235 5294/760/916 +f 5294/760/916 5289/755/916 5288/754/914 +f 5285/758/917 5284/761/917 5293/759/1235 +f 5293/759/1235 5288/754/914 5285/758/917 +f 5295/762/918 5296/763/919 5297/764/920 +f 5297/764/920 5298/765/920 5295/762/918 +f 5299/766/921 5300/767/921 5296/763/919 +f 5296/763/919 5295/762/918 5299/766/921 +f 5301/768/1236 5295/769/923 5298/770/924 +f 5298/770/924 5302/771/924 5301/768/1236 +f 5303/772/925 5299/773/925 5295/769/923 +f 5295/769/923 5301/768/1236 5303/772/925 +f 5304/763/926 5301/762/927 5302/765/928 +f 5302/765/928 5305/764/928 5304/763/926 +f 5306/767/929 5303/766/929 5301/762/927 +f 5301/762/927 5304/763/926 5306/767/929 +f 5296/774/1237 5304/768/578 5305/771/932 +f 5305/771/932 5297/775/932 5296/774/1237 +f 5300/776/933 5306/777/933 5304/768/578 +f 5304/768/578 5296/774/1237 5300/776/933 +f 5307/778/934 5308/779/935 5309/780/936 +f 5309/780/936 5310/781/936 5307/778/934 +f 5311/782/937 5312/783/937 5308/779/935 +f 5308/779/935 5307/778/934 5311/782/937 +f 5313/784/1238 5307/785/939 5310/786/940 +f 5310/786/940 5314/787/940 5313/784/1238 +f 5315/788/941 5311/789/941 5307/785/939 +f 5307/785/939 5313/784/1238 5315/788/941 +f 5316/790/1000 5313/791/943 5314/792/944 +f 5314/792/944 5317/793/944 5316/790/1000 +f 5318/794/945 5315/795/945 5313/791/943 +f 5313/791/943 5316/790/1000 5318/794/945 +f 5308/785/946 5316/796/947 5317/787/948 +f 5317/787/948 5309/797/948 5308/785/946 +f 5312/789/949 5318/798/1239 5316/796/947 +f 5316/796/947 5308/785/946 5312/789/949 +f 5319/799/226 5320/800/226 5321/801/226 +f 5321/801/226 5322/802/226 5319/799/226 +f 5323/803/996 5324/804/997 5325/805/952 +f 5325/805/952 5326/806/952 5323/803/996 +f 5322/807/953 5321/808/953 5324/804/997 +f 5324/804/997 5323/803/996 5322/807/953 +f 5327/809/954 5323/810/954 5326/811/955 +f 5326/811/955 5328/812/955 5327/809/954 +f 5319/813/1240 5322/814/1240 5323/810/954 +f 5323/810/954 5327/809/954 5319/813/1240 +f 5329/804/957 5327/803/958 5328/806/959 +f 5328/806/959 5330/805/959 5329/804/957 +f 5320/808/960 5319/807/960 5327/803/958 +f 5327/803/958 5329/804/957 5320/808/960 +f 5324/815/1241 5329/809/1241 5330/816/962 +f 5330/816/962 5325/817/962 5324/815/1241 +f 5321/818/1242 5320/819/963 5329/809/1241 +f 5329/809/1241 5324/815/1241 5321/818/1242 +f 5331/820/36 5332/821/36 5333/822/36 +f 5333/822/36 5334/823/36 5331/820/36 +f 5335/824/998 5336/825/999 5337/826/966 +f 5337/826/966 5338/827/966 5335/824/998 +f 5334/828/967 5333/829/967 5336/825/999 +f 5336/825/999 5335/824/998 5334/828/967 +f 5339/737/968 5335/738/969 5338/734/970 +f 5338/734/970 5340/740/970 5339/737/968 +f 5331/741/1243 5334/735/1243 5335/738/969 +f 5335/738/969 5339/737/968 5331/741/1243 +f 5341/825/972 5339/824/972 5340/827/973 +f 5340/827/973 5342/826/973 5341/825/972 +f 5332/829/974 5331/828/974 5339/824/972 +f 5339/824/972 5341/825/972 5332/829/974 +f 5336/731/975 5341/737/976 5342/733/1244 +f 5342/733/1244 5337/830/1244 5336/731/975 +f 5333/831/1245 5332/736/1245 5341/737/976 +f 5341/737/976 5336/731/975 5333/831/1245 +f 5343/832/36 5344/833/36 5345/834/36 +f 5345/834/36 5346/835/36 5343/832/36 +f 5347/836/979 5348/837/979 5349/838/980 +f 5349/838/980 5350/839/980 5347/836/979 +f 5346/840/981 5345/841/981 5348/837/979 +f 5348/837/979 5347/836/979 5346/840/981 +f 5351/737/1246 5347/731/1246 5350/734/983 +f 5350/734/983 5352/733/983 5351/737/1246 +f 5343/741/985 5346/735/985 5347/731/1246 +f 5347/731/1246 5351/737/1246 5343/741/985 +f 5353/837/1001 5351/836/1001 5352/839/987 +f 5352/839/987 5354/838/987 5353/837/1001 +f 5344/841/988 5343/840/988 5351/836/1001 +f 5351/836/1001 5353/837/1001 5344/841/988 +f 5348/842/1247 5353/732/1247 5354/843/990 +f 5354/843/990 5349/734/990 5348/842/1247 +f 5345/831/991 5344/736/991 5353/732/1247 +f 5353/732/1247 5348/842/1247 5345/831/991 +f 5355/721/37 5356/722/37 5357/723/37 +f 5357/723/37 5358/724/37 5355/721/37 +f 5359/725/888 5360/726/888 5361/727/889 +f 5361/727/889 5362/728/889 5359/725/888 +f 5358/729/890 5357/730/890 5360/726/888 +f 5360/726/888 5359/725/888 5358/729/890 +f 5363/731/891 5359/732/892 5362/733/893 +f 5362/733/893 5364/734/893 5363/731/891 +f 5355/735/895 5358/736/895 5359/732/892 +f 5359/732/892 5363/731/891 5355/735/895 +f 5365/726/896 5363/725/896 5364/728/897 +f 5364/728/897 5366/727/897 5365/726/896 +f 5356/730/898 5355/729/898 5363/725/896 +f 5363/725/896 5365/726/896 5356/730/898 +f 5360/737/899 5365/738/899 5366/739/900 +f 5366/739/900 5361/740/900 5360/737/899 +f 5357/741/901 5356/742/1232 5365/738/899 +f 5365/738/899 5360/737/899 5357/741/901 +f 5367/743/36 5368/744/36 5369/745/36 +f 5369/745/36 5370/746/36 5367/743/36 +f 5371/747/902 5372/748/995 5373/749/903 +f 5373/749/903 5374/750/903 5371/747/902 +f 5370/751/904 5369/752/904 5372/748/995 +f 5372/748/995 5371/747/902 5370/751/904 +f 5375/753/905 5371/754/1233 5374/755/907 +f 5374/755/907 5376/756/907 5375/753/905 +f 5367/757/1234 5370/758/1234 5371/754/1233 +f 5371/754/1233 5375/753/905 5367/757/1234 +f 5377/748/910 5375/747/911 5376/750/912 +f 5376/750/912 5378/749/912 5377/748/910 +f 5368/752/913 5367/751/913 5375/747/911 +f 5375/747/911 5377/748/910 5368/752/913 +f 5372/754/914 5377/759/1235 5378/760/916 +f 5378/760/916 5373/755/916 5372/754/914 +f 5369/758/917 5368/761/917 5377/759/1235 +f 5377/759/1235 5372/754/914 5369/758/917 +f 5379/762/918 5380/763/919 5381/764/920 +f 5381/764/920 5382/765/920 5379/762/918 +f 5383/766/921 5384/767/921 5380/763/919 +f 5380/763/919 5379/762/918 5383/766/921 +f 5385/768/1236 5379/769/923 5382/770/924 +f 5382/770/924 5386/771/924 5385/768/1236 +f 5387/772/925 5383/773/925 5379/769/923 +f 5379/769/923 5385/768/1236 5387/772/925 +f 5388/763/926 5385/762/927 5386/765/928 +f 5386/765/928 5389/764/928 5388/763/926 +f 5390/767/929 5387/766/929 5385/762/927 +f 5385/762/927 5388/763/926 5390/767/929 +f 5380/774/1237 5388/768/578 5389/771/932 +f 5389/771/932 5381/775/932 5380/774/1237 +f 5384/776/933 5390/777/933 5388/768/578 +f 5388/768/578 5380/774/1237 5384/776/933 +f 5391/778/934 5392/779/935 5393/780/936 +f 5393/780/936 5394/781/936 5391/778/934 +f 5395/782/937 5396/783/937 5392/779/935 +f 5392/779/935 5391/778/934 5395/782/937 +f 5397/784/1238 5391/785/939 5394/786/940 +f 5394/786/940 5398/787/940 5397/784/1238 +f 5399/788/941 5395/789/941 5391/785/939 +f 5391/785/939 5397/784/1238 5399/788/941 +f 5400/790/1000 5397/791/943 5398/792/944 +f 5398/792/944 5401/793/944 5400/790/1000 +f 5402/794/945 5399/795/945 5397/791/943 +f 5397/791/943 5400/790/1000 5402/794/945 +f 5392/785/946 5400/796/947 5401/787/948 +f 5401/787/948 5393/797/948 5392/785/946 +f 5396/789/949 5402/798/1239 5400/796/947 +f 5400/796/947 5392/785/946 5396/789/949 +f 5403/799/36 5404/800/36 5405/801/36 +f 5405/801/36 5406/802/36 5403/799/36 +f 5407/803/996 5408/804/997 5409/805/952 +f 5409/805/952 5410/806/952 5407/803/996 +f 5406/807/953 5405/808/953 5408/804/997 +f 5408/804/997 5407/803/996 5406/807/953 +f 5411/809/954 5407/810/954 5410/811/955 +f 5410/811/955 5412/812/955 5411/809/954 +f 5403/813/1240 5406/814/1240 5407/810/954 +f 5407/810/954 5411/809/954 5403/813/1240 +f 5413/804/957 5411/803/958 5412/806/959 +f 5412/806/959 5414/805/959 5413/804/957 +f 5404/808/960 5403/807/960 5411/803/958 +f 5411/803/958 5413/804/957 5404/808/960 +f 5408/815/1241 5413/809/1241 5414/816/962 +f 5414/816/962 5409/817/962 5408/815/1241 +f 5405/818/1242 5404/819/963 5413/809/1241 +f 5413/809/1241 5408/815/1241 5405/818/1242 +f 5415/820/36 5416/821/36 5417/822/36 +f 5417/822/36 5418/823/36 5415/820/36 +f 5419/824/998 5420/825/999 5421/826/966 +f 5421/826/966 5422/827/966 5419/824/998 +f 5418/828/967 5417/829/967 5420/825/999 +f 5420/825/999 5419/824/998 5418/828/967 +f 5423/737/968 5419/738/969 5422/734/970 +f 5422/734/970 5424/740/970 5423/737/968 +f 5415/741/1243 5418/735/1243 5419/738/969 +f 5419/738/969 5423/737/968 5415/741/1243 +f 5425/825/972 5423/824/972 5424/827/973 +f 5424/827/973 5426/826/973 5425/825/972 +f 5416/829/974 5415/828/974 5423/824/972 +f 5423/824/972 5425/825/972 5416/829/974 +f 5420/731/975 5425/737/976 5426/733/1244 +f 5426/733/1244 5421/830/1244 5420/731/975 +f 5417/831/1245 5416/736/1245 5425/737/976 +f 5425/737/976 5420/731/975 5417/831/1245 +f 5427/832/36 5428/833/36 5429/834/36 +f 5429/834/36 5430/835/36 5427/832/36 +f 5431/836/993 5432/837/979 5433/838/994 +f 5433/838/994 5434/839/994 5431/836/993 +f 5430/840/981 5429/841/981 5432/837/979 +f 5432/837/979 5431/836/993 5430/840/981 +f 5435/737/1246 5431/731/1246 5434/734/983 +f 5434/734/983 5436/733/983 5435/737/1246 +f 5427/741/985 5430/735/985 5431/731/1246 +f 5431/731/1246 5435/737/1246 5427/741/985 +f 5437/837/1001 5435/836/1001 5436/839/987 +f 5436/839/987 5438/838/987 5437/837/1001 +f 5428/841/988 5427/840/988 5435/836/1001 +f 5435/836/1001 5437/837/1001 5428/841/988 +f 5432/842/1247 5437/732/1247 5438/843/990 +f 5438/843/990 5433/734/990 5432/842/1247 +f 5429/831/991 5428/736/991 5437/732/1247 +f 5437/732/1247 5432/842/1247 5429/831/991 +f 5439/721/36 5440/722/36 5441/723/36 +f 5441/723/36 5442/724/36 5439/721/36 +f 5443/725/888 5444/726/888 5445/727/889 +f 5445/727/889 5446/728/889 5443/725/888 +f 5442/729/890 5441/730/890 5444/726/888 +f 5444/726/888 5443/725/888 5442/729/890 +f 5447/731/891 5443/732/892 5446/733/893 +f 5446/733/893 5448/734/893 5447/731/891 +f 5439/735/895 5442/736/895 5443/732/892 +f 5443/732/892 5447/731/891 5439/735/895 +f 5449/726/896 5447/725/896 5448/728/897 +f 5448/728/897 5450/727/897 5449/726/896 +f 5440/730/898 5439/729/898 5447/725/896 +f 5447/725/896 5449/726/896 5440/730/898 +f 5444/737/899 5449/738/899 5450/739/900 +f 5450/739/900 5445/740/900 5444/737/899 +f 5441/741/901 5440/742/1232 5449/738/899 +f 5449/738/899 5444/737/899 5441/741/901 +f 5451/743/36 5452/744/36 5453/745/36 +f 5453/745/36 5454/746/36 5451/743/36 +f 5455/747/902 5456/748/995 5457/749/903 +f 5457/749/903 5458/750/903 5455/747/902 +f 5454/751/904 5453/752/904 5456/748/995 +f 5456/748/995 5455/747/902 5454/751/904 +f 5459/753/905 5455/754/1233 5458/755/907 +f 5458/755/907 5460/756/907 5459/753/905 +f 5451/757/1234 5454/758/1234 5455/754/1233 +f 5455/754/1233 5459/753/905 5451/757/1234 +f 5461/748/910 5459/747/911 5460/750/912 +f 5460/750/912 5462/749/912 5461/748/910 +f 5452/752/913 5451/751/913 5459/747/911 +f 5459/747/911 5461/748/910 5452/752/913 +f 5456/754/914 5461/759/1235 5462/760/916 +f 5462/760/916 5457/755/916 5456/754/914 +f 5453/758/917 5452/761/917 5461/759/1235 +f 5461/759/1235 5456/754/914 5453/758/917 +f 5463/762/918 5464/763/919 5465/764/920 +f 5465/764/920 5466/765/920 5463/762/918 +f 5467/766/921 5468/767/921 5464/763/919 +f 5464/763/919 5463/762/918 5467/766/921 +f 5469/768/1236 5463/769/923 5466/770/924 +f 5466/770/924 5470/771/924 5469/768/1236 +f 5471/772/925 5467/773/925 5463/769/923 +f 5463/769/923 5469/768/1236 5471/772/925 +f 5472/763/926 5469/762/927 5470/765/928 +f 5470/765/928 5473/764/928 5472/763/926 +f 5474/767/929 5471/766/929 5469/762/927 +f 5469/762/927 5472/763/926 5474/767/929 +f 5464/774/1237 5472/768/578 5473/771/932 +f 5473/771/932 5465/775/932 5464/774/1237 +f 5468/776/933 5474/777/933 5472/768/578 +f 5472/768/578 5464/774/1237 5468/776/933 +f 5475/778/934 5476/779/935 5477/780/936 +f 5477/780/936 5478/781/936 5475/778/934 +f 5479/782/937 5480/783/937 5476/779/935 +f 5476/779/935 5475/778/934 5479/782/937 +f 5481/784/1238 5475/785/939 5478/786/940 +f 5478/786/940 5482/787/940 5481/784/1238 +f 5483/788/941 5479/789/941 5475/785/939 +f 5475/785/939 5481/784/1238 5483/788/941 +f 5484/790/1000 5481/791/943 5482/792/944 +f 5482/792/944 5485/793/944 5484/790/1000 +f 5486/794/945 5483/795/945 5481/791/943 +f 5481/791/943 5484/790/1000 5486/794/945 +f 5476/785/946 5484/796/947 5485/787/948 +f 5485/787/948 5477/797/948 5476/785/946 +f 5480/789/949 5486/798/1239 5484/796/947 +f 5484/796/947 5476/785/946 5480/789/949 +f 5487/799/226 5488/800/226 5489/801/226 +f 5489/801/226 5490/802/226 5487/799/226 +f 5491/803/996 5492/804/997 5493/805/952 +f 5493/805/952 5494/806/952 5491/803/996 +f 5490/807/953 5489/808/953 5492/804/997 +f 5492/804/997 5491/803/996 5490/807/953 +f 5495/809/954 5491/810/954 5494/811/955 +f 5494/811/955 5496/812/955 5495/809/954 +f 5487/813/1240 5490/814/1240 5491/810/954 +f 5491/810/954 5495/809/954 5487/813/1240 +f 5497/804/957 5495/803/958 5496/806/959 +f 5496/806/959 5498/805/959 5497/804/957 +f 5488/808/960 5487/807/960 5495/803/958 +f 5495/803/958 5497/804/957 5488/808/960 +f 5492/815/1241 5497/809/1241 5498/816/962 +f 5498/816/962 5493/817/962 5492/815/1241 +f 5489/818/1242 5488/819/963 5497/809/1241 +f 5497/809/1241 5492/815/1241 5489/818/1242 +f 5499/820/36 5500/821/36 5501/822/36 +f 5501/822/36 5502/823/36 5499/820/36 +f 5503/824/998 5504/825/999 5505/826/966 +f 5505/826/966 5506/827/966 5503/824/998 +f 5502/828/967 5501/829/967 5504/825/999 +f 5504/825/999 5503/824/998 5502/828/967 +f 5507/737/968 5503/738/969 5506/734/970 +f 5506/734/970 5508/740/970 5507/737/968 +f 5499/741/1243 5502/735/1243 5503/738/969 +f 5503/738/969 5507/737/968 5499/741/1243 +f 5509/825/972 5507/824/972 5508/827/973 +f 5508/827/973 5510/826/973 5509/825/972 +f 5500/829/974 5499/828/974 5507/824/972 +f 5507/824/972 5509/825/972 5500/829/974 +f 5504/731/975 5509/737/976 5510/733/1244 +f 5510/733/1244 5505/830/1244 5504/731/975 +f 5501/831/1245 5500/736/1245 5509/737/976 +f 5509/737/976 5504/731/975 5501/831/1245 +f 5511/832/37 5512/833/37 5513/834/37 +f 5513/834/37 5514/835/37 5511/832/37 +f 5515/836/993 5516/837/979 5517/838/980 +f 5517/838/980 5518/839/980 5515/836/993 +f 5514/840/981 5513/841/981 5516/837/979 +f 5516/837/979 5515/836/993 5514/840/981 +f 5519/737/1246 5515/731/1246 5518/734/983 +f 5518/734/983 5520/733/983 5519/737/1246 +f 5511/741/985 5514/735/985 5515/731/1246 +f 5515/731/1246 5519/737/1246 5511/741/985 +f 5521/837/1001 5519/836/1001 5520/839/987 +f 5520/839/987 5522/838/987 5521/837/1001 +f 5512/841/988 5511/840/988 5519/836/1001 +f 5519/836/1001 5521/837/1001 5512/841/988 +f 5516/842/1247 5521/732/1247 5522/843/990 +f 5522/843/990 5517/734/990 5516/842/1247 +f 5513/831/991 5512/736/991 5521/732/1247 +f 5521/732/1247 5516/842/1247 5513/831/991 +f 5523/721/36 5524/722/36 5525/723/36 +f 5525/723/36 5526/724/36 5523/721/36 +f 5527/725/888 5528/726/888 5529/727/889 +f 5529/727/889 5530/728/889 5527/725/888 +f 5526/729/890 5525/730/890 5528/726/888 +f 5528/726/888 5527/725/888 5526/729/890 +f 5531/731/891 5527/732/892 5530/733/893 +f 5530/733/893 5532/734/893 5531/731/891 +f 5523/735/1248 5526/736/1248 5527/732/892 +f 5527/732/892 5531/731/891 5523/735/1248 +f 5533/726/896 5531/725/896 5532/728/897 +f 5532/728/897 5534/727/897 5533/726/896 +f 5524/730/898 5523/729/898 5531/725/896 +f 5531/725/896 5533/726/896 5524/730/898 +f 5528/737/899 5533/738/899 5534/739/900 +f 5534/739/900 5529/740/900 5528/737/899 +f 5525/741/901 5524/742/901 5533/738/899 +f 5533/738/899 5528/737/899 5525/741/901 +f 5535/743/36 5536/744/36 5537/745/36 +f 5537/745/36 5538/746/36 5535/743/36 +f 5539/747/995 5540/748/995 5541/749/903 +f 5541/749/903 5542/750/903 5539/747/995 +f 5538/751/904 5537/752/904 5540/748/995 +f 5540/748/995 5539/747/995 5538/751/904 +f 5543/753/905 5539/754/906 5542/755/907 +f 5542/755/907 5544/756/907 5543/753/905 +f 5535/757/1234 5538/758/1234 5539/754/906 +f 5539/754/906 5543/753/905 5535/757/1234 +f 5545/748/910 5543/747/911 5544/750/912 +f 5544/750/912 5546/749/912 5545/748/910 +f 5536/752/913 5535/751/913 5543/747/911 +f 5543/747/911 5545/748/910 5536/752/913 +f 5540/754/914 5545/759/1235 5546/760/916 +f 5546/760/916 5541/755/1249 5540/754/914 +f 5537/758/917 5536/761/917 5545/759/1235 +f 5545/759/1235 5540/754/914 5537/758/917 +f 5547/762/918 5548/763/919 5549/764/920 +f 5549/764/920 5550/765/920 5547/762/918 +f 5551/766/921 5552/767/921 5548/763/919 +f 5548/763/919 5547/762/918 5551/766/921 +f 5553/768/922 5547/769/923 5550/770/924 +f 5550/770/924 5554/771/924 5553/768/922 +f 5555/772/925 5551/773/925 5547/769/923 +f 5547/769/923 5553/768/922 5555/772/925 +f 5556/763/926 5553/762/927 5554/765/928 +f 5554/765/928 5557/764/928 5556/763/926 +f 5558/767/929 5555/766/929 5553/762/927 +f 5553/762/927 5556/763/926 5558/767/929 +f 5548/774/1237 5556/768/578 5557/771/932 +f 5557/771/932 5549/775/932 5548/774/1237 +f 5552/776/933 5558/777/933 5556/768/578 +f 5556/768/578 5548/774/1237 5552/776/933 +f 5559/778/934 5560/779/935 5561/780/936 +f 5561/780/936 5562/781/936 5559/778/934 +f 5563/782/937 5564/783/937 5560/779/935 +f 5560/779/935 5559/778/934 5563/782/937 +f 5565/784/1238 5559/785/939 5562/786/940 +f 5562/786/940 5566/787/940 5565/784/1238 +f 5567/788/941 5563/789/941 5559/785/939 +f 5559/785/939 5565/784/1238 5567/788/941 +f 5568/790/942 5565/791/943 5566/792/944 +f 5566/792/944 5569/793/944 5568/790/942 +f 5570/794/945 5567/795/945 5565/791/943 +f 5565/791/943 5568/790/942 5570/794/945 +f 5560/785/946 5568/796/947 5569/787/948 +f 5569/787/948 5561/797/948 5560/785/946 +f 5564/789/949 5570/798/949 5568/796/947 +f 5568/796/947 5560/785/946 5564/789/949 +f 5571/799/36 5572/800/36 5573/801/36 +f 5573/801/36 5574/802/36 5571/799/36 +f 5575/803/950 5576/804/951 5577/805/952 +f 5577/805/952 5578/806/952 5575/803/950 +f 5574/807/953 5573/808/953 5576/804/951 +f 5576/804/951 5575/803/950 5574/807/953 +f 5579/809/954 5575/810/954 5578/811/1250 +f 5578/811/1250 5580/812/1250 5579/809/954 +f 5571/813/1240 5574/814/1240 5575/810/954 +f 5575/810/954 5579/809/954 5571/813/1240 +f 5581/804/957 5579/803/958 5580/806/959 +f 5580/806/959 5582/805/959 5581/804/957 +f 5572/808/960 5571/807/960 5579/803/958 +f 5579/803/958 5581/804/957 5572/808/960 +f 5576/815/1241 5581/809/1241 5582/816/962 +f 5582/816/962 5577/817/962 5576/815/1241 +f 5573/818/1242 5572/819/963 5581/809/1241 +f 5581/809/1241 5576/815/1241 5573/818/1242 +f 5583/820/36 5584/821/36 5585/822/36 +f 5585/822/36 5586/823/36 5583/820/36 +f 5587/824/964 5588/825/965 5589/826/966 +f 5589/826/966 5590/827/966 5587/824/964 +f 5586/828/992 5585/829/967 5588/825/965 +f 5588/825/965 5587/824/964 5586/828/992 +f 5591/737/968 5587/738/969 5590/734/970 +f 5590/734/970 5592/740/970 5591/737/968 +f 5583/741/1243 5586/735/1243 5587/738/969 +f 5587/738/969 5591/737/968 5583/741/1243 +f 5593/825/972 5591/824/972 5592/827/973 +f 5592/827/973 5594/826/973 5593/825/972 +f 5584/829/974 5583/828/974 5591/824/972 +f 5591/824/972 5593/825/972 5584/829/974 +f 5588/731/1251 5593/737/976 5594/733/1244 +f 5594/733/1244 5589/830/977 5588/731/1251 +f 5585/831/1245 5584/736/1245 5593/737/976 +f 5593/737/976 5588/731/1251 5585/831/1245 +f 5595/832/36 5596/833/36 5597/834/36 +f 5597/834/36 5598/835/36 5595/832/36 +f 5599/836/993 5600/837/993 5601/838/980 +f 5601/838/980 5602/839/980 5599/836/993 +f 5598/840/981 5597/841/981 5600/837/993 +f 5600/837/993 5599/836/993 5598/840/981 +f 5603/737/982 5599/731/982 5602/734/983 +f 5602/734/983 5604/733/983 5603/737/982 +f 5595/741/985 5598/735/985 5599/731/982 +f 5599/731/982 5603/737/982 5595/741/985 +f 5605/837/986 5603/836/986 5604/839/987 +f 5604/839/987 5606/838/987 5605/837/986 +f 5596/841/988 5595/840/988 5603/836/986 +f 5603/836/986 5605/837/986 5596/841/988 +f 5600/842/989 5605/732/989 5606/843/990 +f 5606/843/990 5601/734/990 5600/842/989 +f 5597/831/1223 5596/736/1223 5605/732/989 +f 5605/732/989 5600/842/989 5597/831/1223 +f 5607/721/226 5608/722/226 5609/723/226 +f 5609/723/226 5610/724/226 5607/721/226 +f 5611/725/888 5612/726/888 5613/727/889 +f 5613/727/889 5614/728/889 5611/725/888 +f 5610/729/890 5609/730/890 5612/726/888 +f 5612/726/888 5611/725/888 5610/729/890 +f 5615/731/891 5611/732/892 5614/733/893 +f 5614/733/893 5616/734/893 5615/731/891 +f 5607/735/1248 5610/736/1248 5611/732/892 +f 5611/732/892 5615/731/891 5607/735/1248 +f 5617/726/896 5615/725/896 5616/728/897 +f 5616/728/897 5618/727/897 5617/726/896 +f 5608/730/898 5607/729/898 5615/725/896 +f 5615/725/896 5617/726/896 5608/730/898 +f 5612/737/899 5617/738/899 5618/739/900 +f 5618/739/900 5613/740/900 5612/737/899 +f 5609/741/901 5608/742/901 5617/738/899 +f 5617/738/899 5612/737/899 5609/741/901 +f 5619/743/36 5620/744/36 5621/745/36 +f 5621/745/36 5622/746/36 5619/743/36 +f 5623/747/995 5624/748/995 5625/749/903 +f 5625/749/903 5626/750/903 5623/747/995 +f 5622/751/904 5621/752/904 5624/748/995 +f 5624/748/995 5623/747/995 5622/751/904 +f 5627/753/905 5623/754/906 5626/755/907 +f 5626/755/907 5628/756/907 5627/753/905 +f 5619/757/1234 5622/758/1234 5623/754/906 +f 5623/754/906 5627/753/905 5619/757/1234 +f 5629/748/910 5627/747/911 5628/750/912 +f 5628/750/912 5630/749/912 5629/748/910 +f 5620/752/913 5619/751/913 5627/747/911 +f 5627/747/911 5629/748/910 5620/752/913 +f 5624/754/914 5629/759/1235 5630/760/916 +f 5630/760/916 5625/755/1249 5624/754/914 +f 5621/758/917 5620/761/917 5629/759/1235 +f 5629/759/1235 5624/754/914 5621/758/917 +f 5631/762/918 5632/763/919 5633/764/920 +f 5633/764/920 5634/765/920 5631/762/918 +f 5635/766/921 5636/767/921 5632/763/919 +f 5632/763/919 5631/762/918 5635/766/921 +f 5637/768/922 5631/769/923 5634/770/924 +f 5634/770/924 5638/771/924 5637/768/922 +f 5639/772/925 5635/773/925 5631/769/923 +f 5631/769/923 5637/768/922 5639/772/925 +f 5640/763/926 5637/762/927 5638/765/928 +f 5638/765/928 5641/764/928 5640/763/926 +f 5642/767/929 5639/766/929 5637/762/927 +f 5637/762/927 5640/763/926 5642/767/929 +f 5632/774/1237 5640/768/578 5641/771/932 +f 5641/771/932 5633/775/932 5632/774/1237 +f 5636/776/933 5642/777/933 5640/768/578 +f 5640/768/578 5632/774/1237 5636/776/933 +f 5643/778/934 5644/779/935 5645/780/936 +f 5645/780/936 5646/781/936 5643/778/934 +f 5647/782/937 5648/783/937 5644/779/935 +f 5644/779/935 5643/778/934 5647/782/937 +f 5649/784/1238 5643/785/939 5646/786/940 +f 5646/786/940 5650/787/940 5649/784/1238 +f 5651/788/941 5647/789/941 5643/785/939 +f 5643/785/939 5649/784/1238 5651/788/941 +f 5652/790/942 5649/791/943 5650/792/944 +f 5650/792/944 5653/793/944 5652/790/942 +f 5654/794/945 5651/795/945 5649/791/943 +f 5649/791/943 5652/790/942 5654/794/945 +f 5644/785/946 5652/796/947 5653/787/948 +f 5653/787/948 5645/797/948 5644/785/946 +f 5648/789/949 5654/798/949 5652/796/947 +f 5652/796/947 5644/785/946 5648/789/949 +f 5655/799/37 5656/800/37 5657/801/37 +f 5657/801/37 5658/802/37 5655/799/37 +f 5659/803/996 5660/804/997 5661/805/952 +f 5661/805/952 5662/806/952 5659/803/996 +f 5658/807/953 5657/808/953 5660/804/997 +f 5660/804/997 5659/803/996 5658/807/953 +f 5663/809/954 5659/810/954 5662/811/1250 +f 5662/811/1250 5664/812/1250 5663/809/954 +f 5655/813/1240 5658/814/1240 5659/810/954 +f 5659/810/954 5663/809/954 5655/813/1240 +f 5665/804/957 5663/803/958 5664/806/959 +f 5664/806/959 5666/805/959 5665/804/957 +f 5656/808/960 5655/807/960 5663/803/958 +f 5663/803/958 5665/804/957 5656/808/960 +f 5660/815/1241 5665/809/1241 5666/816/962 +f 5666/816/962 5661/817/962 5660/815/1241 +f 5657/818/1242 5656/819/963 5665/809/1241 +f 5665/809/1241 5660/815/1241 5657/818/1242 +f 5667/820/36 5668/821/36 5669/822/36 +f 5669/822/36 5670/823/36 5667/820/36 +f 5671/824/964 5672/825/965 5673/826/966 +f 5673/826/966 5674/827/966 5671/824/964 +f 5670/828/992 5669/829/967 5672/825/965 +f 5672/825/965 5671/824/964 5670/828/992 +f 5675/737/968 5671/738/969 5674/734/970 +f 5674/734/970 5676/740/970 5675/737/968 +f 5667/741/1243 5670/735/1243 5671/738/969 +f 5671/738/969 5675/737/968 5667/741/1243 +f 5677/825/1002 5675/824/972 5676/827/973 +f 5676/827/973 5678/826/973 5677/825/1002 +f 5668/829/974 5667/828/974 5675/824/972 +f 5675/824/972 5677/825/1002 5668/829/974 +f 5672/731/1251 5677/737/976 5678/733/1244 +f 5678/733/1244 5673/830/977 5672/731/1251 +f 5669/831/1245 5668/736/1245 5677/737/976 +f 5677/737/976 5672/731/1251 5669/831/1245 +f 5679/832/37 5680/833/37 5681/834/37 +f 5681/834/37 5682/835/37 5679/832/37 +f 5683/836/993 5684/837/993 5685/838/980 +f 5685/838/980 5686/839/980 5683/836/993 +f 5682/840/981 5681/841/981 5684/837/993 +f 5684/837/993 5683/836/993 5682/840/981 +f 5687/737/982 5683/731/982 5686/734/983 +f 5686/734/983 5688/733/983 5687/737/982 +f 5679/741/985 5682/735/985 5683/731/982 +f 5683/731/982 5687/737/982 5679/741/985 +f 5689/837/986 5687/836/986 5688/839/987 +f 5688/839/987 5690/838/987 5689/837/986 +f 5680/841/988 5679/840/988 5687/836/986 +f 5687/836/986 5689/837/986 5680/841/988 +f 5684/842/989 5689/732/989 5690/843/990 +f 5690/843/990 5685/734/990 5684/842/989 +f 5681/831/1223 5680/736/1223 5689/732/989 +f 5689/732/989 5684/842/989 5681/831/1223 +f 5691/721/36 5692/722/36 5693/723/36 +f 5693/723/36 5694/724/36 5691/721/36 +f 5695/725/1003 5696/726/1004 5697/727/1112 +f 5697/727/1112 5698/728/1112 5695/725/1003 +f 5694/729/1006 5693/730/1006 5696/726/1004 +f 5696/726/1004 5695/725/1003 5694/729/1006 +f 5699/731/1007 5695/732/1008 5698/733/1009 +f 5698/733/1009 5700/734/1009 5699/731/1007 +f 5691/735/1010 5694/736/1010 5695/732/1008 +f 5695/732/1008 5699/731/1007 5691/735/1010 +f 5701/726/1011 5699/725/1011 5700/728/1012 +f 5700/728/1012 5702/727/1012 5701/726/1011 +f 5692/730/1013 5691/729/1013 5699/725/1011 +f 5699/725/1011 5701/726/1011 5692/730/1013 +f 5696/737/1014 5701/738/1014 5702/739/1015 +f 5702/739/1015 5697/740/1015 5696/737/1014 +f 5693/741/1016 5692/742/1016 5701/738/1014 +f 5701/738/1014 5696/737/1014 5693/741/1016 +f 5703/743/36 5704/744/36 5705/745/36 +f 5705/745/36 5706/746/36 5703/743/36 +f 5707/747/1017 5708/748/1017 5709/749/1018 +f 5709/749/1018 5710/750/1018 5707/747/1017 +f 5706/751/1019 5705/752/1019 5708/748/1017 +f 5708/748/1017 5707/747/1017 5706/751/1019 +f 5711/753/1020 5707/754/1021 5710/755/1022 +f 5710/755/1022 5712/756/1022 5711/753/1020 +f 5703/757/1023 5706/758/1023 5707/754/1021 +f 5707/754/1021 5711/753/1020 5703/757/1023 +f 5713/748/1024 5711/747/1025 5712/750/1097 +f 5712/750/1097 5714/749/1097 5713/748/1024 +f 5704/752/1028 5703/751/1028 5711/747/1025 +f 5711/747/1025 5713/748/1024 5704/752/1028 +f 5708/754/1029 5713/759/1030 5714/760/1031 +f 5714/760/1031 5709/755/1031 5708/754/1029 +f 5705/758/1032 5704/761/1032 5713/759/1030 +f 5713/759/1030 5708/754/1029 5705/758/1032 +f 5715/762/1033 5716/763/1034 5717/764/1035 +f 5717/764/1035 5718/765/1035 5715/762/1033 +f 5719/766/1036 5720/767/1036 5716/763/1034 +f 5716/763/1034 5715/762/1033 5719/766/1036 +f 5721/768/1037 5715/769/1038 5718/770/1039 +f 5718/770/1039 5722/771/1039 5721/768/1037 +f 5723/772/1040 5719/773/1040 5715/769/1038 +f 5715/769/1038 5721/768/1037 5723/772/1040 +f 5724/763/1041 5721/762/1042 5722/765/1043 +f 5722/765/1043 5725/764/1043 5724/763/1041 +f 5726/767/1044 5723/766/1044 5721/762/1042 +f 5721/762/1042 5724/763/1041 5726/767/1044 +f 5716/774/1045 5724/768/1046 5725/771/1047 +f 5725/771/1047 5717/775/1047 5716/774/1045 +f 5720/776/1048 5726/777/1048 5724/768/1046 +f 5724/768/1046 5716/774/1045 5720/776/1048 +f 5727/778/1114 5728/779/1050 5729/780/1051 +f 5729/780/1051 5730/781/1051 5727/778/1114 +f 5731/782/1052 5732/783/1052 5728/779/1050 +f 5728/779/1050 5727/778/1114 5731/782/1052 +f 5733/784/1053 5727/785/1099 5730/786/1055 +f 5730/786/1055 5734/787/1055 5733/784/1053 +f 5735/788/1056 5731/789/1056 5727/785/1099 +f 5727/785/1099 5733/784/1053 5735/788/1056 +f 5736/790/1057 5733/791/1115 5734/792/1059 +f 5734/792/1059 5737/793/1059 5736/790/1057 +f 5738/794/1060 5735/795/1060 5733/791/1115 +f 5733/791/1115 5736/790/1057 5738/794/1060 +f 5728/785/1061 5736/796/1062 5737/787/1063 +f 5737/787/1063 5729/797/1063 5728/785/1061 +f 5732/789/1064 5738/798/1064 5736/796/1062 +f 5736/796/1062 5728/785/1061 5732/789/1064 +f 5739/799/36 5740/800/36 5741/801/36 +f 5741/801/36 5742/802/36 5739/799/36 +f 5743/803/1252 5744/804/1253 5745/805/869 +f 5745/805/869 5746/806/869 5743/803/1252 +f 5742/807/870 5741/808/870 5744/804/1253 +f 5744/804/1253 5743/803/1252 5742/807/870 +f 5747/809/1065 5743/810/1065 5746/811/1254 +f 5746/811/1254 5748/812/1254 5747/809/1065 +f 5739/813/1067 5742/814/1067 5743/810/1065 +f 5743/810/1065 5747/809/1065 5739/813/1067 +f 5749/804/809 5747/803/808 5748/806/1101 +f 5748/806/1101 5750/805/1101 5749/804/809 +f 5740/808/1102 5739/807/1102 5747/803/808 +f 5747/803/808 5749/804/809 5740/808/1102 +f 5744/815/1068 5749/809/1068 5750/816/1069 +f 5750/816/1069 5745/817/1069 5744/815/1068 +f 5741/818/1255 5740/819/1071 5749/809/1068 +f 5749/809/1068 5744/815/1068 5741/818/1255 +f 5751/820/36 5752/821/36 5753/822/36 +f 5753/822/36 5754/823/36 5751/820/36 +f 5755/824/1103 5756/825/1104 5757/826/1074 +f 5757/826/1074 5758/827/1074 5755/824/1103 +f 5754/828/1105 5753/829/1105 5756/825/1104 +f 5756/825/1104 5755/824/1103 5754/828/1105 +f 5759/737/1076 5755/738/1077 5758/734/1078 +f 5758/734/1078 5760/740/1078 5759/737/1076 +f 5751/741/1079 5754/735/1079 5755/738/1077 +f 5755/738/1077 5759/737/1076 5751/741/1079 +f 5761/825/1106 5759/824/1080 5760/827/1081 +f 5760/827/1081 5762/826/1081 5761/825/1106 +f 5752/829/1082 5751/828/1082 5759/824/1080 +f 5759/824/1080 5761/825/1106 5752/829/1082 +f 5756/731/1083 5761/737/1084 5762/733/1085 +f 5762/733/1085 5757/830/1085 5756/731/1083 +f 5753/831/1086 5752/736/1086 5761/737/1084 +f 5761/737/1084 5756/731/1083 5753/831/1086 +f 5763/832/36 5764/833/36 5765/834/36 +f 5765/834/36 5766/835/36 5763/832/36 +f 5767/836/1087 5768/837/1087 5769/838/1256 +f 5769/838/1256 5770/839/1256 5767/836/1087 +f 5766/840/1116 5765/841/1116 5768/837/1087 +f 5768/837/1087 5767/836/1087 5766/840/1116 +f 5771/737/848 5767/731/848 5770/734/849 +f 5770/734/849 5772/733/849 5771/737/848 +f 5763/741/850 5766/735/850 5767/731/848 +f 5767/731/848 5771/737/848 5763/741/850 +f 5773/837/1090 5771/836/1090 5772/839/1091 +f 5772/839/1091 5774/838/1091 5773/837/1090 +f 5764/841/1092 5763/840/1092 5771/836/1090 +f 5771/836/1090 5773/837/1090 5764/841/1092 +f 5768/842/842 5773/732/842 5774/843/843 +f 5774/843/843 5769/734/843 5768/842/842 +f 5765/831/844 5764/736/1094 5773/732/842 +f 5773/732/842 5768/842/842 5765/831/844 +f 5775/721/37 5776/722/37 5777/723/37 +f 5777/723/37 5778/724/37 5775/721/37 +f 5779/725/1003 5780/726/1004 5781/727/1112 +f 5781/727/1112 5782/728/1112 5779/725/1003 +f 5778/729/1006 5777/730/1006 5780/726/1004 +f 5780/726/1004 5779/725/1003 5778/729/1006 +f 5783/731/1007 5779/732/1008 5782/733/1009 +f 5782/733/1009 5784/734/1009 5783/731/1007 +f 5775/735/1010 5778/736/1010 5779/732/1008 +f 5779/732/1008 5783/731/1007 5775/735/1010 +f 5785/726/1011 5783/725/1011 5784/728/1012 +f 5784/728/1012 5786/727/1012 5785/726/1011 +f 5776/730/1013 5775/729/1013 5783/725/1011 +f 5783/725/1011 5785/726/1011 5776/730/1013 +f 5780/737/1014 5785/738/1014 5786/739/1015 +f 5786/739/1015 5781/740/1015 5780/737/1014 +f 5777/741/1016 5776/742/1016 5785/738/1014 +f 5785/738/1014 5780/737/1014 5777/741/1016 +f 5787/743/36 5788/744/36 5789/745/36 +f 5789/745/36 5790/746/36 5787/743/36 +f 5791/747/1017 5792/748/1017 5793/749/1018 +f 5793/749/1018 5794/750/1018 5791/747/1017 +f 5790/751/1019 5789/752/1019 5792/748/1017 +f 5792/748/1017 5791/747/1017 5790/751/1019 +f 5795/753/1020 5791/754/1021 5794/755/1022 +f 5794/755/1022 5796/756/1022 5795/753/1020 +f 5787/757/1023 5790/758/1023 5791/754/1021 +f 5791/754/1021 5795/753/1020 5787/757/1023 +f 5797/748/1024 5795/747/1025 5796/750/1097 +f 5796/750/1097 5798/749/1097 5797/748/1024 +f 5788/752/1028 5787/751/1028 5795/747/1025 +f 5795/747/1025 5797/748/1024 5788/752/1028 +f 5792/754/1029 5797/759/1030 5798/760/1031 +f 5798/760/1031 5793/755/1031 5792/754/1029 +f 5789/758/1032 5788/761/1032 5797/759/1030 +f 5797/759/1030 5792/754/1029 5789/758/1032 +f 5799/762/1033 5800/763/1034 5801/764/1035 +f 5801/764/1035 5802/765/1035 5799/762/1033 +f 5803/766/1036 5804/767/1036 5800/763/1034 +f 5800/763/1034 5799/762/1033 5803/766/1036 +f 5805/768/1098 5799/769/1038 5802/770/1039 +f 5802/770/1039 5806/771/1039 5805/768/1098 +f 5807/772/1040 5803/773/1040 5799/769/1038 +f 5799/769/1038 5805/768/1098 5807/772/1040 +f 5808/763/1041 5805/762/1042 5806/765/1043 +f 5806/765/1043 5809/764/1043 5808/763/1041 +f 5810/767/1044 5807/766/1044 5805/762/1042 +f 5805/762/1042 5808/763/1041 5810/767/1044 +f 5800/774/1045 5808/768/1046 5809/771/1047 +f 5809/771/1047 5801/775/1047 5800/774/1045 +f 5804/776/1048 5810/777/1048 5808/768/1046 +f 5808/768/1046 5800/774/1045 5804/776/1048 +f 5811/778/1049 5812/779/1050 5813/780/1051 +f 5813/780/1051 5814/781/1051 5811/778/1049 +f 5815/782/1052 5816/783/1052 5812/779/1050 +f 5812/779/1050 5811/778/1049 5815/782/1052 +f 5817/784/1053 5811/785/1099 5814/786/1055 +f 5814/786/1055 5818/787/1055 5817/784/1053 +f 5819/788/1056 5815/789/1056 5811/785/1099 +f 5811/785/1099 5817/784/1053 5819/788/1056 +f 5820/790/1057 5817/791/1115 5818/792/1059 +f 5818/792/1059 5821/793/1059 5820/790/1057 +f 5822/794/1060 5819/795/1060 5817/791/1115 +f 5817/791/1115 5820/790/1057 5822/794/1060 +f 5812/785/1061 5820/796/1062 5821/787/1063 +f 5821/787/1063 5813/797/1063 5812/785/1061 +f 5816/789/1064 5822/798/1064 5820/796/1062 +f 5820/796/1062 5812/785/1061 5816/789/1064 +f 5823/799/36 5824/800/36 5825/801/36 +f 5825/801/36 5826/802/36 5823/799/36 +f 5827/803/1252 5828/804/1253 5829/805/869 +f 5829/805/869 5830/806/869 5827/803/1252 +f 5826/807/870 5825/808/870 5828/804/1253 +f 5828/804/1253 5827/803/1252 5826/807/870 +f 5831/809/1065 5827/810/1065 5830/811/1066 +f 5830/811/1066 5832/812/1066 5831/809/1065 +f 5823/813/1067 5826/814/1067 5827/810/1065 +f 5827/810/1065 5831/809/1065 5823/813/1067 +f 5833/804/809 5831/803/808 5832/806/1101 +f 5832/806/1101 5834/805/1101 5833/804/809 +f 5824/808/1102 5823/807/1102 5831/803/808 +f 5831/803/808 5833/804/809 5824/808/1102 +f 5828/815/1068 5833/809/1068 5834/816/1069 +f 5834/816/1069 5829/817/1069 5828/815/1068 +f 5825/818/1071 5824/819/1071 5833/809/1068 +f 5833/809/1068 5828/815/1068 5825/818/1071 +f 5835/820/36 5836/821/36 5837/822/36 +f 5837/822/36 5838/823/36 5835/820/36 +f 5839/824/1103 5840/825/1104 5841/826/1074 +f 5841/826/1074 5842/827/1074 5839/824/1103 +f 5838/828/1105 5837/829/1105 5840/825/1104 +f 5840/825/1104 5839/824/1103 5838/828/1105 +f 5843/737/1076 5839/738/1077 5842/734/1078 +f 5842/734/1078 5844/740/1078 5843/737/1076 +f 5835/741/1079 5838/735/1079 5839/738/1077 +f 5839/738/1077 5843/737/1076 5835/741/1079 +f 5845/825/1106 5843/824/1080 5844/827/1081 +f 5844/827/1081 5846/826/1081 5845/825/1106 +f 5836/829/1082 5835/828/1082 5843/824/1080 +f 5843/824/1080 5845/825/1106 5836/829/1082 +f 5840/731/1083 5845/737/1084 5846/733/1085 +f 5846/733/1085 5841/830/1085 5840/731/1083 +f 5837/831/1086 5836/736/1086 5845/737/1084 +f 5845/737/1084 5840/731/1083 5837/831/1086 +f 5847/832/36 5848/833/36 5849/834/36 +f 5849/834/36 5850/835/36 5847/832/36 +f 5851/836/1087 5852/837/1087 5853/838/1256 +f 5853/838/1256 5854/839/1256 5851/836/1087 +f 5850/840/1110 5849/841/1110 5852/837/1087 +f 5852/837/1087 5851/836/1087 5850/840/1110 +f 5855/737/848 5851/731/848 5854/734/849 +f 5854/734/849 5856/733/849 5855/737/848 +f 5847/741/850 5850/735/850 5851/731/848 +f 5851/731/848 5855/737/848 5847/741/850 +f 5857/837/1090 5855/836/1090 5856/839/1091 +f 5856/839/1091 5858/838/1091 5857/837/1090 +f 5848/841/1092 5847/840/1092 5855/836/1090 +f 5855/836/1090 5857/837/1090 5848/841/1092 +f 5852/842/842 5857/732/842 5858/843/843 +f 5858/843/843 5853/734/843 5852/842/842 +f 5849/831/1094 5848/736/1094 5857/732/842 +f 5857/732/842 5852/842/842 5849/831/1094 +f 5859/721/36 5860/722/36 5861/723/36 +f 5861/723/36 5862/724/36 5859/721/36 +f 5863/725/1003 5864/726/1004 5865/727/1112 +f 5865/727/1112 5866/728/1112 5863/725/1003 +f 5862/729/1006 5861/730/1006 5864/726/1004 +f 5864/726/1004 5863/725/1003 5862/729/1006 +f 5867/731/1007 5863/732/1008 5866/733/1009 +f 5866/733/1009 5868/734/1009 5867/731/1007 +f 5859/735/1010 5862/736/1010 5863/732/1008 +f 5863/732/1008 5867/731/1007 5859/735/1010 +f 5869/726/1011 5867/725/1011 5868/728/1012 +f 5868/728/1012 5870/727/1012 5869/726/1011 +f 5860/730/1013 5859/729/1013 5867/725/1011 +f 5867/725/1011 5869/726/1011 5860/730/1013 +f 5864/737/1014 5869/738/1014 5870/739/1015 +f 5870/739/1015 5865/740/1015 5864/737/1014 +f 5861/741/1016 5860/742/1016 5869/738/1014 +f 5869/738/1014 5864/737/1014 5861/741/1016 +f 5871/743/36 5872/744/36 5873/745/36 +f 5873/745/36 5874/746/36 5871/743/36 +f 5875/747/1017 5876/748/1017 5877/749/1018 +f 5877/749/1018 5878/750/1018 5875/747/1017 +f 5874/751/1019 5873/752/1019 5876/748/1017 +f 5876/748/1017 5875/747/1017 5874/751/1019 +f 5879/753/1020 5875/754/1021 5878/755/1022 +f 5878/755/1022 5880/756/1022 5879/753/1020 +f 5871/757/1023 5874/758/1023 5875/754/1021 +f 5875/754/1021 5879/753/1020 5871/757/1023 +f 5881/748/1024 5879/747/1025 5880/750/1097 +f 5880/750/1097 5882/749/1097 5881/748/1024 +f 5872/752/1028 5871/751/1028 5879/747/1025 +f 5879/747/1025 5881/748/1024 5872/752/1028 +f 5876/754/1029 5881/759/1030 5882/760/1031 +f 5882/760/1031 5877/755/1031 5876/754/1029 +f 5873/758/1032 5872/761/1032 5881/759/1030 +f 5881/759/1030 5876/754/1029 5873/758/1032 +f 5883/762/1033 5884/763/1034 5885/764/1035 +f 5885/764/1035 5886/765/1035 5883/762/1033 +f 5887/766/1036 5888/767/1036 5884/763/1034 +f 5884/763/1034 5883/762/1033 5887/766/1036 +f 5889/768/1037 5883/769/1038 5886/770/1039 +f 5886/770/1039 5890/771/1039 5889/768/1037 +f 5891/772/1040 5887/773/1040 5883/769/1038 +f 5883/769/1038 5889/768/1037 5891/772/1040 +f 5892/763/1041 5889/762/1042 5890/765/1043 +f 5890/765/1043 5893/764/1043 5892/763/1041 +f 5894/767/1044 5891/766/1044 5889/762/1042 +f 5889/762/1042 5892/763/1041 5894/767/1044 +f 5884/774/1045 5892/768/1046 5893/771/1047 +f 5893/771/1047 5885/775/1047 5884/774/1045 +f 5888/776/1048 5894/777/1048 5892/768/1046 +f 5892/768/1046 5884/774/1045 5888/776/1048 +f 5895/778/1049 5896/779/1050 5897/780/1051 +f 5897/780/1051 5898/781/1051 5895/778/1049 +f 5899/782/1052 5900/783/1052 5896/779/1050 +f 5896/779/1050 5895/778/1049 5899/782/1052 +f 5901/784/1053 5895/785/1099 5898/786/1055 +f 5898/786/1055 5902/787/1055 5901/784/1053 +f 5903/788/1056 5899/789/1056 5895/785/1099 +f 5895/785/1099 5901/784/1053 5903/788/1056 +f 5904/790/1057 5901/791/1115 5902/792/1059 +f 5902/792/1059 5905/793/1059 5904/790/1057 +f 5906/794/1060 5903/795/1060 5901/791/1115 +f 5901/791/1115 5904/790/1057 5906/794/1060 +f 5896/785/1061 5904/796/1062 5905/787/1063 +f 5905/787/1063 5897/797/1063 5896/785/1061 +f 5900/789/1064 5906/798/1064 5904/796/1062 +f 5904/796/1062 5896/785/1061 5900/789/1064 +f 5907/799/36 5908/800/36 5909/801/36 +f 5909/801/36 5910/802/36 5907/799/36 +f 5911/803/1252 5912/804/1253 5913/805/869 +f 5913/805/869 5914/806/869 5911/803/1252 +f 5910/807/870 5909/808/870 5912/804/1253 +f 5912/804/1253 5911/803/1252 5910/807/870 +f 5915/809/1065 5911/810/1065 5914/811/1066 +f 5914/811/1066 5916/812/1066 5915/809/1065 +f 5907/813/1067 5910/814/1067 5911/810/1065 +f 5911/810/1065 5915/809/1065 5907/813/1067 +f 5917/804/809 5915/803/808 5916/806/1101 +f 5916/806/1101 5918/805/1101 5917/804/809 +f 5908/808/1102 5907/807/1102 5915/803/808 +f 5915/803/808 5917/804/809 5908/808/1102 +f 5912/815/1068 5917/809/1068 5918/816/1069 +f 5918/816/1069 5913/817/1069 5912/815/1068 +f 5909/818/1070 5908/819/1071 5917/809/1068 +f 5917/809/1068 5912/815/1068 5909/818/1070 +f 5919/820/36 5920/821/36 5921/822/36 +f 5921/822/36 5922/823/36 5919/820/36 +f 5923/824/1103 5924/825/1104 5925/826/1074 +f 5925/826/1074 5926/827/1074 5923/824/1103 +f 5922/828/1105 5921/829/1105 5924/825/1104 +f 5924/825/1104 5923/824/1103 5922/828/1105 +f 5927/737/1076 5923/738/1077 5926/734/1078 +f 5926/734/1078 5928/740/1078 5927/737/1076 +f 5919/741/1079 5922/735/1079 5923/738/1077 +f 5923/738/1077 5927/737/1076 5919/741/1079 +f 5929/825/1106 5927/824/1080 5928/827/1081 +f 5928/827/1081 5930/826/1081 5929/825/1106 +f 5920/829/1082 5919/828/1082 5927/824/1080 +f 5927/824/1080 5929/825/1106 5920/829/1082 +f 5924/731/1083 5929/737/1084 5930/733/1085 +f 5930/733/1085 5925/830/1085 5924/731/1083 +f 5921/831/1086 5920/736/1086 5929/737/1084 +f 5929/737/1084 5924/731/1083 5921/831/1086 +f 5931/832/36 5932/833/36 5933/834/36 +f 5933/834/36 5934/835/36 5931/832/36 +f 5935/836/1087 5936/837/1087 5937/838/1256 +f 5937/838/1256 5938/839/1256 5935/836/1087 +f 5934/840/1110 5933/841/1110 5936/837/1087 +f 5936/837/1087 5935/836/1087 5934/840/1110 +f 5939/737/848 5935/731/848 5938/734/849 +f 5938/734/849 5940/733/849 5939/737/848 +f 5931/741/850 5934/735/850 5935/731/848 +f 5935/731/848 5939/737/848 5931/741/850 +f 5941/837/1090 5939/836/1090 5940/839/1091 +f 5940/839/1091 5942/838/1091 5941/837/1090 +f 5932/841/1092 5931/840/1092 5939/836/1090 +f 5939/836/1090 5941/837/1090 5932/841/1092 +f 5936/842/842 5941/732/842 5942/843/843 +f 5942/843/843 5937/734/843 5936/842/842 +f 5933/831/844 5932/736/1094 5941/732/842 +f 5941/732/842 5936/842/842 5933/831/844 +f 5943/844/1257 5944/845/1257 5945/846/1257 +f 5946/847/1258 5947/848/1258 5948/849/1259 +f 5948/849/1259 5949/850/1260 5946/847/1258 +f 5949/851/1260 5948/852/1259 5950/853/1261 +f 5950/853/1261 5951/854/1261 5949/851/1260 +f 5951/854/1261 5950/853/1261 5952/855/1262 +f 5952/855/1262 5953/856/1262 5951/854/1261 +f 5953/856/1262 5952/855/1262 5944/857/1263 +f 5944/857/1263 5954/858/1263 5953/856/1262 +f 5954/858/1263 5944/857/1263 5943/859/1264 +f 5943/859/1264 5955/860/1264 5954/858/1263 +f 5955/860/1264 5943/859/1264 5956/861/1265 +f 5956/861/1265 5957/862/1265 5955/860/1264 +f 5957/862/1265 5956/861/1265 5958/863/1266 +f 5958/863/1266 5959/864/1266 5957/862/1265 +f 5959/864/1266 5958/863/1266 5960/865/1267 +f 5960/865/1267 5961/866/1267 5959/864/1266 +f 5961/866/1267 5960/865/1267 5962/867/1268 +f 5962/867/1268 5963/868/1269 5961/866/1267 +f 5963/868/1269 5962/867/1268 5947/848/1258 +f 5947/848/1258 5946/847/1258 5963/868/1269 +f 5963/869/1270 5946/870/1270 5964/846/1271 +f 5949/871/1270 5951/872/1271 5964/846/1271 +f 5955/844/1271 5957/873/1271 5964/846/1271 +f 5964/846/1271 5961/874/1270 5963/869/1270 +f 5953/875/1271 5954/845/1271 5964/846/1271 +f 5964/846/1271 5959/876/1271 5961/874/1270 +f 5951/872/1271 5953/875/1271 5964/846/1271 +f 5964/846/1271 5957/873/1271 5959/876/1271 +f 5946/870/1270 5949/871/1270 5964/846/1271 +f 5964/846/1271 5954/845/1271 5955/844/1271 +f 5945/846/1257 5962/869/1272 5960/874/1272 +f 5948/871/1257 5947/870/1257 5945/846/1257 +f 5945/846/1257 5947/870/1257 5962/869/1272 +f 5960/874/1272 5958/876/1272 5945/846/1257 +f 5945/846/1257 5944/845/1257 5952/875/1257 +f 5958/876/1272 5956/873/1272 5945/846/1257 +f 5945/846/1257 5952/875/1257 5950/872/1257 +f 5956/873/1272 5943/844/1257 5945/846/1257 +f 5945/846/1257 5950/872/1257 5948/871/1257 +f 5965/877/1273 5966/878/1273 5967/879/1274 +f 5967/879/1274 5968/880/1274 5965/877/1273 +f 5969/881/1275 5970/882/1275 5966/883/1276 +f 5966/883/1276 5965/884/1276 5969/881/1275 +f 5971/885/1277 5969/886/1277 5965/887/1277 +f 5965/887/1277 5968/888/1277 5971/885/1277 +f 5972/882/1278 5971/881/1278 5968/884/1278 +f 5968/884/1278 5967/883/1278 5972/882/1278 +f 5970/886/1279 5972/885/1279 5967/888/1279 +f 5967/888/1279 5966/887/1280 5970/886/1279 +f 5973/879/1281 5974/878/1281 5975/877/1281 +f 5975/877/1281 5976/880/1281 5973/879/1281 +f 5974/883/1282 5977/882/1283 5978/881/1283 +f 5978/881/1283 5975/884/1282 5974/883/1282 +f 5975/887/1284 5978/886/1284 5979/885/1284 +f 5979/885/1284 5976/888/1284 5975/887/1284 +f 5976/884/1285 5979/881/1285 5980/882/1285 +f 5980/882/1285 5973/883/1285 5976/884/1285 +f 5973/888/1286 5980/885/1287 5977/886/1287 +f 5977/886/1287 5974/887/1286 5973/888/1286 +f 5981/883/1288 5982/882/1289 5983/881/1289 +f 5983/881/1289 5984/884/1288 5981/883/1288 +f 5984/887/1290 5983/886/1290 5985/885/1290 +f 5985/885/1290 5986/888/1290 5984/887/1290 +f 5986/884/1291 5985/881/1292 5987/882/1292 +f 5987/882/1292 5988/883/1291 5986/884/1291 +f 5988/888/1293 5987/885/1293 5982/886/1293 +f 5982/886/1293 5981/887/1293 5988/888/1293 +f 5989/844/1294 5990/845/1294 5991/846/1294 +f 5992/847/1295 5993/848/1295 5994/849/1296 +f 5994/849/1296 5995/850/1296 5992/847/1295 +f 5995/851/1296 5994/852/1296 5996/853/1297 +f 5996/853/1297 5997/854/1297 5995/851/1296 +f 5997/854/1297 5996/853/1297 5998/855/1298 +f 5998/855/1298 5999/856/1298 5997/854/1297 +f 5999/856/1298 5998/855/1298 5990/857/1299 +f 5990/857/1299 6000/858/1299 5999/856/1298 +f 6000/858/1299 5990/857/1299 5989/859/1300 +f 5989/859/1300 6001/860/1300 6000/858/1299 +f 6001/860/1300 5989/859/1300 6002/861/1301 +f 6002/861/1301 6003/862/1301 6001/860/1300 +f 6003/862/1301 6002/861/1301 6004/863/1302 +f 6004/863/1302 6005/864/1302 6003/862/1301 +f 6005/864/1302 6004/863/1302 6006/865/1303 +f 6006/865/1303 6007/866/1303 6005/864/1302 +f 6007/866/1303 6006/865/1303 6008/867/1304 +f 6008/867/1304 6009/868/1304 6007/866/1303 +f 6009/868/1304 6008/867/1304 5993/848/1295 +f 5993/848/1295 5992/847/1295 6009/868/1304 +f 6009/869/1305 5992/870/1305 6010/846/1306 +f 5995/871/1306 5997/872/1306 6010/846/1306 +f 6001/844/1306 6003/873/1306 6010/846/1306 +f 6010/846/1306 6007/874/1305 6009/869/1305 +f 5999/875/1306 6000/845/1306 6010/846/1306 +f 6010/846/1306 6005/876/1305 6007/874/1305 +f 5997/872/1306 5999/875/1306 6010/846/1306 +f 6010/846/1306 6003/873/1306 6005/876/1305 +f 5992/870/1305 5995/871/1306 6010/846/1306 +f 6010/846/1306 6000/845/1306 6001/844/1306 +f 5991/846/1294 6008/869/1307 6006/874/1307 +f 5994/871/1294 5993/870/1294 5991/846/1294 +f 5991/846/1294 5993/870/1294 6008/869/1307 +f 6006/874/1307 6004/876/1307 5991/846/1294 +f 5991/846/1294 5990/845/1294 5998/875/1294 +f 6004/876/1307 6002/873/1307 5991/846/1294 +f 5991/846/1294 5998/875/1294 5996/872/1294 +f 6002/873/1307 5989/844/1294 5991/846/1294 +f 5991/846/1294 5996/872/1294 5994/871/1294 +f 6011/877/1308 6012/878/1308 6013/879/1308 +f 6013/879/1308 6014/880/1308 6011/877/1308 +f 6015/881/1309 6016/882/1309 6012/883/1310 +f 6012/883/1310 6011/884/1310 6015/881/1309 +f 6017/885/1311 6015/886/1311 6011/887/1311 +f 6011/887/1311 6014/888/1311 6017/885/1311 +f 6018/882/1312 6017/881/1312 6014/884/1312 +f 6014/884/1312 6013/883/1312 6018/882/1312 +f 6016/886/1313 6018/885/1313 6013/888/1314 +f 6013/888/1314 6012/887/1314 6016/886/1313 +f 6019/879/1315 6020/878/1315 6021/877/1315 +f 6021/877/1315 6022/880/1315 6019/879/1315 +f 6020/883/1316 6023/882/1316 6024/881/1316 +f 6024/881/1316 6021/884/1316 6020/883/1316 +f 6021/887/1317 6024/886/1317 6025/885/1317 +f 6025/885/1317 6022/888/1317 6021/887/1317 +f 6022/884/1318 6025/881/1319 6026/882/1319 +f 6026/882/1319 6019/883/1318 6022/884/1318 +f 6019/888/1320 6026/885/1321 6023/886/1321 +f 6023/886/1321 6020/887/1320 6019/888/1320 +f 6027/883/1322 6028/882/1322 6029/881/1322 +f 6029/881/1322 6030/884/1322 6027/883/1322 +f 6030/887/1323 6029/886/1323 6031/885/1323 +f 6031/885/1323 6032/888/1323 6030/887/1323 +f 6032/884/1324 6031/881/1325 6033/882/1325 +f 6033/882/1325 6034/883/1324 6032/884/1324 +f 6034/888/1326 6033/885/1326 6028/886/1326 +f 6028/886/1326 6027/887/1326 6034/888/1326 +f 6035/844/1327 6036/845/1327 6037/846/1327 +f 6038/847/1328 6039/848/1328 6040/849/1329 +f 6040/849/1329 6041/850/1330 6038/847/1328 +f 6041/851/1330 6040/852/1329 6042/853/1331 +f 6042/853/1331 6043/854/1331 6041/851/1330 +f 6043/854/1331 6042/853/1331 6044/855/1332 +f 6044/855/1332 6045/856/1333 6043/854/1331 +f 6045/856/1333 6044/855/1332 6036/857/1334 +f 6036/857/1334 6046/858/1335 6045/856/1333 +f 6046/858/1335 6036/857/1334 6035/859/1336 +f 6035/859/1336 6047/860/1336 6046/858/1335 +f 6047/860/1336 6035/859/1336 6048/861/1337 +f 6048/861/1337 6049/862/1337 6047/860/1336 +f 6049/862/1337 6048/861/1337 6050/863/1338 +f 6050/863/1338 6051/864/1338 6049/862/1337 +f 6051/864/1338 6050/863/1338 6052/865/1339 +f 6052/865/1339 6053/866/1339 6051/864/1338 +f 6053/866/1339 6052/865/1339 6054/867/1340 +f 6054/867/1340 6055/868/1340 6053/866/1339 +f 6055/868/1340 6054/867/1340 6039/848/1328 +f 6039/848/1328 6038/847/1328 6055/868/1340 +f 6055/869/1341 6038/870/1341 6056/846/1342 +f 6041/871/1342 6043/872/1342 6056/846/1342 +f 6047/844/1341 6049/873/1341 6056/846/1342 +f 6056/846/1342 6053/874/1342 6055/869/1341 +f 6045/875/1342 6046/845/1342 6056/846/1342 +f 6056/846/1342 6051/876/1341 6053/874/1342 +f 6043/872/1342 6045/875/1342 6056/846/1342 +f 6056/846/1342 6049/873/1341 6051/876/1341 +f 6038/870/1341 6041/871/1342 6056/846/1342 +f 6056/846/1342 6046/845/1342 6047/844/1341 +f 6037/846/1327 6054/869/1343 6052/874/1343 +f 6040/871/1327 6039/870/1327 6037/846/1327 +f 6037/846/1327 6039/870/1327 6054/869/1343 +f 6052/874/1343 6050/876/1343 6037/846/1327 +f 6037/846/1327 6036/845/1327 6044/875/1327 +f 6050/876/1343 6048/873/1343 6037/846/1327 +f 6037/846/1327 6044/875/1327 6042/872/1327 +f 6048/873/1343 6035/844/1327 6037/846/1327 +f 6037/846/1327 6042/872/1327 6040/871/1327 +f 6057/877/1344 6058/878/1344 6059/879/1344 +f 6059/879/1344 6060/880/1344 6057/877/1344 +f 6061/881/1345 6062/882/1345 6058/883/1346 +f 6058/883/1346 6057/884/1346 6061/881/1345 +f 6063/885/1347 6061/886/1347 6057/887/1348 +f 6057/887/1348 6060/888/1348 6063/885/1347 +f 6064/882/1349 6063/881/1349 6060/884/1350 +f 6060/884/1350 6059/883/1350 6064/882/1349 +f 6062/886/1351 6064/885/1351 6059/888/1352 +f 6059/888/1352 6058/887/1352 6062/886/1351 +f 6065/879/1353 6066/878/1353 6067/877/1353 +f 6067/877/1353 6068/880/1353 6065/879/1353 +f 6066/883/1354 6069/882/1354 6070/881/1354 +f 6070/881/1354 6067/884/1354 6066/883/1354 +f 6067/887/1355 6070/886/1355 6071/885/1355 +f 6071/885/1355 6068/888/1355 6067/887/1355 +f 6068/884/1356 6071/881/1357 6072/882/1357 +f 6072/882/1357 6065/883/1356 6068/884/1356 +f 6065/888/1358 6072/885/1358 6069/886/1358 +f 6069/886/1358 6066/887/1358 6065/888/1358 +f 6073/883/1359 6074/882/1360 6075/881/1360 +f 6075/881/1360 6076/884/1359 6073/883/1359 +f 6076/887/1361 6075/886/1362 6077/885/1362 +f 6077/885/1362 6078/888/1361 6076/887/1361 +f 6078/884/1363 6077/881/1364 6079/882/1364 +f 6079/882/1364 6080/883/1363 6078/884/1363 +f 6080/888/1365 6079/885/1365 6074/886/1365 +f 6074/886/1365 6073/887/1365 6080/888/1365 +f 6081/844/1366 6082/845/1367 6083/846/1367 +f 6084/847/1368 6085/848/1368 6086/849/1369 +f 6086/849/1369 6087/850/1369 6084/847/1368 +f 6087/851/1369 6086/852/1369 6088/853/1370 +f 6088/853/1370 6089/854/1370 6087/851/1369 +f 6089/854/1370 6088/853/1370 6090/855/1371 +f 6090/855/1371 6091/856/1372 6089/854/1370 +f 6091/856/1372 6090/855/1371 6082/857/1373 +f 6082/857/1373 6092/858/1374 6091/856/1372 +f 6092/858/1374 6082/857/1373 6081/859/1375 +f 6081/859/1375 6093/860/1375 6092/858/1374 +f 6093/860/1375 6081/859/1375 6094/861/1376 +f 6094/861/1376 6095/862/1376 6093/860/1375 +f 6095/862/1376 6094/861/1376 6096/863/1377 +f 6096/863/1377 6097/864/1377 6095/862/1376 +f 6097/864/1377 6096/863/1377 6098/865/1378 +f 6098/865/1378 6099/866/1379 6097/864/1377 +f 6099/866/1379 6098/865/1378 6100/867/1380 +f 6100/867/1380 6101/868/1380 6099/866/1379 +f 6101/868/1380 6100/867/1380 6085/848/1368 +f 6085/848/1368 6084/847/1368 6101/868/1380 +f 6101/869/1381 6084/870/1381 6102/846/1382 +f 6087/871/1381 6089/872/1382 6102/846/1382 +f 6093/844/1382 6095/873/1382 6102/846/1382 +f 6102/846/1382 6099/874/1381 6101/869/1381 +f 6091/875/1382 6092/845/1382 6102/846/1382 +f 6102/846/1382 6097/876/1381 6099/874/1381 +f 6089/872/1382 6091/875/1382 6102/846/1382 +f 6102/846/1382 6095/873/1382 6097/876/1381 +f 6084/870/1381 6087/871/1381 6102/846/1382 +f 6102/846/1382 6092/845/1382 6093/844/1382 +f 6083/846/1367 6100/869/1366 6098/874/1366 +f 6086/871/1367 6085/870/1367 6083/846/1367 +f 6083/846/1367 6085/870/1367 6100/869/1366 +f 6098/874/1366 6096/876/1366 6083/846/1367 +f 6083/846/1367 6082/845/1367 6090/875/1367 +f 6096/876/1366 6094/873/1366 6083/846/1367 +f 6083/846/1367 6090/875/1367 6088/872/1367 +f 6094/873/1366 6081/844/1366 6083/846/1367 +f 6083/846/1367 6088/872/1367 6086/871/1367 +f 6103/877/1383 6104/878/1383 6105/879/1383 +f 6105/879/1383 6106/880/1383 6103/877/1383 +f 6107/881/1384 6108/882/1384 6104/883/1385 +f 6104/883/1385 6103/884/1385 6107/881/1384 +f 6109/885/1386 6107/886/1386 6103/887/1386 +f 6103/887/1386 6106/888/1386 6109/885/1386 +f 6110/882/1387 6109/881/1387 6106/884/1387 +f 6106/884/1387 6105/883/1387 6110/882/1387 +f 6108/886/1388 6110/885/1388 6105/888/1388 +f 6105/888/1388 6104/887/1388 6108/886/1388 +f 6111/879/1389 6112/878/1389 6113/877/1389 +f 6113/877/1389 6114/880/1389 6111/879/1389 +f 6112/883/1390 6115/882/1390 6116/881/1390 +f 6116/881/1390 6113/884/1390 6112/883/1390 +f 6113/887/1391 6116/886/1391 6117/885/1391 +f 6117/885/1391 6114/888/1391 6113/887/1391 +f 6114/884/1392 6117/881/1392 6118/882/1392 +f 6118/882/1392 6111/883/1392 6114/884/1392 +f 6111/888/1393 6118/885/1393 6115/886/1393 +f 6115/886/1393 6112/887/1393 6111/888/1393 +f 6119/883/1394 6120/882/1394 6121/881/1394 +f 6121/881/1394 6122/884/1394 6119/883/1394 +f 6122/887/1395 6121/886/1395 6123/885/1395 +f 6123/885/1395 6124/888/1395 6122/887/1395 +f 6124/884/1396 6123/881/1397 6125/882/1397 +f 6125/882/1397 6126/883/1396 6124/884/1396 +f 6126/888/1398 6125/885/1398 6120/886/1398 +f 6120/886/1398 6119/887/1398 6126/888/1398 +f 6127/844/1366 6128/845/1367 6129/846/1367 +f 6130/847/1368 6131/848/1368 6132/849/1369 +f 6132/849/1369 6133/850/1369 6130/847/1368 +f 6133/851/1369 6132/852/1369 6134/853/1370 +f 6134/853/1370 6135/854/1370 6133/851/1369 +f 6135/854/1370 6134/853/1370 6136/855/1371 +f 6136/855/1371 6137/856/1371 6135/854/1370 +f 6137/856/1371 6136/855/1371 6128/857/1373 +f 6128/857/1373 6138/858/1374 6137/856/1371 +f 6138/858/1374 6128/857/1373 6127/859/1399 +f 6127/859/1399 6139/860/1399 6138/858/1374 +f 6139/860/1399 6127/859/1399 6140/861/1376 +f 6140/861/1376 6141/862/1376 6139/860/1399 +f 6141/862/1376 6140/861/1376 6142/863/1377 +f 6142/863/1377 6143/864/1377 6141/862/1376 +f 6143/864/1377 6142/863/1377 6144/865/1400 +f 6144/865/1400 6145/866/1401 6143/864/1377 +f 6145/866/1401 6144/865/1400 6146/867/1380 +f 6146/867/1380 6147/868/1380 6145/866/1401 +f 6147/868/1380 6146/867/1380 6131/848/1368 +f 6131/848/1368 6130/847/1368 6147/868/1380 +f 6147/869/1381 6130/870/1381 6148/846/1382 +f 6133/871/1381 6135/872/1382 6148/846/1382 +f 6139/844/1382 6141/873/1382 6148/846/1382 +f 6148/846/1382 6145/874/1381 6147/869/1381 +f 6137/875/1382 6138/845/1382 6148/846/1382 +f 6148/846/1382 6143/876/1381 6145/874/1381 +f 6135/872/1382 6137/875/1382 6148/846/1382 +f 6148/846/1382 6141/873/1382 6143/876/1381 +f 6130/870/1381 6133/871/1381 6148/846/1382 +f 6148/846/1382 6138/845/1382 6139/844/1382 +f 6129/846/1367 6146/869/1366 6144/874/1366 +f 6132/871/1367 6131/870/1367 6129/846/1367 +f 6129/846/1367 6131/870/1367 6146/869/1366 +f 6144/874/1366 6142/876/1366 6129/846/1367 +f 6129/846/1367 6128/845/1367 6136/875/1367 +f 6142/876/1366 6140/873/1366 6129/846/1367 +f 6129/846/1367 6136/875/1367 6134/872/1367 +f 6140/873/1366 6127/844/1366 6129/846/1367 +f 6129/846/1367 6134/872/1367 6132/871/1367 +f 6149/877/1383 6150/878/1383 6151/879/1383 +f 6151/879/1383 6152/880/1383 6149/877/1383 +f 6153/881/1384 6154/882/1384 6150/883/1385 +f 6150/883/1385 6149/884/1385 6153/881/1384 +f 6155/885/1386 6153/886/1386 6149/887/1386 +f 6149/887/1386 6152/888/1386 6155/885/1386 +f 6156/882/1387 6155/881/1387 6152/884/1387 +f 6152/884/1387 6151/883/1387 6156/882/1387 +f 6154/886/1388 6156/885/1388 6151/888/1388 +f 6151/888/1388 6150/887/1388 6154/886/1388 +f 6157/879/1389 6158/878/1389 6159/877/1389 +f 6159/877/1389 6160/880/1389 6157/879/1389 +f 6158/883/1390 6161/882/1390 6162/881/1390 +f 6162/881/1390 6159/884/1390 6158/883/1390 +f 6159/887/1391 6162/886/1391 6163/885/1391 +f 6163/885/1391 6160/888/1391 6159/887/1391 +f 6160/884/1392 6163/881/1392 6164/882/1392 +f 6164/882/1392 6157/883/1392 6160/884/1392 +f 6157/888/1393 6164/885/1393 6161/886/1393 +f 6161/886/1393 6158/887/1393 6157/888/1393 +f 6165/883/1394 6166/882/1394 6167/881/1394 +f 6167/881/1394 6168/884/1394 6165/883/1394 +f 6168/887/1395 6167/886/1395 6169/885/1395 +f 6169/885/1395 6170/888/1395 6168/887/1395 +f 6170/884/1396 6169/881/1397 6171/882/1397 +f 6171/882/1397 6172/883/1396 6170/884/1396 +f 6172/888/1398 6171/885/1398 6166/886/1398 +f 6166/886/1398 6165/887/1398 6172/888/1398 +f 6173/844/1366 6174/845/1367 6175/846/1367 +f 6176/847/1402 6177/848/1402 6178/849/1369 +f 6178/849/1369 6179/850/1403 6176/847/1402 +f 6179/851/1403 6178/852/1369 6180/853/1370 +f 6180/853/1370 6181/854/1370 6179/851/1403 +f 6181/854/1370 6180/853/1370 6182/855/1371 +f 6182/855/1371 6183/856/1371 6181/854/1370 +f 6183/856/1371 6182/855/1371 6174/857/1373 +f 6174/857/1373 6184/858/1374 6183/856/1371 +f 6184/858/1374 6174/857/1373 6173/859/1399 +f 6173/859/1399 6185/860/1399 6184/858/1374 +f 6185/860/1399 6173/859/1399 6186/861/1376 +f 6186/861/1376 6187/862/1376 6185/860/1399 +f 6187/862/1376 6186/861/1376 6188/863/1377 +f 6188/863/1377 6189/864/1377 6187/862/1376 +f 6189/864/1377 6188/863/1377 6190/865/1401 +f 6190/865/1401 6191/866/1400 6189/864/1377 +f 6191/866/1400 6190/865/1401 6192/867/1380 +f 6192/867/1380 6193/868/1380 6191/866/1400 +f 6193/868/1380 6192/867/1380 6177/848/1402 +f 6177/848/1402 6176/847/1402 6193/868/1380 +f 6193/869/1381 6176/870/1381 6194/846/1382 +f 6179/871/1381 6181/872/1382 6194/846/1382 +f 6185/844/1381 6187/873/1382 6194/846/1382 +f 6194/846/1382 6191/874/1381 6193/869/1381 +f 6183/875/1382 6184/845/1382 6194/846/1382 +f 6194/846/1382 6189/876/1382 6191/874/1381 +f 6181/872/1382 6183/875/1382 6194/846/1382 +f 6194/846/1382 6187/873/1382 6189/876/1382 +f 6176/870/1381 6179/871/1381 6194/846/1382 +f 6194/846/1382 6184/845/1382 6185/844/1381 +f 6175/846/1367 6192/869/1366 6190/874/1366 +f 6178/871/1367 6177/870/1367 6175/846/1367 +f 6175/846/1367 6177/870/1367 6192/869/1366 +f 6190/874/1366 6188/876/1366 6175/846/1367 +f 6175/846/1367 6174/845/1367 6182/875/1367 +f 6188/876/1366 6186/873/1366 6175/846/1367 +f 6175/846/1367 6182/875/1367 6180/872/1367 +f 6186/873/1366 6173/844/1366 6175/846/1367 +f 6175/846/1367 6180/872/1367 6178/871/1367 +f 6195/877/1383 6196/878/1383 6197/879/1383 +f 6197/879/1383 6198/880/1383 6195/877/1383 +f 6199/881/1384 6200/882/1384 6196/883/1385 +f 6196/883/1385 6195/884/1385 6199/881/1384 +f 6201/885/1404 6199/886/1404 6195/887/1386 +f 6195/887/1386 6198/888/1386 6201/885/1404 +f 6202/882/1387 6201/881/1387 6198/884/1387 +f 6198/884/1387 6197/883/1387 6202/882/1387 +f 6200/886/1388 6202/885/1388 6197/888/1388 +f 6197/888/1388 6196/887/1388 6200/886/1388 +f 6203/879/1389 6204/878/1389 6205/877/1389 +f 6205/877/1389 6206/880/1389 6203/879/1389 +f 6204/883/1390 6207/882/1390 6208/881/1390 +f 6208/881/1390 6205/884/1390 6204/883/1390 +f 6205/887/1391 6208/886/1391 6209/885/1391 +f 6209/885/1391 6206/888/1391 6205/887/1391 +f 6206/884/1392 6209/881/1392 6210/882/1392 +f 6210/882/1392 6203/883/1392 6206/884/1392 +f 6203/888/1393 6210/885/1393 6207/886/1393 +f 6207/886/1393 6204/887/1393 6203/888/1393 +f 6211/883/1394 6212/882/1394 6213/881/1394 +f 6213/881/1394 6214/884/1394 6211/883/1394 +f 6214/887/1395 6213/886/1395 6215/885/1395 +f 6215/885/1395 6216/888/1395 6214/887/1395 +f 6216/884/1396 6215/881/1397 6217/882/1397 +f 6217/882/1397 6218/883/1396 6216/884/1396 +f 6218/888/1398 6217/885/1398 6212/886/1398 +f 6212/886/1398 6211/887/1398 6218/888/1398 +f 6219/889/1405 6220/890/1406 6221/891/1407 +f 6221/891/1407 6222/892/1408 6219/889/1405 +f 6223/893/1409 6219/889/1405 6222/892/1408 +f 6222/892/1408 6224/894/1410 6223/893/1409 +f 6225/895/1411 6223/893/1409 6224/894/1410 +f 6224/894/1410 6226/896/1412 6225/895/1411 +f 6227/897/1413 6225/895/1411 6226/896/1412 +f 6226/896/1412 6228/898/1414 6227/897/1413 +f 6229/899/1415 6227/900/1413 6228/901/1414 +f 6228/901/1414 6230/902/1416 6229/899/1415 +f 6231/903/1417 6229/899/1415 6230/902/1416 +f 6230/902/1416 6232/904/1418 6231/903/1417 +f 6233/905/1419 6231/903/1417 6232/904/1418 +f 6232/904/1418 6234/906/1420 6233/905/1419 +f 6220/907/1406 6233/905/1419 6234/906/1420 +f 6234/906/1420 6221/908/1407 6220/907/1406 +f 6235/909/1421 6236/910/1422 6237/911/1423 +f 6237/911/1423 6238/912/1424 6235/909/1421 +f 6238/912/1424 6237/911/1423 6239/913/1425 +f 6239/913/1425 6240/914/1426 6238/912/1424 +f 6240/914/1426 6239/913/1425 6241/915/1427 +f 6241/915/1427 6242/916/1428 6240/914/1426 +f 6242/916/1428 6241/915/1427 6243/917/1429 +f 6243/917/1429 6244/918/1430 6242/916/1428 +f 6244/919/1430 6243/920/1429 6245/921/1431 +f 6245/921/1431 6246/922/1432 6244/919/1430 +f 6246/922/1432 6245/921/1431 6247/923/1433 +f 6247/923/1433 6248/924/1434 6246/922/1432 +f 6248/924/1434 6247/923/1433 6249/925/1435 +f 6249/925/1435 6250/926/1436 6248/924/1434 +f 6250/926/1436 6249/925/1435 6236/927/1422 +f 6236/927/1422 6235/928/1421 6250/926/1436 +f 6236/910/1422 6251/929/1437 6252/930/1438 +f 6252/930/1438 6237/911/1423 6236/910/1422 +f 6237/911/1423 6252/930/1438 6253/931/1439 +f 6253/931/1439 6239/913/1425 6237/911/1423 +f 6239/913/1425 6253/931/1439 6254/932/1440 +f 6254/932/1440 6241/915/1427 6239/913/1425 +f 6241/915/1427 6254/932/1440 6255/933/1441 +f 6255/933/1441 6243/917/1429 6241/915/1427 +f 6243/920/1429 6255/934/1441 6256/935/1442 +f 6256/935/1442 6245/921/1431 6243/920/1429 +f 6245/921/1431 6256/935/1442 6257/936/1443 +f 6257/936/1443 6247/923/1433 6245/921/1431 +f 6247/923/1433 6257/936/1443 6258/937/1444 +f 6258/937/1444 6249/925/1435 6247/923/1433 +f 6249/925/1435 6258/937/1444 6251/938/1437 +f 6251/938/1437 6236/927/1422 6249/925/1435 +f 6251/929/1437 6259/939/1445 6260/940/1446 +f 6260/940/1446 6252/930/1438 6251/929/1437 +f 6252/930/1438 6260/940/1446 6261/941/1447 +f 6261/941/1447 6253/931/1439 6252/930/1438 +f 6253/931/1439 6261/941/1447 6262/942/1448 +f 6262/942/1448 6254/932/1440 6253/931/1439 +f 6254/932/1440 6262/942/1448 6263/943/1449 +f 6263/943/1449 6255/933/1441 6254/932/1440 +f 6255/934/1441 6263/944/1449 6264/945/1450 +f 6264/945/1450 6256/935/1442 6255/934/1441 +f 6256/935/1442 6264/945/1450 6265/946/1451 +f 6265/946/1451 6257/936/1443 6256/935/1442 +f 6257/936/1443 6265/946/1451 6266/947/1452 +f 6266/947/1452 6258/937/1444 6257/936/1443 +f 6258/937/1444 6266/947/1452 6259/948/1445 +f 6259/948/1445 6251/938/1437 6258/937/1444 +f 6222/892/1408 6221/891/1407 6235/909/1421 +f 6235/909/1421 6238/912/1424 6222/892/1408 +f 6240/914/1426 6224/894/1410 6222/892/1408 +f 6222/892/1408 6238/912/1424 6240/914/1426 +f 6226/896/1412 6224/894/1410 6240/914/1426 +f 6240/914/1426 6242/916/1428 6226/896/1412 +f 6244/918/1430 6228/898/1414 6226/896/1412 +f 6226/896/1412 6242/916/1428 6244/918/1430 +f 6230/902/1416 6228/901/1414 6244/919/1430 +f 6244/919/1430 6246/922/1432 6230/902/1416 +f 6248/924/1434 6232/904/1418 6230/902/1416 +f 6230/902/1416 6246/922/1432 6248/924/1434 +f 6250/926/1436 6234/906/1420 6232/904/1418 +f 6232/904/1418 6248/924/1434 6250/926/1436 +f 6235/928/1421 6221/908/1407 6234/906/1420 +f 6234/906/1420 6250/926/1436 6235/928/1421 +f 6259/939/1453 6267/949/1453 6268/950/1453 +f 6268/950/1453 6260/940/1453 6259/939/1453 +f 6260/940/1454 6268/950/1454 6269/951/1454 +f 6269/951/1454 6261/941/1454 6260/940/1454 +f 6261/941/1455 6269/951/1455 6270/952/1455 +f 6270/952/1455 6262/942/1455 6261/941/1455 +f 6262/942/1456 6270/952/1456 6271/953/1456 +f 6271/953/1456 6263/943/1456 6262/942/1456 +f 6263/944/1457 6271/954/1457 6272/955/1457 +f 6272/955/1457 6264/945/1457 6263/944/1457 +f 6264/945/1458 6272/955/1458 6273/956/1458 +f 6273/956/1458 6265/946/1458 6264/945/1458 +f 6265/946/1459 6273/956/1459 6274/957/1459 +f 6274/957/1459 6266/947/1459 6265/946/1459 +f 6266/947/1460 6274/957/1460 6267/958/1460 +f 6267/958/1460 6259/948/1460 6266/947/1460 +f 6267/949/1461 6275/959/1461 6276/960/1461 +f 6276/960/1461 6268/950/1461 6267/949/1461 +f 6268/950/1462 6276/960/1462 6277/961/1462 +f 6277/961/1462 6269/951/1462 6268/950/1462 +f 6269/951/1463 6277/961/1463 6278/962/1463 +f 6278/962/1463 6270/952/1463 6269/951/1463 +f 6270/952/1464 6278/962/1464 6279/963/1464 +f 6279/963/1464 6271/953/1464 6270/952/1464 +f 6271/954/1465 6279/964/1465 6280/965/1465 +f 6280/965/1465 6272/955/1465 6271/954/1465 +f 6272/955/1466 6280/965/1466 6281/966/1466 +f 6281/966/1466 6273/956/1466 6272/955/1466 +f 6273/956/1467 6281/966/1467 6282/967/1467 +f 6282/967/1467 6274/957/1467 6273/956/1467 +f 6274/957/1468 6282/967/1468 6275/968/1468 +f 6275/968/1469 6267/958/1469 6274/957/1469 +f 6275/959/1453 6283/969/1453 6284/970/1453 +f 6284/970/1453 6276/960/1453 6275/959/1453 +f 6276/960/1470 6284/970/1470 6285/971/1470 +f 6285/971/1470 6277/961/1470 6276/960/1470 +f 6277/961/1471 6285/971/1471 6286/972/1471 +f 6286/972/1471 6278/962/1471 6277/961/1471 +f 6278/962/1472 6286/972/1472 6287/973/1472 +f 6287/973/1472 6279/963/1472 6278/962/1472 +f 6279/964/1473 6287/974/1473 6288/975/1473 +f 6288/975/1474 6280/965/1474 6279/964/1474 +f 6280/965/1475 6288/975/1475 6289/976/1475 +f 6289/976/1458 6281/966/1458 6280/965/1458 +f 6281/966/1476 6289/976/1476 6290/977/1476 +f 6290/977/1476 6282/967/1476 6281/966/1476 +f 6282/967/1460 6290/977/1460 6283/978/1460 +f 6283/978/1460 6275/968/1460 6282/967/1460 +f 6283/969/1477 6291/979/1477 6292/980/1477 +f 6292/980/1478 6284/970/1478 6283/969/1478 +f 6284/970/1479 6292/980/1479 6293/981/1479 +f 6293/981/1480 6285/971/1480 6284/970/1480 +f 6285/971/1481 6293/981/1481 6294/982/1481 +f 6294/982/1482 6286/972/1482 6285/971/1482 +f 6286/972/1483 6294/982/1483 6295/983/1483 +f 6295/983/1484 6287/973/1484 6286/972/1484 +f 6287/974/1485 6295/984/1485 6296/985/1485 +f 6296/985/1485 6288/975/1485 6287/974/1485 +f 6288/975/1486 6296/985/1486 6297/986/1486 +f 6297/986/1486 6289/976/1486 6288/975/1486 +f 6289/976/1487 6297/986/1487 6298/987/1487 +f 6298/987/1487 6290/977/1487 6289/976/1487 +f 6290/977/1488 6298/987/1488 6291/988/1488 +f 6291/988/1488 6283/978/1488 6290/977/1488 +f 6291/979/1489 6299/989/1489 6292/980/1489 +f 6292/980/1490 6299/989/1490 6293/981/1490 +f 6293/981/1491 6299/989/1491 6294/982/1491 +f 6294/982/1492 6299/989/1492 6295/983/1492 +f 6295/984/1493 6299/990/1493 6296/985/1493 +f 6296/985/1494 6299/990/1494 6297/986/1494 +f 6297/986/1495 6299/990/1495 6298/987/1495 +f 6298/987/1496 6299/990/1496 6291/988/1496 +f 6300/991/1497 6301/992/1498 6302/993/1499 +f 6302/993/1499 6303/994/1500 6300/991/1497 +f 6301/992/1498 6304/995/1501 6305/996/1502 +f 6305/996/1502 6302/993/1499 6301/992/1498 +f 6304/995/1501 6306/997/1503 6307/998/1504 +f 6307/998/1504 6305/996/1502 6304/995/1501 +f 6303/994/1500 6302/993/1499 6308/999/1505 +f 6308/999/1505 6309/1000/1506 6303/994/1500 +f 6302/993/1499 6305/996/1502 6310/1001/1507 +f 6310/1001/1507 6308/999/1505 6302/993/1499 +f 6305/996/1502 6307/998/1504 6311/1002/1508 +f 6311/1002/1508 6310/1001/1507 6305/996/1502 +f 6309/1003/1509 6308/999/1510 6310/1001/1511 +f 6310/1001/1511 6311/1004/1511 6309/1003/1509 +f 6311/1004/1511 6312/1005/1509 6309/1003/1509 +f 6313/991/1512 6314/994/1513 6315/993/1514 +f 6315/993/1514 6316/992/1515 6313/991/1512 +f 6316/992/1515 6315/993/1514 6317/996/1516 +f 6317/996/1516 6318/995/1517 6316/992/1515 +f 6318/995/1517 6317/996/1516 6319/998/1518 +f 6319/998/1518 6320/997/1519 6318/995/1517 +f 6314/994/1513 6321/1000/1520 6322/999/1521 +f 6322/999/1521 6315/993/1514 6314/994/1513 +f 6315/993/1514 6322/999/1521 6323/1001/1522 +f 6323/1001/1522 6317/996/1516 6315/993/1514 +f 6317/996/1516 6323/1001/1522 6324/1002/1523 +f 6324/1002/1523 6319/998/1518 6317/996/1516 +f 6321/1003/1524 6324/1004/1525 6323/1001/1525 +f 6323/1001/1525 6322/999/1526 6321/1003/1524 +f 6324/1004/1525 6321/1003/1524 6325/1005/1527 +f 6326/1006/1528 6327/1007/1528 6328/1008/1528 +f 6328/1008/1528 6329/1009/1528 6326/1006/1528 +f 6329/1010/1527 6328/1011/1527 6330/1012/1527 +f 6330/1012/1527 6331/1013/1527 6329/1010/1527 +f 6331/1009/1529 6330/1008/1529 6332/1007/1529 +f 6332/1007/1529 6333/1006/1529 6331/1009/1529 +f 6333/1013/1511 6332/1012/1511 6327/1011/1511 +f 6327/1011/1511 6326/1010/1511 6333/1013/1511 +f 6334/689/1530 6335/690/1531 6336/691/1532 +f 6336/691/1532 6337/692/1533 6334/689/1530 +f 6338/693/1534 6335/690/1535 6334/689/1536 +f 6334/689/1536 6339/694/1536 6338/693/1534 +f 6340/695/1537 6341/696/1538 6342/697/1539 +f 6342/697/1539 6343/698/1539 6340/695/1537 +f 6344/699/1540 6345/700/1540 6346/701/1541 +f 6346/701/1541 6347/702/1541 6344/699/1540 +f 6348/703/1542 6337/692/1543 6349/704/1544 +f 6349/704/1544 6350/705/1544 6348/703/1542 +f 6342/697/1545 6341/696/1546 6336/691/1532 +f 6336/691/1532 6335/690/1531 6342/697/1545 +f 6343/698/1547 6342/697/1547 6335/690/1535 +f 6335/690/1535 6338/706/1534 6343/698/1547 +f 6350/707/1548 6349/704/1548 6345/700/1540 +f 6345/700/1540 6344/699/1540 6350/707/1548 +f 6345/700/1549 6349/704/1550 6337/692/1533 +f 6337/692/1533 6336/691/1532 6345/700/1549 +f 6347/708/1551 6346/701/1551 6341/696/1538 +f 6341/696/1538 6340/695/1537 6347/708/1551 +f 6339/694/1552 6334/689/1553 6337/692/1543 +f 6337/692/1543 6348/703/1542 6339/694/1552 +f 6341/696/1546 6346/701/1554 6345/700/1549 +f 6345/700/1549 6336/691/1532 6341/696/1546 +f 6351/1014/1555 6352/1015/1555 6353/1016/1555 +f 6353/1016/1555 6354/1017/1555 6351/1014/1555 +f 6355/1018/1556 6356/1019/1556 6357/1020/1556 +f 6357/1020/1556 6358/1021/1556 6355/1018/1556 +f 6352/1022/1557 6351/1023/1558 6359/1024/1557 +f 6359/1024/1557 6360/1025/1559 6352/1022/1557 +f 6353/1026/1560 6352/1027/1560 6360/1028/1561 +f 6360/1028/1561 6361/1029/1561 6353/1026/1560 +f 6354/1023/1562 6353/1022/1562 6361/1025/1563 +f 6361/1025/1563 6362/1024/1562 6354/1023/1562 +f 6351/1027/1564 6354/1026/1564 6362/1029/1564 +f 6362/1029/1564 6359/1028/1565 6351/1027/1564 +f 6358/1030/1566 6363/1031/1567 6364/1032/1568 +f 6364/1032/1568 6355/1033/1566 6358/1030/1566 +f 6357/1034/1569 6365/1035/1570 6363/1036/1570 +f 6363/1036/1570 6358/1037/1569 6357/1034/1569 +f 6356/1033/1571 6366/1032/1572 6365/1031/1572 +f 6365/1031/1572 6357/1030/1571 6356/1033/1571 +f 6355/1037/1573 6364/1036/1574 6366/1035/1574 +f 6366/1035/1574 6356/1034/1573 6355/1037/1573 +f 6363/1031/1567 6360/1025/1559 6359/1024/1557 +f 6359/1024/1557 6364/1032/1568 6363/1031/1567 +f 6367/1035/1575 6368/1029/1575 6369/1028/1575 +f 6369/1028/1575 6370/1036/1561 6367/1035/1575 +f 6366/1032/1572 6362/1024/1562 6361/1025/1563 +f 6361/1025/1563 6365/1031/1572 6366/1032/1572 +f 6371/1036/1576 6372/1028/1576 6373/1029/1576 +f 6373/1029/1576 6374/1035/1576 6371/1036/1576 +f 6365/1038/1556 6367/1039/1556 6370/1040/1556 +f 6370/1040/1556 6363/1041/1556 6365/1038/1556 +f 6363/1031/1559 6370/1042/1559 6369/1043/1559 +f 6369/1043/1559 6360/1025/1559 6363/1031/1559 +f 6360/1041/1555 6369/1040/1555 6368/1039/1555 +f 6368/1039/1555 6361/1038/1555 6360/1041/1555 +f 6361/1025/1563 6368/1043/1563 6367/1042/1563 +f 6367/1042/1563 6365/1031/1563 6361/1025/1563 +f 6359/1024/1557 6372/1044/1557 6371/1045/1557 +f 6371/1045/1557 6364/1032/1557 6359/1024/1557 +f 6364/1040/1556 6371/1041/1556 6374/1038/1556 +f 6374/1038/1556 6366/1039/1556 6364/1040/1556 +f 6366/1032/1563 6374/1045/1563 6373/1044/1563 +f 6373/1044/1562 6362/1024/1562 6366/1032/1562 +f 6362/1039/1555 6373/1038/1555 6372/1041/1555 +f 6372/1041/1555 6359/1040/1555 6362/1039/1555 +f 6375/250/1577 6376/251/1578 6377/252/1579 +f 6377/252/1579 6378/253/1580 6375/250/1577 +f 6379/254/1581 6375/250/1577 6378/253/1580 +f 6378/253/1580 6380/255/1582 6379/254/1581 +f 6381/256/1583 6379/254/1581 6380/255/1582 +f 6380/255/1582 6382/257/1584 6381/256/1583 +f 6383/258/1585 6381/256/1583 6382/257/1584 +f 6382/257/1584 6384/259/1586 6383/258/1585 +f 6385/260/1587 6383/261/1585 6384/262/1586 +f 6384/262/1586 6386/263/1588 6385/260/1587 +f 6387/264/1589 6385/260/1587 6386/263/1588 +f 6386/263/1588 6388/265/1590 6387/264/1589 +f 6389/266/1591 6387/264/1589 6388/265/1590 +f 6388/265/1590 6390/267/1592 6389/266/1591 +f 6376/251/1578 6389/266/1591 6390/267/1592 +f 6390/267/1592 6377/252/1579 6376/251/1578 +f 6391/268/1593 6391/268/1594 6376/251/1578 +f 6376/251/1578 6375/250/1577 6391/268/1593 +f 6391/268/1595 6391/268/1593 6375/250/1577 +f 6375/250/1577 6379/254/1581 6391/268/1595 +f 6391/269/1596 6391/268/1595 6379/254/1581 +f 6379/254/1581 6381/256/1583 6391/269/1596 +f 6391/269/1597 6391/269/1596 6381/256/1583 +f 6381/256/1583 6383/258/1585 6391/269/1597 +f 6391/268/1598 6391/269/1597 6383/261/1585 +f 6383/261/1585 6385/260/1587 6391/268/1598 +f 6391/268/1599 6391/268/1598 6385/260/1587 +f 6385/260/1587 6387/264/1589 6391/268/1599 +f 6391/268/1600 6391/268/1599 6387/264/1589 +f 6387/264/1589 6389/266/1591 6391/268/1600 +f 6391/268/1594 6391/268/1600 6389/266/1591 +f 6389/266/1591 6376/251/1578 6391/268/1594 +f 6391/269/2 6391/269/2 6391/268/2 +f 6391/268/2 6391/268/2 6391/268/2 +f 6391/268/2 6391/268/2 6391/268/2 +f 6391/268/2 6391/268/2 6391/268/2 +f 6391/269/2 6391/268/2 6391/268/2 +f 6391/269/2 6391/268/2 6391/268/2 +f 6392/270/1601 6393/271/1601 6378/253/1601 +f 6378/253/1601 6377/252/1601 6392/270/1601 +f 6393/271/1602 6394/272/1602 6380/255/1602 +f 6380/255/1603 6378/253/1603 6393/271/1603 +f 6394/272/1604 6395/273/1604 6382/257/1604 +f 6382/257/1604 6380/255/1604 6394/272/1604 +f 6395/273/1605 6396/274/1605 6384/259/1605 +f 6384/259/1605 6382/257/1605 6395/273/1605 +f 6396/275/1606 6397/276/1606 6386/263/1606 +f 6386/263/1606 6384/262/1606 6396/275/1606 +f 6397/276/1607 6398/277/1607 6388/265/1607 +f 6388/265/1607 6386/263/1607 6397/276/1607 +f 6398/277/1608 6399/278/1608 6390/267/1608 +f 6390/267/1609 6388/265/1609 6398/277/1609 +f 6399/278/1610 6392/270/1610 6377/252/1610 +f 6377/252/1610 6390/267/1610 6399/278/1610 +f 6400/320/1611 6401/321/1612 6402/322/1613 +f 6402/322/1613 6403/323/1614 6400/320/1611 +f 6404/324/1615 6400/320/1611 6403/323/1614 +f 6403/323/1614 6405/325/1616 6404/324/1615 +f 6406/326/1617 6404/324/1615 6405/325/1616 +f 6405/325/1616 6407/327/1618 6406/326/1617 +f 6408/328/1619 6406/326/1617 6407/327/1618 +f 6407/327/1618 6409/329/1620 6408/328/1619 +f 6410/330/1621 6408/328/1619 6409/329/1620 +f 6409/329/1620 6411/331/1620 6410/330/1621 +f 6412/332/1622 6413/333/1623 6401/321/1612 +f 6401/321/1612 6400/320/1611 6412/332/1622 +f 6412/332/1622 6400/320/1611 6404/324/1615 +f 6404/324/1615 6414/334/1624 6412/332/1622 +f 6414/334/1624 6404/324/1615 6406/326/1617 +f 6406/326/1617 6415/335/1625 6414/334/1624 +f 6415/335/1625 6406/326/1617 6408/328/1619 +f 6408/328/1619 6416/336/1626 6415/335/1625 +f 6417/337/1627 6416/336/1626 6408/328/1619 +f 6408/328/1619 6410/330/1621 6417/337/1627 +f 6418/338/1628 6419/339/1629 6420/340/1630 +f 6420/340/1630 6421/341/1631 6418/338/1628 +f 6422/342/1632 6418/338/1628 6421/341/1631 +f 6421/341/1631 6423/343/1633 6422/342/1632 +f 6424/344/1634 6422/342/1632 6423/343/1633 +f 6423/343/1633 6425/345/1635 6424/344/1634 +f 6426/346/1636 6424/344/1634 6425/345/1635 +f 6425/345/1635 6427/347/1637 6426/346/1636 +f 6428/348/1638 6426/346/1636 6427/347/1637 +f 6427/347/1637 6417/349/1639 6428/348/1638 +f 6429/350/1640 6430/351/1641 6419/339/1629 +f 6419/339/1629 6418/338/1628 6429/350/1640 +f 6431/352/1642 6429/350/1640 6418/338/1628 +f 6418/338/1628 6422/342/1632 6431/352/1642 +f 6432/353/1643 6431/352/1642 6422/342/1632 +f 6422/342/1632 6424/344/1634 6432/353/1643 +f 6433/354/1644 6432/353/1643 6424/344/1634 +f 6424/344/1634 6426/346/1636 6433/354/1644 +f 6434/355/1645 6433/354/1644 6426/346/1636 +f 6426/346/1636 6428/348/1638 6434/355/1645 +f 6435/356/1646 6436/357/1647 6430/351/1641 +f 6430/351/1641 6429/350/1640 6435/356/1646 +f 6437/358/1648 6435/356/1646 6429/350/1640 +f 6429/350/1640 6431/352/1642 6437/358/1648 +f 6438/359/1649 6437/358/1648 6431/352/1642 +f 6431/352/1642 6432/353/1643 6438/359/1649 +f 6439/360/1295 6438/359/1649 6432/353/1643 +f 6432/353/1643 6433/354/1644 6439/360/1295 +f 6440/361/1650 6439/360/1295 6433/354/1644 +f 6433/354/1644 6434/355/1645 6440/361/1650 +f 6441/362/1651 6442/363/1652 6436/357/1647 +f 6436/357/1647 6435/356/1646 6441/362/1651 +f 6443/364/1653 6441/362/1651 6435/356/1646 +f 6435/356/1646 6437/358/1648 6443/364/1653 +f 6444/365/1654 6443/364/1653 6437/358/1648 +f 6437/358/1648 6438/359/1649 6444/365/1654 +f 6445/366/1655 6444/365/1654 6438/359/1649 +f 6438/359/1649 6439/360/1295 6445/366/1655 +f 6446/367/1655 6445/366/1655 6439/360/1295 +f 6439/360/1295 6440/361/1650 6446/367/1655 +f 6403/323/1614 6402/322/1613 6442/368/1652 +f 6442/368/1652 6441/369/1651 6403/323/1614 +f 6405/325/1616 6403/323/1614 6441/369/1651 +f 6441/369/1651 6443/370/1653 6405/325/1616 +f 6407/327/1618 6405/325/1616 6443/370/1653 +f 6443/370/1653 6444/371/1654 6407/327/1618 +f 6409/329/1620 6407/327/1618 6444/371/1654 +f 6444/371/1654 6445/372/1655 6409/329/1620 +f 6411/331/1620 6409/329/1620 6445/372/1655 +f 6445/372/1655 6446/373/1655 6411/331/1620 +f 6447/250/1656 6448/251/1657 6449/252/1658 +f 6449/252/1658 6450/253/1659 6447/250/1656 +f 6451/254/1660 6447/250/1656 6450/253/1659 +f 6450/253/1659 6452/255/1661 6451/254/1660 +f 6453/256/1662 6451/254/1660 6452/255/1661 +f 6452/255/1661 6454/257/1663 6453/256/1662 +f 6455/258/1664 6453/256/1662 6454/257/1663 +f 6454/257/1663 6456/259/1665 6455/258/1664 +f 6457/260/1666 6455/261/1664 6456/262/1665 +f 6456/262/1665 6458/263/1667 6457/260/1666 +f 6459/264/1668 6457/260/1666 6458/263/1667 +f 6458/263/1667 6460/265/1669 6459/264/1668 +f 6461/266/1670 6459/264/1668 6460/265/1669 +f 6460/265/1669 6462/267/1671 6461/266/1670 +f 6448/251/1657 6461/266/1670 6462/267/1671 +f 6462/267/1671 6449/252/1658 6448/251/1657 +f 6463/268/1672 6463/268/1673 6448/251/1657 +f 6448/251/1657 6447/250/1656 6463/268/1672 +f 6463/268/1674 6463/268/1672 6447/250/1656 +f 6447/250/1656 6451/254/1660 6463/268/1674 +f 6463/269/1675 6463/268/1674 6451/254/1660 +f 6451/254/1660 6453/256/1662 6463/269/1675 +f 6463/269/1676 6463/269/1675 6453/256/1662 +f 6453/256/1662 6455/258/1664 6463/269/1676 +f 6463/268/1677 6463/269/1676 6455/261/1664 +f 6455/261/1664 6457/260/1666 6463/268/1677 +f 6463/268/1678 6463/268/1677 6457/260/1666 +f 6457/260/1666 6459/264/1668 6463/268/1678 +f 6463/268/1679 6463/268/1678 6459/264/1668 +f 6459/264/1668 6461/266/1670 6463/268/1679 +f 6463/268/1673 6463/268/1679 6461/266/1670 +f 6461/266/1670 6448/251/1657 6463/268/1673 +f 6463/269/2 6463/269/2 6463/268/2 +f 6463/268/2 6463/268/2 6463/268/2 +f 6463/268/2 6463/268/2 6463/268/2 +f 6463/268/2 6463/268/2 6463/268/2 +f 6463/269/2 6463/268/2 6463/268/2 +f 6463/269/2 6463/268/2 6463/268/2 +f 6464/270/1680 6465/271/1680 6450/253/1680 +f 6450/253/1680 6449/252/1680 6464/270/1680 +f 6465/271/1681 6466/272/1681 6452/255/1681 +f 6452/255/1681 6450/253/1681 6465/271/1681 +f 6466/272/1682 6467/273/1682 6454/257/1682 +f 6454/257/1682 6452/255/1682 6466/272/1682 +f 6467/273/1683 6468/274/1683 6456/259/1683 +f 6456/259/1683 6454/257/1683 6467/273/1683 +f 6468/275/1684 6469/276/1684 6458/263/1684 +f 6458/263/1684 6456/262/1684 6468/275/1684 +f 6469/276/1685 6470/277/1685 6460/265/1685 +f 6460/265/1685 6458/263/1685 6469/276/1685 +f 6470/277/1686 6471/278/1686 6462/267/1686 +f 6462/267/1687 6460/265/1687 6470/277/1687 +f 6471/278/1688 6464/270/1688 6449/252/1688 +f 6449/252/1689 6462/267/1689 6471/278/1689 +f 6472/320/1690 6473/321/1691 6474/322/1692 +f 6474/322/1692 6475/323/1693 6472/320/1690 +f 6476/324/1694 6472/320/1690 6475/323/1693 +f 6475/323/1693 6477/325/1695 6476/324/1694 +f 6478/326/1696 6476/324/1694 6477/325/1695 +f 6477/325/1695 6479/327/1697 6478/326/1696 +f 6480/328/1698 6478/326/1696 6479/327/1697 +f 6479/327/1697 6481/329/1699 6480/328/1698 +f 6482/330/1700 6480/328/1698 6481/329/1699 +f 6481/329/1699 6483/331/1701 6482/330/1700 +f 6484/332/1702 6485/333/1703 6473/321/1691 +f 6473/321/1691 6472/320/1690 6484/332/1702 +f 6484/332/1702 6472/320/1690 6476/324/1694 +f 6476/324/1694 6486/334/1704 6484/332/1702 +f 6486/334/1704 6476/324/1694 6478/326/1696 +f 6478/326/1696 6487/335/1705 6486/334/1704 +f 6487/335/1705 6478/326/1696 6480/328/1698 +f 6480/328/1698 6488/336/1706 6487/335/1705 +f 6489/337/1707 6488/336/1706 6480/328/1698 +f 6480/328/1698 6482/330/1700 6489/337/1707 +f 6490/338/1708 6491/339/1709 6492/340/1710 +f 6492/340/1710 6493/341/1711 6490/338/1708 +f 6494/342/1712 6490/338/1708 6493/341/1711 +f 6493/341/1711 6495/343/1713 6494/342/1712 +f 6496/344/1714 6494/342/1712 6495/343/1713 +f 6495/343/1713 6497/345/1715 6496/344/1714 +f 6498/346/1716 6496/344/1714 6497/345/1715 +f 6497/345/1715 6499/347/1717 6498/346/1716 +f 6500/348/1718 6498/346/1716 6499/347/1717 +f 6499/347/1717 6489/349/1719 6500/348/1718 +f 6501/350/1720 6502/351/1721 6491/339/1709 +f 6491/339/1709 6490/338/1708 6501/350/1720 +f 6503/352/1722 6501/350/1720 6490/338/1708 +f 6490/338/1708 6494/342/1712 6503/352/1722 +f 6504/353/1723 6503/352/1722 6494/342/1712 +f 6494/342/1712 6496/344/1714 6504/353/1723 +f 6505/354/1565 6504/353/1723 6496/344/1714 +f 6496/344/1714 6498/346/1716 6505/354/1565 +f 6506/355/1724 6505/354/1565 6498/346/1716 +f 6498/346/1716 6500/348/1718 6506/355/1724 +f 6507/356/1725 6508/357/1726 6502/351/1721 +f 6502/351/1721 6501/350/1720 6507/356/1725 +f 6509/358/1727 6507/356/1725 6501/350/1720 +f 6501/350/1720 6503/352/1722 6509/358/1727 +f 6510/359/1728 6509/358/1727 6503/352/1722 +f 6503/352/1722 6504/353/1723 6510/359/1728 +f 6511/360/1729 6510/359/1728 6504/353/1723 +f 6504/353/1723 6505/354/1565 6511/360/1729 +f 6512/361/1730 6511/360/1729 6505/354/1565 +f 6505/354/1565 6506/355/1724 6512/361/1730 +f 6513/362/1731 6514/363/1732 6508/357/1726 +f 6508/357/1726 6507/356/1725 6513/362/1731 +f 6515/364/1733 6513/362/1731 6507/356/1725 +f 6507/356/1725 6509/358/1727 6515/364/1733 +f 6516/365/1734 6515/364/1733 6509/358/1727 +f 6509/358/1727 6510/359/1728 6516/365/1734 +f 6517/366/1735 6516/365/1734 6510/359/1728 +f 6510/359/1728 6511/360/1729 6517/366/1735 +f 6518/367/1736 6517/366/1735 6511/360/1729 +f 6511/360/1729 6512/361/1730 6518/367/1736 +f 6475/323/1693 6474/322/1692 6514/368/1732 +f 6514/368/1732 6513/369/1731 6475/323/1693 +f 6477/325/1695 6475/323/1693 6513/369/1731 +f 6513/369/1731 6515/370/1733 6477/325/1695 +f 6479/327/1697 6477/325/1695 6515/370/1733 +f 6515/370/1733 6516/371/1734 6479/327/1697 +f 6481/329/1699 6479/327/1697 6516/371/1734 +f 6516/371/1734 6517/372/1735 6481/329/1699 +f 6483/331/1701 6481/329/1699 6517/372/1735 +f 6517/372/1735 6518/373/1736 6483/331/1701 +f 6519/889/1737 6520/890/1738 6521/891/1739 +f 6521/891/1739 6522/892/1740 6519/889/1737 +f 6523/893/1741 6519/889/1737 6522/892/1740 +f 6522/892/1740 6524/894/1742 6523/893/1741 +f 6525/895/1743 6523/893/1741 6524/894/1742 +f 6524/894/1742 6526/896/1744 6525/895/1743 +f 6527/897/1745 6525/895/1743 6526/896/1744 +f 6526/896/1744 6528/898/1746 6527/897/1745 +f 6529/899/1747 6527/900/1745 6528/901/1746 +f 6528/901/1746 6530/902/1748 6529/899/1747 +f 6531/903/1749 6529/899/1747 6530/902/1748 +f 6530/902/1748 6532/904/1750 6531/903/1749 +f 6533/905/1751 6531/903/1749 6532/904/1750 +f 6532/904/1750 6534/906/1752 6533/905/1751 +f 6520/907/1738 6533/905/1751 6534/906/1752 +f 6534/906/1752 6521/908/1739 6520/907/1738 +f 6535/909/1753 6536/910/1754 6537/911/1755 +f 6537/911/1755 6538/912/1756 6535/909/1753 +f 6538/912/1756 6537/911/1755 6539/913/1757 +f 6539/913/1757 6540/914/1758 6538/912/1756 +f 6540/914/1758 6539/913/1757 6541/915/1759 +f 6541/915/1759 6542/916/1760 6540/914/1758 +f 6542/916/1760 6541/915/1759 6543/917/1761 +f 6543/917/1761 6544/918/1762 6542/916/1760 +f 6544/919/1762 6543/920/1761 6545/921/1763 +f 6545/921/1763 6546/922/1764 6544/919/1762 +f 6546/922/1764 6545/921/1763 6547/923/1765 +f 6547/923/1765 6548/924/1766 6546/922/1764 +f 6548/924/1766 6547/923/1765 6549/925/1767 +f 6549/925/1767 6550/926/1768 6548/924/1766 +f 6550/926/1768 6549/925/1767 6536/927/1754 +f 6536/927/1754 6535/928/1753 6550/926/1768 +f 6536/910/1754 6551/929/1769 6552/930/1770 +f 6552/930/1770 6537/911/1755 6536/910/1754 +f 6537/911/1755 6552/930/1770 6553/931/1771 +f 6553/931/1771 6539/913/1757 6537/911/1755 +f 6539/913/1757 6553/931/1771 6554/932/1772 +f 6554/932/1772 6541/915/1759 6539/913/1757 +f 6541/915/1759 6554/932/1772 6555/933/1773 +f 6555/933/1773 6543/917/1761 6541/915/1759 +f 6543/920/1761 6555/934/1773 6556/935/1774 +f 6556/935/1774 6545/921/1763 6543/920/1761 +f 6545/921/1763 6556/935/1774 6557/936/1775 +f 6557/936/1775 6547/923/1765 6545/921/1763 +f 6547/923/1765 6557/936/1775 6558/937/1776 +f 6558/937/1776 6549/925/1767 6547/923/1765 +f 6549/925/1767 6558/937/1776 6551/938/1769 +f 6551/938/1769 6536/927/1754 6549/925/1767 +f 6551/929/1769 6559/939/1777 6560/940/1778 +f 6560/940/1778 6552/930/1770 6551/929/1769 +f 6552/930/1770 6560/940/1778 6561/941/1779 +f 6561/941/1779 6553/931/1771 6552/930/1770 +f 6553/931/1771 6561/941/1779 6562/942/1780 +f 6562/942/1780 6554/932/1772 6553/931/1771 +f 6554/932/1772 6562/942/1780 6563/943/1781 +f 6563/943/1781 6555/933/1773 6554/932/1772 +f 6555/934/1773 6563/944/1781 6564/945/1782 +f 6564/945/1782 6556/935/1774 6555/934/1773 +f 6556/935/1774 6564/945/1782 6565/946/1783 +f 6565/946/1783 6557/936/1775 6556/935/1774 +f 6557/936/1775 6565/946/1783 6566/947/1784 +f 6566/947/1784 6558/937/1776 6557/936/1775 +f 6558/937/1776 6566/947/1784 6559/948/1777 +f 6559/948/1777 6551/938/1769 6558/937/1776 +f 6522/892/1740 6521/891/1739 6535/909/1753 +f 6535/909/1753 6538/912/1756 6522/892/1740 +f 6540/914/1758 6524/894/1742 6522/892/1740 +f 6522/892/1740 6538/912/1756 6540/914/1758 +f 6526/896/1744 6524/894/1742 6540/914/1758 +f 6540/914/1758 6542/916/1760 6526/896/1744 +f 6544/918/1762 6528/898/1746 6526/896/1744 +f 6526/896/1744 6542/916/1760 6544/918/1762 +f 6530/902/1748 6528/901/1746 6544/919/1762 +f 6544/919/1762 6546/922/1764 6530/902/1748 +f 6548/924/1766 6532/904/1750 6530/902/1748 +f 6530/902/1748 6546/922/1764 6548/924/1766 +f 6550/926/1768 6534/906/1752 6532/904/1750 +f 6532/904/1750 6548/924/1766 6550/926/1768 +f 6535/928/1753 6521/908/1739 6534/906/1752 +f 6534/906/1752 6550/926/1768 6535/928/1753 +f 6559/939/1785 6567/949/1785 6568/950/1785 +f 6568/950/1785 6560/940/1785 6559/939/1785 +f 6560/940/1786 6568/950/1786 6569/951/1786 +f 6569/951/1786 6561/941/1786 6560/940/1786 +f 6561/941/1787 6569/951/1787 6570/952/1787 +f 6570/952/1787 6562/942/1787 6561/941/1787 +f 6562/942/1788 6570/952/1788 6571/953/1788 +f 6571/953/1788 6563/943/1788 6562/942/1788 +f 6563/944/1789 6571/954/1789 6572/955/1789 +f 6572/955/1789 6564/945/1789 6563/944/1789 +f 6564/945/1790 6572/955/1790 6573/956/1790 +f 6573/956/1790 6565/946/1790 6564/945/1790 +f 6565/946/1791 6573/956/1791 6574/957/1791 +f 6574/957/1791 6566/947/1791 6565/946/1791 +f 6566/947/1792 6574/957/1792 6567/958/1792 +f 6567/958/1792 6559/948/1792 6566/947/1792 +f 6567/949/1793 6575/959/1793 6576/960/1793 +f 6576/960/1793 6568/950/1793 6567/949/1793 +f 6568/950/1794 6576/960/1794 6577/961/1794 +f 6577/961/1794 6569/951/1794 6568/950/1794 +f 6569/951/1795 6577/961/1795 6578/962/1795 +f 6578/962/1795 6570/952/1795 6569/951/1795 +f 6570/952/1796 6578/962/1796 6579/963/1796 +f 6579/963/1796 6571/953/1796 6570/952/1796 +f 6571/954/1797 6579/964/1797 6580/965/1797 +f 6580/965/1797 6572/955/1797 6571/954/1797 +f 6572/955/1798 6580/965/1798 6581/966/1798 +f 6581/966/1798 6573/956/1798 6572/955/1798 +f 6573/956/1799 6581/966/1799 6582/967/1799 +f 6582/967/1799 6574/957/1799 6573/956/1799 +f 6574/957/1800 6582/967/1800 6575/968/1800 +f 6575/968/1800 6567/958/1800 6574/957/1800 +f 6575/959/1785 6583/969/1785 6584/970/1785 +f 6584/970/1785 6576/960/1785 6575/959/1785 +f 6576/960/1786 6584/970/1786 6585/971/1786 +f 6585/971/1786 6577/961/1786 6576/960/1786 +f 6577/961/1787 6585/971/1787 6586/972/1787 +f 6586/972/1787 6578/962/1787 6577/961/1787 +f 6578/962/1788 6586/972/1788 6587/973/1788 +f 6587/973/1788 6579/963/1788 6578/962/1788 +f 6579/964/1789 6587/974/1789 6588/975/1789 +f 6588/975/1789 6580/965/1789 6579/964/1789 +f 6580/965/1790 6588/975/1790 6589/976/1790 +f 6589/976/1790 6581/966/1790 6580/965/1790 +f 6581/966/1791 6589/976/1791 6590/977/1791 +f 6590/977/1791 6582/967/1791 6581/966/1791 +f 6582/967/1792 6590/977/1792 6583/978/1792 +f 6583/978/1792 6575/968/1792 6582/967/1792 +f 6583/969/1801 6591/979/1801 6592/980/1801 +f 6592/980/1802 6584/970/1802 6583/969/1802 +f 6584/970/1803 6592/980/1803 6593/981/1803 +f 6593/981/1803 6585/971/1803 6584/970/1803 +f 6585/971/1804 6593/981/1804 6594/982/1804 +f 6594/982/1804 6586/972/1804 6585/971/1804 +f 6586/972/1805 6594/982/1805 6595/983/1805 +f 6595/983/1806 6587/973/1806 6586/972/1806 +f 6587/974/1807 6595/984/1807 6596/985/1807 +f 6596/985/1807 6588/975/1807 6587/974/1807 +f 6588/975/1808 6596/985/1808 6597/986/1808 +f 6597/986/1808 6589/976/1808 6588/975/1808 +f 6589/976/1809 6597/986/1809 6598/987/1809 +f 6598/987/1809 6590/977/1809 6589/976/1809 +f 6590/977/1810 6598/987/1810 6591/988/1810 +f 6591/988/1810 6583/978/1810 6590/977/1810 +f 6591/979/1811 6599/989/1811 6592/980/1811 +f 6592/980/1812 6599/989/1812 6593/981/1812 +f 6593/981/1813 6599/989/1813 6594/982/1813 +f 6594/982/1814 6599/989/1814 6595/983/1814 +f 6595/984/1815 6599/990/1815 6596/985/1815 +f 6596/985/1816 6599/990/1816 6597/986/1816 +f 6597/986/1817 6599/990/1817 6598/987/1817 +f 6598/987/1818 6599/990/1818 6591/988/1818 +f 6600/991/1819 6601/992/1820 6602/993/1821 +f 6602/993/1821 6603/994/1822 6600/991/1819 +f 6601/992/1820 6604/995/1823 6605/996/1824 +f 6605/996/1824 6602/993/1821 6601/992/1820 +f 6604/995/1823 6606/997/1825 6607/998/1826 +f 6607/998/1826 6605/996/1824 6604/995/1823 +f 6603/994/1822 6602/993/1821 6608/999/1827 +f 6608/999/1827 6609/1000/1828 6603/994/1822 +f 6602/993/1821 6605/996/1824 6610/1001/1829 +f 6610/1001/1829 6608/999/1827 6602/993/1821 +f 6605/996/1824 6607/998/1826 6611/1002/1830 +f 6611/1002/1830 6610/1001/1829 6605/996/1824 +f 6609/1003/1831 6608/999/1832 6610/1001/1831 +f 6610/1001/1831 6611/1004/1831 6609/1003/1831 +f 6611/1004/1831 6612/1005/1833 6609/1003/1831 +f 6613/991/1834 6614/994/1835 6615/993/1836 +f 6615/993/1836 6616/992/1837 6613/991/1834 +f 6616/992/1837 6615/993/1836 6617/996/1838 +f 6617/996/1838 6618/995/1839 6616/992/1837 +f 6618/995/1839 6617/996/1838 6619/998/1840 +f 6619/998/1840 6620/997/1841 6618/995/1839 +f 6614/994/1835 6621/1000/1842 6622/999/1843 +f 6622/999/1843 6615/993/1836 6614/994/1835 +f 6615/993/1836 6622/999/1843 6623/1001/1844 +f 6623/1001/1844 6617/996/1838 6615/993/1836 +f 6617/996/1838 6623/1001/1844 6624/1002/1845 +f 6624/1002/1845 6619/998/1840 6617/996/1838 +f 6621/1003/1846 6624/1004/1846 6623/1001/1847 +f 6623/1001/1847 6622/999/1847 6621/1003/1846 +f 6624/1004/1846 6621/1003/1846 6625/1005/1848 +f 6626/1006/1849 6627/1007/1849 6628/1008/1849 +f 6628/1008/1849 6629/1009/1849 6626/1006/1849 +f 6629/1010/1846 6628/1011/1846 6630/1012/1846 +f 6630/1012/1846 6631/1013/1846 6629/1010/1846 +f 6631/1009/1850 6630/1008/1850 6632/1007/1850 +f 6632/1007/1850 6633/1006/1850 6631/1009/1850 +f 6633/1013/1851 6632/1012/1851 6627/1011/1851 +f 6627/1011/1851 6626/1010/1851 6633/1013/1851 +f 6634/689/1852 6635/690/1853 6636/691/1854 +f 6636/691/1854 6637/692/1855 6634/689/1852 +f 6638/693/1856 6635/690/1857 6634/689/1858 +f 6634/689/1858 6639/694/1858 6638/693/1856 +f 6640/695/1859 6641/696/1860 6642/697/1861 +f 6642/697/1861 6643/698/1861 6640/695/1859 +f 6644/699/1862 6645/700/1862 6646/701/1863 +f 6646/701/1863 6647/702/1863 6644/699/1862 +f 6648/703/1864 6637/692/1865 6649/704/1866 +f 6649/704/1866 6650/705/1866 6648/703/1864 +f 6642/697/1867 6641/696/1868 6636/691/1854 +f 6636/691/1854 6635/690/1853 6642/697/1867 +f 6643/698/1869 6642/697/1869 6635/690/1857 +f 6635/690/1857 6638/706/1856 6643/698/1869 +f 6650/707/1870 6649/704/1870 6645/700/1862 +f 6645/700/1862 6644/699/1862 6650/707/1870 +f 6645/700/1871 6649/704/1872 6637/692/1855 +f 6637/692/1855 6636/691/1854 6645/700/1871 +f 6647/708/1873 6646/701/1873 6641/696/1860 +f 6641/696/1860 6640/695/1859 6647/708/1873 +f 6639/694/1874 6634/689/1874 6637/692/1865 +f 6637/692/1865 6648/703/1864 6639/694/1874 +f 6641/696/1868 6646/701/1875 6645/700/1871 +f 6645/700/1871 6636/691/1854 6641/696/1868 +f 6651/1014/1876 6652/1015/1877 6653/1016/1877 +f 6653/1016/1877 6654/1017/1878 6651/1014/1876 +f 6655/1018/1879 6656/1019/1879 6657/1020/1879 +f 6657/1020/1879 6658/1021/1879 6655/1018/1879 +f 6652/1022/1880 6651/1023/1880 6659/1024/1880 +f 6659/1024/1880 6660/1025/1880 6652/1022/1880 +f 6653/1026/8 6652/1027/8 6660/1028/8 +f 6660/1028/8 6661/1029/8 6653/1026/8 +f 6654/1023/1881 6653/1022/1881 6661/1025/1881 +f 6661/1025/1881 6662/1024/1881 6654/1023/1881 +f 6651/1027/2 6654/1026/2 6662/1029/2 +f 6662/1029/2 6659/1028/2 6651/1027/2 +f 6658/1030/1882 6663/1031/1883 6664/1032/1883 +f 6664/1032/1883 6655/1033/1882 6658/1030/1882 +f 6657/1034/1884 6665/1035/1884 6663/1036/1884 +f 6663/1036/1884 6658/1037/1884 6657/1034/1884 +f 6656/1033/1885 6666/1032/1886 6665/1031/1886 +f 6665/1031/1886 6657/1030/1885 6656/1033/1885 +f 6655/1037/1887 6664/1036/1887 6666/1035/1887 +f 6666/1035/1887 6656/1034/1887 6655/1037/1887 +f 6663/1031/1883 6660/1025/1880 6659/1024/1880 +f 6659/1024/1880 6664/1032/1883 6663/1031/1883 +f 6667/1035/8 6668/1029/8 6669/1028/8 +f 6669/1028/8 6670/1036/8 6667/1035/8 +f 6666/1032/1886 6662/1024/1881 6661/1025/1881 +f 6661/1025/1881 6665/1031/1886 6666/1032/1886 +f 6671/1036/2 6672/1028/2 6673/1029/2 +f 6673/1029/2 6674/1035/2 6671/1036/2 +f 6665/1038/1888 6667/1039/1888 6670/1040/1888 +f 6670/1040/1889 6663/1041/1889 6665/1038/1889 +f 6663/1031/1880 6670/1042/1880 6669/1043/1880 +f 6669/1043/1880 6660/1025/1880 6663/1031/1880 +f 6660/1041/1877 6669/1040/1877 6668/1039/1877 +f 6668/1039/1878 6661/1038/1878 6660/1041/1878 +f 6661/1025/1881 6668/1043/1881 6667/1042/1881 +f 6667/1042/1881 6665/1031/1881 6661/1025/1881 +f 6659/1024/1880 6672/1044/1880 6671/1045/1880 +f 6671/1045/1880 6664/1032/1880 6659/1024/1880 +f 6664/1040/1888 6671/1041/1888 6674/1038/1888 +f 6674/1038/1888 6666/1039/1888 6664/1040/1888 +f 6666/1032/1881 6674/1045/1881 6673/1044/1881 +f 6673/1044/1881 6662/1024/1881 6666/1032/1881 +f 6662/1039/1877 6673/1038/1877 6672/1041/1877 +f 6672/1041/1878 6659/1040/1878 6662/1039/1878 +f 6675/889/1890 6676/890/1891 6677/891/1892 +f 6677/891/1892 6678/892/1893 6675/889/1890 +f 6679/893/1894 6675/889/1890 6678/892/1893 +f 6678/892/1893 6680/894/1895 6679/893/1894 +f 6681/895/1896 6679/893/1894 6680/894/1895 +f 6680/894/1895 6682/896/1897 6681/895/1896 +f 6683/897/1898 6681/895/1896 6682/896/1897 +f 6682/896/1897 6684/898/1899 6683/897/1898 +f 6685/899/1900 6683/900/1898 6684/901/1899 +f 6684/901/1899 6686/902/1901 6685/899/1900 +f 6687/903/1902 6685/899/1900 6686/902/1901 +f 6686/902/1901 6688/904/1903 6687/903/1902 +f 6689/905/1904 6687/903/1902 6688/904/1903 +f 6688/904/1903 6690/906/1905 6689/905/1904 +f 6676/907/1891 6689/905/1904 6690/906/1905 +f 6690/906/1905 6677/908/1892 6676/907/1891 +f 6691/909/1906 6692/910/1907 6693/911/1908 +f 6693/911/1908 6694/912/1909 6691/909/1906 +f 6694/912/1909 6693/911/1908 6695/913/1910 +f 6695/913/1910 6696/914/1911 6694/912/1909 +f 6696/914/1911 6695/913/1910 6697/915/1912 +f 6697/915/1912 6698/916/1913 6696/914/1911 +f 6698/916/1913 6697/915/1912 6699/917/1914 +f 6699/917/1914 6700/918/1915 6698/916/1913 +f 6700/919/1915 6699/920/1914 6701/921/1916 +f 6701/921/1916 6702/922/1917 6700/919/1915 +f 6702/922/1917 6701/921/1916 6703/923/1918 +f 6703/923/1918 6704/924/1919 6702/922/1917 +f 6704/924/1919 6703/923/1918 6705/925/1920 +f 6705/925/1920 6706/926/1921 6704/924/1919 +f 6706/926/1921 6705/925/1920 6692/927/1907 +f 6692/927/1907 6691/928/1906 6706/926/1921 +f 6692/910/1907 6707/929/1922 6708/930/1923 +f 6708/930/1923 6693/911/1908 6692/910/1907 +f 6693/911/1908 6708/930/1923 6709/931/1924 +f 6709/931/1924 6695/913/1910 6693/911/1908 +f 6695/913/1910 6709/931/1924 6710/932/1925 +f 6710/932/1925 6697/915/1912 6695/913/1910 +f 6697/915/1912 6710/932/1925 6711/933/1926 +f 6711/933/1926 6699/917/1914 6697/915/1912 +f 6699/920/1914 6711/934/1926 6712/935/1927 +f 6712/935/1927 6701/921/1916 6699/920/1914 +f 6701/921/1916 6712/935/1927 6713/936/1928 +f 6713/936/1928 6703/923/1918 6701/921/1916 +f 6703/923/1918 6713/936/1928 6714/937/1929 +f 6714/937/1929 6705/925/1920 6703/923/1918 +f 6705/925/1920 6714/937/1929 6707/938/1922 +f 6707/938/1922 6692/927/1907 6705/925/1920 +f 6707/929/1922 6715/939/1930 6716/940/1931 +f 6716/940/1931 6708/930/1923 6707/929/1922 +f 6708/930/1923 6716/940/1931 6717/941/1932 +f 6717/941/1932 6709/931/1924 6708/930/1923 +f 6709/931/1924 6717/941/1932 6718/942/1933 +f 6718/942/1933 6710/932/1925 6709/931/1924 +f 6710/932/1925 6718/942/1933 6719/943/1934 +f 6719/943/1934 6711/933/1926 6710/932/1925 +f 6711/934/1926 6719/944/1934 6720/945/1935 +f 6720/945/1935 6712/935/1927 6711/934/1926 +f 6712/935/1927 6720/945/1935 6721/946/1936 +f 6721/946/1936 6713/936/1928 6712/935/1927 +f 6713/936/1928 6721/946/1936 6722/947/1937 +f 6722/947/1937 6714/937/1929 6713/936/1928 +f 6714/937/1929 6722/947/1937 6715/948/1930 +f 6715/948/1930 6707/938/1922 6714/937/1929 +f 6678/892/1893 6677/891/1892 6691/909/1906 +f 6691/909/1906 6694/912/1909 6678/892/1893 +f 6696/914/1911 6680/894/1895 6678/892/1893 +f 6678/892/1893 6694/912/1909 6696/914/1911 +f 6682/896/1897 6680/894/1895 6696/914/1911 +f 6696/914/1911 6698/916/1913 6682/896/1897 +f 6700/918/1915 6684/898/1899 6682/896/1897 +f 6682/896/1897 6698/916/1913 6700/918/1915 +f 6686/902/1901 6684/901/1899 6700/919/1915 +f 6700/919/1915 6702/922/1917 6686/902/1901 +f 6704/924/1919 6688/904/1903 6686/902/1901 +f 6686/902/1901 6702/922/1917 6704/924/1919 +f 6706/926/1921 6690/906/1905 6688/904/1903 +f 6688/904/1903 6704/924/1919 6706/926/1921 +f 6691/928/1906 6677/908/1892 6690/906/1905 +f 6690/906/1905 6706/926/1921 6691/928/1906 +f 6715/939/1938 6723/949/1938 6724/950/1938 +f 6724/950/1938 6716/940/1938 6715/939/1938 +f 6716/940/1939 6724/950/1939 6725/951/1939 +f 6725/951/1939 6717/941/1939 6716/940/1939 +f 6717/941/1940 6725/951/1940 6726/952/1940 +f 6726/952/1940 6718/942/1940 6717/941/1940 +f 6718/942/1941 6726/952/1941 6727/953/1941 +f 6727/953/1941 6719/943/1941 6718/942/1941 +f 6719/944/1942 6727/954/1942 6728/955/1942 +f 6728/955/1942 6720/945/1942 6719/944/1942 +f 6720/945/1943 6728/955/1943 6729/956/1943 +f 6729/956/1943 6721/946/1943 6720/945/1943 +f 6721/946/1944 6729/956/1944 6730/957/1944 +f 6730/957/1944 6722/947/1944 6721/946/1944 +f 6722/947/1945 6730/957/1945 6723/958/1945 +f 6723/958/1945 6715/948/1945 6722/947/1945 +f 6723/949/1946 6731/959/1946 6732/960/1946 +f 6732/960/1946 6724/950/1946 6723/949/1946 +f 6724/950/1947 6732/960/1947 6733/961/1947 +f 6733/961/1947 6725/951/1947 6724/950/1947 +f 6725/951/1948 6733/961/1948 6734/962/1948 +f 6734/962/1949 6726/952/1949 6725/951/1949 +f 6726/952/1950 6734/962/1950 6735/963/1950 +f 6735/963/1950 6727/953/1950 6726/952/1950 +f 6727/954/1951 6735/964/1951 6736/965/1951 +f 6736/965/1952 6728/955/1952 6727/954/1952 +f 6728/955/1953 6736/965/1953 6737/966/1953 +f 6737/966/1953 6729/956/1953 6728/955/1953 +f 6729/956/1954 6737/966/1954 6738/967/1954 +f 6738/967/1954 6730/957/1954 6729/956/1954 +f 6730/957/1955 6738/967/1955 6731/968/1955 +f 6731/968/1955 6723/958/1955 6730/957/1955 +f 6731/959/1938 6739/969/1938 6740/970/1938 +f 6740/970/1938 6732/960/1938 6731/959/1938 +f 6732/960/1939 6740/970/1939 6741/971/1939 +f 6741/971/1939 6733/961/1939 6732/960/1939 +f 6733/961/1940 6741/971/1940 6742/972/1940 +f 6742/972/1940 6734/962/1940 6733/961/1940 +f 6734/962/1941 6742/972/1941 6743/973/1941 +f 6743/973/1941 6735/963/1941 6734/962/1941 +f 6735/964/1942 6743/974/1942 6744/975/1942 +f 6744/975/1942 6736/965/1942 6735/964/1942 +f 6736/965/1956 6744/975/1956 6745/976/1956 +f 6745/976/1956 6737/966/1956 6736/965/1956 +f 6737/966/1944 6745/976/1944 6746/977/1944 +f 6746/977/1944 6738/967/1944 6737/966/1944 +f 6738/967/1945 6746/977/1945 6739/978/1945 +f 6739/978/1945 6731/968/1945 6738/967/1945 +f 6739/969/1957 6747/979/1957 6748/980/1957 +f 6748/980/1958 6740/970/1958 6739/969/1958 +f 6740/970/1959 6748/980/1959 6749/981/1959 +f 6749/981/1960 6741/971/1960 6740/970/1960 +f 6741/971/1961 6749/981/1961 6750/982/1961 +f 6750/982/1962 6742/972/1962 6741/971/1963 +f 6742/972/1964 6750/982/1964 6751/983/1964 +f 6751/983/1965 6743/973/1965 6742/972/1965 +f 6743/974/1966 6751/984/1966 6752/985/1966 +f 6752/985/1967 6744/975/1967 6743/974/1967 +f 6744/975/1968 6752/985/1968 6753/986/1968 +f 6753/986/1968 6745/976/1968 6744/975/1968 +f 6745/976/1969 6753/986/1969 6754/987/1969 +f 6754/987/1969 6746/977/1969 6745/976/1969 +f 6746/977/1970 6754/987/1970 6747/988/1970 +f 6747/988/1970 6739/978/1970 6746/977/1970 +f 6747/979/1971 6755/989/1971 6748/980/1971 +f 6748/980/1972 6755/989/1972 6749/981/1972 +f 6749/981/1973 6755/989/1973 6750/982/1973 +f 6750/982/1974 6755/989/1974 6751/983/1974 +f 6751/984/1975 6755/990/1975 6752/985/1975 +f 6752/985/1976 6755/990/1976 6753/986/1976 +f 6753/986/1977 6755/990/1977 6754/987/1977 +f 6754/987/1978 6755/990/1978 6747/988/1978 +f 6756/991/1979 6757/992/1980 6758/993/1981 +f 6758/993/1981 6759/994/1982 6756/991/1979 +f 6757/992/1980 6760/995/1983 6761/996/1984 +f 6761/996/1984 6758/993/1981 6757/992/1980 +f 6760/995/1983 6762/997/1985 6763/998/1986 +f 6763/998/1986 6761/996/1984 6760/995/1983 +f 6759/994/1982 6758/993/1981 6764/999/1987 +f 6764/999/1987 6765/1000/1988 6759/994/1982 +f 6758/993/1981 6761/996/1984 6766/1001/1989 +f 6766/1001/1989 6764/999/1987 6758/993/1981 +f 6761/996/1984 6763/998/1986 6767/1002/1990 +f 6767/1002/1990 6766/1001/1989 6761/996/1984 +f 6765/1003/1991 6764/999/1992 6766/1001/1991 +f 6766/1001/1991 6767/1004/1655 6765/1003/1991 +f 6767/1004/1655 6768/1005/1991 6765/1003/1991 +f 6769/991/1993 6770/994/1994 6771/993/1995 +f 6771/993/1995 6772/992/1996 6769/991/1993 +f 6772/992/1996 6771/993/1995 6773/996/1997 +f 6773/996/1997 6774/995/1998 6772/992/1996 +f 6774/995/1998 6773/996/1997 6775/998/1999 +f 6775/998/1999 6776/997/2000 6774/995/1998 +f 6770/994/1994 6777/1000/2001 6778/999/2002 +f 6778/999/2002 6771/993/1995 6770/994/1994 +f 6771/993/1995 6778/999/2002 6779/1001/2003 +f 6779/1001/2003 6773/996/1997 6771/993/1995 +f 6773/996/1997 6779/1001/2003 6780/1002/2004 +f 6780/1002/2004 6775/998/1999 6773/996/1997 +f 6777/1003/2005 6780/1004/2005 6779/1001/2006 +f 6779/1001/2006 6778/999/2005 6777/1003/2005 +f 6780/1004/2005 6777/1003/2005 6781/1005/2007 +f 6782/1006/2008 6783/1007/2008 6784/1008/2008 +f 6784/1008/2008 6785/1009/2008 6782/1006/2008 +f 6785/1010/2009 6784/1011/2010 6786/1012/2009 +f 6786/1012/2009 6787/1013/2009 6785/1010/2009 +f 6787/1009/1644 6786/1008/1644 6788/1007/1644 +f 6788/1007/1644 6789/1006/1645 6787/1009/1644 +f 6789/1013/1991 6788/1012/1991 6783/1011/1991 +f 6783/1011/1991 6782/1010/1991 6789/1013/1991 +f 6790/689/2011 6791/690/2012 6792/691/2013 +f 6792/691/2013 6793/692/2014 6790/689/2011 +f 6794/693/2015 6791/690/2016 6790/689/2017 +f 6790/689/2017 6795/694/2017 6794/693/2015 +f 6796/695/2018 6797/696/2019 6798/697/2020 +f 6798/697/2020 6799/698/2020 6796/695/2018 +f 6800/699/2021 6801/700/2021 6802/701/2022 +f 6802/701/2022 6803/702/2023 6800/699/2021 +f 6804/703/2024 6793/692/2025 6805/704/2026 +f 6805/704/2026 6806/705/2026 6804/703/2024 +f 6798/697/2027 6797/696/2028 6792/691/2013 +f 6792/691/2013 6791/690/2012 6798/697/2027 +f 6799/698/2029 6798/697/2029 6791/690/2016 +f 6791/690/2016 6794/706/2015 6799/698/2029 +f 6806/707/2030 6805/704/2030 6801/700/2021 +f 6801/700/2021 6800/699/2021 6806/707/2030 +f 6801/700/2031 6805/704/2032 6793/692/2014 +f 6793/692/2014 6792/691/2013 6801/700/2031 +f 6803/708/2033 6802/701/2034 6797/696/2019 +f 6797/696/2019 6796/695/2018 6803/708/2033 +f 6795/694/2035 6790/689/2035 6793/692/2025 +f 6793/692/2025 6804/703/2024 6795/694/2035 +f 6797/696/2028 6802/701/2036 6801/700/2031 +f 6801/700/2031 6792/691/2013 6797/696/2028 +f 6807/1014/2037 6808/1015/2037 6809/1016/2037 +f 6809/1016/2037 6810/1017/2037 6807/1014/2037 +f 6811/1018/2038 6812/1019/2038 6813/1020/2038 +f 6813/1020/2038 6814/1021/2038 6811/1018/2038 +f 6808/1022/2039 6807/1023/2039 6815/1024/2040 +f 6815/1024/2040 6816/1025/2040 6808/1022/2039 +f 6809/1026/2041 6808/1027/2041 6816/1028/2041 +f 6816/1028/2041 6817/1029/2041 6809/1026/2041 +f 6810/1023/2042 6809/1022/2042 6817/1025/2043 +f 6817/1025/2043 6818/1024/2043 6810/1023/2042 +f 6807/1027/2044 6810/1026/2044 6818/1029/2044 +f 6818/1029/2044 6815/1028/2044 6807/1027/2044 +f 6814/1030/2045 6819/1031/2046 6820/1032/2046 +f 6820/1032/2046 6811/1033/2045 6814/1030/2045 +f 6813/1034/2047 6821/1035/2048 6819/1036/2048 +f 6819/1036/2048 6814/1037/2047 6813/1034/2047 +f 6812/1033/2049 6822/1032/2050 6821/1031/2050 +f 6821/1031/2050 6813/1030/2049 6812/1033/2049 +f 6811/1037/2051 6820/1036/2052 6822/1035/2052 +f 6822/1035/2052 6812/1034/2051 6811/1037/2051 +f 6819/1031/2046 6816/1025/2040 6815/1024/2040 +f 6815/1024/2040 6820/1032/2046 6819/1031/2046 +f 6823/1035/2041 6824/1029/2041 6825/1028/2041 +f 6825/1028/2041 6826/1036/2041 6823/1035/2041 +f 6822/1032/2050 6818/1024/2043 6817/1025/2043 +f 6817/1025/2043 6821/1031/2050 6822/1032/2050 +f 6827/1036/2053 6828/1028/2053 6829/1029/2053 +f 6829/1029/2053 6830/1035/2053 6827/1036/2053 +f 6821/1038/2038 6823/1039/2038 6826/1040/2038 +f 6826/1040/2038 6819/1041/2038 6821/1038/2038 +f 6819/1031/2040 6826/1042/2040 6825/1043/2040 +f 6825/1043/2040 6816/1025/2040 6819/1031/2040 +f 6816/1041/2037 6825/1040/2037 6824/1039/2037 +f 6824/1039/2037 6817/1038/2037 6816/1041/2037 +f 6817/1025/2043 6824/1043/2043 6823/1042/2043 +f 6823/1042/2043 6821/1031/2043 6817/1025/2043 +f 6815/1024/2040 6828/1044/2040 6827/1045/2040 +f 6827/1045/2040 6820/1032/2040 6815/1024/2040 +f 6820/1040/2038 6827/1041/2038 6830/1038/2038 +f 6830/1038/2038 6822/1039/2038 6820/1040/2038 +f 6822/1032/2043 6830/1045/2043 6829/1044/2043 +f 6829/1044/2043 6818/1024/2043 6822/1032/2043 +f 6818/1039/2037 6829/1038/2037 6828/1041/2037 +f 6828/1041/2037 6815/1040/2037 6818/1039/2037 +f 6831/889/2054 6832/890/2055 6833/891/2056 +f 6833/891/2056 6834/892/2057 6831/889/2054 +f 6835/893/2058 6831/889/2054 6834/892/2057 +f 6834/892/2057 6836/894/2059 6835/893/2058 +f 6837/895/2060 6835/893/2058 6836/894/2059 +f 6836/894/2059 6838/896/2061 6837/895/2060 +f 6839/897/2062 6837/895/2060 6838/896/2061 +f 6838/896/2061 6840/898/2063 6839/897/2062 +f 6841/899/2064 6839/900/2062 6840/901/2063 +f 6840/901/2063 6842/902/2065 6841/899/2064 +f 6843/903/2066 6841/899/2064 6842/902/2065 +f 6842/902/2065 6844/904/2067 6843/903/2066 +f 6845/905/2068 6843/903/2066 6844/904/2067 +f 6844/904/2067 6846/906/2069 6845/905/2068 +f 6832/907/2055 6845/905/2068 6846/906/2069 +f 6846/906/2069 6833/908/2056 6832/907/2055 +f 6847/909/2070 6848/910/2071 6849/911/2072 +f 6849/911/2072 6850/912/2073 6847/909/2070 +f 6850/912/2073 6849/911/2072 6851/913/2074 +f 6851/913/2074 6852/914/2075 6850/912/2073 +f 6852/914/2075 6851/913/2074 6853/915/2076 +f 6853/915/2076 6854/916/2077 6852/914/2075 +f 6854/916/2077 6853/915/2076 6855/917/2078 +f 6855/917/2078 6856/918/2079 6854/916/2077 +f 6856/919/2079 6855/920/2078 6857/921/2080 +f 6857/921/2080 6858/922/2081 6856/919/2079 +f 6858/922/2081 6857/921/2080 6859/923/2082 +f 6859/923/2082 6860/924/2083 6858/922/2081 +f 6860/924/2083 6859/923/2082 6861/925/2084 +f 6861/925/2084 6862/926/2085 6860/924/2083 +f 6862/926/2085 6861/925/2084 6848/927/2071 +f 6848/927/2071 6847/928/2070 6862/926/2085 +f 6848/910/2071 6863/929/2086 6864/930/2087 +f 6864/930/2087 6849/911/2072 6848/910/2071 +f 6849/911/2072 6864/930/2087 6865/931/2088 +f 6865/931/2088 6851/913/2074 6849/911/2072 +f 6851/913/2074 6865/931/2088 6866/932/2089 +f 6866/932/2089 6853/915/2076 6851/913/2074 +f 6853/915/2076 6866/932/2089 6867/933/2090 +f 6867/933/2090 6855/917/2078 6853/915/2076 +f 6855/920/2078 6867/934/2090 6868/935/2091 +f 6868/935/2091 6857/921/2080 6855/920/2078 +f 6857/921/2080 6868/935/2091 6869/936/2092 +f 6869/936/2092 6859/923/2082 6857/921/2080 +f 6859/923/2082 6869/936/2092 6870/937/2093 +f 6870/937/2093 6861/925/2084 6859/923/2082 +f 6861/925/2084 6870/937/2093 6863/938/2086 +f 6863/938/2086 6848/927/2071 6861/925/2084 +f 6863/929/2086 6871/939/2094 6872/940/2095 +f 6872/940/2095 6864/930/2087 6863/929/2086 +f 6864/930/2087 6872/940/2095 6873/941/2096 +f 6873/941/2096 6865/931/2088 6864/930/2087 +f 6865/931/2088 6873/941/2096 6874/942/2097 +f 6874/942/2097 6866/932/2089 6865/931/2088 +f 6866/932/2089 6874/942/2097 6875/943/2098 +f 6875/943/2098 6867/933/2090 6866/932/2089 +f 6867/934/2090 6875/944/2098 6876/945/2099 +f 6876/945/2099 6868/935/2091 6867/934/2090 +f 6868/935/2091 6876/945/2099 6877/946/2100 +f 6877/946/2100 6869/936/2092 6868/935/2091 +f 6869/936/2092 6877/946/2100 6878/947/2101 +f 6878/947/2101 6870/937/2093 6869/936/2092 +f 6870/937/2093 6878/947/2101 6871/948/2094 +f 6871/948/2094 6863/938/2086 6870/937/2093 +f 6834/892/2057 6833/891/2056 6847/909/2070 +f 6847/909/2070 6850/912/2073 6834/892/2057 +f 6852/914/2075 6836/894/2059 6834/892/2057 +f 6834/892/2057 6850/912/2073 6852/914/2075 +f 6838/896/2061 6836/894/2059 6852/914/2075 +f 6852/914/2075 6854/916/2077 6838/896/2061 +f 6856/918/2079 6840/898/2063 6838/896/2061 +f 6838/896/2061 6854/916/2077 6856/918/2079 +f 6842/902/2065 6840/901/2063 6856/919/2079 +f 6856/919/2079 6858/922/2081 6842/902/2065 +f 6860/924/2083 6844/904/2067 6842/902/2065 +f 6842/902/2065 6858/922/2081 6860/924/2083 +f 6862/926/2085 6846/906/2069 6844/904/2067 +f 6844/904/2067 6860/924/2083 6862/926/2085 +f 6847/928/2070 6833/908/2056 6846/906/2069 +f 6846/906/2069 6862/926/2085 6847/928/2070 +f 6871/939/2102 6879/949/2102 6880/950/2102 +f 6880/950/2102 6872/940/2102 6871/939/2102 +f 6872/940/2103 6880/950/2103 6881/951/2103 +f 6881/951/2103 6873/941/2103 6872/940/2103 +f 6873/941/2104 6881/951/2104 6882/952/2104 +f 6882/952/2104 6874/942/2104 6873/941/2104 +f 6874/942/2105 6882/952/2105 6883/953/2105 +f 6883/953/2105 6875/943/2105 6874/942/2105 +f 6875/944/2106 6883/954/2106 6884/955/2106 +f 6884/955/2106 6876/945/2106 6875/944/2106 +f 6876/945/2107 6884/955/2107 6885/956/2107 +f 6885/956/2107 6877/946/2107 6876/945/2107 +f 6877/946/2108 6885/956/2108 6886/957/2108 +f 6886/957/2108 6878/947/2108 6877/946/2108 +f 6878/947/2109 6886/957/2109 6879/958/2109 +f 6879/958/2109 6871/948/2109 6878/947/2109 +f 6879/949/2110 6887/959/2110 6888/960/2110 +f 6888/960/2110 6880/950/2110 6879/949/2110 +f 6880/950/2111 6888/960/2111 6889/961/2111 +f 6889/961/2112 6881/951/2112 6880/950/2112 +f 6881/951/2113 6889/961/2113 6890/962/2113 +f 6890/962/2114 6882/952/2114 6881/951/2114 +f 6882/952/2115 6890/962/2115 6891/963/2115 +f 6891/963/2116 6883/953/2116 6882/952/2116 +f 6883/954/2117 6891/964/2117 6892/965/2117 +f 6892/965/2118 6884/955/2118 6883/954/2118 +f 6884/955/2119 6892/965/2119 6893/966/2119 +f 6893/966/2120 6885/956/2120 6884/955/2120 +f 6885/956/2121 6893/966/2121 6894/967/2121 +f 6894/967/2121 6886/957/2121 6885/956/2121 +f 6886/957/2122 6894/967/2122 6887/968/2122 +f 6887/968/2123 6879/958/2123 6886/957/2123 +f 6887/959/2102 6895/969/2102 6896/970/2102 +f 6896/970/2102 6888/960/2102 6887/959/2102 +f 6888/960/2124 6896/970/2124 6897/971/2124 +f 6897/971/2124 6889/961/2124 6888/960/2124 +f 6889/961/2104 6897/971/2104 6898/972/2104 +f 6898/972/2104 6890/962/2104 6889/961/2104 +f 6890/962/2125 6898/972/2125 6899/973/2125 +f 6899/973/2125 6891/963/2125 6890/962/2125 +f 6891/964/2106 6899/974/2106 6900/975/2106 +f 6900/975/2106 6892/965/2106 6891/964/2106 +f 6892/965/2126 6900/975/2126 6901/976/2126 +f 6901/976/2126 6893/966/2126 6892/965/2126 +f 6893/966/2127 6901/976/2127 6902/977/2127 +f 6902/977/2127 6894/967/2127 6893/966/2127 +f 6894/967/2128 6902/977/2128 6895/978/2128 +f 6895/978/2128 6887/968/2128 6894/967/2128 +f 6895/969/2129 6903/979/2129 6904/980/2129 +f 6904/980/2129 6896/970/2129 6895/969/2129 +f 6896/970/2130 6904/980/2130 6905/981/2130 +f 6905/981/2131 6897/971/2131 6896/970/2131 +f 6897/971/2132 6905/981/2132 6906/982/2132 +f 6906/982/2132 6898/972/2132 6897/971/2132 +f 6898/972/2133 6906/982/2133 6907/983/2133 +f 6907/983/2134 6899/973/2134 6898/972/2134 +f 6899/974/2135 6907/984/2135 6908/985/2135 +f 6908/985/2136 6900/975/2136 6899/974/2136 +f 6900/975/2137 6908/985/2137 6909/986/2137 +f 6909/986/2137 6901/976/2137 6900/975/2137 +f 6901/976/2138 6909/986/2138 6910/987/2138 +f 6910/987/2138 6902/977/2138 6901/976/2138 +f 6902/977/2139 6910/987/2139 6903/988/2139 +f 6903/988/2139 6895/978/2139 6902/977/2139 +f 6903/979/2140 6911/989/2140 6904/980/2140 +f 6904/980/2141 6911/989/2141 6905/981/2141 +f 6905/981/2142 6911/989/2142 6906/982/2142 +f 6906/982/2143 6911/989/2143 6907/983/2143 +f 6907/984/2144 6911/990/2144 6908/985/2144 +f 6908/985/2145 6911/990/2145 6909/986/2145 +f 6909/986/2146 6911/990/2146 6910/987/2146 +f 6910/987/2147 6911/990/2147 6903/988/2147 +f 6912/991/2148 6913/992/2149 6914/993/2150 +f 6914/993/2150 6915/994/2151 6912/991/2148 +f 6913/992/2149 6916/995/2152 6917/996/2153 +f 6917/996/2153 6914/993/2150 6913/992/2149 +f 6916/995/2152 6918/997/2154 6919/998/2155 +f 6919/998/2155 6917/996/2153 6916/995/2152 +f 6915/994/2151 6914/993/2150 6920/999/2156 +f 6920/999/2156 6921/1000/2157 6915/994/2151 +f 6914/993/2150 6917/996/2153 6922/1001/2158 +f 6922/1001/2158 6920/999/2156 6914/993/2150 +f 6917/996/2153 6919/998/2155 6923/1002/2159 +f 6923/1002/2159 6922/1001/2158 6917/996/2153 +f 6921/1003/406 6920/999/219 6922/1001/2160 +f 6922/1001/2160 6923/1004/2161 6921/1003/406 +f 6923/1004/2161 6924/1005/511 6921/1003/406 +f 6925/991/2162 6926/994/2163 6927/993/2164 +f 6927/993/2164 6928/992/2165 6925/991/2162 +f 6928/992/2165 6927/993/2164 6929/996/2166 +f 6929/996/2166 6930/995/2167 6928/992/2165 +f 6930/995/2167 6929/996/2166 6931/998/2168 +f 6931/998/2168 6932/997/2169 6930/995/2167 +f 6926/994/2163 6933/1000/2170 6934/999/2171 +f 6934/999/2171 6927/993/2164 6926/994/2163 +f 6927/993/2164 6934/999/2171 6935/1001/2172 +f 6935/1001/2172 6929/996/2166 6927/993/2164 +f 6929/996/2166 6935/1001/2172 6936/1002/2173 +f 6936/1002/2173 6931/998/2168 6929/996/2166 +f 6933/1003/2174 6936/1004/2175 6935/1001/501 +f 6935/1001/501 6934/999/2176 6933/1003/2174 +f 6936/1004/2175 6933/1003/2174 6937/1005/2177 +f 6938/1006/16 6939/1007/16 6940/1008/16 +f 6940/1008/16 6941/1009/16 6938/1006/16 +f 6941/1010/80 6940/1011/80 6942/1012/80 +f 6942/1012/80 6943/1013/80 6941/1010/80 +f 6943/1009/13 6942/1008/13 6944/1007/13 +f 6944/1007/13 6945/1006/13 6943/1009/13 +f 6945/1013/406 6944/1012/405 6939/1011/406 +f 6939/1011/406 6938/1010/2 6945/1013/406 +f 6946/689/2178 6947/690/2179 6948/691/2180 +f 6948/691/2180 6949/692/2181 6946/689/2178 +f 6950/693/2182 6947/690/2183 6946/689/2184 +f 6946/689/2184 6951/694/2184 6950/693/2182 +f 6952/695/2185 6953/696/2186 6954/697/2187 +f 6954/697/2187 6955/698/2187 6952/695/2185 +f 6956/699/2188 6957/700/2188 6958/701/2189 +f 6958/701/2189 6959/702/2189 6956/699/2188 +f 6960/703/2190 6949/692/2191 6961/704/2192 +f 6961/704/2192 6962/705/2192 6960/703/2190 +f 6954/697/2193 6953/696/2194 6948/691/2180 +f 6948/691/2180 6947/690/2179 6954/697/2193 +f 6955/698/2195 6954/697/2195 6947/690/2183 +f 6947/690/2183 6950/706/2182 6955/698/2195 +f 6962/707/2196 6961/704/2196 6957/700/2188 +f 6957/700/2188 6956/699/2188 6962/707/2196 +f 6957/700/2197 6961/704/2198 6949/692/2181 +f 6949/692/2181 6948/691/2180 6957/700/2197 +f 6959/708/2199 6958/701/2199 6953/696/2186 +f 6953/696/2186 6952/695/2185 6959/708/2199 +f 6951/694/2200 6946/689/2200 6949/692/2191 +f 6949/692/2191 6960/703/2190 6951/694/2200 +f 6953/696/2194 6958/701/2201 6957/700/2197 +f 6957/700/2197 6948/691/2180 6953/696/2194 +f 6963/1014/2202 6964/1015/2202 6965/1016/2202 +f 6965/1016/2202 6966/1017/2202 6963/1014/2202 +f 6967/1018/2203 6968/1019/2203 6969/1020/2203 +f 6969/1020/2203 6970/1021/2203 6967/1018/2203 +f 6964/1022/2204 6963/1023/2204 6971/1024/2204 +f 6971/1024/2204 6972/1025/2204 6964/1022/2204 +f 6965/1026/2205 6964/1027/2205 6972/1028/2206 +f 6972/1028/2206 6973/1029/2206 6965/1026/2205 +f 6966/1023/2207 6965/1022/2207 6973/1025/2207 +f 6973/1025/2207 6974/1024/2208 6966/1023/2207 +f 6963/1027/324 6966/1026/324 6974/1029/324 +f 6974/1029/324 6971/1028/324 6963/1027/324 +f 6970/1030/2209 6975/1031/2210 6976/1032/2210 +f 6976/1032/2210 6967/1033/2209 6970/1030/2209 +f 6969/1034/2211 6977/1035/2212 6975/1036/2212 +f 6975/1036/2212 6970/1037/2211 6969/1034/2211 +f 6968/1033/2213 6978/1032/2214 6977/1031/2214 +f 6977/1031/2214 6969/1030/2213 6968/1033/2213 +f 6967/1037/2215 6976/1036/2216 6978/1035/2216 +f 6978/1035/2216 6968/1034/2215 6967/1037/2215 +f 6975/1031/2210 6972/1025/2204 6971/1024/2204 +f 6971/1024/2204 6976/1032/2210 6975/1031/2210 +f 6979/1035/2217 6980/1029/2218 6981/1028/2217 +f 6981/1028/2217 6982/1036/2219 6979/1035/2217 +f 6978/1032/2214 6974/1024/2208 6973/1025/2207 +f 6973/1025/2207 6977/1031/2214 6978/1032/2214 +f 6983/1036/2220 6984/1028/2220 6985/1029/2220 +f 6985/1029/2220 6986/1035/2221 6983/1036/2220 +f 6977/1038/2203 6979/1039/2203 6982/1040/2203 +f 6982/1040/2203 6975/1041/2203 6977/1038/2203 +f 6975/1031/2222 6982/1042/2222 6981/1043/2222 +f 6981/1043/2222 6972/1025/2222 6975/1031/2222 +f 6972/1041/2202 6981/1040/2202 6980/1039/2202 +f 6980/1039/2202 6973/1038/2202 6972/1041/2202 +f 6973/1025/2208 6980/1043/2208 6979/1042/2208 +f 6979/1042/2208 6977/1031/2208 6973/1025/2208 +f 6971/1024/2204 6984/1044/2204 6983/1045/2204 +f 6983/1045/2204 6976/1032/2204 6971/1024/2204 +f 6976/1040/2203 6983/1041/2203 6986/1038/2203 +f 6986/1038/2203 6978/1039/2203 6976/1040/2203 +f 6978/1032/2223 6986/1045/2223 6985/1044/2223 +f 6985/1044/2208 6974/1024/2208 6978/1032/2208 +f 6974/1039/2202 6985/1038/2202 6984/1041/2202 +f 6984/1041/2202 6971/1040/2202 6974/1039/2202 +f 6987/889/2224 6988/890/2055 6989/891/2056 +f 6989/891/2056 6990/892/2057 6987/889/2224 +f 6991/893/2058 6987/889/2224 6990/892/2057 +f 6990/892/2057 6992/894/2059 6991/893/2058 +f 6993/895/2225 6991/893/2058 6992/894/2059 +f 6992/894/2059 6994/896/2061 6993/895/2225 +f 6995/897/2062 6993/895/2225 6994/896/2061 +f 6994/896/2061 6996/898/2063 6995/897/2062 +f 6997/899/2064 6995/900/2062 6996/901/2063 +f 6996/901/2063 6998/902/2065 6997/899/2064 +f 6999/903/2066 6997/899/2064 6998/902/2065 +f 6998/902/2065 7000/904/2067 6999/903/2066 +f 7001/905/2068 6999/903/2066 7000/904/2067 +f 7000/904/2067 7002/906/2069 7001/905/2068 +f 6988/907/2055 7001/905/2068 7002/906/2069 +f 7002/906/2069 6989/908/2056 6988/907/2055 +f 7003/909/2070 7004/910/2071 7005/911/2072 +f 7005/911/2072 7006/912/2073 7003/909/2070 +f 7006/912/2073 7005/911/2072 7007/913/2074 +f 7007/913/2074 7008/914/2075 7006/912/2073 +f 7008/914/2075 7007/913/2074 7009/915/2076 +f 7009/915/2076 7010/916/2077 7008/914/2075 +f 7010/916/2077 7009/915/2076 7011/917/2078 +f 7011/917/2078 7012/918/2079 7010/916/2077 +f 7012/919/2079 7011/920/2078 7013/921/2080 +f 7013/921/2080 7014/922/2081 7012/919/2079 +f 7014/922/2081 7013/921/2080 7015/923/2082 +f 7015/923/2082 7016/924/2083 7014/922/2081 +f 7016/924/2083 7015/923/2082 7017/925/2084 +f 7017/925/2084 7018/926/2085 7016/924/2083 +f 7018/926/2085 7017/925/2084 7004/927/2071 +f 7004/927/2071 7003/928/2070 7018/926/2085 +f 7004/910/2071 7019/929/2086 7020/930/2087 +f 7020/930/2087 7005/911/2072 7004/910/2071 +f 7005/911/2072 7020/930/2087 7021/931/2226 +f 7021/931/2226 7007/913/2074 7005/911/2072 +f 7007/913/2074 7021/931/2226 7022/932/2089 +f 7022/932/2089 7009/915/2076 7007/913/2074 +f 7009/915/2076 7022/932/2089 7023/933/2090 +f 7023/933/2090 7011/917/2078 7009/915/2076 +f 7011/920/2078 7023/934/2090 7024/935/2091 +f 7024/935/2091 7013/921/2080 7011/920/2078 +f 7013/921/2080 7024/935/2091 7025/936/2092 +f 7025/936/2092 7015/923/2082 7013/921/2080 +f 7015/923/2082 7025/936/2092 7026/937/2093 +f 7026/937/2093 7017/925/2084 7015/923/2082 +f 7017/925/2084 7026/937/2093 7019/938/2086 +f 7019/938/2086 7004/927/2071 7017/925/2084 +f 7019/929/2086 7027/939/2094 7028/940/2095 +f 7028/940/2095 7020/930/2087 7019/929/2086 +f 7020/930/2087 7028/940/2095 7029/941/2096 +f 7029/941/2096 7021/931/2226 7020/930/2087 +f 7021/931/2226 7029/941/2096 7030/942/2097 +f 7030/942/2097 7022/932/2089 7021/931/2226 +f 7022/932/2089 7030/942/2097 7031/943/2098 +f 7031/943/2098 7023/933/2090 7022/932/2089 +f 7023/934/2090 7031/944/2098 7032/945/2099 +f 7032/945/2099 7024/935/2091 7023/934/2090 +f 7024/935/2091 7032/945/2099 7033/946/2227 +f 7033/946/2227 7025/936/2092 7024/935/2091 +f 7025/936/2092 7033/946/2227 7034/947/2101 +f 7034/947/2101 7026/937/2093 7025/936/2092 +f 7026/937/2093 7034/947/2101 7027/948/2094 +f 7027/948/2094 7019/938/2086 7026/937/2093 +f 6990/892/2057 6989/891/2056 7003/909/2070 +f 7003/909/2070 7006/912/2073 6990/892/2057 +f 7008/914/2075 6992/894/2059 6990/892/2057 +f 6990/892/2057 7006/912/2073 7008/914/2075 +f 6994/896/2061 6992/894/2059 7008/914/2075 +f 7008/914/2075 7010/916/2077 6994/896/2061 +f 7012/918/2079 6996/898/2063 6994/896/2061 +f 6994/896/2061 7010/916/2077 7012/918/2079 +f 6998/902/2065 6996/901/2063 7012/919/2079 +f 7012/919/2079 7014/922/2081 6998/902/2065 +f 7016/924/2083 7000/904/2067 6998/902/2065 +f 6998/902/2065 7014/922/2081 7016/924/2083 +f 7018/926/2085 7002/906/2069 7000/904/2067 +f 7000/904/2067 7016/924/2083 7018/926/2085 +f 7003/928/2070 6989/908/2056 7002/906/2069 +f 7002/906/2069 7018/926/2085 7003/928/2070 +f 7027/939/2102 7035/949/2102 7036/950/2102 +f 7036/950/2102 7028/940/2102 7027/939/2102 +f 7028/940/2103 7036/950/2103 7037/951/2103 +f 7037/951/2103 7029/941/2103 7028/940/2103 +f 7029/941/2104 7037/951/2104 7038/952/2104 +f 7038/952/2104 7030/942/2104 7029/941/2104 +f 7030/942/2105 7038/952/2105 7039/953/2105 +f 7039/953/2105 7031/943/2105 7030/942/2105 +f 7031/944/2106 7039/954/2106 7040/955/2106 +f 7040/955/2106 7032/945/2106 7031/944/2106 +f 7032/945/2107 7040/955/2107 7041/956/2107 +f 7041/956/2107 7033/946/2107 7032/945/2107 +f 7033/946/2127 7041/956/2127 7042/957/2127 +f 7042/957/2127 7034/947/2127 7033/946/2127 +f 7034/947/2109 7042/957/2109 7035/958/2109 +f 7035/958/2109 7027/948/2109 7034/947/2109 +f 7035/949/2110 7043/959/2110 7044/960/2110 +f 7044/960/2110 7036/950/2110 7035/949/2110 +f 7036/950/2111 7044/960/2111 7045/961/2111 +f 7045/961/2228 7037/951/2228 7036/950/2228 +f 7037/951/2113 7045/961/2113 7046/962/2113 +f 7046/962/2113 7038/952/2113 7037/951/2113 +f 7038/952/2115 7046/962/2115 7047/963/2115 +f 7047/963/2116 7039/953/2116 7038/952/2116 +f 7039/954/2117 7047/964/2117 7048/965/2117 +f 7048/965/2118 7040/955/2118 7039/954/2118 +f 7040/955/2119 7048/965/2119 7049/966/2119 +f 7049/966/2120 7041/956/2120 7040/955/2120 +f 7041/956/2121 7049/966/2121 7050/967/2121 +f 7050/967/2121 7042/957/2121 7041/956/2121 +f 7042/957/2123 7050/967/2123 7043/968/2123 +f 7043/968/2123 7035/958/2123 7042/957/2123 +f 7043/959/2102 7051/969/2102 7052/970/2102 +f 7052/970/2102 7044/960/2102 7043/959/2102 +f 7044/960/2124 7052/970/2124 7053/971/2124 +f 7053/971/2124 7045/961/2124 7044/960/2124 +f 7045/961/2104 7053/971/2104 7054/972/2104 +f 7054/972/2104 7046/962/2104 7045/961/2104 +f 7046/962/2125 7054/972/2125 7055/973/2125 +f 7055/973/2125 7047/963/2125 7046/962/2125 +f 7047/964/2106 7055/974/2106 7056/975/2106 +f 7056/975/2106 7048/965/2106 7047/964/2106 +f 7048/965/2126 7056/975/2126 7057/976/2126 +f 7057/976/2126 7049/966/2126 7048/965/2126 +f 7049/966/2127 7057/976/2127 7058/977/2127 +f 7058/977/2127 7050/967/2127 7049/966/2127 +f 7050/967/2128 7058/977/2128 7051/978/2128 +f 7051/978/2128 7043/968/2128 7050/967/2128 +f 7051/969/2129 7059/979/2129 7060/980/2129 +f 7060/980/2129 7052/970/2129 7051/969/2129 +f 7052/970/2130 7060/980/2130 7061/981/2130 +f 7061/981/2131 7053/971/2131 7052/970/2131 +f 7053/971/2132 7061/981/2132 7062/982/2132 +f 7062/982/2132 7054/972/2132 7053/971/2132 +f 7054/972/2133 7062/982/2133 7063/983/2133 +f 7063/983/2134 7055/973/2134 7054/972/2134 +f 7055/974/2135 7063/984/2135 7064/985/2135 +f 7064/985/2136 7056/975/2136 7055/974/2136 +f 7056/975/2137 7064/985/2137 7065/986/2137 +f 7065/986/2137 7057/976/2137 7056/975/2137 +f 7057/976/2138 7065/986/2138 7066/987/2138 +f 7066/987/2138 7058/977/2138 7057/976/2138 +f 7058/977/2139 7066/987/2139 7059/988/2139 +f 7059/988/2139 7051/978/2139 7058/977/2139 +f 7059/979/2140 7067/989/2140 7060/980/2140 +f 7060/980/2141 7067/989/2141 7061/981/2141 +f 7061/981/2142 7067/989/2142 7062/982/2142 +f 7062/982/2143 7067/989/2143 7063/983/2143 +f 7063/984/2144 7067/990/2144 7064/985/2144 +f 7064/985/2145 7067/990/2145 7065/986/2145 +f 7065/986/2146 7067/990/2146 7066/987/2146 +f 7066/987/2147 7067/990/2147 7059/988/2147 +f 7068/991/2148 7069/992/2149 7070/993/2150 +f 7070/993/2150 7071/994/2229 7068/991/2148 +f 7069/992/2149 7072/995/2230 7073/996/2153 +f 7073/996/2153 7070/993/2150 7069/992/2149 +f 7072/995/2230 7074/997/2231 7075/998/2232 +f 7075/998/2232 7073/996/2153 7072/995/2230 +f 7071/994/2229 7070/993/2150 7076/999/2156 +f 7076/999/2156 7077/1000/2157 7071/994/2229 +f 7070/993/2150 7073/996/2153 7078/1001/2158 +f 7078/1001/2158 7076/999/2156 7070/993/2150 +f 7073/996/2153 7075/998/2232 7079/1002/2159 +f 7079/1002/2159 7078/1001/2158 7073/996/2153 +f 7077/1003/406 7076/999/219 7078/1001/2160 +f 7078/1001/2160 7079/1004/2161 7077/1003/406 +f 7079/1004/2161 7080/1005/511 7077/1003/406 +f 7081/991/2162 7082/994/2163 7083/993/2164 +f 7083/993/2164 7084/992/2165 7081/991/2162 +f 7084/992/2165 7083/993/2164 7085/996/2166 +f 7085/996/2166 7086/995/2167 7084/992/2165 +f 7086/995/2167 7085/996/2166 7087/998/2233 +f 7087/998/2233 7088/997/2234 7086/995/2167 +f 7082/994/2163 7089/1000/2170 7090/999/2171 +f 7090/999/2171 7083/993/2164 7082/994/2163 +f 7083/993/2164 7090/999/2171 7091/1001/2172 +f 7091/1001/2172 7085/996/2166 7083/993/2164 +f 7085/996/2166 7091/1001/2172 7092/1002/2173 +f 7092/1002/2173 7087/998/2233 7085/996/2166 +f 7089/1003/2174 7092/1004/2175 7091/1001/501 +f 7091/1001/501 7090/999/2176 7089/1003/2174 +f 7092/1004/2175 7089/1003/2174 7093/1005/2177 +f 7094/1006/16 7095/1007/16 7096/1008/16 +f 7096/1008/16 7097/1009/16 7094/1006/16 +f 7097/1010/2235 7096/1011/449 7098/1012/449 +f 7098/1012/449 7099/1013/2235 7097/1010/2235 +f 7099/1009/5 7098/1008/5 7100/1007/5 +f 7100/1007/5 7101/1006/5 7099/1009/5 +f 7101/1013/406 7100/1012/406 7095/1011/406 +f 7095/1011/406 7094/1010/2 7101/1013/406 +f 7102/689/2178 7103/690/2179 7104/691/2180 +f 7104/691/2180 7105/692/2181 7102/689/2178 +f 7106/693/2183 7103/690/2182 7102/689/2184 +f 7102/689/2184 7107/694/2184 7106/693/2183 +f 7108/695/2236 7109/696/2237 7110/697/2187 +f 7110/697/2187 7111/698/2187 7108/695/2236 +f 7112/699/2238 7113/700/2238 7114/701/2239 +f 7114/701/2239 7115/702/2239 7112/699/2238 +f 7116/703/2190 7105/692/2240 7117/704/2192 +f 7117/704/2192 7118/705/2192 7116/703/2190 +f 7110/697/2193 7109/696/2194 7104/691/2180 +f 7104/691/2180 7103/690/2179 7110/697/2193 +f 7111/698/2195 7110/697/2195 7103/690/2182 +f 7103/690/2182 7106/706/2183 7111/698/2195 +f 7118/707/2196 7117/704/2196 7113/700/2238 +f 7113/700/2238 7112/699/2238 7118/707/2196 +f 7113/700/2197 7117/704/2198 7105/692/2181 +f 7105/692/2181 7104/691/2180 7113/700/2197 +f 7115/708/2199 7114/701/2199 7109/696/2237 +f 7109/696/2237 7108/695/2236 7115/708/2199 +f 7107/694/2200 7102/689/2241 7105/692/2240 +f 7105/692/2240 7116/703/2190 7107/694/2200 +f 7109/696/2194 7114/701/2201 7113/700/2197 +f 7113/700/2197 7104/691/2180 7109/696/2194 +f 7119/1014/2202 7120/1015/2202 7121/1016/2202 +f 7121/1016/2202 7122/1017/2202 7119/1014/2202 +f 7123/1018/2203 7124/1019/2203 7125/1020/2203 +f 7125/1020/2203 7126/1021/2203 7123/1018/2203 +f 7120/1022/2204 7119/1023/2242 7127/1024/2204 +f 7127/1024/2204 7128/1025/2243 7120/1022/2204 +f 7121/1026/2205 7120/1027/2205 7128/1028/2206 +f 7128/1028/2206 7129/1029/2206 7121/1026/2205 +f 7122/1023/2244 7121/1022/2244 7129/1025/2207 +f 7129/1025/2207 7130/1024/2207 7122/1023/2244 +f 7119/1027/324 7122/1026/324 7130/1029/324 +f 7130/1029/324 7127/1028/324 7119/1027/324 +f 7126/1030/2209 7131/1031/2210 7132/1032/2210 +f 7132/1032/2210 7123/1033/2209 7126/1030/2209 +f 7125/1034/2211 7133/1035/2212 7131/1036/2212 +f 7131/1036/2212 7126/1037/2211 7125/1034/2211 +f 7124/1033/2213 7134/1032/2214 7133/1031/2214 +f 7133/1031/2214 7125/1030/2213 7124/1033/2213 +f 7123/1037/2216 7132/1036/2215 7134/1035/2215 +f 7134/1035/2215 7124/1034/2216 7123/1037/2216 +f 7131/1031/2210 7128/1025/2243 7127/1024/2204 +f 7127/1024/2204 7132/1032/2210 7131/1031/2210 +f 7135/1035/2206 7136/1029/2217 7137/1028/2245 +f 7137/1028/2245 7138/1036/2219 7135/1035/2206 +f 7134/1032/2214 7130/1024/2207 7129/1025/2207 +f 7129/1025/2207 7133/1031/2214 7134/1032/2214 +f 7139/1036/2220 7140/1028/2220 7141/1029/2220 +f 7141/1029/2220 7142/1035/2220 7139/1036/2220 +f 7133/1038/2203 7135/1039/2203 7138/1040/2203 +f 7138/1040/2203 7131/1041/2203 7133/1038/2203 +f 7131/1031/2243 7138/1042/2243 7137/1043/2243 +f 7137/1043/2243 7128/1025/2243 7131/1031/2243 +f 7128/1041/2202 7137/1040/2202 7136/1039/2202 +f 7136/1039/2202 7129/1038/2202 7128/1041/2202 +f 7129/1025/2246 7136/1043/2246 7135/1042/2246 +f 7135/1042/2246 7133/1031/2246 7129/1025/2246 +f 7127/1024/2204 7140/1044/2204 7139/1045/2204 +f 7139/1045/2204 7132/1032/2204 7127/1024/2204 +f 7132/1040/2203 7139/1041/2203 7142/1038/2203 +f 7142/1038/2203 7134/1039/2203 7132/1040/2203 +f 7134/1032/2208 7142/1045/2208 7141/1044/2208 +f 7141/1044/2208 7130/1024/2208 7134/1032/2208 +f 7130/1039/2202 7141/1038/2202 7140/1041/2202 +f 7140/1041/2202 7127/1040/2202 7130/1039/2202 +f 7143/1014/2247 7144/1015/2248 7145/1016/2248 +f 7145/1016/2248 7146/1017/2247 7143/1014/2247 +f 7147/1018/2249 7148/1019/2249 7149/1020/2249 +f 7149/1020/2249 7150/1021/2249 7147/1018/2249 +f 7144/1022/2250 7143/1023/2250 7151/1024/2250 +f 7151/1024/2250 7152/1025/2251 7144/1022/2250 +f 7145/1026/8 7144/1027/8 7152/1028/8 +f 7152/1028/8 7153/1029/8 7145/1026/8 +f 7146/1023/2252 7145/1022/2252 7153/1025/2252 +f 7153/1025/2252 7154/1024/2252 7146/1023/2252 +f 7143/1027/2 7146/1026/2 7154/1029/2 +f 7154/1029/2 7151/1028/2 7143/1027/2 +f 7150/1030/2253 7155/1031/2254 7156/1032/2254 +f 7156/1032/2254 7147/1033/2253 7150/1030/2253 +f 7149/1034/2255 7157/1035/2255 7155/1036/2255 +f 7155/1036/2255 7150/1037/2255 7149/1034/2255 +f 7148/1033/2256 7158/1032/2257 7157/1031/2258 +f 7157/1031/2258 7149/1030/2256 7148/1033/2256 +f 7147/1037/2259 7156/1036/2259 7158/1035/2259 +f 7158/1035/2259 7148/1034/2259 7147/1037/2259 +f 7155/1031/2254 7152/1025/2251 7151/1024/2250 +f 7151/1024/2250 7156/1032/2254 7155/1031/2254 +f 7159/1035/8 7160/1029/8 7161/1028/8 +f 7161/1028/8 7162/1036/8 7159/1035/8 +f 7158/1032/2257 7154/1024/2252 7153/1025/2252 +f 7153/1025/2252 7157/1031/2258 7158/1032/2257 +f 7163/1036/2 7164/1028/2 7165/1029/2 +f 7165/1029/2 7166/1035/2 7163/1036/2 +f 7157/1038/2260 7159/1039/2260 7162/1040/2260 +f 7162/1040/2260 7155/1041/2260 7157/1038/2260 +f 7155/1031/2251 7162/1042/2251 7161/1043/2251 +f 7161/1043/2251 7152/1025/2251 7155/1031/2251 +f 7152/1041/2248 7161/1040/2248 7160/1039/2248 +f 7160/1039/2248 7153/1038/2248 7152/1041/2248 +f 7153/1025/2261 7160/1043/2261 7159/1042/2261 +f 7159/1042/2261 7157/1031/2261 7153/1025/2261 +f 7151/1024/2250 7164/1044/2250 7163/1045/2250 +f 7163/1045/2250 7156/1032/2250 7151/1024/2250 +f 7156/1040/2260 7163/1041/2260 7166/1038/2260 +f 7166/1038/2260 7158/1039/2260 7156/1040/2260 +f 7158/1032/2261 7166/1045/2261 7165/1044/2261 +f 7165/1044/2252 7154/1024/2252 7158/1032/2252 +f 7154/1039/2247 7165/1038/2247 7164/1041/2247 +f 7164/1041/2248 7151/1040/2248 7154/1039/2248 +f 7167/1046/2262 7168/1047/2263 7169/1048/2264 +f 7169/1048/2264 7170/1049/2265 7167/1046/2262 +f 7171/1050/16 7167/1051/16 7170/1052/16 +f 7170/1052/16 7172/1053/16 7171/1050/16 +f 7173/1054/2266 7174/1055/2267 7175/1056/2268 +f 7175/1056/2268 7176/1057/2269 7173/1054/2266 +f 7177/1058/13 7169/1059/13 7168/1060/13 +f 7168/1060/13 7178/1061/13 7177/1058/13 +f 7179/1055/2270 7180/1054/2271 7181/1057/2272 +f 7181/1057/2272 7182/1056/2273 7179/1055/2270 +f 7183/1062/36 7184/1063/36 7185/1064/36 +f 7185/1064/36 7186/1065/36 7183/1062/36 +f 7187/1066/36 7188/1067/36 7189/1068/36 +f 7189/1068/36 7190/1069/36 7187/1066/36 +f 7173/1070/16 7176/1071/16 7167/1051/16 +f 7167/1051/16 7171/1050/16 7173/1070/16 +f 7181/1072/16 7180/1073/16 7172/1053/16 +f 7172/1053/16 7170/1052/16 7181/1072/16 +f 7176/1057/2274 7175/1056/2274 7191/1074/2274 +f 7191/1074/2 7192/1075/2 7176/1057/2 +f 7175/1071/2275 7168/1060/2275 7193/1076/2275 +f 7193/1076/2276 7191/1077/2276 7175/1071/2276 +f 7168/1078/2277 7167/1057/2277 7194/1079/2277 +f 7194/1079/2278 7193/1074/2278 7168/1078/2278 +f 7167/1051/2279 7176/1071/2279 7192/1080/2279 +f 7192/1080/2280 7194/1081/2280 7167/1051/2280 +f 7181/1072/2281 7170/1052/2281 7195/1082/2281 +f 7195/1082/2282 7196/1083/2282 7181/1072/2282 +f 7170/1057/2283 7169/1056/2283 7197/1084/2283 +f 7197/1084/2284 7195/1085/2284 7170/1057/2284 +f 7169/1059/2285 7182/1086/2285 7198/1087/2285 +f 7198/1087/2286 7197/1088/2286 7169/1059/2286 +f 7182/1056/2287 7181/1057/2287 7196/1079/2287 +f 7196/1079/2288 7198/1084/2288 7182/1056/2288 +f 7192/1075/2 7191/1074/2 7184/1089/2 +f 7184/1089/2 7183/1090/2 7192/1075/2 +f 7198/1084/8 7196/1079/8 7188/1090/8 +f 7188/1090/8 7187/1089/8 7198/1084/8 +f 7186/1065/36 7185/1064/36 7190/1069/36 +f 7190/1069/36 7189/1068/36 7186/1065/36 +f 7183/1091/6 7186/1092/6 7194/1081/6 +f 7194/1081/6 7192/1080/6 7183/1091/6 +f 7189/1093/6 7188/1094/6 7196/1083/6 +f 7196/1083/6 7195/1082/6 7189/1093/6 +f 7199/1095/5 7200/1096/5 7201/1097/5 +f 7201/1097/5 7202/1098/5 7199/1095/5 +f 7190/1093/5 7185/1092/5 7193/1076/5 +f 7193/1076/5 7197/1088/5 7190/1093/5 +f 7203/1095/5 7204/1096/5 7205/1097/5 +f 7205/1097/5 7206/1098/5 7203/1095/5 +f 7186/1092/6 7189/1093/6 7195/1082/6 +f 7195/1082/6 7194/1081/6 7186/1092/6 +f 7187/1066/36 7190/1069/36 7200/1099/36 +f 7200/1099/36 7199/1100/36 7187/1066/36 +f 7190/1089/2289 7197/1084/2289 7201/1101/2289 +f 7201/1101/2290 7200/1102/2290 7190/1089/2290 +f 7198/1084/8 7187/1089/8 7199/1102/8 +f 7199/1102/8 7202/1101/8 7198/1084/8 +f 7185/1064/36 7184/1063/36 7204/1103/36 +f 7204/1103/36 7203/1104/36 7185/1064/36 +f 7184/1089/2 7191/1074/2 7205/1105/2 +f 7205/1105/2 7204/1102/2 7184/1089/2 +f 7193/1074/8 7185/1089/8 7203/1102/8 +f 7203/1102/8 7206/1105/8 7193/1074/8 +f 7207/1106/2291 7208/1107/2291 7169/1056/2291 +f 7169/1056/2292 7177/1055/2292 7207/1106/2292 +f 7209/1107/2293 7210/1108/2293 7179/1055/2293 +f 7179/1055/2294 7182/1056/2294 7209/1107/2294 +f 7211/1106/2295 7212/1109/2295 7175/1056/2295 +f 7175/1056/2296 7174/1055/2296 7211/1106/2296 +f 7213/1109/2297 7214/1106/2297 7178/1055/2297 +f 7178/1055/2298 7168/1078/2298 7213/1109/2298 +f 7208/1110/2299 7209/1111/2299 7182/1112/2299 +f 7182/1112/2300 7169/1048/2300 7208/1110/2300 +f 7212/1113/2301 7213/1114/2301 7168/1047/2301 +f 7168/1047/2302 7175/1115/2302 7212/1113/2302 +f 7207/1097/13 7210/1098/13 7209/1095/13 +f 7209/1095/13 7208/1096/13 7207/1097/13 +f 7212/1096/13 7211/1097/13 7214/1098/13 +f 7214/1098/13 7213/1095/13 7212/1096/13 +f 7215/689/2303 7216/690/2304 7217/691/2305 +f 7217/691/2305 7218/692/2306 7215/689/2303 +f 7219/693/2307 7216/690/2308 7215/689/2309 +f 7215/689/2309 7220/694/2309 7219/693/2307 +f 7221/695/2310 7222/696/2311 7223/697/2312 +f 7223/697/2312 7224/698/2312 7221/695/2310 +f 7225/699/2313 7226/700/2313 7227/701/2314 +f 7227/701/2314 7228/702/2314 7225/699/2313 +f 7229/703/2315 7218/692/2316 7230/704/2317 +f 7230/704/2317 7231/705/2317 7229/703/2315 +f 7223/697/2318 7222/696/2319 7217/691/2305 +f 7217/691/2305 7216/690/2304 7223/697/2318 +f 7224/698/2320 7223/697/2320 7216/690/2308 +f 7216/690/2308 7219/706/2307 7224/698/2320 +f 7231/707/2321 7230/704/2321 7226/700/2313 +f 7226/700/2313 7225/699/2313 7231/707/2321 +f 7226/700/2322 7230/704/2323 7218/692/2306 +f 7218/692/2306 7217/691/2305 7226/700/2322 +f 7228/708/2324 7227/701/2324 7222/696/2311 +f 7222/696/2311 7221/695/2310 7228/708/2324 +f 7220/694/2325 7215/689/2325 7218/692/2316 +f 7218/692/2316 7229/703/2315 7220/694/2325 +f 7222/696/2319 7227/701/2326 7226/700/2322 +f 7226/700/2322 7217/691/2305 7222/696/2319 +f 7232/1014/2247 7233/1015/2248 7234/1016/2248 +f 7234/1016/2248 7235/1017/2247 7232/1014/2247 +f 7236/1018/2249 7237/1019/2249 7238/1020/2249 +f 7238/1020/2249 7239/1021/2249 7236/1018/2249 +f 7233/1022/2250 7232/1023/2250 7240/1024/2250 +f 7240/1024/2250 7241/1025/2251 7233/1022/2250 +f 7234/1026/8 7233/1027/8 7241/1028/8 +f 7241/1028/8 7242/1029/8 7234/1026/8 +f 7235/1023/2252 7234/1022/2252 7242/1025/2252 +f 7242/1025/2252 7243/1024/2252 7235/1023/2252 +f 7232/1027/2 7235/1026/2 7243/1029/2 +f 7243/1029/2 7240/1028/2 7232/1027/2 +f 7239/1030/2253 7244/1031/2254 7245/1032/2254 +f 7245/1032/2254 7236/1033/2253 7239/1030/2253 +f 7238/1034/2255 7246/1035/2255 7244/1036/2255 +f 7244/1036/2255 7239/1037/2255 7238/1034/2255 +f 7237/1033/2256 7247/1032/2257 7246/1031/2258 +f 7246/1031/2258 7238/1030/2256 7237/1033/2256 +f 7236/1037/2259 7245/1036/2259 7247/1035/2259 +f 7247/1035/2259 7237/1034/2259 7236/1037/2259 +f 7244/1031/2254 7241/1025/2251 7240/1024/2250 +f 7240/1024/2250 7245/1032/2254 7244/1031/2254 +f 7248/1035/8 7249/1029/8 7250/1028/8 +f 7250/1028/8 7251/1036/8 7248/1035/8 +f 7247/1032/2257 7243/1024/2252 7242/1025/2252 +f 7242/1025/2252 7246/1031/2258 7247/1032/2257 +f 7252/1036/2 7253/1028/2 7254/1029/2 +f 7254/1029/2 7255/1035/2 7252/1036/2 +f 7246/1038/2260 7248/1039/2260 7251/1040/2260 +f 7251/1040/2260 7244/1041/2260 7246/1038/2260 +f 7244/1031/2251 7251/1042/2251 7250/1043/2251 +f 7250/1043/2251 7241/1025/2251 7244/1031/2251 +f 7241/1041/2248 7250/1040/2248 7249/1039/2248 +f 7249/1039/2248 7242/1038/2248 7241/1041/2248 +f 7242/1025/2261 7249/1043/2261 7248/1042/2261 +f 7248/1042/2261 7246/1031/2261 7242/1025/2261 +f 7240/1024/2250 7253/1044/2250 7252/1045/2250 +f 7252/1045/2250 7245/1032/2250 7240/1024/2250 +f 7245/1040/2260 7252/1041/2260 7255/1038/2260 +f 7255/1038/2260 7247/1039/2260 7245/1040/2260 +f 7247/1032/2261 7255/1045/2261 7254/1044/2261 +f 7254/1044/2252 7243/1024/2252 7247/1032/2252 +f 7243/1039/2247 7254/1038/2247 7253/1041/2247 +f 7253/1041/2248 7240/1040/2248 7243/1039/2248 +f 7256/1014/2327 7257/1015/2328 7258/1016/2329 +f 7258/1016/2329 7259/1017/2327 7256/1014/2327 +f 7260/1018/2330 7261/1019/2331 7262/1020/2332 +f 7262/1020/2332 7263/1021/2332 7260/1018/2330 +f 7257/1022/2333 7256/1023/2333 7264/1024/2333 +f 7264/1024/2333 7265/1025/2334 7257/1022/2333 +f 7258/1026/2335 7257/1027/2335 7265/1028/2336 +f 7265/1028/2336 7266/1029/2336 7258/1026/2335 +f 7259/1023/2337 7258/1022/2337 7266/1025/2337 +f 7266/1025/2337 7267/1024/2337 7259/1023/2337 +f 7256/1027/2338 7259/1026/2338 7267/1029/2339 +f 7267/1029/2339 7264/1028/2339 7256/1027/2338 +f 7263/1030/2340 7268/1031/2341 7269/1032/2342 +f 7269/1032/2342 7260/1033/2340 7263/1030/2340 +f 7262/1034/2343 7270/1035/2344 7268/1036/2344 +f 7268/1036/2344 7263/1037/2343 7262/1034/2343 +f 7261/1033/2345 7271/1032/2346 7270/1031/2346 +f 7270/1031/2346 7262/1030/2345 7261/1033/2345 +f 7260/1037/2347 7269/1036/2348 7271/1035/2348 +f 7271/1035/2348 7261/1034/2347 7260/1037/2347 +f 7268/1031/2341 7265/1025/2334 7264/1024/2333 +f 7264/1024/2333 7269/1032/2342 7268/1031/2341 +f 7272/1035/2349 7273/1029/2350 7274/1028/2349 +f 7274/1028/2349 7275/1036/2336 7272/1035/2349 +f 7271/1032/2346 7267/1024/2337 7266/1025/2337 +f 7266/1025/2337 7270/1031/2346 7271/1032/2346 +f 7276/1036/2339 7277/1028/2339 7278/1029/2339 +f 7278/1029/2339 7279/1035/2339 7276/1036/2339 +f 7270/1038/2330 7272/1039/2330 7275/1040/2330 +f 7275/1040/2351 7268/1041/2351 7270/1038/2351 +f 7268/1031/2352 7275/1042/2352 7274/1043/2352 +f 7274/1043/2352 7265/1025/2352 7268/1031/2352 +f 7265/1041/2327 7274/1040/2327 7273/1039/2327 +f 7273/1039/2353 7266/1038/2353 7265/1041/2353 +f 7266/1025/2354 7273/1043/2354 7272/1042/2354 +f 7272/1042/2354 7270/1031/2354 7266/1025/2354 +f 7264/1024/2355 7277/1044/2355 7276/1045/2355 +f 7276/1045/2356 7269/1032/2356 7264/1024/2356 +f 7269/1040/2330 7276/1041/2330 7279/1038/2330 +f 7279/1038/2351 7271/1039/2351 7269/1040/2351 +f 7271/1032/2357 7279/1045/2357 7278/1044/2357 +f 7278/1044/2357 7267/1024/2357 7271/1032/2357 +f 7267/1039/2327 7278/1038/2327 7277/1041/2327 +f 7277/1041/2327 7264/1040/2327 7267/1039/2327 +f 7280/1046/2358 7281/1047/2359 7282/1048/2360 +f 7282/1048/2360 7283/1049/2361 7280/1046/2358 +f 7284/1050/2362 7280/1051/2362 7283/1052/2362 +f 7283/1052/2362 7285/1053/2362 7284/1050/2362 +f 7286/1054/2363 7287/1055/2364 7288/1056/2365 +f 7288/1056/2365 7289/1057/2366 7286/1054/2363 +f 7290/1058/2367 7282/1059/2367 7281/1060/2368 +f 7281/1060/2368 7291/1061/2368 7290/1058/2367 +f 7292/1055/2369 7293/1054/2370 7294/1057/2371 +f 7294/1057/2371 7295/1056/2372 7292/1055/2369 +f 7296/1062/36 7297/1063/36 7298/1064/36 +f 7298/1064/36 7299/1065/36 7296/1062/36 +f 7300/1066/37 7301/1067/37 7302/1068/37 +f 7302/1068/37 7303/1069/37 7300/1066/37 +f 7286/1070/2373 7289/1071/2373 7280/1051/2362 +f 7280/1051/2362 7284/1050/2362 7286/1070/2373 +f 7294/1072/2374 7293/1073/2374 7285/1053/2362 +f 7285/1053/2362 7283/1052/2362 7294/1072/2374 +f 7289/1057/2375 7288/1056/2375 7304/1074/2375 +f 7304/1074/2338 7305/1075/2338 7289/1057/2338 +f 7288/1071/2376 7281/1060/2376 7306/1076/2376 +f 7306/1076/2377 7304/1077/2377 7288/1071/2377 +f 7281/1078/2378 7280/1057/2378 7307/1079/2378 +f 7307/1079/2379 7306/1074/2379 7281/1078/2379 +f 7280/1051/2380 7289/1071/2380 7305/1080/2380 +f 7305/1080/2381 7307/1081/2381 7280/1051/2381 +f 7294/1072/2382 7283/1052/2382 7308/1082/2382 +f 7308/1082/2383 7309/1083/2383 7294/1072/2383 +f 7283/1057/2384 7282/1056/2384 7310/1084/2384 +f 7310/1084/2385 7308/1085/2385 7283/1057/2385 +f 7282/1059/2386 7295/1086/2386 7311/1087/2386 +f 7311/1087/2387 7310/1088/2387 7282/1059/2387 +f 7295/1056/2388 7294/1057/2388 7309/1079/2388 +f 7309/1079/2389 7311/1084/2389 7295/1056/2389 +f 7305/1075/2338 7304/1074/2338 7297/1089/2338 +f 7297/1089/2338 7296/1090/2338 7305/1075/2338 +f 7311/1084/2336 7309/1079/2336 7301/1090/2336 +f 7301/1090/2336 7300/1089/2336 7311/1084/2336 +f 7299/1065/36 7298/1064/36 7303/1069/36 +f 7303/1069/37 7302/1068/37 7299/1065/37 +f 7296/1091/2374 7299/1092/2374 7307/1081/2374 +f 7307/1081/2374 7305/1080/2374 7296/1091/2374 +f 7302/1093/2374 7301/1094/2374 7309/1083/2374 +f 7309/1083/2374 7308/1082/2374 7302/1093/2374 +f 7312/1095/2368 7313/1096/2368 7314/1097/2368 +f 7314/1097/2390 7315/1098/2390 7312/1095/2390 +f 7303/1093/2390 7298/1092/2390 7306/1076/2390 +f 7306/1076/2368 7310/1088/2368 7303/1093/2368 +f 7316/1095/2390 7317/1096/2390 7318/1097/2390 +f 7318/1097/2390 7319/1098/2390 7316/1095/2390 +f 7299/1092/2374 7302/1093/2374 7308/1082/2374 +f 7308/1082/2374 7307/1081/2374 7299/1092/2374 +f 7300/1066/37 7303/1069/37 7313/1099/37 +f 7313/1099/15 7312/1100/15 7300/1066/15 +f 7303/1089/2391 7310/1084/2391 7314/1101/2391 +f 7314/1101/2392 7313/1102/2392 7303/1089/2392 +f 7311/1084/2336 7300/1089/2336 7312/1102/2336 +f 7312/1102/2336 7315/1101/2336 7311/1084/2336 +f 7298/1064/15 7297/1063/15 7317/1103/15 +f 7317/1103/37 7316/1104/37 7298/1064/37 +f 7297/1089/2338 7304/1074/2338 7318/1105/2338 +f 7318/1105/2338 7317/1102/2338 7297/1089/2338 +f 7306/1074/2336 7298/1089/2336 7316/1102/2336 +f 7316/1102/2336 7319/1105/2336 7306/1074/2336 +f 7320/1106/2393 7321/1107/2393 7282/1056/2393 +f 7282/1056/2394 7290/1055/2394 7320/1106/2394 +f 7322/1107/2395 7323/1108/2395 7292/1055/2395 +f 7292/1055/2396 7295/1056/2396 7322/1107/2396 +f 7324/1106/2397 7325/1109/2397 7288/1056/2397 +f 7288/1056/2398 7287/1055/2398 7324/1106/2398 +f 7326/1109/2399 7327/1106/2399 7291/1055/2399 +f 7291/1055/2400 7281/1078/2400 7326/1109/2400 +f 7321/1110/2401 7322/1111/2401 7295/1112/2401 +f 7295/1112/2402 7282/1048/2402 7321/1110/2402 +f 7325/1113/2403 7326/1114/2403 7281/1047/2403 +f 7281/1047/2404 7288/1115/2404 7325/1113/2404 +f 7320/1097/2368 7323/1098/2368 7322/1095/2368 +f 7322/1095/2390 7321/1096/2390 7320/1097/2390 +f 7325/1096/2390 7324/1097/2390 7327/1098/2390 +f 7327/1098/2367 7326/1095/2367 7325/1096/2367 +f 7328/689/2405 7329/690/2406 7330/691/2407 +f 7330/691/2407 7331/692/2408 7328/689/2405 +f 7332/693/2409 7329/690/2410 7328/689/2411 +f 7328/689/2411 7333/694/2411 7332/693/2409 +f 7334/695/2412 7335/696/2413 7336/697/2414 +f 7336/697/2414 7337/698/2414 7334/695/2412 +f 7338/699/2415 7339/700/2416 7340/701/2417 +f 7340/701/2417 7341/702/2417 7338/699/2415 +f 7342/703/2418 7331/692/2419 7343/704/2420 +f 7343/704/2420 7344/705/2420 7342/703/2418 +f 7336/697/2421 7335/696/2422 7330/691/2407 +f 7330/691/2407 7329/690/2406 7336/697/2421 +f 7337/698/2423 7336/697/2423 7329/690/2410 +f 7329/690/2410 7332/706/2409 7337/698/2423 +f 7344/707/2424 7343/704/2424 7339/700/2416 +f 7339/700/2416 7338/699/2415 7344/707/2424 +f 7339/700/2425 7343/704/2426 7331/692/2408 +f 7331/692/2408 7330/691/2407 7339/700/2425 +f 7341/708/2427 7340/701/2427 7335/696/2413 +f 7335/696/2413 7334/695/2412 7341/708/2427 +f 7333/694/2428 7328/689/2428 7331/692/2419 +f 7331/692/2419 7342/703/2418 7333/694/2428 +f 7335/696/2422 7340/701/2429 7339/700/2425 +f 7339/700/2425 7330/691/2407 7335/696/2422 +f 7345/1014/2329 7346/1015/2329 7347/1016/2329 +f 7347/1016/2329 7348/1017/2329 7345/1014/2329 +f 7349/1018/2330 7350/1019/2330 7351/1020/2330 +f 7351/1020/2330 7352/1021/2330 7349/1018/2330 +f 7346/1022/2333 7345/1023/2333 7353/1024/2334 +f 7353/1024/2334 7354/1025/2356 7346/1022/2333 +f 7347/1026/2349 7346/1027/2349 7354/1028/2349 +f 7354/1028/2349 7355/1029/2350 7347/1026/2349 +f 7348/1023/2430 7347/1022/2430 7355/1025/2431 +f 7355/1025/2431 7356/1024/2432 7348/1023/2430 +f 7345/1027/2339 7348/1026/2339 7356/1029/2339 +f 7356/1029/2339 7353/1028/2339 7345/1027/2339 +f 7352/1030/2433 7357/1031/2341 7358/1032/2434 +f 7358/1032/2434 7349/1033/2433 7352/1030/2433 +f 7351/1034/2344 7359/1035/2343 7357/1036/2343 +f 7357/1036/2343 7352/1037/2344 7351/1034/2344 +f 7350/1033/2435 7360/1032/2346 7359/1031/2436 +f 7359/1031/2436 7351/1030/2435 7350/1033/2435 +f 7349/1037/2437 7358/1036/2348 7360/1035/2348 +f 7360/1035/2348 7350/1034/2437 7349/1037/2437 +f 7357/1031/2341 7354/1025/2356 7353/1024/2334 +f 7353/1024/2334 7358/1032/2434 7357/1031/2341 +f 7361/1035/2336 7362/1029/2350 7363/1028/2438 +f 7363/1028/2438 7364/1036/2438 7361/1035/2336 +f 7360/1032/2346 7356/1024/2432 7355/1025/2431 +f 7355/1025/2431 7359/1031/2436 7360/1032/2346 +f 7365/1036/2338 7366/1028/2338 7367/1029/2338 +f 7367/1029/2338 7368/1035/2339 7365/1036/2338 +f 7359/1038/2330 7361/1039/2330 7364/1040/2330 +f 7364/1040/2351 7357/1041/2351 7359/1038/2351 +f 7357/1031/2356 7364/1042/2356 7363/1043/2356 +f 7363/1043/2356 7354/1025/2356 7357/1031/2356 +f 7354/1041/2327 7363/1040/2327 7362/1039/2327 +f 7362/1039/2327 7355/1038/2327 7354/1041/2327 +f 7355/1025/2357 7362/1043/2357 7361/1042/2357 +f 7361/1042/2439 7359/1031/2439 7355/1025/2439 +f 7353/1024/2352 7366/1044/2352 7365/1045/2352 +f 7365/1045/2352 7358/1032/2352 7353/1024/2352 +f 7358/1040/2351 7365/1041/2351 7368/1038/2351 +f 7368/1038/2351 7360/1039/2351 7358/1040/2351 +f 7360/1032/2357 7368/1045/2357 7367/1044/2357 +f 7367/1044/2357 7356/1024/2357 7360/1032/2357 +f 7356/1039/2353 7367/1038/2353 7366/1041/2353 +f 7366/1041/2353 7353/1040/2353 7356/1039/2353 +f 7369/1014/2440 7370/1015/2440 7371/1016/2440 +f 7371/1016/2440 7372/1017/2440 7369/1014/2440 +f 7373/1018/2441 7374/1019/2441 7375/1020/2441 +f 7375/1020/2441 7376/1021/2441 7373/1018/2441 +f 7370/1022/2442 7369/1023/2442 7377/1024/2443 +f 7377/1024/2443 7378/1025/2443 7370/1022/2442 +f 7371/1026/2444 7370/1027/2444 7378/1028/2445 +f 7378/1028/2445 7379/1029/2445 7371/1026/2444 +f 7372/1023/2446 7371/1022/2446 7379/1025/2447 +f 7379/1025/2447 7380/1024/2446 7372/1023/2446 +f 7369/1027/2448 7372/1026/2448 7380/1029/2449 +f 7380/1029/2449 7377/1028/2450 7369/1027/2448 +f 7376/1030/2451 7381/1031/2452 7382/1032/2452 +f 7382/1032/2452 7373/1033/2451 7376/1030/2451 +f 7375/1034/2453 7383/1035/2454 7381/1036/2454 +f 7381/1036/2454 7376/1037/2453 7375/1034/2453 +f 7374/1033/2455 7384/1032/2456 7383/1031/2456 +f 7383/1031/2456 7375/1030/2455 7374/1033/2455 +f 7373/1037/2457 7382/1036/2458 7384/1035/2458 +f 7384/1035/2458 7374/1034/2457 7373/1037/2457 +f 7381/1031/2452 7378/1025/2443 7377/1024/2443 +f 7377/1024/2443 7382/1032/2452 7381/1031/2452 +f 7385/1035/2459 7386/1029/2460 7387/1028/2461 +f 7387/1028/2461 7388/1036/2462 7385/1035/2459 +f 7384/1032/2456 7380/1024/2446 7379/1025/2447 +f 7379/1025/2447 7383/1031/2456 7384/1032/2456 +f 7389/1036/2448 7390/1028/2463 7391/1029/2464 +f 7391/1029/2464 7392/1035/2465 7389/1036/2448 +f 7383/1038/2441 7385/1039/2441 7388/1040/2441 +f 7388/1040/2466 7381/1041/2466 7383/1038/2466 +f 7381/1031/2467 7388/1042/2467 7387/1043/2467 +f 7387/1043/2443 7378/1025/2443 7381/1031/2443 +f 7378/1041/2440 7387/1040/2440 7386/1039/2440 +f 7386/1039/2468 7379/1038/2468 7378/1041/2468 +f 7379/1025/2469 7386/1043/2469 7385/1042/2469 +f 7385/1042/2470 7383/1031/2470 7379/1025/2470 +f 7377/1024/2467 7390/1044/2467 7389/1045/2467 +f 7389/1045/2443 7382/1032/2443 7377/1024/2443 +f 7382/1040/2441 7389/1041/2441 7392/1038/2441 +f 7392/1038/2471 7384/1039/2471 7382/1040/2471 +f 7384/1032/2469 7392/1045/2469 7391/1044/2469 +f 7391/1044/2446 7380/1024/2446 7384/1032/2446 +f 7380/1039/2440 7391/1038/2440 7390/1041/2440 +f 7390/1041/2468 7377/1040/2468 7380/1039/2468 +f 7393/1046/2472 7394/1047/2473 7395/1048/2474 +f 7395/1048/2474 7396/1049/2475 7393/1046/2472 +f 7397/1050/2476 7393/1051/2476 7396/1052/2476 +f 7396/1052/2476 7398/1053/2476 7397/1050/2476 +f 7399/1054/2477 7400/1055/2478 7401/1056/2479 +f 7401/1056/2479 7402/1057/2480 7399/1054/2477 +f 7403/1058/2481 7395/1059/2481 7394/1060/2482 +f 7394/1060/2482 7404/1061/2482 7403/1058/2481 +f 7405/1055/2483 7406/1054/2484 7407/1057/2485 +f 7407/1057/2485 7408/1056/2486 7405/1055/2483 +f 7409/1062/36 7410/1063/36 7411/1064/36 +f 7411/1064/36 7412/1065/36 7409/1062/36 +f 7413/1066/36 7414/1067/36 7415/1068/36 +f 7415/1068/36 7416/1069/36 7413/1066/36 +f 7399/1070/2476 7402/1071/2476 7393/1051/2476 +f 7393/1051/2476 7397/1050/2476 7399/1070/2476 +f 7407/1072/2476 7406/1073/2476 7398/1053/2476 +f 7398/1053/2476 7396/1052/2476 7407/1072/2476 +f 7402/1057/2487 7401/1056/2487 7417/1074/2487 +f 7417/1074/2448 7418/1075/2448 7402/1057/2448 +f 7401/1071/2488 7394/1060/2488 7419/1076/2488 +f 7419/1076/2489 7417/1077/2489 7401/1071/2489 +f 7394/1078/2490 7393/1057/2490 7420/1079/2490 +f 7420/1079/2491 7419/1074/2491 7394/1078/2491 +f 7393/1051/2492 7402/1071/2492 7418/1080/2492 +f 7418/1080/2493 7420/1081/2493 7393/1051/2493 +f 7407/1072/2494 7396/1052/2494 7421/1082/2494 +f 7421/1082/2495 7422/1083/2495 7407/1072/2495 +f 7396/1057/2496 7395/1056/2496 7423/1084/2496 +f 7423/1084/2497 7421/1085/2497 7396/1057/2497 +f 7395/1059/2498 7408/1086/2498 7424/1087/2498 +f 7424/1087/2499 7423/1088/2499 7395/1059/2499 +f 7408/1056/2500 7407/1057/2500 7422/1079/2500 +f 7422/1079/2501 7424/1084/2501 7408/1056/2501 +f 7418/1075/2449 7417/1074/2449 7410/1089/2449 +f 7410/1089/2449 7409/1090/2449 7418/1075/2449 +f 7424/1084/2502 7422/1079/2502 7414/1090/2502 +f 7414/1090/2502 7413/1089/2502 7424/1084/2502 +f 7412/1065/15 7411/1064/15 7416/1069/15 +f 7416/1069/15 7415/1068/15 7412/1065/15 +f 7409/1091/2476 7412/1092/2476 7420/1081/2476 +f 7420/1081/2476 7418/1080/2476 7409/1091/2476 +f 7415/1093/2476 7414/1094/2476 7422/1083/2476 +f 7422/1083/2476 7421/1082/2476 7415/1093/2476 +f 7425/1095/2482 7426/1096/2482 7427/1097/2482 +f 7427/1097/2482 7428/1098/2482 7425/1095/2482 +f 7416/1093/2482 7411/1092/2482 7419/1076/2482 +f 7419/1076/2482 7423/1088/2482 7416/1093/2482 +f 7429/1095/2482 7430/1096/2482 7431/1097/2482 +f 7431/1097/2482 7432/1098/2482 7429/1095/2482 +f 7412/1092/2476 7415/1093/2476 7421/1082/2476 +f 7421/1082/2476 7420/1081/2476 7412/1092/2476 +f 7413/1066/36 7416/1069/36 7426/1099/36 +f 7426/1099/15 7425/1100/15 7413/1066/15 +f 7416/1089/2503 7423/1084/2503 7427/1101/2503 +f 7427/1101/2504 7426/1102/2504 7416/1089/2504 +f 7424/1084/2444 7413/1089/2444 7425/1102/2444 +f 7425/1102/2444 7428/1101/2444 7424/1084/2444 +f 7411/1064/36 7410/1063/36 7430/1103/36 +f 7430/1103/36 7429/1104/36 7411/1064/36 +f 7410/1089/2450 7417/1074/2450 7431/1105/2450 +f 7431/1105/2450 7430/1102/2450 7410/1089/2450 +f 7419/1074/2444 7411/1089/2444 7429/1102/2444 +f 7429/1102/2444 7432/1105/2444 7419/1074/2444 +f 7433/1106/2505 7434/1107/2505 7395/1056/2505 +f 7395/1056/2506 7403/1055/2506 7433/1106/2506 +f 7435/1107/2507 7436/1108/2507 7405/1055/2507 +f 7405/1055/2508 7408/1056/2508 7435/1107/2508 +f 7437/1106/2509 7438/1109/2509 7401/1056/2509 +f 7401/1056/2510 7400/1055/2510 7437/1106/2510 +f 7439/1109/2511 7440/1106/2511 7404/1055/2511 +f 7404/1055/2512 7394/1078/2512 7439/1109/2512 +f 7434/1110/2513 7435/1111/2513 7408/1112/2513 +f 7408/1112/2514 7395/1048/2514 7434/1110/2514 +f 7438/1113/2515 7439/1114/2515 7394/1047/2515 +f 7394/1047/2516 7401/1115/2516 7438/1113/2516 +f 7433/1097/2517 7436/1098/2517 7435/1095/2517 +f 7435/1095/2517 7434/1096/2517 7433/1097/2517 +f 7438/1096/2518 7437/1097/2518 7440/1098/2518 +f 7440/1098/2519 7439/1095/2519 7438/1096/2519 +f 7441/689/2520 7442/690/2521 7443/691/2522 +f 7443/691/2522 7444/692/2523 7441/689/2520 +f 7445/693/2524 7442/690/2525 7441/689/2526 +f 7441/689/2526 7446/694/2526 7445/693/2524 +f 7447/695/2527 7448/696/2528 7449/697/2529 +f 7449/697/2529 7450/698/2529 7447/695/2527 +f 7451/699/2530 7452/700/2530 7453/701/2531 +f 7453/701/2531 7454/702/2531 7451/699/2530 +f 7455/703/2532 7444/692/2533 7456/704/2534 +f 7456/704/2534 7457/705/2534 7455/703/2532 +f 7449/697/2535 7448/696/2536 7443/691/2522 +f 7443/691/2522 7442/690/2521 7449/697/2535 +f 7450/698/2537 7449/697/2537 7442/690/2525 +f 7442/690/2525 7445/706/2524 7450/698/2537 +f 7457/707/2538 7456/704/2538 7452/700/2530 +f 7452/700/2530 7451/699/2530 7457/707/2538 +f 7452/700/2539 7456/704/2540 7444/692/2523 +f 7444/692/2523 7443/691/2522 7452/700/2539 +f 7454/708/2541 7453/701/2541 7448/696/2528 +f 7448/696/2528 7447/695/2527 7454/708/2541 +f 7446/694/2542 7441/689/2542 7444/692/2533 +f 7444/692/2533 7455/703/2532 7446/694/2542 +f 7448/696/2536 7453/701/2543 7452/700/2539 +f 7452/700/2539 7443/691/2522 7448/696/2536 +f 7458/1014/2440 7459/1015/2440 7460/1016/2440 +f 7460/1016/2440 7461/1017/2468 7458/1014/2440 +f 7462/1018/2471 7463/1019/2471 7464/1020/2471 +f 7464/1020/2471 7465/1021/2441 7462/1018/2471 +f 7459/1022/2442 7458/1023/2442 7466/1024/2442 +f 7466/1024/2442 7467/1025/2544 7459/1022/2442 +f 7460/1026/2461 7459/1027/2461 7467/1028/2461 +f 7467/1028/2461 7468/1029/2461 7460/1026/2461 +f 7461/1023/2446 7460/1022/2447 7468/1025/2469 +f 7468/1025/2469 7469/1024/2469 7461/1023/2446 +f 7458/1027/2450 7461/1026/2545 7469/1029/2448 +f 7469/1029/2448 7466/1028/2448 7458/1027/2450 +f 7465/1030/2451 7470/1031/2546 7471/1032/2452 +f 7471/1032/2452 7462/1033/2451 7465/1030/2451 +f 7464/1034/2547 7472/1035/2453 7470/1036/2453 +f 7470/1036/2453 7465/1037/2547 7464/1034/2547 +f 7463/1033/2455 7473/1032/2548 7472/1031/2548 +f 7472/1031/2548 7464/1030/2455 7463/1033/2455 +f 7462/1037/2549 7471/1036/2549 7473/1035/2549 +f 7473/1035/2549 7463/1034/2549 7462/1037/2549 +f 7470/1031/2546 7467/1025/2544 7466/1024/2442 +f 7466/1024/2442 7471/1032/2452 7470/1031/2546 +f 7474/1035/2550 7475/1029/2551 7476/1028/2459 +f 7476/1028/2459 7477/1036/2552 7474/1035/2550 +f 7473/1032/2548 7469/1024/2469 7468/1025/2469 +f 7468/1025/2469 7472/1031/2548 7473/1032/2548 +f 7478/1036/2448 7479/1028/2553 7480/1029/2449 +f 7480/1029/2449 7481/1035/2449 7478/1036/2448 +f 7472/1038/2471 7474/1039/2471 7477/1040/2471 +f 7477/1040/2441 7470/1041/2441 7472/1038/2441 +f 7470/1031/2443 7477/1042/2443 7476/1043/2443 +f 7476/1043/2467 7467/1025/2467 7470/1031/2467 +f 7467/1041/2468 7476/1040/2468 7475/1039/2468 +f 7475/1039/2440 7468/1038/2440 7467/1041/2440 +f 7468/1025/2446 7475/1043/2446 7474/1042/2446 +f 7474/1042/2469 7472/1031/2469 7468/1025/2469 +f 7466/1024/2554 7479/1044/2554 7478/1045/2554 +f 7478/1045/2554 7471/1032/2554 7466/1024/2554 +f 7471/1040/2471 7478/1041/2471 7481/1038/2471 +f 7481/1038/2441 7473/1039/2441 7471/1040/2441 +f 7473/1032/2470 7481/1045/2470 7480/1044/2470 +f 7480/1044/2469 7469/1024/2469 7473/1032/2469 +f 7469/1039/2468 7480/1038/2468 7479/1041/2468 +f 7479/1041/2440 7466/1040/2440 7469/1039/2440 +# 11084 faces + diff --git a/examples/shaders/resources/models/barracks_diffuse.png b/examples/shaders/resources/models/barracks_diffuse.png new file mode 100644 index 0000000..ee81621 Binary files /dev/null and b/examples/shaders/resources/models/barracks_diffuse.png differ diff --git a/examples/shaders/resources/models/church.obj b/examples/shaders/resources/models/church.obj new file mode 100644 index 0000000..109bb00 --- /dev/null +++ b/examples/shaders/resources/models/church.obj @@ -0,0 +1,5116 @@ +# (c) 2018 Medieval Assets Pack by Alberto Cano +# Licensed as Creative Commons Attribution-NonCommercial 4.0 + +# +# object church +# + +v 4.672987 1.366374 3.687210 +v 4.749157 3.915673 3.641246 +v 4.749157 3.915673 3.108021 +v 4.672987 1.366374 2.958931 +v 4.671515 6.920380 3.688683 +v 4.756666 9.021092 3.633739 +v 4.756666 9.021092 3.115528 +v 4.671515 6.920380 2.957458 +v 5.401266 1.366374 3.687210 +v 5.282382 3.915673 3.641246 +v 5.402740 6.920380 3.688683 +v 5.274876 9.021092 3.633739 +v 5.401266 1.366374 2.958931 +v 5.282382 3.915673 3.108021 +v 5.402740 6.920380 2.957458 +v 5.274876 9.021092 3.115528 +v 4.770980 11.140738 3.629622 +v 4.770384 11.093080 2.940483 +v 5.461159 11.111799 3.631026 +v 5.460562 11.064143 2.941886 +v 4.896648 12.594810 3.494706 +v 4.896199 12.558983 2.976627 +v 5.415511 12.573055 3.495761 +v 5.415061 12.537227 2.977682 +v 4.900036 14.058286 3.421423 +v 4.899451 14.011499 2.744879 +v 5.577600 14.029880 3.422802 +v 5.577015 13.983093 2.746257 +v 2.816255 3.971905 3.105294 +v 2.816255 3.971905 3.638519 +v 2.892425 1.422606 3.684482 +v 2.892425 1.422606 2.956204 +v 2.622373 9.077326 3.099698 +v 2.622373 9.077326 3.617908 +v 2.893899 6.976612 3.685956 +v 2.893899 6.976612 2.954731 +v 2.283030 3.971905 3.638519 +v 2.164147 1.422606 3.684483 +v 2.104162 9.077326 3.617908 +v 2.162674 6.976612 3.685956 +v 2.283030 3.971905 3.105293 +v 2.164147 1.422606 2.956204 +v 2.104162 9.077326 3.099698 +v 2.162674 6.976612 2.954730 +v 2.795031 11.149311 2.937756 +v 2.794435 11.196969 3.626895 +v 2.104256 11.168032 3.628299 +v 2.104853 11.120375 2.939159 +v 2.669216 12.615214 2.973899 +v 2.668766 12.651041 3.491978 +v 2.149904 12.629287 3.493033 +v 2.150354 12.593460 2.974954 +v 2.665964 14.067732 2.742152 +v 2.665379 14.114518 3.418696 +v 1.987815 14.086112 3.420074 +v 1.988400 14.039326 2.743530 +v -8.203741 1.267261 4.004546 +v -8.203739 4.908214 4.004546 +v -8.203739 4.908214 0.802546 +v -8.203741 1.267261 0.802546 +v -3.030087 1.267261 7.206547 +v -3.030086 4.908213 7.206547 +v -8.203740 4.908214 7.206547 +v -8.203741 1.267261 7.206547 +v 2.143568 1.259508 0.802546 +v 2.143569 4.895408 0.802546 +v 7.977185 4.887452 0.802547 +v 7.977185 1.239670 0.802547 +v 7.977185 1.239670 7.206548 +v 7.977185 4.887452 7.206548 +v 2.143569 4.908213 7.206547 +v 2.143568 1.267260 7.206547 +v -3.030086 4.895409 0.802546 +v -3.030086 1.259509 0.802546 +v -8.203739 10.730635 4.004546 +v -8.203739 5.665551 0.802546 +v -3.030086 5.665551 7.206547 +v -8.203740 5.665551 7.206547 +v 2.143569 5.665550 0.802546 +v 7.977185 5.644517 0.802547 +v 7.977186 5.654397 7.206548 +v 2.143569 5.665550 7.206547 +v -3.030086 5.665551 0.802546 +v 7.977187 10.730632 4.004547 +v 7.977186 5.718971 4.004547 +v 7.977186 4.866691 4.004547 +v 7.977186 1.212080 4.004547 +v -3.030086 5.359768 -2.546745 +v -0.443258 8.104138 -2.546745 +v -0.443259 1.251756 -2.546746 +v -3.030086 1.259509 -2.546746 +v 2.143569 5.359767 -2.546745 +v 2.143569 1.259508 -2.546746 +v -8.714131 5.502876 0.667329 +v -8.925464 11.117952 4.004546 +v -8.925464 11.472882 4.004546 +v -8.713030 5.806002 0.574254 +v -8.714132 5.502876 7.341763 +v -8.713031 5.806002 7.434839 +v -3.030086 5.435468 7.397793 +v -3.030086 5.738945 7.490578 +v 2.142987 5.435467 7.397793 +v 2.143709 5.738945 7.490578 +v 8.617522 5.747605 7.341550 +v 8.617887 6.050475 7.434840 +v 8.829270 11.117949 4.004547 +v 8.829270 11.472879 4.004460 +v 8.617038 5.479570 0.667705 +v 8.618862 5.782260 0.574270 +v 2.142472 5.435469 0.611300 +v 2.143834 5.738945 0.518517 +v -3.030086 5.435468 0.611301 +v -3.030086 5.738945 0.518516 +v -3.030086 9.579156 4.004547 +v 2.143569 9.579155 4.004547 +v -0.443258 8.104138 -3.207969 +v -0.443258 7.168501 0.117055 +v -3.213754 4.686915 0.117055 +v -3.779471 4.686916 -3.207970 +v 2.892955 4.686915 -3.207969 +v 2.327237 4.686915 0.117055 +v -3.213754 5.170498 0.117055 +v -0.443258 7.700984 0.117055 +v -0.443258 8.636621 -3.207969 +v -3.779471 5.170498 -3.207970 +v 2.327237 5.170497 0.117055 +v 2.892955 5.170497 -3.207969 +v 2.520533 5.170497 2.329992 +v 2.520532 4.686915 2.329992 +v -3.407049 5.170498 2.329992 +v -0.443258 8.653279 3.336201 +v -3.407049 4.686916 2.329992 +v -3.224798 1.267537 -2.724316 +v -3.084860 3.428520 -2.599412 +v -2.647470 3.428521 -2.599412 +v -2.623512 1.267537 -2.724316 +v -3.157254 5.298322 -2.724316 +v -2.623511 6.106331 -2.724316 +v -2.647470 3.428521 -2.162023 +v -2.623512 1.267537 -2.123031 +v -2.623511 6.106331 -2.123031 +v -3.084860 3.428520 -2.162023 +v -3.224798 1.267537 -2.123032 +v -3.157254 5.298322 -2.123032 +v 5.234885 8.894447 3.493170 +v 2.152004 8.894447 3.493169 +v 2.152004 7.017791 3.493169 +v 5.234885 7.017790 3.493170 +v 5.234885 8.894447 0.286462 +v 5.234885 7.017790 0.286462 +v 2.152004 8.894447 0.286462 +v 2.152004 7.017791 0.286462 +v 5.952550 15.008949 3.864073 +v 5.919468 14.222457 3.918490 +v 5.915528 13.907810 -0.631487 +v 5.948610 14.694304 -0.685903 +v 1.914264 14.863439 -0.694107 +v 1.881181 14.076944 -0.639690 +v 1.885121 14.391590 3.910287 +v 1.918204 15.178086 3.855870 +v 5.474879 14.982239 3.187648 +v 5.472109 14.761015 -0.011418 +v 2.391937 14.890150 -0.017681 +v 2.394707 15.111373 3.181385 +v 2.217420 10.741338 0.269374 +v 5.297592 10.612206 0.275636 +v 2.333891 13.665580 3.281420 +v 5.414063 13.536447 3.287683 +v 5.411294 13.315219 0.088616 +v 2.331121 13.444352 0.082352 +v 5.486740 10.843854 3.738632 +v 5.515079 11.517557 3.692019 +v 2.062607 11.662299 3.684999 +v 2.034268 10.988593 3.731612 +v 1.965690 7.017790 3.757348 +v 1.965690 6.341883 3.757348 +v 5.421199 6.341884 3.757348 +v 5.421199 7.017790 3.757348 +v 5.511854 11.259878 -0.034147 +v 5.483515 10.586176 0.012467 +v 5.421198 6.341883 0.022284 +v 5.421199 7.017789 0.022284 +v 2.059381 11.404618 -0.041167 +v 2.031041 10.730916 0.005447 +v 1.965690 6.341884 0.022284 +v 1.965690 7.017791 0.022284 +v 5.328701 11.507136 3.428090 +v 2.248529 11.636267 3.421828 +v 5.325932 11.285909 0.229024 +v 2.245759 11.415044 0.222760 +v 5.234885 1.267260 3.493170 +v 5.234885 1.267260 0.286462 +v 5.234884 6.341884 0.286462 +v 5.234885 6.341884 3.493170 +v 2.152003 1.267260 0.286462 +v 2.152003 1.267260 3.493169 +v 2.152004 6.341884 3.493169 +v 2.152004 6.341884 0.286462 +v 5.300362 10.833432 3.474704 +v 2.220190 10.962566 3.468441 +v 5.488289 18.351477 3.106055 +v 5.432454 17.024092 3.197897 +v 4.727269 17.622326 3.157138 +v 4.759225 18.382044 3.104573 +v 2.572030 18.473740 3.100126 +v 2.516194 17.146355 3.191967 +v 2.536664 17.653803 2.280275 +v 2.568621 18.413523 2.227710 +v 5.484882 18.291260 2.233640 +v 5.452925 17.531544 2.286205 +v 2.558395 18.232864 -0.389533 +v 2.502560 16.905474 -0.297690 +v 3.255504 17.442579 -0.335485 +v 3.287461 18.202299 -0.388049 +v 2.540192 17.758495 1.396451 +v 2.529847 17.533363 0.535445 +v 2.561804 18.293085 0.482883 +v 2.565212 18.353300 1.355296 +v 5.478065 18.170820 0.488811 +v 5.446108 17.411100 0.541375 +v 5.456454 17.636234 1.402380 +v 5.481473 18.231041 1.361226 +v 4.005140 17.817806 3.144246 +v 3.269139 17.683460 3.154172 +v 3.301096 18.443176 3.101608 +v 4.030159 18.412611 3.103090 +v 3.991506 17.576929 -0.345412 +v 4.713634 17.381447 -0.332521 +v 4.745591 18.141167 -0.385084 +v 4.016526 18.171734 -0.386568 +v 5.474657 18.110600 -0.383604 +v 5.418821 16.783216 -0.291762 +v 3.997826 16.598362 1.977675 +v 3.994203 16.949141 1.871554 +v 3.789942 16.880709 1.870981 +v 3.665688 16.619816 1.866170 +v 4.328650 16.625895 1.863629 +v 4.199675 16.884468 1.869411 +v 3.991053 17.170544 1.579510 +v 3.660552 17.059816 1.578584 +v 3.459630 16.623966 1.570518 +v 4.532324 16.633802 1.566407 +v 4.323511 17.065897 1.576043 +v 3.989580 17.178001 1.213095 +v 3.659078 17.067278 1.212169 +v 3.458157 16.631430 1.204104 +v 4.530852 16.641268 1.199993 +v 4.322040 17.073357 1.209629 +v 3.990347 16.968672 0.912267 +v 3.786086 16.900236 0.911694 +v 3.661832 16.639343 0.906882 +v 4.324994 16.623236 0.903889 +v 4.195817 16.903996 0.910123 +v 3.993060 16.622505 0.791931 +v 3.671349 15.997251 1.853473 +v 4.003486 15.975796 1.964978 +v 4.334309 16.003332 1.850932 +v 3.465291 16.001406 1.557822 +v 4.537985 16.011242 1.553711 +v 3.463817 16.008863 1.191407 +v 4.536512 16.018700 1.187296 +v 3.667492 16.016775 0.894185 +v 4.330656 16.000673 0.891191 +v 3.998720 15.999939 0.779234 +v 3.580832 15.762773 1.983916 +v 4.006256 15.741533 2.126885 +v 4.430108 15.770563 1.980661 +v 3.316867 15.768097 1.605178 +v 4.691021 15.780697 1.599911 +v 3.314979 15.777655 1.135790 +v 4.689136 15.790258 1.130522 +v 3.575893 15.787792 0.755039 +v 4.425369 15.773392 0.751331 +v 4.000150 15.772456 0.607910 +v 4.167738 17.082762 1.436337 +v 4.095740 17.077181 1.311860 +v 4.061117 17.358999 1.372744 +v 4.086811 17.360991 1.417166 +v 3.951960 17.083208 1.311568 +v 4.009803 17.361153 1.372640 +v 3.880177 17.094818 1.435752 +v 3.984187 17.365295 1.416957 +v 3.952176 17.100401 1.560228 +v 4.009881 17.367289 1.461380 +v 4.095956 17.094372 1.560521 +v 4.061193 17.365131 1.461485 +v 4.558943 27.996582 0.730314 +v 4.537374 27.918690 0.756207 +v 4.568421 27.933918 0.755143 +v 4.573010 27.905622 0.715098 +v 4.537475 27.912605 0.718652 +v 1.614795 18.854746 4.138235 +v 1.414524 18.344713 4.508417 +v 6.716858 18.122417 4.519198 +v 6.561485 18.647366 4.148293 +v 6.711414 17.687864 -1.764677 +v 6.556619 18.258890 -1.469291 +v 1.409083 17.910166 -1.775456 +v 1.609931 18.466276 -1.479349 +v 6.093621 18.893530 3.795330 +v 2.103048 19.060829 3.787216 +v 2.098763 18.718649 -1.160881 +v 6.089338 18.551348 -1.152767 +v -8.713030 1.267262 7.639588 +v -3.030087 1.267261 7.639588 +v -3.407052 1.267261 -0.038095 +v -8.713031 1.267262 -0.038094 +v 2.520563 1.267260 -0.038094 +v 2.520563 1.267260 7.639587 +v 8.698908 1.267259 7.639589 +v 8.698908 1.267259 -0.038093 +v -9.071366 -0.000000 -0.523111 +v -9.071365 -0.000000 8.126415 +v -3.030088 -0.000001 8.126415 +v 2.520563 -0.000001 8.126415 +v 9.071366 -0.000002 8.126415 +v 9.071366 -0.000002 -0.523110 +v 2.520565 -0.000001 -0.523111 +v -3.407052 -0.000001 -0.523112 +v 2.520564 1.267260 -2.724314 +v -3.407051 1.267261 -2.724315 +v 2.520564 -0.000001 -2.724314 +v -3.407050 -0.000001 -2.724315 +v 1.736992 0.241523 -6.928524 +v 1.736992 -0.033319 -6.928524 +v -2.623513 -0.033318 -6.928524 +v -2.623513 0.241524 -6.928524 +v -2.623513 0.241524 -6.420866 +v 1.736992 0.241523 -6.420866 +v 1.736992 0.504688 -6.420866 +v -2.623513 0.504689 -6.420866 +v -2.623513 0.505858 -5.913212 +v 1.736992 0.504688 -5.913212 +v 1.736992 0.767854 -5.913212 +v -2.623513 0.769023 -5.913212 +v -2.623513 0.769023 -5.405557 +v 1.736992 0.769022 -5.405555 +v 1.736992 1.032188 -5.405555 +v -2.623513 1.032188 -5.405557 +v -2.623513 1.032188 -4.897901 +v 1.736992 1.032188 -4.897901 +v 1.736992 1.267537 -4.897901 +v -2.623513 1.267537 -4.897901 +v -2.623513 1.267537 -4.390244 +v 1.736992 1.267537 -4.390244 +v -2.623513 1.267537 -2.724316 +v 1.736991 1.267537 -2.724316 +v -3.407050 1.735000 -4.234435 +v -2.623512 1.734999 -4.234435 +v -2.623512 0.994722 -5.744554 +v -3.407050 0.994722 -5.744554 +v -3.407050 -0.000001 -4.234435 +v -3.407050 -0.000001 -5.744554 +v -3.407050 -0.000001 -2.724316 +v -2.623512 -0.000001 -2.724315 +v -2.623512 1.734999 -2.724315 +v -3.407050 1.734999 -2.724316 +v -2.623512 -0.000001 -5.744554 +v -2.623512 -0.000001 -4.234435 +v -2.623512 -0.000001 -8.126418 +v -3.407050 -0.000001 -8.126418 +v -3.407050 0.632338 -8.126418 +v -2.623512 0.632338 -8.126418 +v -2.623512 0.632338 -7.254672 +v -3.407050 0.632338 -7.254672 +v -3.407050 -0.000001 -7.254672 +v -2.623512 -0.000001 -7.254672 +v -3.407050 1.109609 -7.254672 +v -2.623512 1.109609 -7.254672 +v -2.623512 1.109609 -8.126418 +v -3.407050 1.109609 -8.126418 +v 1.736992 0.994721 -5.744554 +v 1.736992 1.734999 -4.234435 +v 2.520530 1.734999 -4.234435 +v 2.520530 0.994721 -5.744554 +v 2.520530 -0.000001 -4.234435 +v 2.520530 -0.000001 -5.744554 +v 2.520530 -0.000001 -2.724315 +v 2.520530 1.734999 -2.724315 +v 1.736992 1.734999 -2.724315 +v 1.736992 -0.000001 -2.724315 +v 1.736992 -0.000001 -5.744554 +v 1.736992 -0.000001 -4.234435 +v 1.736992 -0.000001 -8.126418 +v 1.736992 0.632338 -8.126418 +v 2.520530 0.632338 -8.126418 +v 2.520530 -0.000001 -8.126418 +v 2.520530 0.632338 -7.254672 +v 1.736992 0.632338 -7.254672 +v 2.520530 -0.000001 -7.254672 +v 1.736992 -0.000001 -7.254672 +v 2.520530 1.109609 -7.254672 +v 2.520530 1.109609 -8.126418 +v 1.736992 1.109609 -8.126418 +v 1.736992 1.109609 -7.254672 +v -1.410326 3.088244 -2.720418 +v -1.410326 3.088244 -2.538141 +v -1.140453 3.592780 -2.538141 +v -1.140452 3.592780 -2.720418 +v -1.221802 3.088244 -2.619900 +v -1.221802 3.088244 -2.720418 +v -1.004539 3.477115 -2.720418 +v -1.004539 3.477115 -2.619900 +v -0.443259 4.069920 -2.538140 +v -0.443259 4.069920 -2.720418 +v -0.443259 3.875959 -2.720418 +v -0.443259 3.875959 -2.619900 +v 0.253934 3.592780 -2.538140 +v 0.253934 3.592780 -2.720418 +v 0.118021 3.477115 -2.720418 +v 0.118021 3.477115 -2.619900 +v 0.523807 3.088244 -2.538140 +v 0.523807 3.088244 -2.720418 +v 0.335284 3.088244 -2.720418 +v 0.335284 3.088244 -2.619900 +v -1.410326 1.267537 -2.720418 +v -1.410326 1.267537 -2.538140 +v -1.221803 1.267537 -2.619900 +v -1.221803 1.267537 -2.720418 +v 0.523807 1.267537 -2.538140 +v 0.523807 1.267537 -2.720418 +v 0.335284 1.267537 -2.720418 +v 0.335284 1.267537 -2.619900 +v -5.806923 3.909048 0.771220 +v -5.485344 4.409725 0.771220 +v -5.485344 2.303240 0.771220 +v -5.806923 2.344218 0.771220 +v -6.058448 2.381772 0.790385 +v -6.058448 2.381772 0.716560 +v -6.058448 2.156472 0.716560 +v -6.058448 2.156473 0.790385 +v -5.485344 4.779102 0.790385 +v -5.485344 4.779102 0.716560 +v -5.975380 4.050927 0.716560 +v -5.975380 4.050927 0.790385 +v -4.912240 2.156472 0.790385 +v -4.912240 2.156472 0.716560 +v -4.912240 2.381772 0.716560 +v -4.912240 2.381772 0.790385 +v -5.485344 2.077940 0.790385 +v -5.485344 2.077940 0.716562 +v -4.995306 2.156472 0.716560 +v -4.995306 2.156472 0.790385 +v -5.975381 2.156472 0.635584 +v -5.975381 2.381772 0.635584 +v -5.806923 2.344218 0.635584 +v -5.485344 4.409725 0.716562 +v -5.806923 3.909048 0.716560 +v -4.995306 2.381772 0.635584 +v -4.995306 2.156472 0.635584 +v -5.163763 2.358823 0.635584 +v -5.485344 2.077940 0.635584 +v -5.485344 2.303240 0.635584 +v -5.163763 3.909048 0.771220 +v -5.163763 2.358823 0.771220 +v -4.995306 4.050928 0.790385 +v -4.995306 4.050928 0.716560 +v -5.975381 2.156473 0.790385 +v -5.975381 2.156472 0.716560 +v -5.163763 3.909048 0.716560 +v -5.806923 2.344218 0.716560 +v -5.163763 2.358823 0.716560 +v -5.485344 2.303239 0.716560 +v -4.995306 2.381772 0.716560 +v -4.995306 2.381772 0.790385 +v -5.975381 2.381772 0.716560 +v -5.975381 2.381772 0.790385 +v -6.058448 2.381772 0.635584 +v -6.058448 2.156472 0.635584 +v -4.912240 2.156472 0.635584 +v -4.912240 2.381772 0.635584 +v 6.141209 3.909047 0.771221 +v 6.462788 4.409724 0.771221 +v 6.462787 2.303238 0.771221 +v 6.141208 2.344216 0.771221 +v 5.889685 2.381771 0.790385 +v 5.889685 2.381771 0.716561 +v 5.889685 2.156471 0.716561 +v 5.889685 2.156471 0.790385 +v 6.462788 4.779100 0.790385 +v 6.462788 4.779100 0.716561 +v 5.972752 4.050926 0.716561 +v 5.972752 4.050926 0.790386 +v 7.035892 2.156471 0.790385 +v 7.035892 2.156471 0.716561 +v 7.035892 2.381771 0.716561 +v 7.035892 2.381771 0.790385 +v 6.462787 2.077938 0.790386 +v 6.462787 2.077938 0.716562 +v 6.952826 2.156471 0.716561 +v 6.952826 2.156471 0.790385 +v 5.972751 2.156471 0.635585 +v 5.972751 2.381771 0.635585 +v 6.141208 2.344216 0.635585 +v 6.462788 4.409724 0.716562 +v 6.141209 3.909047 0.716561 +v 6.952826 2.381771 0.635585 +v 6.952826 2.156471 0.635585 +v 6.784369 2.358821 0.635585 +v 6.462787 2.077938 0.635585 +v 6.462787 2.303238 0.635585 +v 6.784369 3.909047 0.771221 +v 6.784369 2.358821 0.771221 +v 6.952826 4.050926 0.790386 +v 6.952826 4.050926 0.716561 +v 5.972751 2.156471 0.790385 +v 5.972751 2.156471 0.716561 +v 6.784369 3.909047 0.716561 +v 6.141208 2.344216 0.716561 +v 6.784369 2.358821 0.716561 +v 6.462787 2.303238 0.716561 +v 6.952826 2.381771 0.716561 +v 6.952826 2.381771 0.790385 +v 5.972751 2.381771 0.716561 +v 5.972751 2.381771 0.790385 +v 5.889685 2.381771 0.635585 +v 5.889685 2.156471 0.635585 +v 7.035892 2.156471 0.635585 +v 7.035892 2.381771 0.635585 +v -8.175412 8.783850 4.004546 +v -8.306676 8.783850 4.004546 +v -8.306676 8.517238 4.737058 +v -8.175412 8.517238 4.737058 +v -8.230400 8.702679 4.004546 +v -8.230400 7.644264 4.004546 +v -8.230400 8.455057 4.684882 +v -8.306676 7.842151 5.126819 +v -8.175412 7.842151 5.126819 +v -8.230400 7.828055 5.046881 +v -8.306676 7.074471 4.991457 +v -8.175412 7.074471 4.991457 +v -8.230400 7.115057 4.921160 +v -8.306676 6.573403 4.394308 +v -8.175412 6.573403 4.394308 +v -8.230400 6.649680 4.366545 +v -8.306675 6.573403 3.614785 +v -8.175411 6.573404 3.614785 +v -8.230399 6.649680 3.642547 +v -8.306675 7.074471 3.017636 +v -8.175411 7.074471 3.017636 +v -8.230399 7.115057 3.087933 +v -8.306675 7.842151 2.882273 +v -8.175411 7.842151 2.882274 +v -8.230399 7.828057 2.962212 +v -8.306676 8.517239 3.272035 +v -8.175412 8.517239 3.272035 +v -8.230400 8.455057 3.324211 +v -8.306676 8.702679 4.004546 +v -8.306676 8.455057 4.684882 +v -8.306676 8.455057 3.324211 +v -8.306675 7.828057 2.962212 +v -8.306675 7.115057 3.087933 +v -8.306675 6.649680 3.642547 +v -8.306676 6.649680 4.366545 +v -8.306676 7.115057 4.921160 +v -8.306676 7.828055 5.046881 +v 0.032073 2.303239 7.208142 +v 0.032074 4.409725 7.208142 +v -0.289506 3.909048 7.208142 +v -0.289506 2.344217 7.208142 +v -0.541030 2.156472 7.262802 +v -0.541030 2.381772 7.262802 +v -0.541030 2.381772 7.188977 +v -0.541030 2.156472 7.188977 +v -0.457963 4.050927 7.262802 +v 0.032074 4.779101 7.262802 +v 0.032074 4.779101 7.188977 +v -0.457963 4.050927 7.188977 +v 0.605178 2.381771 7.262802 +v 0.605178 2.156471 7.262802 +v 0.605178 2.156472 7.188977 +v 0.605178 2.381771 7.188977 +v 0.522112 2.156471 7.262802 +v 0.032073 2.077939 7.262800 +v 0.032073 2.077939 7.188977 +v 0.522112 2.156472 7.188977 +v -0.457963 2.156472 7.343778 +v -0.289506 2.344217 7.343778 +v -0.457963 2.381772 7.343778 +v -0.289506 3.909048 7.262802 +v 0.032074 4.409725 7.262800 +v 0.522112 2.381771 7.343778 +v 0.353654 2.358822 7.343778 +v 0.522112 2.156471 7.343778 +v 0.032073 2.303239 7.343778 +v 0.032073 2.077939 7.343778 +v 0.353654 2.358822 7.208142 +v 0.353655 3.909048 7.208142 +v 0.522112 4.050927 7.262802 +v 0.522112 4.050927 7.188977 +v -0.457963 2.156472 7.262802 +v -0.457963 2.156472 7.188977 +v 0.353655 3.909048 7.262802 +v -0.289506 2.344217 7.262802 +v 0.353654 2.358822 7.262802 +v 0.032073 2.303238 7.262802 +v 0.522112 2.381771 7.262802 +v 0.522112 2.381771 7.188977 +v -0.457963 2.381772 7.262802 +v -0.457963 2.381772 7.188977 +v -0.541030 2.156472 7.343778 +v -0.541030 2.381772 7.343778 +v 0.605178 2.381771 7.343778 +v 0.605178 2.156471 7.343778 +v -5.485344 2.303240 7.221334 +v -5.485344 4.409725 7.221334 +v -5.806924 3.909048 7.221334 +v -5.806924 2.344218 7.221334 +v -6.058448 2.156472 7.275995 +v -6.058448 2.381772 7.275995 +v -6.058448 2.381772 7.202170 +v -6.058448 2.156473 7.202170 +v -5.975380 4.050927 7.275995 +v -5.485344 4.779102 7.275995 +v -5.485344 4.779102 7.202170 +v -5.975380 4.050927 7.202169 +v -4.912241 2.381772 7.275996 +v -4.912241 2.156472 7.275996 +v -4.912241 2.156472 7.202171 +v -4.912241 2.381772 7.202171 +v -4.995306 2.156472 7.275996 +v -5.485344 2.077940 7.275994 +v -5.485344 2.077940 7.202169 +v -4.995306 2.156472 7.202171 +v -5.975381 2.156472 7.356970 +v -5.806924 2.344218 7.356970 +v -5.975381 2.381772 7.356970 +v -5.806924 3.909048 7.275995 +v -5.485344 4.409725 7.275994 +v -4.995306 2.381772 7.356971 +v -5.163763 2.358823 7.356971 +v -4.995306 2.156472 7.356971 +v -5.485344 2.303240 7.356970 +v -5.485344 2.077940 7.356970 +v -5.163763 2.358823 7.221335 +v -5.163763 3.909048 7.221335 +v -4.995306 4.050928 7.275996 +v -4.995306 4.050928 7.202170 +v -5.975381 2.156472 7.275995 +v -5.975381 2.156473 7.202170 +v -5.163763 3.909048 7.275996 +v -5.806924 2.344218 7.275995 +v -5.163763 2.358823 7.275996 +v -5.485344 2.303239 7.275995 +v -4.995306 2.381772 7.275996 +v -4.995306 2.381772 7.202171 +v -5.975381 2.381772 7.275995 +v -5.975381 2.381772 7.202170 +v -6.058448 2.156472 7.356970 +v -6.058448 2.381772 7.356970 +v -4.912241 2.381772 7.356971 +v -4.912241 2.156472 7.356971 +v 6.462788 2.303238 7.217344 +v 6.462788 4.409724 7.217344 +v 6.141209 3.909047 7.217344 +v 6.141208 2.344216 7.217344 +v 5.889684 2.156471 7.272005 +v 5.889684 2.381771 7.272005 +v 5.889684 2.381771 7.198180 +v 5.889684 2.156471 7.198180 +v 5.972752 4.050926 7.272005 +v 6.462788 4.779101 7.272005 +v 6.462788 4.779101 7.198180 +v 5.972752 4.050926 7.198179 +v 7.035892 2.381771 7.272005 +v 7.035892 2.156471 7.272005 +v 7.035892 2.156471 7.198180 +v 7.035892 2.381771 7.198180 +v 6.952826 2.156471 7.272005 +v 6.462788 2.077938 7.272003 +v 6.462788 2.077938 7.198179 +v 6.952826 2.156471 7.198180 +v 5.972751 2.156471 7.352980 +v 6.141208 2.344216 7.352980 +v 5.972751 2.381771 7.352980 +v 6.141209 3.909047 7.272005 +v 6.462788 4.409724 7.272003 +v 6.952826 2.381771 7.352980 +v 6.784369 2.358821 7.352980 +v 6.952826 2.156471 7.352980 +v 6.462788 2.303238 7.352980 +v 6.462788 2.077938 7.352980 +v 6.784369 2.358821 7.217344 +v 6.784369 3.909047 7.217344 +v 6.952826 4.050926 7.272005 +v 6.952826 4.050926 7.198179 +v 5.972751 2.156471 7.272005 +v 5.972751 2.156471 7.198180 +v 6.784369 3.909047 7.272005 +v 6.141208 2.344216 7.272005 +v 6.784369 2.358821 7.272005 +v 6.462788 2.303238 7.272005 +v 6.952826 2.381771 7.272005 +v 6.952826 2.381771 7.198180 +v 5.972751 2.381771 7.272005 +v 5.972751 2.381771 7.198180 +v 5.889684 2.156471 7.352980 +v 5.889684 2.381771 7.352980 +v 7.035892 2.381771 7.352980 +v 7.035892 2.156471 7.352980 +v 7.989504 2.303238 4.004544 +v 7.989505 4.409724 4.004544 +v 7.989505 3.909046 4.326124 +v 7.989504 2.344216 4.326124 +v 8.044166 2.156471 4.577648 +v 8.044166 2.381770 4.577648 +v 7.970341 2.381771 4.577648 +v 7.970341 2.156471 4.577648 +v 8.044167 4.050926 4.494581 +v 8.044167 4.779100 4.004544 +v 7.970342 4.779100 4.004544 +v 7.970340 4.050926 4.494581 +v 8.044166 2.381770 3.431440 +v 8.044166 2.156471 3.431440 +v 7.970341 2.156471 3.431440 +v 7.970341 2.381771 3.431440 +v 8.044166 2.156471 3.514506 +v 8.044165 2.077938 4.004544 +v 7.970340 2.077938 4.004544 +v 7.970341 2.156471 3.514506 +v 8.125142 2.156471 4.494581 +v 8.125142 2.344216 4.326124 +v 8.125142 2.381770 4.494581 +v 8.044167 3.909046 4.326124 +v 8.044165 4.409724 4.004544 +v 8.125142 2.381770 3.514506 +v 8.125142 2.358821 3.682963 +v 8.125142 2.156471 3.514506 +v 8.125142 2.303238 4.004544 +v 8.125142 2.077938 4.004544 +v 7.989504 2.358821 3.682963 +v 7.989505 3.909046 3.682963 +v 8.044167 4.050926 3.514506 +v 7.970340 4.050926 3.514506 +v 8.044166 2.156471 4.494581 +v 7.970341 2.156471 4.494581 +v 8.044167 3.909046 3.682963 +v 8.044166 2.344216 4.326124 +v 8.044166 2.358821 3.682963 +v 8.044166 2.303237 4.004544 +v 8.044166 2.381770 3.514506 +v 7.970341 2.381771 3.514506 +v 8.044166 2.381770 4.494581 +v 7.970341 2.381771 4.494581 +v 8.125142 2.156471 4.577648 +v 8.125142 2.381770 4.577648 +v 8.125142 2.381770 3.431440 +v 8.125142 2.156471 3.431440 +v 4.175653 23.253054 1.207701 +v 4.483004 23.283512 1.216166 +v 4.533489 23.226915 0.793925 +v 4.182594 23.240883 0.830203 +v 4.671747 1.267260 0.817280 +v 4.747917 3.816559 0.771316 +v 4.747917 3.816559 0.238091 +v 4.671747 1.267260 0.089002 +v 4.670274 6.821266 0.818753 +v 4.755424 8.921979 0.763809 +v 4.755424 8.921979 0.245598 +v 4.670274 6.821266 0.087529 +v 5.400025 1.267260 0.817280 +v 5.281142 3.816559 0.771317 +v 5.401499 6.821266 0.818754 +v 5.273635 8.921979 0.763809 +v 5.400025 1.267260 0.089002 +v 5.281142 3.816559 0.238091 +v 5.401499 6.821266 0.087528 +v 5.273635 8.921979 0.245599 +v 4.769739 11.041625 0.759693 +v 4.769143 10.993966 0.070554 +v 5.459918 11.012686 0.761097 +v 5.459321 10.965030 0.071956 +v 4.895408 12.495696 0.624777 +v 4.894958 12.459869 0.106697 +v 5.414269 12.473943 0.625831 +v 5.413820 12.438114 0.107753 +v 4.898796 13.959171 0.551494 +v 4.898210 13.912385 -0.125050 +v 5.576359 13.930765 0.552872 +v 5.575775 13.883979 -0.123673 +v 2.338280 1.267536 -2.724316 +v 1.736995 1.267536 -2.724316 +v 1.760954 3.428520 -2.599412 +v 2.198343 3.428520 -2.599412 +v 1.736995 6.106330 -2.724316 +v 2.270738 5.298322 -2.724316 +v 1.736994 1.267536 -2.123031 +v 1.760954 3.428520 -2.162023 +v 1.736995 6.106330 -2.123031 +v 2.338280 1.267536 -2.123031 +v 2.198343 3.428520 -2.162023 +v 2.270738 5.298322 -2.123031 +v 2.815015 3.872790 0.235364 +v 2.815015 3.872790 0.768590 +v 2.891185 1.323491 0.814553 +v 2.891185 1.323491 0.086274 +v 2.633949 8.978212 0.242871 +v 2.633949 8.978212 0.761081 +v 2.892659 6.877498 0.816026 +v 2.892659 6.877498 0.084801 +v 2.281790 3.872790 0.768590 +v 2.162907 1.323491 0.814553 +v 2.115738 8.978212 0.761081 +v 2.161434 6.877498 0.816027 +v 2.281790 3.872790 0.235364 +v 2.162907 1.323491 0.086275 +v 2.115738 8.978212 0.242871 +v 2.161434 6.877498 0.084801 +v 2.793791 11.050198 0.067826 +v 2.793195 11.097857 0.756965 +v 2.103016 11.068916 0.758370 +v 2.103613 11.021260 0.069229 +v 2.667976 12.516101 0.103970 +v 2.667526 12.551928 0.622049 +v 2.148664 12.530173 0.623104 +v 2.149114 12.494345 0.105025 +v 2.664724 13.968618 -0.127777 +v 2.664139 14.015405 0.548767 +v 1.986575 13.986998 0.550145 +v 1.987160 13.940212 -0.126399 +v -0.927404 6.114937 -2.576771 +v -0.443259 6.846743 -2.576771 +v -0.443259 4.995204 -2.576771 +v -0.927404 4.995204 -2.576771 +v -1.026729 4.941527 -2.511324 +v -1.026729 6.124244 -2.511324 +v -1.026729 6.124244 -2.623685 +v -1.026729 4.941527 -2.623685 +v -0.443259 7.006183 -2.511324 +v -0.443259 7.006183 -2.623685 +v 0.140211 6.124244 -2.511324 +v 0.140211 4.941527 -2.511324 +v 0.140211 4.941527 -2.623685 +v 0.140211 6.124244 -2.623685 +v -0.443259 4.941527 -2.511324 +v -0.443259 4.941527 -2.623685 +v 0.040887 6.114937 -2.576771 +v 0.040887 4.995204 -2.576771 +v -0.927404 6.114937 -2.623685 +v -0.927404 4.995204 -2.623685 +v -0.443259 6.846743 -2.623685 +v 0.040887 6.114937 -2.623685 +v 0.040887 4.995204 -2.623685 +v -0.443259 4.995204 -2.623685 +v -7.676232 1.226863 0.579004 +v -7.820205 3.717741 0.740305 +v -7.820205 3.717741 1.244465 +v -7.676232 1.226863 1.272082 +v -7.676232 5.872984 0.656859 +v -7.676232 6.804344 1.272082 +v -8.324365 3.717741 1.244465 +v -8.369309 1.226863 1.272081 +v -8.369308 6.804344 1.272081 +v -8.324365 3.717741 0.740305 +v -8.369309 1.226863 0.579004 +v -8.369308 5.872984 0.656858 +v -8.369309 1.226863 7.430092 +v -8.225338 3.717741 7.268791 +v -8.225337 3.717741 6.764630 +v -8.369309 1.226863 6.737015 +v -8.369309 5.872984 7.352238 +v -8.369309 6.804344 6.737015 +v -7.721177 3.717741 6.764631 +v -7.676233 1.226863 6.737015 +v -7.676232 6.804344 6.737015 +v -7.721177 3.717741 7.268792 +v -7.676233 1.226863 7.430092 +v -7.676232 5.872984 7.352238 +v 0.125889 8.220344 -3.247035 +v 0.125889 8.388115 -3.195977 +v 0.125889 8.091660 -2.222249 +v 0.125889 7.923891 -2.273325 +v -0.342264 8.269616 -2.168066 +v -0.342264 8.437381 -2.116987 +v -0.342264 8.733835 -3.090707 +v -0.342264 8.566062 -3.141786 +v -0.443258 8.448682 -2.113552 +v -0.443258 8.280909 -2.164633 +v -0.443257 8.745133 -3.087272 +v -0.443257 8.577360 -3.138354 +v -1.012404 8.220344 -3.247035 +v -1.012405 7.923891 -2.273325 +v -1.012405 8.091661 -2.222249 +v -1.012404 8.388114 -3.195960 +v -0.544251 8.437383 -2.116987 +v -0.544251 8.733835 -3.090707 +v -0.544251 8.566062 -3.141786 +v -0.544251 8.269616 -2.168066 +v 0.125888 7.964036 2.305606 +v 0.125889 8.134858 2.265937 +v 0.125889 8.364986 3.257439 +v 0.125889 8.194155 3.297090 +v -0.342264 8.546191 3.215383 +v -0.342264 8.717019 3.175738 +v -0.342264 8.486897 2.184243 +v -0.342264 8.316061 2.223894 +v -0.443258 8.728525 3.173060 +v -0.443258 8.557688 3.212710 +v -0.443258 8.498399 2.181570 +v -0.443258 8.327562 2.221221 +v -1.012405 7.964036 2.305606 +v -1.012405 8.194155 3.297090 +v -1.012405 8.364986 3.257439 +v -1.012405 8.134868 2.265952 +v -0.544251 8.546191 3.215383 +v -0.544251 8.717019 3.175738 +v -0.544252 8.486897 2.184243 +v -0.544252 8.316061 2.223894 +v 0.125888 7.729860 1.719361 +v 0.125888 7.900682 1.679691 +v 0.125889 8.130809 2.671193 +v 0.125889 7.959977 2.710845 +v -0.342264 8.252721 1.597998 +v -0.342264 8.482843 2.589495 +v -0.342264 8.081886 1.637649 +v -0.443258 8.264222 1.595326 +v -0.443258 8.494348 2.586816 +v -0.443258 8.093387 1.634976 +v -1.012405 7.729860 1.719361 +v -1.012405 7.959979 2.710845 +v -1.012405 8.130811 2.671193 +v -1.012405 7.900692 1.679708 +v -0.544251 8.482843 2.589495 +v -0.544252 8.252721 1.597998 +v -0.544252 8.081886 1.637649 +v 0.125888 7.490499 0.975419 +v 0.125888 7.661322 0.935747 +v 0.125889 7.891449 1.927253 +v 0.125889 7.720617 1.966902 +v -0.342264 8.013359 0.854055 +v -0.342265 8.243484 1.845551 +v -0.342264 7.842525 0.893705 +v -0.443258 8.024862 0.851382 +v -0.443258 8.254988 1.842874 +v -0.443258 7.854025 0.891033 +v -1.012405 7.490499 0.975419 +v -1.012405 7.720617 1.966902 +v -1.012405 7.891449 1.927253 +v -1.012405 7.661330 0.935764 +v -0.544251 8.243484 1.845551 +v -0.544252 8.013359 0.854055 +v -0.544252 7.842525 0.893705 +v 0.125888 7.219489 0.257531 +v 0.125888 7.390311 0.217859 +v 0.125889 7.620439 1.209362 +v 0.125889 7.449607 1.249013 +v -0.342264 7.742350 0.136167 +v -0.342265 7.972472 1.127663 +v -0.342264 7.571515 0.175817 +v -0.443258 7.753851 0.133495 +v -0.443258 7.983978 1.124985 +v -0.443258 7.583015 0.173146 +v -1.012405 7.219489 0.257531 +v -1.012405 7.449607 1.249013 +v -1.012405 7.620439 1.209362 +v -1.012405 7.390321 0.217876 +v -0.544251 7.972472 1.127663 +v -0.544252 7.742350 0.136167 +v -0.544252 7.571515 0.175817 +v 0.125888 7.426631 -0.952069 +v 0.125889 7.598213 -0.915829 +v 0.125889 7.387752 0.080035 +v 0.125889 7.216172 0.043773 +v -0.342265 7.569754 0.118501 +v -0.342265 7.741333 0.154765 +v -0.342264 7.951793 -0.841090 +v -0.443258 7.752889 0.157200 +v -0.443258 7.581305 0.120936 +v -0.443258 7.963347 -0.838653 +v -1.012405 7.426631 -0.952069 +v -1.012405 7.216172 0.043773 +v -1.012405 7.387752 0.080035 +v -1.012405 7.598215 -0.915812 +v -0.544252 7.569755 0.118501 +v -0.544252 7.741333 0.154765 +v -0.544252 7.951794 -0.841090 +v 0.125888 7.548561 -1.378403 +v 0.125889 7.720144 -1.342160 +v 0.125889 7.509683 -0.346299 +v 0.125889 7.338101 -0.382559 +v -0.342265 7.691683 -0.307832 +v -0.342264 7.863263 -0.271568 +v -0.342264 8.073722 -1.267423 +v -0.443258 7.874820 -0.269133 +v -0.443258 7.703234 -0.305397 +v -0.443258 8.085277 -1.264985 +v -1.012405 7.548561 -1.378403 +v -1.012405 7.338101 -0.382559 +v -1.012405 7.509683 -0.346299 +v -1.012405 7.720146 -1.342143 +v -0.544251 7.691683 -0.307832 +v -0.544251 7.863263 -0.271568 +v -0.544252 8.073724 -1.267423 +v 0.125888 7.832724 -2.270370 +v 0.125889 8.004307 -2.234131 +v 0.125889 7.793845 -1.238266 +v 0.125889 7.622263 -1.274529 +v -0.342264 7.975846 -1.199801 +v -0.342264 8.147426 -1.163537 +v -0.342264 8.357885 -2.159392 +v -0.443258 8.158981 -1.161102 +v -0.443258 7.987396 -1.197366 +v -0.443257 8.369440 -2.156955 +v -1.012405 7.832724 -2.270370 +v -1.012405 7.622263 -1.274529 +v -1.012405 7.793846 -1.238266 +v -1.012404 8.004307 -2.234112 +v -0.544251 7.975846 -1.199801 +v -0.544251 8.147426 -1.163537 +v -0.544251 8.357885 -2.159392 +v -8.912474 11.031324 3.435404 +v -8.846989 11.194007 3.435404 +v -7.902801 10.813814 3.435403 +v -7.968303 10.651135 3.435403 +v -7.833316 10.986370 3.903557 +v -7.767808 11.149046 3.903557 +v -8.711987 11.529237 3.903556 +v -8.777492 11.366553 3.903556 +v -7.763401 11.160003 4.004550 +v -7.828911 10.997322 4.004550 +v -8.707580 11.540192 4.004550 +v -8.773089 11.377510 4.004550 +v -8.912474 11.031324 4.573697 +v -7.968303 10.651135 4.573697 +v -7.902801 10.813814 4.573697 +v -8.846970 11.194004 4.573697 +v -7.833316 10.986370 4.105544 +v -7.767808 11.149046 4.105544 +v -8.711987 11.529237 4.105544 +v -8.777492 11.366553 4.105544 +v -4.525187 9.604162 3.435403 +v -5.521032 9.814617 3.435403 +v -5.484768 9.986203 3.435403 +v -4.488920 9.775745 3.435403 +v -5.410044 10.339779 3.903555 +v -4.414185 10.129323 3.903555 +v -4.450459 9.957743 3.903555 +v -4.411753 10.140882 4.004549 +v -5.407596 10.351342 4.004549 +v -4.448018 9.969293 4.004549 +v -4.525187 9.604162 4.573696 +v -4.488922 9.775754 4.573696 +v -5.484768 9.986203 4.573695 +v -5.521032 9.814617 4.573695 +v -4.414185 10.129323 4.105543 +v -5.410044 10.339779 4.105543 +v -4.450459 9.957743 4.105543 +v -3.725210 9.404657 3.435403 +v -4.727868 9.579854 3.435403 +v -4.697678 9.752620 3.435403 +v -3.695029 9.577415 3.435403 +v -4.635478 10.108606 3.903555 +v -3.632823 9.933414 3.903555 +v -3.663011 9.760663 3.903555 +v -3.630792 9.945055 4.004549 +v -4.633441 10.120243 4.004549 +v -3.660975 9.772294 4.004549 +v -3.725210 9.404657 4.573696 +v -3.695029 9.577424 4.573696 +v -4.697678 9.752620 4.573696 +v -4.727868 9.579854 4.573696 +v -3.632823 9.933414 4.105543 +v -4.635478 10.108606 4.105543 +v -3.663011 9.760663 4.105543 +v -2.825487 9.253774 3.435403 +v -3.835884 9.376645 3.435403 +v -3.814717 9.550737 3.435403 +v -2.804317 9.427873 3.435403 +v -3.771090 9.909484 3.903555 +v -2.760688 9.786617 3.903555 +v -2.781863 9.612530 3.903555 +v -2.759268 9.798346 4.004549 +v -3.769664 9.921204 4.004549 +v -2.780437 9.624252 4.004549 +v -2.825487 9.253774 4.573696 +v -2.804320 9.427876 4.573696 +v -3.814718 9.550737 4.573696 +v -3.835882 9.376645 4.573696 +v -2.760688 9.786617 4.105543 +v -3.771090 9.909484 4.105543 +v -2.781864 9.612530 4.105543 +v -1.916558 9.099153 3.435403 +v -2.926955 9.222018 3.435403 +v -2.905781 9.396115 3.435403 +v -1.895385 9.273246 3.435403 +v -2.862163 9.754860 3.903555 +v -1.851764 9.631997 3.903556 +v -1.872930 9.457903 3.903556 +v -1.850336 9.643720 4.004549 +v -2.860733 9.766582 4.004549 +v -1.871507 9.469625 4.004549 +v -1.916558 9.099153 4.573696 +v -1.895386 9.273250 4.573696 +v -2.905782 9.396115 4.573696 +v -2.926952 9.222018 4.573696 +v -1.851764 9.631997 4.105543 +v -2.862163 9.754860 4.105543 +v -1.872930 9.457903 4.105543 +v -0.916265 9.037489 3.435403 +v -1.933530 9.071821 3.435403 +v -1.927615 9.247103 3.435403 +v -0.910350 9.212770 3.435403 +v -1.915416 9.608285 3.903556 +v -0.898164 9.573951 3.903556 +v -0.904077 9.398677 3.903556 +v -0.897761 9.585756 4.004549 +v -1.915027 9.620090 4.004549 +v -0.903672 9.410481 4.004550 +v -0.916265 9.037489 4.573696 +v -0.910350 9.212770 4.573696 +v -1.927615 9.247103 4.573696 +v -1.933530 9.071821 4.573696 +v -0.898164 9.573951 4.105543 +v -1.915416 9.608285 4.105543 +v -0.904077 9.398677 4.105543 +v 0.098525 9.003066 3.435403 +v -0.917858 9.057508 3.435403 +v -0.908479 9.232633 3.435403 +v 0.107901 9.178195 3.435403 +v -0.889152 9.593499 3.903556 +v 0.127235 9.539063 3.903556 +v 0.117852 9.363945 3.903556 +v 0.127864 9.550862 4.004550 +v -0.888523 9.605289 4.004550 +v 0.118487 9.375740 4.004550 +v 0.098525 9.003066 4.573697 +v 0.107898 9.178195 4.573697 +v -0.908477 9.232633 4.573697 +v -0.917858 9.057508 4.573697 +v 0.127235 9.539063 4.105543 +v -0.889152 9.593499 4.105544 +v 0.117852 9.363945 4.105543 +v -7.140497 10.367755 3.435403 +v -8.136342 10.578209 3.435403 +v -8.100086 10.749797 3.435403 +v -7.104231 10.539337 3.435402 +v -8.025360 11.103369 3.903555 +v -7.029497 10.892917 3.903555 +v -7.065768 10.721334 3.903555 +v -7.027062 10.904475 4.004548 +v -8.022904 11.114935 4.004548 +v -7.063326 10.732885 4.004549 +v -7.140497 10.367755 4.573695 +v -7.104231 10.539345 4.573695 +v -8.100086 10.749797 4.573695 +v -8.136342 10.578209 4.573695 +v -7.029497 10.892917 4.105542 +v -8.025360 11.103369 4.105542 +v -7.065768 10.721334 4.105542 +v -6.225498 10.090338 3.435403 +v -7.221344 10.300794 3.435403 +v -7.185081 10.472381 3.435403 +v -6.189229 10.261920 3.435403 +v -7.110355 10.825954 3.903555 +v -6.114499 10.615499 3.903555 +v -6.150771 10.443917 3.903555 +v -6.112064 10.627060 4.004549 +v -7.107907 10.837520 4.004548 +v -6.148331 10.455468 4.004549 +v -6.225498 10.090338 4.573695 +v -6.189230 10.261928 4.573695 +v -7.185081 10.472381 4.573695 +v -7.221344 10.300794 4.573695 +v -6.114499 10.615499 4.105542 +v -7.110355 10.825954 4.105542 +v -6.150771 10.443917 4.105542 +v -5.302460 9.829968 3.435403 +v -6.298305 10.040421 3.435403 +v -6.262042 10.212009 3.435403 +v -5.266192 10.001551 3.435403 +v -6.187316 10.565583 3.903555 +v -5.191457 10.355129 3.903555 +v -5.227733 10.183548 3.903555 +v -5.189027 10.366690 4.004549 +v -6.184870 10.577147 4.004548 +v -5.225292 10.195098 4.004549 +v -5.302460 9.829968 4.573696 +v -5.266193 10.001559 4.573696 +v -6.262042 10.212009 4.573695 +v -6.298305 10.040421 4.573695 +v -5.191457 10.355129 4.105543 +v -6.187316 10.565583 4.105542 +v -5.227733 10.183548 4.105543 +v 8.751835 11.073284 3.435406 +v 7.807665 10.693095 3.435405 +v 7.742163 10.855774 3.435405 +v 8.686349 11.235967 3.435405 +v 7.672678 11.028330 3.903558 +v 7.607171 11.191006 3.903558 +v 8.551349 11.571197 3.903558 +v 8.616853 11.408513 3.903558 +v 7.668272 11.039282 4.004552 +v 7.602763 11.201962 4.004552 +v 8.546941 11.582151 4.004552 +v 8.612451 11.419469 4.004552 +v 8.751835 11.073284 4.573699 +v 8.686330 11.235964 4.573699 +v 7.742163 10.855774 4.573699 +v 7.807665 10.693095 4.573699 +v 7.607171 11.191006 4.105546 +v 7.672678 11.028330 4.105546 +v 8.551349 11.571197 4.105546 +v 8.616853 11.408513 4.105546 +v 4.364550 9.646123 3.435404 +v 4.328283 9.817705 3.435404 +v 5.324131 10.028165 3.435404 +v 5.360395 9.856579 3.435404 +v 5.249407 10.381739 3.903557 +v 4.253548 10.171285 3.903557 +v 4.289822 9.999702 3.903557 +v 4.251115 10.182843 4.004550 +v 5.246959 10.393303 4.004550 +v 4.287380 10.011253 4.004550 +v 4.364550 9.646123 4.573697 +v 5.360395 9.856579 4.573697 +v 5.324131 10.028165 4.573697 +v 4.328284 9.817715 4.573697 +v 5.249407 10.381739 4.105544 +v 4.253548 10.171285 4.105544 +v 4.289822 9.999702 4.105544 +v 3.564572 9.446617 3.435404 +v 3.534391 9.619375 3.435404 +v 4.537041 9.794579 3.435404 +v 4.567231 9.621816 3.435404 +v 4.474841 10.150567 3.903557 +v 3.472185 9.975375 3.903557 +v 3.502373 9.802625 3.903557 +v 3.470154 9.987017 4.004550 +v 4.472804 10.162204 4.004550 +v 3.500337 9.814256 4.004550 +v 3.564572 9.446617 4.573697 +v 4.567231 9.621816 4.573697 +v 4.537041 9.794579 4.573697 +v 3.534391 9.619385 4.573697 +v 4.474841 10.150567 4.105544 +v 3.472185 9.975375 4.105544 +v 3.502373 9.802625 4.105544 +v 2.664850 9.295735 3.435404 +v 2.643680 9.469832 3.435404 +v 3.654080 9.592699 3.435404 +v 3.675246 9.418605 3.435404 +v 3.610452 9.951445 3.903557 +v 2.600050 9.828578 3.903557 +v 2.621226 9.654490 3.903557 +v 2.598630 9.840306 4.004550 +v 3.609026 9.963165 4.004550 +v 2.619799 9.666214 4.004550 +v 2.664849 9.295735 4.573697 +v 3.675245 9.418605 4.573697 +v 3.654080 9.592699 4.573697 +v 2.643682 9.469836 4.573697 +v 3.610452 9.951445 4.105544 +v 2.600050 9.828578 4.105544 +v 2.621225 9.654490 4.105544 +v 1.755920 9.141115 3.435405 +v 1.734747 9.315207 3.435405 +v 2.745144 9.438076 3.435405 +v 2.766317 9.263979 3.435405 +v 2.701525 9.796821 3.903557 +v 1.691126 9.673960 3.903557 +v 1.712292 9.499866 3.903557 +v 1.689698 9.685682 4.004550 +v 2.700094 9.808544 4.004550 +v 1.710869 9.511588 4.004550 +v 1.755920 9.141115 4.573697 +v 2.766314 9.263979 4.573697 +v 2.745143 9.438076 4.573697 +v 1.734749 9.315212 4.573697 +v 2.701525 9.796821 4.105544 +v 1.691126 9.673960 4.105544 +v 1.712292 9.499866 4.105544 +v 0.755627 9.079452 3.435405 +v 0.749712 9.254731 3.435405 +v 1.766977 9.289065 3.435405 +v 1.772892 9.113784 3.435405 +v 1.754778 9.650248 3.903557 +v 0.737526 9.615912 3.903557 +v 0.743439 9.440639 3.903557 +v 0.737123 9.627718 4.004551 +v 1.754389 9.662052 4.004550 +v 0.743034 9.452444 4.004551 +v 0.755627 9.079452 4.573698 +v 1.772892 9.113784 4.573697 +v 1.766977 9.289065 4.573697 +v 0.749712 9.254731 4.573698 +v 1.754778 9.650248 4.105544 +v 0.737526 9.615912 4.105544 +v 0.743439 9.440639 4.105544 +v -0.259163 9.045029 3.435405 +v -0.268539 9.220156 3.435405 +v 0.747841 9.274595 3.435405 +v 0.757220 9.099471 3.435405 +v 0.728514 9.635462 3.903558 +v -0.287873 9.581025 3.903558 +v -0.278490 9.405908 3.903558 +v -0.288501 9.592824 4.004551 +v 0.727885 9.647251 4.004551 +v -0.279125 9.417702 4.004551 +v -0.259163 9.045029 4.573698 +v 0.757220 9.099471 4.573698 +v 0.747839 9.274595 4.573698 +v -0.268536 9.220156 4.573698 +v 0.728514 9.635462 4.105545 +v -0.287873 9.581025 4.105545 +v -0.278490 9.405908 4.105545 +v 6.979859 10.409715 3.435404 +v 6.943593 10.581297 3.435404 +v 7.939448 10.791757 3.435404 +v 7.975703 10.620169 3.435404 +v 7.864722 11.145329 3.903557 +v 6.868859 10.934876 3.903557 +v 6.905130 10.763294 3.903557 +v 6.866425 10.946435 4.004550 +v 7.862266 11.156895 4.004550 +v 6.902688 10.774845 4.004550 +v 6.979859 10.409715 4.573698 +v 7.975703 10.620169 4.573698 +v 7.939448 10.791757 4.573698 +v 6.943593 10.581305 4.573698 +v 7.864722 11.145329 4.105545 +v 6.868859 10.934876 4.105545 +v 6.905130 10.763294 4.105545 +v 6.064860 10.132298 3.435404 +v 6.028591 10.303881 3.435404 +v 7.024443 10.514339 3.435404 +v 7.060706 10.342753 3.435404 +v 6.949717 10.867913 3.903557 +v 5.953861 10.657460 3.903557 +v 5.990133 10.485878 3.903557 +v 5.951426 10.669021 4.004550 +v 6.947268 10.879478 4.004550 +v 5.987692 10.497428 4.004550 +v 6.064860 10.132298 4.573698 +v 7.060706 10.342753 4.573698 +v 7.024443 10.514339 4.573698 +v 6.028593 10.303889 4.573698 +v 6.949717 10.867913 4.105545 +v 5.953861 10.657460 4.105545 +v 5.990133 10.485878 4.105545 +v 5.141823 9.871928 3.435404 +v 5.105555 10.043512 3.435404 +v 6.101403 10.253970 3.435404 +v 6.137667 10.082383 3.435404 +v 6.026678 10.607544 3.903557 +v 5.030820 10.397090 3.903557 +v 5.067095 10.225510 3.903557 +v 5.028390 10.408650 4.004550 +v 6.024232 10.619107 4.004550 +v 5.064654 10.237059 4.004550 +v 5.141823 9.871928 4.573697 +v 6.137667 10.082383 4.573698 +v 6.101403 10.253970 4.573698 +v 5.105556 10.043520 4.573697 +v 6.026678 10.607544 4.105545 +v 5.030820 10.397090 4.105544 +v 5.067095 10.225510 4.105544 +v 2.417334 14.879411 -0.157506 +v 1.994648 16.926769 -0.298724 +v 1.909423 14.900703 -0.158539 +v 2.416871 14.842373 -0.693086 +v 2.502082 16.867332 -0.849278 +v 1.908945 14.862559 -0.710127 +v 1.994170 16.888626 -0.850310 +v 2.431423 15.156576 3.856914 +v 2.516649 17.182642 3.716730 +v 2.008737 17.203936 3.715697 +v 1.923512 15.177868 3.855881 +v 2.430969 15.120289 3.332151 +v 1.923057 15.141580 3.331118 +v 2.008282 17.167650 3.190934 +v 5.957858 15.008731 3.864084 +v 6.043084 17.034801 3.723900 +v 5.432909 17.060381 3.722659 +v 5.347682 15.034313 3.862843 +v 5.957404 14.972442 3.339320 +v 6.042629 16.998512 3.199137 +v 5.347229 14.998023 3.338081 +v 5.943770 14.731565 -0.150338 +v 6.028995 16.757635 -0.290521 +v 5.333596 14.757145 -0.151578 +v 5.943306 14.694530 -0.685914 +v 6.028533 16.720596 -0.826100 +v 5.333131 14.720112 -0.687156 +v 5.418357 16.746176 -0.827341 +v 2.050006 18.216015 -0.942151 +v 2.557918 18.194719 -0.941118 +v 2.050484 18.254158 -0.390564 +v 2.572484 18.510031 3.624888 +v 2.064573 18.531321 3.623855 +v 2.064118 18.495035 3.099093 +v 6.098918 18.362185 3.632058 +v 5.488744 18.387768 3.630818 +v 6.098464 18.325901 3.107296 +v 6.084368 18.047983 -0.917941 +v 6.084832 18.085020 -0.382363 +v 5.474193 18.073565 -0.919182 +v 3.269593 17.719748 3.678935 +v 3.301549 18.479464 3.626372 +v 2.060710 18.434816 2.226678 +v 2.028753 17.675097 2.279243 +v 6.088240 18.145241 0.490052 +v 6.056282 17.385523 0.542615 +v 4.713170 17.344410 -0.868099 +v 4.745127 18.104128 -0.920664 +v 2.053892 18.314373 0.481849 +v 2.021935 17.554659 0.534413 +v 2.032281 17.779789 1.395418 +v 2.057301 18.374592 1.354263 +v 6.095054 18.265676 2.234881 +v 6.063099 17.505959 2.287445 +v 6.066626 17.610653 1.403620 +v 6.091649 18.205460 1.362466 +v 4.005594 17.854092 3.669007 +v 4.727724 17.658613 3.681900 +v 4.759680 18.418335 3.629336 +v 4.030614 18.448900 3.627853 +v 3.991043 17.539890 -0.880991 +v 3.255026 17.404434 -0.887071 +v 3.286984 18.164152 -0.939638 +v 4.016048 18.133589 -0.938154 +v 8.254710 1.226861 0.591258 +v 8.110739 3.717739 0.752560 +v 8.110739 3.717739 1.256720 +v 8.254710 1.226861 1.284336 +v 8.254711 5.872983 0.669113 +v 8.254711 6.804342 1.284336 +v 7.606578 3.717739 1.256720 +v 7.561633 1.226862 1.284336 +v 7.561633 6.804342 1.284336 +v 7.606578 3.717739 0.752560 +v 7.561633 1.226862 0.591258 +v 7.561633 5.872983 0.669112 +v 7.472826 1.226862 7.432425 +v 7.616798 3.717739 7.271124 +v 7.616798 3.717739 6.766964 +v 7.472826 1.226862 6.739347 +v 7.472826 5.872983 7.354571 +v 7.472826 6.804342 6.739347 +v 8.120959 3.717739 6.766964 +v 8.165903 1.226861 6.739347 +v 8.165903 6.804342 6.739347 +v 8.120958 3.717739 7.271124 +v 8.165903 1.226861 7.432425 +v 8.165903 5.872983 7.354571 +# 1444 vertices + +vn -0.999554 0.029865 -0.000000 +vn -0.999998 0.002037 -0.000000 +vn -0.999998 0.002089 -0.000000 +vn -0.999974 0.007228 -0.000000 +vn -0.999718 0.023752 0.000114 +vn -0.999722 0.023555 0.000115 +vn -0.999975 0.007064 -0.000000 +vn -0.000000 0.018027 0.999837 +vn -0.000000 0.001155 0.999999 +vn -0.000000 0.001142 0.999999 +vn -0.000000 0.018027 0.999838 +vn -0.000000 0.005038 0.999987 +vn -0.000566 0.013807 0.999904 +vn -0.000553 0.014094 0.999900 +vn -0.000000 0.005081 0.999987 +vn 0.998914 0.046583 -0.000000 +vn 0.999994 0.003393 -0.000000 +vn 0.999994 0.003313 -0.000000 +vn 0.999950 0.009961 -0.000000 +vn 0.999892 -0.014626 0.001529 +vn 0.999904 -0.013758 0.001511 +vn 0.999948 0.010210 -0.000000 +vn 0.000000 0.058383 -0.998294 +vn 0.000000 0.004243 -0.999991 +vn 0.000000 0.004284 -0.999991 +vn -0.000000 0.012221 -0.999925 +vn -0.000427 -0.003510 -0.999994 +vn -0.000437 -0.005415 -0.999985 +vn -0.000000 0.012093 -0.999927 +vn -0.998903 0.046770 -0.002455 +vn -0.998976 0.045185 -0.002349 +vn 0.000347 0.046611 0.998913 +vn 0.000356 0.046871 0.998901 +vn 0.999523 -0.030871 0.000094 +vn 0.999595 -0.028451 -0.000027 +vn 0.001092 -0.030196 -0.999543 +vn 0.001081 -0.030485 -0.999535 +vn -0.999025 0.044088 -0.002184 +vn -0.999025 0.044085 -0.002184 +vn 0.000955 0.071164 0.997464 +vn 0.000955 0.071165 0.997464 +vn 0.999211 -0.039658 0.001877 +vn 0.999212 -0.039653 0.001877 +vn -0.000770 -0.066737 -0.997770 +vn -0.000770 -0.066739 -0.997770 +vn -0.999997 0.002351 0.000703 +vn 0.000066 0.050011 0.998749 +vn 0.993882 -0.110243 0.006764 +vn -0.004598 -0.157544 -0.987501 +vn 0.999998 0.002089 0.000000 +vn 0.999998 0.002037 0.000000 +vn 0.999554 0.029865 0.000000 +vn 0.999734 0.023007 0.001877 +vn 0.999705 0.024236 0.001855 +vn 0.998703 0.050923 0.000000 +vn 0.998706 0.050864 0.000000 +vn 0.000000 0.001142 0.999999 +vn 0.000000 0.001155 0.999999 +vn 0.000000 0.018027 0.999837 +vn 0.000628 0.014125 0.999900 +vn 0.000643 0.013698 0.999906 +vn 0.000000 0.008820 0.999961 +vn 0.000000 0.007470 0.999972 +vn -0.999994 0.003313 -0.000001 +vn -0.999994 0.003394 -0.000001 +vn -0.998914 0.046583 -0.000001 +vn -0.999902 -0.013957 -0.000249 +vn -0.999905 -0.013796 -0.000251 +vn -0.999423 -0.033972 -0.000000 +vn -0.999423 -0.033966 -0.000000 +vn -0.000000 0.004284 -0.999991 +vn -0.000000 0.004243 -0.999991 +vn -0.000000 0.058383 -0.998294 +vn 0.000361 -0.005318 -0.999986 +vn 0.000353 -0.003672 -0.999993 +vn 0.000000 0.007374 -0.999973 +vn 0.000000 0.010706 -0.999943 +vn 1.000000 -0.000423 -0.000549 +vn 0.999994 0.003281 -0.000743 +vn -0.000326 0.045127 0.998981 +vn -0.000227 0.042047 0.999115 +vn -0.999873 0.015817 -0.001775 +vn -0.999884 0.015136 -0.001720 +vn -0.001102 -0.028818 -0.999584 +vn -0.001224 -0.025521 -0.999673 +vn 0.999025 0.044085 -0.002184 +vn 0.999025 0.044088 -0.002184 +vn -0.000955 0.071165 0.997464 +vn -0.000955 0.071164 0.997464 +vn -0.999212 -0.039653 0.001876 +vn -0.999211 -0.039658 0.001877 +vn 0.000770 -0.066739 -0.997770 +vn 0.000770 -0.066737 -0.997770 +vn 0.999997 0.002350 0.000704 +vn -0.000066 0.050011 0.998749 +vn -0.993882 -0.110243 0.006763 +vn 0.004598 -0.157544 -0.987501 +vn -1.000000 0.000000 -0.000000 +vn -0.000000 0.000000 1.000000 +vn 0.000000 0.000000 -1.000000 +vn 1.000000 -0.000000 -0.000000 +vn 1.000000 -0.000000 0.000000 +vn 1.000000 0.000000 -0.000000 +vn -0.000000 0.000000 -1.000000 +vn -0.998585 -0.005804 -0.052854 +vn -0.998585 -0.005804 0.052854 +vn -0.012865 -0.292908 0.956054 +vn -0.000000 -0.292378 0.956303 +vn 0.022394 -0.293337 0.955747 +vn 0.998709 -0.007669 0.050213 +vn 0.998867 -0.009404 -0.046641 +vn 0.010261 -0.293697 -0.955844 +vn 0.000000 -0.292377 -0.956303 +vn -0.012865 -0.292906 -0.956055 +vn -0.185816 -0.515752 0.836345 +vn -0.185816 -0.515752 -0.836345 +vn -0.185816 -0.515751 -0.836345 +vn 0.241136 -0.518426 -0.820419 +vn 0.153141 -0.516646 0.842392 +vn 0.095537 0.586991 -0.803937 +vn 0.051136 0.628276 -0.776308 +vn 0.047656 0.631386 -0.774003 +vn 0.095537 0.586991 -0.803936 +vn -0.044076 0.628164 -0.776832 +vn -0.041412 0.630921 -0.774741 +vn -0.082915 0.586497 -0.805696 +vn -0.082915 0.586497 -0.805697 +vn -0.096650 0.596920 0.796458 +vn 0.095537 0.586991 0.803936 +vn 0.000000 0.672137 0.740426 +vn -0.000000 -0.976053 -0.217533 +vn 0.686000 -0.710178 -0.158277 +vn -0.686000 -0.710177 -0.158277 +vn -0.705809 0.708353 0.008360 +vn 0.000000 0.999973 0.007343 +vn 0.000000 0.975770 0.218799 +vn -0.691847 0.704549 0.157982 +vn 0.705809 0.708353 0.008360 +vn 0.691847 0.704549 0.157983 +vn -0.999172 -0.000000 0.040688 +vn -0.985833 -0.000000 0.167729 +vn 0.999172 -0.000000 0.040688 +vn 0.996207 -0.000000 -0.087016 +vn -0.703444 0.695396 -0.146941 +vn 0.000000 0.978396 -0.206740 +vn 0.703444 0.695396 -0.146941 +vn -0.996207 -0.000000 -0.087016 +vn -0.996207 -0.000000 -0.087017 +vn 0.985833 -0.000000 0.167729 +vn 0.000000 0.057703 -0.998334 +vn 0.022455 0.002147 -0.999745 +vn 0.022621 0.001736 -0.999743 +vn 0.045190 -0.054313 -0.997501 +vn 0.999938 0.011086 0.000000 +vn 0.999999 0.001104 0.000000 +vn 0.999999 0.001081 0.000000 +vn 0.999939 0.011086 0.000000 +vn 0.999960 -0.008947 0.000000 +vn -0.000000 0.018041 0.999837 +vn 0.007066 0.000536 0.999975 +vn 0.007014 0.000664 0.999975 +vn 0.014139 -0.016993 0.999756 +vn -0.997910 0.064621 -0.000000 +vn -0.999916 0.012938 -0.000000 +vn -0.999917 0.012841 -0.000000 +vn -0.999251 -0.038689 -0.000000 +vn -0.000399 0.005460 0.999985 +vn -0.000391 0.005345 0.999986 +vn 0.999846 -0.017551 0.000390 +vn 0.999847 -0.017463 0.000388 +vn -0.999856 0.016986 -0.000371 +vn -0.999854 0.017101 -0.000374 +vn -1.000000 0.000000 0.000000 +vn 0.999120 -0.041885 0.002031 +vn -0.999120 0.041887 -0.002031 +vn 0.041928 0.996738 -0.068963 +vn 0.000431 -0.003976 -0.999992 +vn 0.000421 -0.003886 -0.999992 +vn 0.000851 -0.007861 -0.999969 +vn 0.000864 0.068989 0.997617 +vn -0.000864 -0.068988 -0.997617 +vn 0.041927 0.996738 -0.068964 +vn 0.041928 0.996738 -0.068966 +vn 0.041928 0.996737 -0.068966 +vn 0.041925 0.996738 -0.068964 +vn 0.041928 0.996737 -0.068967 +vn -0.029387 -0.664760 0.746478 +vn 0.785550 -0.617370 0.042013 +vn -0.030594 -0.761180 -0.647818 +vn -0.030594 -0.761181 -0.647818 +vn -0.834630 -0.549448 0.038719 +vn 0.999120 -0.041887 0.002032 +vn -0.000864 -0.068989 -0.997617 +vn -0.041924 -0.996738 0.068964 +vn -0.041927 -0.996738 0.068963 +vn -0.041919 -0.996738 0.068964 +vn -0.041927 -0.996738 0.068960 +vn 0.041923 0.996738 -0.068964 +vn 0.041927 0.996737 -0.068973 +vn 0.041931 0.996737 -0.068965 +vn 0.041927 0.996737 -0.068968 +vn -0.000002 1.000000 0.000000 +vn 0.000000 1.000000 -0.000001 +vn 0.000002 1.000000 -0.000000 +vn 0.000000 1.000000 0.000001 +vn -0.000002 -1.000000 0.000000 +vn -0.000000 -1.000000 0.000001 +vn 0.000004 -1.000000 -0.000000 +vn 0.000000 -1.000000 -0.000003 +vn -0.000790 0.010805 0.999941 +vn 0.999386 -0.035026 0.000778 +vn -0.999418 0.034098 -0.000745 +vn 0.999113 -0.042096 -0.000998 +vn -0.999113 0.042096 0.000996 +vn -0.999113 0.042096 0.000997 +vn 0.000863 0.068989 0.997617 +vn -0.999113 0.042096 0.000998 +vn -0.999113 0.042095 0.000998 +vn 0.000864 0.068988 0.997617 +vn 0.000864 0.068987 0.997617 +vn 0.000865 0.068987 0.997617 +vn 0.003029 0.086035 0.996287 +vn -0.002550 0.609183 0.793026 +vn -0.425768 0.455283 0.781945 +vn -0.616656 0.126337 0.777029 +vn 0.620173 0.137676 0.772289 +vn 0.423329 0.463070 0.778690 +vn -0.007517 0.950080 0.311916 +vn -0.634637 0.710693 0.303563 +vn -0.937738 0.189764 0.290924 +vn 0.936303 0.206948 0.283742 +vn 0.623805 0.722234 0.298739 +vn -0.009867 0.961986 -0.272922 +vn -0.636938 0.722357 -0.269277 +vn -0.940015 0.201295 -0.275414 +vn 0.933279 0.219492 -0.284277 +vn 0.622277 0.732187 -0.276900 +vn -0.008821 0.640957 -0.767526 +vn -0.431962 0.486657 -0.759324 +vn -0.622857 0.157753 -0.766265 +vn 0.613295 0.157703 -0.773950 +vn 0.420238 0.490248 -0.763581 +vn -0.003692 0.127027 -0.991892 +vn -0.566625 0.297364 0.768447 +vn 0.000723 0.317426 0.948283 +vn 0.566950 0.307758 0.764102 +vn -0.908330 0.300469 0.290954 +vn 0.904870 0.317099 0.284005 +vn -0.910589 0.311916 -0.271174 +vn 0.901315 0.324511 -0.286921 +vn -0.572732 0.328305 -0.751128 +vn 0.558652 0.347419 -0.753132 +vn 0.003194 0.351418 -0.936213 +vn -0.474948 0.563099 0.676272 +vn -0.002007 0.563939 0.825814 +vn 0.469712 0.571762 0.672650 +vn -0.789424 0.555310 0.261610 +vn 0.781089 0.569713 0.255591 +vn -0.791408 0.565372 -0.232438 +vn 0.771590 0.582525 -0.255566 +vn -0.480274 0.590081 -0.648954 +vn 0.467557 0.594236 -0.654426 +vn 0.010773 0.599402 -0.800376 +vn 0.960382 0.277963 -0.020043 +vn 0.486168 0.241186 -0.839923 +vn 0.486157 0.241186 -0.839929 +vn 0.960383 0.277962 -0.020062 +vn -0.460862 0.280888 -0.841848 +vn -0.460864 0.280888 -0.841847 +vn -0.933659 0.357366 -0.023898 +vn -0.933659 0.357365 -0.023902 +vn -0.459434 0.394146 0.795971 +vn -0.459451 0.394146 0.795961 +vn 0.487583 0.354444 0.797892 +vn 0.487575 0.354445 0.797897 +vn -0.138249 0.346685 0.927737 +vn -0.065922 0.173150 0.982687 +vn -0.101006 0.257400 0.961011 +vn 0.988384 0.151858 0.005960 +vn 0.994413 0.094040 0.047938 +vn 0.995334 0.035884 0.089566 +vn -0.068252 0.154321 -0.985660 +vn -0.089341 0.053897 -0.994542 +vn -0.085707 0.071566 -0.993747 +vn -0.966451 0.253119 -0.043631 +vn -0.987884 0.152192 -0.030391 +vn -0.986268 0.162080 -0.031693 +vn 0.022720 0.581381 0.813314 +vn 0.962377 0.271010 -0.019575 +vn 0.962378 0.271010 -0.019575 +vn 0.021249 0.463891 -0.885637 +vn -0.936228 0.350611 -0.023435 +vn 0.034133 0.840407 0.540880 +vn -0.425650 0.902757 -0.062060 +vn 0.033101 0.757959 -0.651461 +vn 0.499962 0.863954 -0.060179 +vn 0.000000 1.000000 0.000000 +vn -0.962270 0.272095 0.000000 +vn 0.000000 0.358606 0.933489 +vn 0.000000 0.358607 0.933489 +vn -0.000000 0.358607 0.933489 +vn 0.959420 0.281982 0.000000 +vn 0.000000 0.357443 -0.933935 +vn -0.000000 0.357444 -0.933935 +vn 1.000000 0.000001 0.000000 +vn 0.000134 0.999999 -0.001151 +vn 0.000000 -0.000000 -1.000000 +vn 0.000000 0.974144 -0.225925 +vn 0.000000 0.974145 -0.225925 +vn 0.000000 0.940855 -0.338810 +vn -1.000000 0.000001 -0.000000 +vn 1.000000 0.000000 0.000000 +vn 0.000000 0.972394 -0.233346 +vn 1.000000 -0.000001 0.000000 +vn -1.000000 -0.000000 -0.000000 +vn -0.000000 0.974144 -0.225925 +vn -0.000000 1.000000 0.000000 +vn -0.000000 1.000000 -0.000000 +vn -0.881781 0.471659 -0.000000 +vn -0.744571 0.667543 0.000000 +vn 0.872989 -0.487741 0.000000 +vn 0.744342 -0.667798 0.000000 +vn -0.000000 -1.000000 -0.000000 +vn 0.744571 0.667543 0.000001 +vn -0.744342 -0.667798 -0.000000 +vn 0.881781 0.471659 0.000000 +vn -0.872988 -0.487741 -0.000000 +vn -0.000001 1.000000 -0.000000 +vn -0.829630 0.558313 -0.000000 +vn -0.000000 -1.000000 0.000002 +vn 0.158239 -0.987401 0.000002 +vn 0.000004 -0.000001 -1.000000 +vn 0.829630 0.558314 0.000000 +vn -0.158240 -0.987401 0.000002 +vn -0.000004 -0.000001 -1.000000 +vn 0.841396 -0.540419 0.000000 +vn -0.841394 -0.540422 -0.000000 +vn -0.170318 0.985389 -0.000006 +vn 0.126406 0.991979 -0.000006 +vn 0.217590 0.976040 0.000000 +vn 0.126406 0.991979 0.000004 +vn -0.170318 0.985389 0.000004 +vn -0.134986 0.990847 -0.000000 +vn 0.158239 -0.987401 0.000000 +vn -0.158240 -0.987401 -0.000000 +vn 0.000000 -1.000000 0.000000 +vn 0.000000 -1.000000 0.000005 +vn 0.829629 0.558315 0.000000 +vn -0.170318 0.985389 -0.000008 +vn 0.126405 0.991979 -0.000008 +vn 0.217591 0.976040 0.000000 +vn 0.126405 0.991979 0.000005 +vn -0.170318 0.985389 0.000005 +vn -0.134987 0.990847 -0.000000 +vn 0.000002 1.000000 0.000000 +vn -0.000002 -1.000000 0.000005 +vn -0.000002 -1.000000 -0.000000 +vn -0.000000 1.000000 0.000001 +vn -0.000000 0.766045 0.642787 +vn -1.000000 0.000001 0.000000 +vn -0.000000 0.173648 0.984808 +vn -1.000000 0.000000 0.000001 +vn -0.000000 -0.500000 0.866025 +vn 0.000001 -0.939693 0.342020 +vn 0.000003 -0.939693 -0.342020 +vn 0.000003 -0.939692 -0.342021 +vn 0.000001 -0.500000 -0.866025 +vn 0.000000 0.173648 -0.984808 +vn -1.000000 0.000001 -0.000001 +vn -0.000000 0.766045 -0.642787 +vn -1.000000 0.000000 -0.000001 +vn 0.000000 -0.939693 -0.342020 +vn 0.000000 -0.939693 0.342020 +vn -0.000000 0.766044 0.642788 +vn -0.000000 0.766044 -0.642788 +vn 0.000000 0.173649 -0.984808 +vn 0.000000 -0.499999 -0.866026 +vn 0.158239 -0.987401 -0.000002 +vn -0.000000 -1.000000 -0.000002 +vn 0.000006 -0.000002 1.000000 +vn -0.158240 -0.987401 -0.000002 +vn -0.000006 -0.000002 1.000000 +vn -0.841395 -0.540421 -0.000000 +vn -0.170318 0.985389 0.000009 +vn 0.126405 0.991979 0.000009 +vn 0.217593 0.976040 0.000000 +vn 0.126405 0.991979 -0.000006 +vn 0.000000 -1.000000 -0.000005 +vn -0.829631 0.558313 -0.000000 +vn 0.000004 -0.000001 1.000000 +vn -0.000004 -0.000001 1.000000 +vn 0.841395 -0.540420 0.000000 +vn -0.170318 0.985389 0.000006 +vn 0.126405 0.991979 0.000006 +vn 0.126405 0.991979 -0.000004 +vn -0.170318 0.985389 -0.000004 +vn 0.158240 -0.987401 -0.000002 +vn -0.841394 -0.540421 -0.000000 +vn -0.170318 0.985389 0.000008 +vn 0.126405 0.991979 0.000008 +vn 0.217592 0.976040 0.000000 +vn 0.126405 0.991979 -0.000005 +vn -0.170318 0.985389 -0.000005 +vn -0.000002 -1.000000 -0.000005 +vn -0.000000 0.558313 0.829630 +vn -0.000002 -0.987401 -0.158239 +vn 1.000000 -0.000001 -0.000004 +vn 0.000000 0.558314 -0.829630 +vn -0.000002 -0.987401 0.158240 +vn 1.000000 -0.000001 0.000004 +vn 0.000000 -0.540419 -0.841396 +vn -0.000000 -0.540421 0.841395 +vn 0.000011 0.985389 0.170318 +vn 0.000011 0.991979 -0.126405 +vn -0.000000 0.976040 -0.217591 +vn -0.000006 0.991979 -0.126405 +vn -0.000006 0.985389 0.170318 +vn -0.000000 0.990847 0.134986 +vn 0.000000 -0.987401 -0.158239 +vn 0.000000 -0.987401 0.158240 +vn -0.000005 -1.000000 -0.000000 +vn -0.006697 0.353906 0.935257 +vn 0.013078 0.514621 0.857318 +vn -0.010448 0.321920 0.946709 +vn 0.982803 0.178718 0.046448 +vn 0.944296 0.328693 -0.016283 +vn 0.979997 0.194992 0.039803 +vn -0.040836 0.217230 -0.975266 +vn 0.010446 0.393041 -0.919461 +vn -0.041468 0.214980 -0.975738 +vn -0.902971 0.428723 -0.028976 +vn -0.958504 0.283917 -0.025700 +vn -0.960518 0.277042 -0.025533 +vn -0.000001 0.005038 0.999987 +vn -0.000001 0.005081 0.999987 +vn 0.000347 0.046610 0.998913 +vn 0.999212 -0.039653 0.001876 +vn -0.999997 0.002351 0.000704 +vn 0.993882 -0.110244 0.006763 +vn 0.993881 -0.110244 0.006763 +vn -0.004597 -0.157544 -0.987501 +vn -0.022621 0.001736 -0.999743 +vn -0.022455 0.002147 -0.999745 +vn -0.045190 -0.054313 -0.997501 +vn -0.999938 0.011086 -0.000000 +vn -0.999939 0.011086 -0.000000 +vn -0.999999 0.001081 -0.000000 +vn -0.999999 0.001104 -0.000000 +vn -0.999960 -0.008947 -0.000000 +vn -0.007014 0.000664 0.999975 +vn -0.007066 0.000536 0.999975 +vn -0.014139 -0.016993 0.999756 +vn 0.997910 0.064621 0.000000 +vn 0.999917 0.012840 -0.000000 +vn 0.999916 0.012937 -0.000000 +vn 0.999251 -0.038689 -0.000000 +vn 0.999732 0.023065 0.001755 +vn 0.999705 0.024228 0.001735 +vn 0.998843 0.048088 0.000000 +vn 0.998860 0.047729 0.000000 +vn 0.000554 0.014040 0.999901 +vn 0.000567 0.013756 0.999905 +vn 0.000000 0.005596 0.999984 +vn 0.000000 0.004504 0.999990 +vn -0.999903 -0.013953 -0.000127 +vn -0.999904 -0.013862 -0.000129 +vn -0.999520 -0.030963 -0.000000 +vn -0.999522 -0.030917 -0.000000 +vn 0.000438 -0.005436 -0.999985 +vn 0.000428 -0.003641 -0.999993 +vn 0.000000 0.010501 -0.999945 +vn 0.000000 0.013756 -0.999905 +vn 0.999996 0.002869 -0.000680 +vn 0.999981 0.006111 -0.000852 +vn -0.000395 0.048066 0.998844 +vn -0.000307 0.045364 0.998970 +vn -0.999918 0.012734 -0.001652 +vn -0.999927 0.011992 -0.001597 +vn -0.001027 -0.031991 -0.999488 +vn -0.001145 -0.028713 -0.999587 +vn 0.999025 0.044085 -0.002183 +vn 0.999025 0.044088 -0.002183 +vn -0.999212 -0.039653 0.001877 +vn -0.999212 -0.039658 0.001877 +vn 0.999997 0.002351 0.000704 +vn -1.000000 -0.000000 0.000000 +vn -0.834004 0.551758 -0.000000 +vn 0.834004 0.551758 0.000000 +vn 0.834004 -0.551758 0.000000 +vn -0.834005 -0.551757 -0.000000 +vn 0.998334 0.057704 0.000000 +vn 0.999745 0.002147 0.022456 +vn 0.999743 0.001736 0.022621 +vn 0.997501 -0.054314 0.045191 +vn -0.000001 0.011086 0.999938 +vn -0.000001 0.001104 0.999999 +vn -0.000001 0.001081 0.999999 +vn -0.000001 0.011086 0.999939 +vn -0.000001 -0.008947 0.999960 +vn -0.999837 0.018041 -0.000000 +vn -0.999975 0.000536 0.007066 +vn -0.999975 0.000664 0.007014 +vn -0.999756 -0.016993 0.014139 +vn 0.000000 0.064621 -0.997910 +vn 0.000000 0.012937 -0.999916 +vn 0.000000 0.012840 -0.999917 +vn 0.000001 -0.038689 -0.999251 +vn -0.998334 0.057704 -0.000000 +vn -0.999745 0.002147 -0.022455 +vn -0.999743 0.001736 -0.022621 +vn -0.997501 -0.054313 -0.045190 +vn 0.000001 0.011086 -0.999938 +vn 0.000001 0.001104 -0.999999 +vn 0.000001 0.001081 -0.999999 +vn 0.000001 -0.008947 -0.999960 +vn 0.999837 0.018041 0.000000 +vn 0.999975 0.000535 -0.007066 +vn 0.999975 0.000664 -0.007014 +vn 0.999756 -0.016994 -0.014139 +vn -0.000001 0.064621 0.997910 +vn -0.000001 0.012937 0.999916 +vn -0.000001 0.012840 0.999918 +vn -0.000001 -0.038689 0.999251 +vn 1.000000 -0.000001 -0.000001 +vn 0.000005 -0.291256 0.956645 +vn 0.611063 0.757263 0.230552 +vn -0.000053 0.291199 -0.956662 +vn -0.000054 -0.291265 0.956642 +vn 0.116145 0.950171 0.289283 +vn 0.000060 0.291261 -0.956644 +vn -0.611061 0.757265 0.230553 +vn -0.000001 0.291245 -0.956648 +vn 0.000051 -0.291264 0.956643 +vn -0.116138 0.950172 0.289283 +vn -0.000060 0.291261 -0.956644 +vn 1.000000 -0.000001 -0.000000 +vn -0.000000 0.226080 0.974109 +vn 0.611062 0.771086 -0.178968 +vn 0.611063 0.771086 -0.178968 +vn -0.000055 -0.226150 -0.974092 +vn -0.000055 -0.226150 -0.974093 +vn -0.000062 0.226071 0.974111 +vn 0.116153 0.967513 -0.224559 +vn 0.000036 -0.226091 -0.974106 +vn 0.000000 0.226080 0.974109 +vn -0.611059 0.771089 -0.178966 +vn -0.000001 -0.226102 -0.974104 +vn 0.000062 0.226071 0.974111 +vn -0.116153 0.967513 -0.224559 +vn -0.000035 -0.226091 -0.974106 +vn 0.611063 0.771085 -0.178967 +vn -0.000056 -0.226150 -0.974092 +vn 0.116145 0.967514 -0.224558 +vn 0.000029 -0.226087 -0.974107 +vn -0.000005 -0.226098 -0.974104 +vn -0.116145 0.967514 -0.224558 +vn -0.000029 -0.226087 -0.974107 +vn 0.116151 0.967513 -0.224559 +vn 0.116151 0.967514 -0.224559 +vn 0.000026 -0.226086 -0.974107 +vn -0.611060 0.771088 -0.178966 +vn -0.116151 0.967513 -0.224559 +vn -0.000026 -0.226086 -0.974107 +vn 0.000028 -0.226086 -0.974107 +vn -0.000028 -0.226086 -0.974107 +vn -0.000002 -0.206781 0.978387 +vn 0.611063 0.774475 0.163674 +vn -0.000065 -0.206784 0.978386 +vn -0.000065 -0.206784 0.978387 +vn 0.116142 0.971769 0.205369 +vn 0.000002 -0.206782 0.978387 +vn -0.611061 0.774477 0.163677 +vn 0.000064 -0.206785 0.978386 +vn -0.116136 0.971769 0.205370 +vn 1.000000 -0.000000 -0.000001 +vn 0.000004 -0.206776 0.978388 +vn 0.000004 -0.206777 0.978388 +vn 0.611062 0.774477 0.163675 +vn 0.611062 0.774476 0.163675 +vn -0.000066 -0.206783 0.978387 +vn 0.116148 0.971768 0.205368 +vn 0.116149 0.971768 0.205368 +vn -0.000004 -0.206776 0.978388 +vn -0.611060 0.774478 0.163677 +vn 0.000066 -0.206783 0.978387 +vn -0.116142 0.971769 0.205369 +vn -0.000001 -0.206780 0.978387 +vn 0.611063 0.774476 0.163675 +vn -0.000063 -0.206783 0.978387 +vn 0.000000 -0.206779 0.978388 +vn -0.611060 0.774478 0.163676 +vn 0.000063 -0.206783 0.978387 +vn -0.000001 0.000000 -1.000000 +vn 0.927622 -0.373520 -0.000006 +vn 0.295674 0.734288 -0.611063 +vn -0.927645 0.373463 0.000060 +vn 0.927614 -0.373539 0.000043 +vn 0.370995 0.921344 -0.116140 +vn -0.927620 0.373524 -0.000059 +vn 0.927622 -0.373520 0.000006 +vn 0.295676 0.734289 0.611060 +vn -0.927625 0.373512 0.000001 +vn 0.927614 -0.373539 -0.000043 +vn 0.370995 0.921344 0.116139 +vn -0.927620 0.373524 0.000059 +vn 0.163673 0.774479 -0.611059 +vn 0.978379 -0.206820 0.000025 +vn 0.205367 0.971762 -0.116202 +vn 0.978381 -0.206808 0.000049 +vn 0.163671 0.774483 0.611054 +vn 0.978381 -0.206811 -0.000015 +vn 0.205367 0.971762 0.116202 +vn 0.978381 -0.206808 -0.000049 +vn 0.136253 0.779771 -0.611058 +vn 0.985077 -0.172116 -0.000001 +vn 0.170952 0.978403 -0.116198 +vn 0.985076 -0.172122 0.000000 +vn 0.136250 0.779776 0.611053 +vn 0.985077 -0.172111 0.000007 +vn 0.170952 0.978403 0.116198 +vn 0.985076 -0.172122 -0.000000 +vn 0.095554 0.785796 -0.611060 +vn 0.992685 -0.120729 0.000008 +vn 0.992686 -0.120729 0.000008 +vn 0.119892 0.985969 -0.116149 +vn 0.992686 -0.120727 0.000027 +vn -0.000000 0.000001 1.000000 +vn 0.095553 0.785797 0.611058 +vn 0.095553 0.785797 0.611059 +vn 0.992687 -0.120720 0.000002 +vn 0.119892 0.985969 0.116149 +vn 0.992686 -0.120727 -0.000027 +vn 0.095554 0.785794 -0.611062 +vn 0.992688 -0.120710 -0.000002 +vn 0.119892 0.985970 -0.116144 +vn 0.992688 -0.120705 0.000001 +vn 0.000000 0.000002 1.000000 +vn 0.095553 0.785796 0.611060 +vn 0.992688 -0.120705 0.000008 +vn 0.119892 0.985970 0.116143 +vn 0.992688 -0.120705 -0.000001 +vn 0.026702 0.791134 -0.611060 +vn 0.999431 -0.033724 0.000000 +vn 0.033504 0.992665 -0.116161 +vn 0.999431 -0.033713 -0.000060 +vn 0.026701 0.791135 0.611058 +vn 0.999431 -0.033724 -0.000000 +vn 0.033504 0.992665 0.116161 +vn 0.999431 -0.033713 0.000060 +vn 0.999432 -0.033713 0.000060 +vn 0.042337 0.790455 -0.611056 +vn 0.042337 0.790455 -0.611055 +vn 0.998569 -0.053480 -0.000007 +vn 0.053116 0.991809 -0.116160 +vn 0.998569 -0.053484 0.000002 +vn 0.042337 0.790455 0.611055 +vn 0.998569 -0.053472 0.000016 +vn 0.053116 0.991809 0.116160 +vn 0.998569 -0.053484 -0.000002 +vn -0.000000 -0.000001 -1.000000 +vn 0.163672 0.774480 -0.611058 +vn 0.978381 -0.206808 0.000015 +vn 0.205365 0.971760 -0.116225 +vn 0.978384 -0.206796 0.000039 +vn 0.163670 0.774484 0.611054 +vn 0.978382 -0.206804 -0.000010 +vn 0.205365 0.971760 0.116224 +vn 0.978384 -0.206796 -0.000039 +vn 0.163674 0.774479 -0.611059 +vn 0.978379 -0.206818 0.000029 +vn 0.205367 0.971760 -0.116218 +vn 0.978382 -0.206807 0.000049 +vn 0.163672 0.774483 0.611054 +vn 0.978381 -0.206811 -0.000021 +vn 0.205367 0.971760 0.116217 +vn 0.978382 -0.206807 -0.000049 +vn 0.163673 0.774480 -0.611058 +vn 0.163673 0.774480 -0.611059 +vn 0.978377 -0.206828 0.000032 +vn 0.205365 0.971761 -0.116211 +vn 0.978381 -0.206811 0.000068 +vn 0.978379 -0.206819 -0.000022 +vn 0.205365 0.971761 0.116210 +vn 0.978381 -0.206811 -0.000068 +vn 0.000001 -0.000001 -1.000000 +vn -0.927621 -0.373522 -0.000006 +vn -0.295674 0.734288 -0.611063 +vn 0.927644 0.373464 0.000060 +vn -0.927614 -0.373539 0.000043 +vn -0.370995 0.921344 -0.116139 +vn 0.927621 0.373523 -0.000056 +vn -0.927621 -0.373522 0.000006 +vn -0.295677 0.734289 0.611061 +vn -0.295677 0.734289 0.611060 +vn 0.927624 0.373514 0.000002 +vn -0.927614 -0.373539 -0.000043 +vn -0.370995 0.921344 0.116139 +vn 0.927621 0.373523 0.000056 +vn -0.163673 0.774479 -0.611059 +vn -0.978379 -0.206820 0.000025 +vn -0.205366 0.971761 -0.116209 +vn -0.978382 -0.206807 0.000047 +vn -0.163671 0.774484 0.611054 +vn -0.978381 -0.206810 -0.000015 +vn -0.205366 0.971761 0.116208 +vn -0.978382 -0.206808 -0.000047 +vn -0.978382 -0.206807 -0.000047 +vn -0.136252 0.779771 -0.611059 +vn -0.985077 -0.172116 -0.000002 +vn -0.170952 0.978403 -0.116199 +vn -0.985076 -0.172122 0.000000 +vn -0.136250 0.779775 0.611054 +vn -0.985078 -0.172111 0.000007 +vn -0.170952 0.978403 0.116198 +vn -0.985076 -0.172122 -0.000000 +vn -0.095554 0.785795 -0.611061 +vn -0.992685 -0.120729 0.000008 +vn -0.119892 0.985969 -0.116150 +vn -0.992686 -0.120726 0.000026 +vn 0.000000 0.000000 1.000000 +vn -0.095553 0.785797 0.611059 +vn -0.992686 -0.120720 0.000001 +vn -0.992687 -0.120720 0.000001 +vn -0.119892 0.985969 0.116149 +vn -0.992686 -0.120726 -0.000026 +vn -0.095553 0.785794 -0.611062 +vn -0.992688 -0.120708 -0.000003 +vn -0.119891 0.985970 -0.116144 +vn -0.992688 -0.120704 0.000000 +vn -0.095552 0.785796 0.611060 +vn -0.095552 0.785796 0.611059 +vn -0.992689 -0.120703 0.000009 +vn -0.119891 0.985970 0.116143 +vn -0.992688 -0.120704 -0.000000 +vn -0.026702 0.791135 -0.611059 +vn -0.026702 0.791134 -0.611059 +vn -0.999431 -0.033723 -0.000000 +vn -0.033505 0.992664 -0.116168 +vn -0.999431 -0.033712 -0.000060 +vn -0.999432 -0.033712 -0.000060 +vn -0.026702 0.791135 0.611058 +vn -0.999431 -0.033723 0.000000 +vn -0.033504 0.992664 0.116167 +vn -0.999432 -0.033712 0.000060 +vn -0.999431 -0.033712 0.000060 +vn -0.042337 0.790454 -0.611056 +vn -0.998569 -0.053480 -0.000007 +vn -0.053116 0.991809 -0.116160 +vn -0.998569 -0.053484 0.000002 +vn 0.000001 0.000000 1.000000 +vn -0.042337 0.790454 0.611056 +vn -0.998569 -0.053472 0.000016 +vn -0.053116 0.991809 0.116160 +vn -0.998569 -0.053484 -0.000002 +vn -0.163672 0.774480 -0.611058 +vn -0.978381 -0.206809 0.000015 +vn -0.205365 0.971760 -0.116226 +vn -0.978384 -0.206796 0.000039 +vn -0.163670 0.774484 0.611054 +vn -0.978382 -0.206804 -0.000010 +vn -0.205365 0.971760 0.116225 +vn -0.978384 -0.206796 -0.000039 +vn -0.978379 -0.206818 0.000029 +vn -0.205365 0.971760 -0.116224 +vn -0.978382 -0.206806 0.000047 +vn -0.163670 0.774483 0.611054 +vn -0.978381 -0.206809 -0.000019 +vn -0.205365 0.971760 0.116223 +vn -0.978382 -0.206806 -0.000047 +vn -0.000000 -0.000000 -1.000000 +vn -0.163673 0.774480 -0.611058 +vn -0.978378 -0.206827 0.000031 +vn -0.978377 -0.206827 0.000031 +vn -0.205365 0.971762 -0.116204 +vn -0.978381 -0.206811 0.000068 +vn -0.163671 0.774483 0.611054 +vn -0.978379 -0.206819 -0.000021 +vn -0.205365 0.971762 0.116204 +vn -0.978381 -0.206811 -0.000068 +vn 0.000862 0.068989 0.997617 +vn 0.014737 -0.073574 -0.997181 +vn 0.006937 -0.071283 -0.997432 +vn 0.999120 -0.041887 0.002031 +vn -0.000863 -0.068989 -0.997617 +vn 0.999120 -0.041886 0.002031 +vn -0.000865 -0.068989 -0.997617 +vn -0.999120 0.041887 -0.002033 +vn -0.000862 -0.068990 -0.997617 +vn -0.999120 0.041887 -0.002030 +vn -0.000863 -0.068988 -0.997617 +vn 0.999113 -0.042097 -0.000997 +vn 0.999113 -0.042098 -0.000996 +vn 0.002580 -0.073569 -0.997287 +vn 0.003711 -0.075073 -0.997171 +vn 0.999113 -0.042095 -0.000998 +vn 0.999113 -0.042098 -0.000997 +vn 0.000863 0.068988 0.997617 +vn 0.009625 -0.081209 -0.996651 +vn 0.003587 -0.073611 -0.997281 +vn 0.005050 -0.075129 -0.997161 +vn 0.009626 -0.081209 -0.996651 +vn 0.998334 0.057703 0.000000 +vn 0.999745 0.002147 0.022455 +vn 0.997501 -0.054313 0.045190 +vn -0.000000 0.011086 0.999939 +vn -0.000000 0.001104 0.999999 +vn -0.000000 0.001081 0.999999 +vn -0.000000 0.011086 0.999938 +vn -0.000000 -0.008947 0.999960 +vn -0.999756 -0.016994 0.014139 +vn 0.000000 0.011086 -0.999938 +vn 0.000000 0.001104 -0.999999 +vn 0.000000 0.001081 -0.999999 +vn 0.000000 -0.008947 -0.999960 +vn -0.000000 0.064621 0.997910 +vn -0.000000 0.012937 0.999916 +vn -0.000000 0.012840 0.999918 +vn -0.000000 -0.038689 0.999251 +# 818 vertex normals + +vt 0.012654 0.016752 0.000000 +vt 0.015619 0.138501 0.000000 +vt 0.043488 0.139032 0.000000 +vt 0.050718 0.017477 0.000000 +vt 0.012572 0.283086 0.000000 +vt 0.016071 0.383270 0.000000 +vt 0.043156 0.383786 0.000000 +vt 0.050790 0.283815 0.000000 +vt 0.306432 0.349196 0.000000 +vt 0.301565 0.462757 0.000000 +vt 0.279736 0.462757 0.000000 +vt 0.276617 0.349196 0.000000 +vt 0.306492 0.596584 0.000000 +vt 0.301257 0.690228 0.000000 +vt 0.280042 0.690228 0.000000 +vt 0.276557 0.596584 0.000000 +vt 0.154007 0.443754 0.000000 +vt 0.139840 0.553525 0.000000 +vt 0.114834 0.553187 0.000000 +vt 0.119853 0.443293 0.000000 +vt 0.138443 0.683100 0.000000 +vt 0.125112 0.773560 0.000000 +vt 0.100810 0.773226 0.000000 +vt 0.104151 0.682633 0.000000 +vt 0.264590 0.346411 0.000000 +vt 0.261105 0.459646 0.000000 +vt 0.236710 0.459646 0.000000 +vt 0.231271 0.346411 0.000000 +vt 0.264658 0.592874 0.000000 +vt 0.260763 0.686591 0.000000 +vt 0.237054 0.686588 0.000000 +vt 0.231204 0.592874 0.000000 +vt 0.016394 0.484813 0.000000 +vt 0.052407 0.483219 0.000000 +vt 0.308880 0.783296 0.000000 +vt 0.280626 0.784595 0.000000 +vt 0.127489 0.861824 0.000000 +vt 0.095037 0.863425 0.000000 +vt 0.260064 0.779286 0.000000 +vt 0.228487 0.778003 0.000000 +vt 0.024370 0.553781 0.000000 +vt 0.051444 0.552583 0.000000 +vt 0.307118 0.849434 0.000000 +vt 0.285877 0.850413 0.000000 +vt 0.121656 0.925271 0.000000 +vt 0.097260 0.926474 0.000000 +vt 0.254255 0.844051 0.000000 +vt 0.230518 0.843067 0.000000 +vt 0.028226 0.624007 0.000000 +vt 0.063581 0.622442 0.000000 +vt 0.313756 0.914610 0.000000 +vt 0.286017 0.915881 0.000000 +vt 0.128424 0.987856 0.000000 +vt 0.096565 0.989425 0.000000 +vt 0.253591 0.911283 0.000000 +vt 0.222598 0.909968 0.000000 +vt 0.598216 0.822103 0.000000 +vt 0.598216 0.887276 0.000000 +vt 0.542564 0.887276 0.000000 +vt 0.542564 0.822103 0.000000 +vt 0.159201 0.432211 0.000000 +vt 0.211562 0.432211 0.000000 +vt 0.211562 0.360839 0.000000 +vt 0.159201 0.360839 0.000000 +vt 0.380910 0.380190 0.000000 +vt 0.380910 0.426720 0.000000 +vt 0.311123 0.426618 0.000000 +vt 0.311123 0.379936 0.000000 +vt 0.653868 0.822103 0.000000 +vt 0.653868 0.887276 0.000000 +vt 0.158804 0.584058 0.000000 +vt 0.211263 0.584058 0.000000 +vt 0.211562 0.503582 0.000000 +vt 0.159201 0.503582 0.000000 +vt 0.845303 0.426501 0.000000 +vt 0.845303 0.490898 0.000000 +vt 0.759763 0.490671 0.000000 +vt 0.759763 0.426364 0.000000 +vt 0.598216 0.991496 0.000000 +vt 0.542564 0.900832 0.000000 +vt 0.222453 0.432211 0.000000 +vt 0.222453 0.360839 0.000000 +vt 0.380910 0.436575 0.000000 +vt 0.311123 0.436306 0.000000 +vt 0.653868 0.900832 0.000000 +vt 0.222293 0.584058 0.000000 +vt 0.222453 0.503582 0.000000 +vt 0.845303 0.504293 0.000000 +vt 0.759763 0.504293 0.000000 +vt 0.479696 0.989375 0.000000 +vt 0.479696 0.902035 0.000000 +vt 0.428608 0.900737 0.000000 +vt 0.530784 0.900909 0.000000 +vt 0.479696 0.887182 0.000000 +vt 0.428608 0.887543 0.000000 +vt 0.530784 0.887543 0.000000 +vt 0.479696 0.823491 0.000000 +vt 0.428608 0.823972 0.000000 +vt 0.530784 0.823972 0.000000 +vt 0.074071 0.768585 0.000000 +vt 0.040225 0.803286 0.000000 +vt 0.040225 0.716642 0.000000 +vt 0.074071 0.716740 0.000000 +vt 0.006380 0.768585 0.000000 +vt 0.006380 0.716740 0.000000 +vt 0.649273 0.544755 0.000000 +vt 0.704771 0.651648 0.000000 +vt 0.704771 0.658405 0.000000 +vt 0.647725 0.550526 0.000000 +vt 0.760270 0.544755 0.000000 +vt 0.761818 0.550526 0.000000 +vt 0.682519 0.517566 0.000000 +vt 0.683102 0.476980 0.000000 +vt 0.680476 0.476980 0.000000 +vt 0.679896 0.517558 0.000000 +vt 0.683102 0.440043 0.000000 +vt 0.680476 0.440038 0.000000 +vt 0.682626 0.393813 0.000000 +vt 0.680005 0.393810 0.000000 +vt 0.760266 0.544520 0.000000 +vt 0.704770 0.658405 0.000000 +vt 0.761818 0.550286 0.000000 +vt 0.649279 0.544312 0.000000 +vt 0.647725 0.550074 0.000000 +vt 0.676633 0.392784 0.000000 +vt 0.677001 0.437206 0.000000 +vt 0.674473 0.437196 0.000000 +vt 0.674113 0.392771 0.000000 +vt 0.677001 0.472695 0.000000 +vt 0.674473 0.472695 0.000000 +vt 0.676439 0.511693 0.000000 +vt 0.673915 0.511685 0.000000 +vt 0.880490 0.265007 0.000000 +vt 0.875035 0.421400 0.000000 +vt 0.851796 0.425875 0.000000 +vt 0.865906 0.258865 0.000000 +vt 0.563428 0.166591 0.000000 +vt 0.420693 0.148576 0.000000 +vt 0.421709 0.006334 0.000000 +vt 0.557908 0.007751 0.000000 +vt 0.304001 0.148362 0.000000 +vt 0.305082 0.006132 0.000000 +vt 0.144407 0.165881 0.000000 +vt 0.144465 0.006815 0.000000 +vt 0.834700 0.160504 0.000000 +vt 0.839679 0.007073 0.000000 +vt 0.983625 0.009514 0.000000 +vt 0.994303 0.181157 0.000000 +vt 0.717472 0.159443 0.000000 +vt 0.573324 0.177295 0.000000 +vt 0.583421 0.006146 0.000000 +vt 0.722519 0.006002 0.000000 +vt 0.071790 0.704248 0.000000 +vt 0.071790 0.631420 0.000000 +vt 0.006608 0.631420 0.000000 +vt 0.006608 0.713549 0.000000 +vt 0.825580 0.588546 0.000000 +vt 0.825923 0.543295 0.000000 +vt 0.870063 0.540987 0.000000 +vt 0.884018 0.585390 0.000000 +vt 0.767192 0.585203 0.000000 +vt 0.781820 0.540845 0.000000 +vt 0.241745 0.180801 0.000000 +vt 0.242412 0.314925 0.000000 +vt 0.137253 0.345905 0.000000 +vt 0.152192 0.173809 0.000000 +vt 0.350255 0.176300 0.000000 +vt 0.351367 0.353486 0.000000 +vt 0.794937 0.518783 0.000000 +vt 0.794937 0.532460 0.000000 +vt 0.677625 0.532460 0.000000 +vt 0.677625 0.518783 0.000000 +vt 0.873013 0.532460 0.000000 +vt 0.873013 0.518783 0.000000 +vt 0.409725 0.580382 0.000000 +vt 0.468744 0.682506 0.000000 +vt 0.468744 0.698419 0.000000 +vt 0.409725 0.594834 0.000000 +vt 0.527763 0.580382 0.000000 +vt 0.527763 0.594834 0.000000 +vt 0.608578 0.643922 0.000000 +vt 0.613396 0.718112 0.000000 +vt 0.628458 0.718112 0.000000 +vt 0.629283 0.643922 0.000000 +vt 0.610904 0.782131 0.000000 +vt 0.629283 0.809836 0.000000 +vt 0.581721 0.644497 0.000000 +vt 0.586133 0.718594 0.000000 +vt 0.601582 0.718594 0.000000 +vt 0.602960 0.644497 0.000000 +vt 0.581721 0.810411 0.000000 +vt 0.602960 0.810411 0.000000 +vt 0.632638 0.641697 0.000000 +vt 0.633549 0.719692 0.000000 +vt 0.650190 0.719692 0.000000 +vt 0.655514 0.641697 0.000000 +vt 0.632638 0.816339 0.000000 +vt 0.652944 0.787177 0.000000 +vt 0.550433 0.645429 0.000000 +vt 0.552106 0.730829 0.000000 +vt 0.570873 0.730829 0.000000 +vt 0.576232 0.645429 0.000000 +vt 0.550433 0.804685 0.000000 +vt 0.576232 0.804685 0.000000 +vt 0.773557 0.867934 0.000000 +vt 0.840422 0.867934 0.000000 +vt 0.840422 0.826098 0.000000 +vt 0.773557 0.826098 0.000000 +vt 0.891346 0.603267 0.000000 +vt 0.990701 0.603267 0.000000 +vt 0.990701 0.541171 0.000000 +vt 0.891346 0.541171 0.000000 +vt 0.992386 0.740190 0.000000 +vt 0.887207 0.740190 0.000000 +vt 0.887207 0.676957 0.000000 +vt 0.992386 0.676957 0.000000 +vt 0.553286 0.299789 0.000000 +vt 0.553286 0.265645 0.000000 +vt 0.737493 0.265645 0.000000 +vt 0.737493 0.299789 0.000000 +vt 0.388378 0.615284 0.000000 +vt 0.327459 0.615225 0.000000 +vt 0.327340 0.549019 0.000000 +vt 0.388258 0.549079 0.000000 +vt 0.785189 0.740342 0.000000 +vt 0.876932 0.740372 0.000000 +vt 0.874984 0.800315 0.000000 +vt 0.783322 0.796078 0.000000 +vt 0.314459 0.538752 0.000000 +vt 0.401102 0.538836 0.000000 +vt 0.314615 0.625467 0.000000 +vt 0.401258 0.625551 0.000000 +vt 0.509781 0.206548 0.000000 +vt 0.357211 0.205633 0.000000 +vt 0.377797 0.165799 0.000000 +vt 0.494283 0.166497 0.000000 +vt 0.693759 0.181598 0.000000 +vt 0.693759 0.215435 0.000000 +vt 0.515102 0.215435 0.000000 +vt 0.515102 0.181598 0.000000 +vt 0.553844 0.261520 0.000000 +vt 0.553844 0.221410 0.000000 +vt 0.718262 0.221410 0.000000 +vt 0.718262 0.261520 0.000000 +vt 0.851109 0.817325 0.000000 +vt 0.852945 0.909014 0.000000 +vt 0.993694 0.906713 0.000000 +vt 0.991859 0.815024 0.000000 +vt 0.928227 0.913432 0.000000 +vt 0.881093 0.913432 0.000000 +vt 0.881093 0.993091 0.000000 +vt 0.928227 0.993091 0.000000 +vt 0.938580 0.912794 0.000000 +vt 0.989721 0.912794 0.000000 +vt 0.989721 0.995932 0.000000 +vt 0.938580 0.995932 0.000000 +vt 0.661001 0.668572 0.000000 +vt 0.760821 0.668572 0.000000 +vt 0.760821 0.823572 0.000000 +vt 0.661001 0.823572 0.000000 +vt 0.450275 0.711749 0.000000 +vt 0.530937 0.712014 0.000000 +vt 0.537699 0.707113 0.000000 +vt 0.443746 0.706804 0.000000 +vt 0.529009 0.793474 0.000000 +vt 0.535537 0.798418 0.000000 +vt 0.448346 0.793209 0.000000 +vt 0.441585 0.798110 0.000000 +vt 0.316679 0.520855 0.000000 +vt 0.391288 0.521632 0.000000 +vt 0.397322 0.526228 0.000000 +vt 0.310420 0.525323 0.000000 +vt 0.393156 0.446644 0.000000 +vt 0.399416 0.442177 0.000000 +vt 0.318547 0.445867 0.000000 +vt 0.312514 0.441272 0.000000 +vt 0.772137 0.911161 0.000000 +vt 0.838943 0.914039 0.000000 +vt 0.891011 0.660106 0.000000 +vt 0.990129 0.667426 0.000000 +vt 0.991575 0.809874 0.000000 +vt 0.886646 0.802420 0.000000 +vt 0.785189 0.679488 0.000000 +vt 0.876932 0.679518 0.000000 +vt 0.748662 0.658551 0.000000 +vt 0.747808 0.590020 0.000000 +vt 0.781400 0.619258 0.000000 +vt 0.781889 0.658481 0.000000 +vt 0.881570 0.658273 0.000000 +vt 0.880715 0.589743 0.000000 +vt 0.847854 0.619120 0.000000 +vt 0.848343 0.658343 0.000000 +vt 0.814733 0.627703 0.000000 +vt 0.815116 0.658412 0.000000 +vt 0.880576 0.589867 0.000000 +vt 0.986675 0.334672 0.000000 +vt 0.979742 0.358697 0.000000 +vt 0.972902 0.349958 0.000000 +vt 0.973024 0.331887 0.000000 +vt 0.902677 0.327736 0.000000 +vt 0.920954 0.326430 0.000000 +vt 0.920822 0.344541 0.000000 +vt 0.909314 0.353106 0.000000 +vt 0.957160 0.373699 0.000000 +vt 0.956701 0.358251 0.000000 +vt 0.956901 0.327704 0.000000 +vt 0.937242 0.325641 0.000000 +vt 0.937032 0.356202 0.000000 +vt 0.936115 0.371536 0.000000 +vt 0.974496 0.289445 0.000000 +vt 0.988547 0.292644 0.000000 +vt 0.901255 0.285624 0.000000 +vt 0.919933 0.283913 0.000000 +vt 0.957520 0.285542 0.000000 +vt 0.937042 0.283448 0.000000 +vt 0.937043 0.283448 0.000000 +vt 0.981229 0.271638 0.000000 +vt 0.997045 0.276516 0.000000 +vt 0.892894 0.267828 0.000000 +vt 0.913436 0.264758 0.000000 +vt 0.960239 0.268701 0.000000 +vt 0.934572 0.266051 0.000000 +vt 0.015551 0.792427 0.000000 +vt 0.023494 0.796012 0.000000 +vt 0.015618 0.803217 0.000000 +vt 0.012784 0.801938 0.000000 +vt 0.025262 0.798531 0.000000 +vt 0.016249 0.804116 0.000000 +vt 0.026392 0.807158 0.000000 +vt 0.016653 0.807195 0.000000 +vt 0.027028 0.815850 0.000000 +vt 0.016879 0.810297 0.000000 +vt 0.025423 0.818476 0.000000 +vt 0.016307 0.811234 0.000000 +vt 0.017230 0.821408 0.000000 +vt 0.013383 0.812281 0.000000 +vt 0.950316 0.244776 0.000000 +vt 0.926254 0.196651 0.000000 +vt 0.974379 0.196651 0.000000 +vt 0.942154 0.196651 0.000000 +vt 0.990279 0.196651 0.000000 +vt 0.703969 0.202333 0.000000 +vt 0.697153 0.177971 0.000000 +vt 0.907151 0.179861 0.000000 +vt 0.899881 0.204096 0.000000 +vt 0.880852 0.215670 0.000000 +vt 0.722807 0.214248 0.000000 +vt 0.084867 0.833080 0.000000 +vt 0.084867 0.885652 0.000000 +vt 0.005583 0.882165 0.000000 +vt 0.005583 0.833080 0.000000 +vt 0.005583 0.937001 0.000000 +vt 0.084867 0.937001 0.000000 +vt 0.084867 0.994156 0.000000 +vt 0.005583 0.994156 0.000000 +vt 0.365766 0.294652 0.000000 +vt 0.354834 0.263612 0.000000 +vt 0.549777 0.263612 0.000000 +vt 0.538805 0.294652 0.000000 +vt 0.745197 0.306229 0.000000 +vt 0.631636 0.306229 0.000000 +vt 0.631636 0.336052 0.000000 +vt 0.738461 0.336052 0.000000 +vt 0.527297 0.336052 0.000000 +vt 0.527297 0.306229 0.000000 +vt 0.404158 0.306229 0.000000 +vt 0.411159 0.336052 0.000000 +vt 0.522137 0.259512 0.000000 +vt 0.532271 0.218463 0.000000 +vt 0.372073 0.218463 0.000000 +vt 0.372073 0.259512 0.000000 +vt 0.111379 0.354608 0.000000 +vt 0.111379 0.482986 0.000000 +vt 0.061331 0.482986 0.000000 +vt 0.061331 0.354608 0.000000 +vt 0.589293 0.386857 0.000000 +vt 0.577062 0.354081 0.000000 +vt 0.521553 0.354081 0.000000 +vt 0.521553 0.386857 0.000000 +vt 0.532188 0.405203 0.000000 +vt 0.532188 0.396280 0.000000 +vt 0.668419 0.396280 0.000000 +vt 0.668419 0.405203 0.000000 +vt 0.226251 0.593539 0.000000 +vt 0.226251 0.687977 0.000000 +vt 0.216792 0.687977 0.000000 +vt 0.216792 0.593539 0.000000 +vt 0.207334 0.687977 0.000000 +vt 0.207334 0.593539 0.000000 +vt 0.197876 0.687977 0.000000 +vt 0.197876 0.593539 0.000000 +vt 0.188417 0.687977 0.000000 +vt 0.188417 0.593539 0.000000 +vt 0.178959 0.687977 0.000000 +vt 0.178959 0.593539 0.000000 +vt 0.668419 0.413746 0.000000 +vt 0.532188 0.413746 0.000000 +vt 0.668419 0.413784 0.000000 +vt 0.668419 0.422328 0.000000 +vt 0.532188 0.422290 0.000000 +vt 0.532188 0.422328 0.000000 +vt 0.668419 0.430871 0.000000 +vt 0.532188 0.430871 0.000000 +vt 0.668419 0.438512 0.000000 +vt 0.532188 0.438512 0.000000 +vt 0.147921 0.687977 0.000000 +vt 0.147921 0.593539 0.000000 +vt 0.656788 0.499130 0.000000 +vt 0.656788 0.506294 0.000000 +vt 0.641636 0.506294 0.000000 +vt 0.641636 0.499130 0.000000 +vt 0.483471 0.354081 0.000000 +vt 0.483471 0.398954 0.000000 +vt 0.445389 0.379808 0.000000 +vt 0.445389 0.354081 0.000000 +vt 0.971480 0.382404 0.000000 +vt 0.992499 0.382404 0.000000 +vt 0.992499 0.432430 0.000000 +vt 0.971480 0.432430 0.000000 +vt 0.663376 0.353810 0.000000 +vt 0.663376 0.381263 0.000000 +vt 0.708301 0.401693 0.000000 +vt 0.708301 0.353810 0.000000 +vt 0.609076 0.496745 0.000000 +vt 0.614053 0.496745 0.000000 +vt 0.614053 0.501251 0.000000 +vt 0.609076 0.501251 0.000000 +vt 0.671939 0.499130 0.000000 +vt 0.671939 0.506294 0.000000 +vt 0.626484 0.506294 0.000000 +vt 0.626484 0.499130 0.000000 +vt 0.521553 0.398954 0.000000 +vt 0.407308 0.370435 0.000000 +vt 0.407308 0.354081 0.000000 +vt 0.618451 0.353810 0.000000 +vt 0.618451 0.371261 0.000000 +vt 0.753225 0.401693 0.000000 +vt 0.753225 0.353810 0.000000 +vt 0.385324 0.370435 0.000000 +vt 0.385324 0.354081 0.000000 +vt 0.617737 0.506294 0.000000 +vt 0.617737 0.499130 0.000000 +vt 0.592518 0.353810 0.000000 +vt 0.592518 0.371261 0.000000 +vt 0.208022 0.723085 0.000000 +vt 0.147200 0.723085 0.000000 +vt 0.147200 0.761660 0.000000 +vt 0.208022 0.761660 0.000000 +vt 0.592518 0.384433 0.000000 +vt 0.618451 0.384433 0.000000 +vt 0.614053 0.504652 0.000000 +vt 0.609076 0.504652 0.000000 +vt 0.407308 0.382779 0.000000 +vt 0.385324 0.382779 0.000000 +vt 0.560023 0.509239 0.000000 +vt 0.565549 0.509234 0.000000 +vt 0.565552 0.528147 0.000000 +vt 0.560026 0.528151 0.000000 +vt 0.555594 0.557173 0.000000 +vt 0.550396 0.557173 0.000000 +vt 0.550396 0.578514 0.000000 +vt 0.555594 0.578514 0.000000 +vt 0.410936 0.740343 0.000000 +vt 0.421208 0.740343 0.000000 +vt 0.406503 0.769423 0.000000 +vt 0.399096 0.762757 0.000000 +vt 0.565556 0.553898 0.000000 +vt 0.560030 0.553902 0.000000 +vt 0.550396 0.600403 0.000000 +vt 0.555594 0.600403 0.000000 +vt 0.368512 0.796925 0.000000 +vt 0.368512 0.785745 0.000000 +vt 0.330521 0.769423 0.000000 +vt 0.337927 0.762757 0.000000 +vt 0.315815 0.740343 0.000000 +vt 0.326088 0.740343 0.000000 +vt 0.560011 0.459369 0.000000 +vt 0.565538 0.459365 0.000000 +vt 0.555594 0.457250 0.000000 +vt 0.550396 0.457250 0.000000 +vt 0.410936 0.635400 0.000000 +vt 0.421208 0.635400 0.000000 +vt 0.315815 0.635400 0.000000 +vt 0.326088 0.635400 0.000000 +vt 0.332052 0.648468 0.000000 +vt 0.400478 0.648468 0.000000 +vt 0.400478 0.733099 0.000000 +vt 0.332052 0.733099 0.000000 +vt 0.390930 0.751175 0.000000 +vt 0.341600 0.751175 0.000000 +vt 0.602906 0.554954 0.000000 +vt 0.591929 0.572188 0.000000 +vt 0.591753 0.500200 0.000000 +vt 0.602776 0.501478 0.000000 +vt 0.596456 0.495586 0.000000 +vt 0.583391 0.495586 0.000000 +vt 0.583391 0.455565 0.000000 +vt 0.596456 0.455565 0.000000 +vt 0.636479 0.572732 0.000000 +vt 0.635085 0.572732 0.000000 +vt 0.635085 0.545743 0.000000 +vt 0.636479 0.545743 0.000000 +vt 0.571480 0.455566 0.000000 +vt 0.571480 0.495586 0.000000 +vt 0.619447 0.466800 0.000000 +vt 0.619458 0.461970 0.000000 +vt 0.634974 0.462453 0.000000 +vt 0.634962 0.467284 0.000000 +vt 0.635032 0.487322 0.000000 +vt 0.635032 0.494721 0.000000 +vt 0.629485 0.493488 0.000000 +vt 0.591712 0.601289 0.000000 +vt 0.591712 0.587412 0.000000 +vt 0.603827 0.568601 0.000000 +vt 0.610173 0.573931 0.000000 +vt 0.602761 0.494721 0.000000 +vt 0.602761 0.487322 0.000000 +vt 0.608308 0.493967 0.000000 +vt 0.618896 0.484744 0.000000 +vt 0.618896 0.492142 0.000000 +vt 0.580867 0.555200 0.000000 +vt 0.580738 0.502223 0.000000 +vt 0.636479 0.599721 0.000000 +vt 0.635085 0.599721 0.000000 +vt 0.603932 0.466323 0.000000 +vt 0.603943 0.461492 0.000000 +vt 0.573251 0.573931 0.000000 +vt 0.579597 0.568601 0.000000 +vt 0.639689 0.512074 0.000000 +vt 0.639689 0.552623 0.000000 +vt 0.638434 0.552623 0.000000 +vt 0.638435 0.512074 0.000000 +vt 0.639689 0.574705 0.000000 +vt 0.638434 0.574705 0.000000 +vt 0.639689 0.596786 0.000000 +vt 0.638434 0.596786 0.000000 +vt 0.639688 0.636957 0.000000 +vt 0.638434 0.636957 0.000000 +vt 0.609435 0.478820 0.000000 +vt 0.623688 0.478221 0.000000 +vt 0.623715 0.481135 0.000000 +vt 0.609462 0.481735 0.000000 +vt 0.637919 0.477613 0.000000 +vt 0.637946 0.480528 0.000000 +vt 0.579597 0.510357 0.000000 +vt 0.573251 0.511220 0.000000 +vt 0.635085 0.634959 0.000000 +vt 0.636478 0.634959 0.000000 +vt 0.635085 0.510506 0.000000 +vt 0.636478 0.510506 0.000000 +vt 0.610173 0.511219 0.000000 +vt 0.603827 0.509808 0.000000 +vt 0.645402 0.477287 0.000000 +vt 0.637879 0.473296 0.000000 +vt 0.645360 0.472969 0.000000 +vt 0.623648 0.473903 0.000000 +vt 0.609396 0.474502 0.000000 +vt 0.601977 0.479126 0.000000 +vt 0.601939 0.474808 0.000000 +vt 0.619470 0.456671 0.000000 +vt 0.634986 0.457154 0.000000 +vt 0.603955 0.456193 0.000000 +vt 0.645440 0.481223 0.000000 +vt 0.649071 0.477125 0.000000 +vt 0.649109 0.481061 0.000000 +vt 0.649030 0.472807 0.000000 +vt 0.637767 0.487322 0.000000 +vt 0.637767 0.494721 0.000000 +vt 0.601320 0.461412 0.000000 +vt 0.601332 0.456113 0.000000 +vt 0.601309 0.466242 0.000000 +vt 0.637596 0.462535 0.000000 +vt 0.637585 0.467366 0.000000 +vt 0.637609 0.457236 0.000000 +vt 0.600026 0.494721 0.000000 +vt 0.600026 0.487322 0.000000 +vt 0.598308 0.479275 0.000000 +vt 0.598269 0.474957 0.000000 +vt 0.602012 0.483062 0.000000 +vt 0.598343 0.483211 0.000000 +vt 0.884496 0.219498 0.000000 +vt 0.888541 0.219498 0.000000 +vt 0.888541 0.241973 0.000000 +vt 0.884496 0.241973 0.000000 +vt 0.924947 0.535069 0.000000 +vt 0.924947 0.477954 0.000000 +vt 0.961102 0.521707 0.000000 +vt 0.888541 0.264448 0.000000 +vt 0.884496 0.264448 0.000000 +vt 0.980339 0.487872 0.000000 +vt 0.888541 0.286923 0.000000 +vt 0.884496 0.286923 0.000000 +vt 0.973658 0.449397 0.000000 +vt 0.888541 0.309398 0.000000 +vt 0.884496 0.309398 0.000000 +vt 0.944184 0.424284 0.000000 +vt 0.888541 0.331873 0.000000 +vt 0.884496 0.331873 0.000000 +vt 0.905709 0.424284 0.000000 +vt 0.888541 0.354348 0.000000 +vt 0.884496 0.354348 0.000000 +vt 0.876235 0.449397 0.000000 +vt 0.888541 0.376823 0.000000 +vt 0.884496 0.376823 0.000000 +vt 0.869554 0.487872 0.000000 +vt 0.888541 0.399298 0.000000 +vt 0.884496 0.399298 0.000000 +vt 0.888792 0.521707 0.000000 +vt 0.888541 0.421773 0.000000 +vt 0.884496 0.421773 0.000000 +vt 0.963875 0.525062 0.000000 +vt 0.924947 0.539449 0.000000 +vt 0.886019 0.525062 0.000000 +vt 0.865306 0.488633 0.000000 +vt 0.872500 0.447207 0.000000 +vt 0.904234 0.420168 0.000000 +vt 0.945660 0.420168 0.000000 +vt 0.977394 0.447207 0.000000 +vt 0.984588 0.488633 0.000000 +vt 0.401014 0.341234 0.000000 +vt 0.447104 0.341234 0.000000 +vt 0.447104 0.345197 0.000000 +vt 0.401014 0.345197 0.000000 +vt 0.493194 0.341234 0.000000 +vt 0.493194 0.345197 0.000000 +vt 0.539486 0.341234 0.000000 +vt 0.539486 0.345197 0.000000 +vt 0.585100 0.341234 0.000000 +vt 0.585100 0.345197 0.000000 +vt 0.629242 0.341234 0.000000 +vt 0.629242 0.345197 0.000000 +vt 0.672616 0.341234 0.000000 +vt 0.672616 0.345197 0.000000 +vt 0.716758 0.341234 0.000000 +vt 0.716758 0.345197 0.000000 +vt 0.762371 0.341234 0.000000 +vt 0.762371 0.345197 0.000000 +vt 0.354722 0.341234 0.000000 +vt 0.354722 0.345197 0.000000 +vt 0.790019 0.413304 0.000000 +vt 0.803916 0.413397 0.000000 +vt 0.119499 0.326743 0.000000 +vt 0.130081 0.007811 0.000000 +vt 0.096761 0.006483 0.000000 +vt 0.116257 0.328175 0.000000 +vt 0.119470 0.326596 0.000000 +vt 0.498268 0.533072 0.000000 +vt 0.470453 0.570431 0.000000 +vt 0.470453 0.475910 0.000000 +vt 0.498268 0.475910 0.000000 +vt 0.522481 0.428644 0.000000 +vt 0.522481 0.515713 0.000000 +vt 0.515700 0.515713 0.000000 +vt 0.515700 0.428644 0.000000 +vt 0.522481 0.580639 0.000000 +vt 0.515700 0.580639 0.000000 +vt 0.466087 0.450004 0.000000 +vt 0.466087 0.460441 0.000000 +vt 0.420424 0.460441 0.000000 +vt 0.420424 0.450004 0.000000 +vt 0.442637 0.533072 0.000000 +vt 0.442637 0.475910 0.000000 +vt 0.511751 0.450004 0.000000 +vt 0.511751 0.460441 0.000000 +vt 0.508683 0.468273 0.000000 +vt 0.508683 0.538480 0.000000 +vt 0.502048 0.537927 0.000000 +vt 0.502048 0.471459 0.000000 +vt 0.469704 0.590832 0.000000 +vt 0.469704 0.581367 0.000000 +vt 0.430725 0.538480 0.000000 +vt 0.437360 0.537927 0.000000 +vt 0.430725 0.468273 0.000000 +vt 0.437360 0.471459 0.000000 +vt 0.469704 0.468273 0.000000 +vt 0.469704 0.471459 0.000000 +vt 0.539319 0.451928 0.000000 +vt 0.539319 0.542477 0.000000 +vt 0.543092 0.542477 0.000000 +vt 0.543092 0.451928 0.000000 +vt 0.539319 0.601655 0.000000 +vt 0.543092 0.601655 0.000000 +vt 0.526992 0.576193 0.000000 +vt 0.526992 0.514563 0.000000 +vt 0.532984 0.514563 0.000000 +vt 0.532984 0.576193 0.000000 +vt 0.526992 0.452933 0.000000 +vt 0.532984 0.452933 0.000000 +vt 0.790647 0.935920 0.000000 +vt 0.782447 0.935886 0.000000 +vt 0.782447 0.983549 0.000000 +vt 0.790648 0.983515 0.000000 +vt 0.759349 0.989810 0.000000 +vt 0.787288 0.990184 0.000000 +vt 0.754938 0.983231 0.000000 +vt 0.754937 0.936204 0.000000 +vt 0.787287 0.929251 0.000000 +vt 0.759348 0.929626 0.000000 +vt 0.750508 0.984014 0.000000 +vt 0.754669 0.991672 0.000000 +vt 0.750507 0.935422 0.000000 +vt 0.754669 0.927764 0.000000 +vt 0.710367 0.935921 0.000000 +vt 0.710368 0.983515 0.000000 +vt 0.718568 0.983550 0.000000 +vt 0.718568 0.935886 0.000000 +vt 0.746078 0.983231 0.000000 +vt 0.746077 0.936204 0.000000 +vt 0.741666 0.929625 0.000000 +vt 0.713727 0.929251 0.000000 +vt 0.741667 0.989810 0.000000 +vt 0.746347 0.991672 0.000000 +vt 0.746346 0.927763 0.000000 +vt 0.713728 0.990185 0.000000 +vt 0.757808 0.910781 0.000000 +vt 0.757875 0.862545 0.000000 +vt 0.749564 0.862534 0.000000 +vt 0.749497 0.910769 0.000000 +vt 0.721537 0.862463 0.000000 +vt 0.721470 0.910762 0.000000 +vt 0.726547 0.917343 0.000000 +vt 0.754574 0.917349 0.000000 +vt 0.716707 0.910532 0.000000 +vt 0.716705 0.862426 0.000000 +vt 0.716707 0.918714 0.000000 +vt 0.721574 0.919201 0.000000 +vt 0.675605 0.910783 0.000000 +vt 0.683916 0.910771 0.000000 +vt 0.683846 0.862536 0.000000 +vt 0.675535 0.862548 0.000000 +vt 0.711943 0.910762 0.000000 +vt 0.711873 0.862463 0.000000 +vt 0.678840 0.917351 0.000000 +vt 0.706867 0.917343 0.000000 +vt 0.711839 0.919201 0.000000 +vt 0.417124 0.887121 0.000000 +vt 0.417124 0.992542 0.000000 +vt 0.391801 0.992542 0.000000 +vt 0.391801 0.887121 0.000000 +vt 0.374133 0.805636 0.000000 +vt 0.377162 0.912849 0.000000 +vt 0.353026 0.912595 0.000000 +vt 0.349996 0.805381 0.000000 +vt 0.189495 0.803714 0.000000 +vt 0.192525 0.910927 0.000000 +vt 0.167881 0.910314 0.000000 +vt 0.164862 0.803454 0.000000 +vt 0.167891 0.910667 0.000000 +vt 0.379147 0.983090 0.000000 +vt 0.355011 0.982836 0.000000 +vt 0.194509 0.981168 0.000000 +vt 0.169876 0.980909 0.000000 +vt 0.233499 0.941383 0.000000 +vt 0.234635 0.981585 0.000000 +vt 0.314885 0.982419 0.000000 +vt 0.313749 0.942217 0.000000 +vt 0.273870 0.950527 0.000000 +vt 0.274760 0.982002 0.000000 +# 758 texture coords + +o church +g church +f 1/1/1 2/2/2 3/3/3 +f 3/3/3 4/4/1 1/1/1 +f 5/5/4 6/6/5 7/7/6 +f 7/7/6 8/8/7 5/5/4 +f 9/9/8 10/10/9 2/11/10 +f 2/11/10 1/12/11 9/9/8 +f 11/13/12 12/14/13 6/15/14 +f 6/15/14 5/16/15 11/13/12 +f 13/17/16 14/18/17 10/19/18 +f 10/19/18 9/20/16 13/17/16 +f 15/21/19 16/22/20 12/23/21 +f 12/23/21 11/24/22 15/21/19 +f 4/25/23 3/26/24 14/27/25 +f 14/27/25 13/28/23 4/25/23 +f 8/29/26 7/30/27 16/31/28 +f 16/31/28 15/32/29 8/29/26 +f 5/5/4 8/8/7 3/3/3 +f 3/3/3 2/2/2 5/5/4 +f 17/33/30 18/34/31 7/7/6 +f 7/7/6 6/6/5 17/33/30 +f 11/13/12 5/16/15 2/11/10 +f 2/11/10 10/10/9 11/13/12 +f 19/35/32 17/36/33 6/15/14 +f 6/15/14 12/14/13 19/35/32 +f 15/21/19 11/24/22 10/19/18 +f 10/19/18 14/18/17 15/21/19 +f 20/37/34 19/38/35 12/23/21 +f 12/23/21 16/22/20 20/37/34 +f 8/29/26 15/32/29 14/27/25 +f 14/27/25 3/26/24 8/29/26 +f 18/39/36 20/40/37 16/31/28 +f 16/31/28 7/30/27 18/39/36 +f 21/41/38 22/42/39 18/34/31 +f 18/34/31 17/33/30 21/41/38 +f 23/43/40 21/44/41 17/36/33 +f 17/36/33 19/35/32 23/43/40 +f 24/45/42 23/46/43 19/38/35 +f 19/38/35 20/37/34 24/45/42 +f 22/47/44 24/48/45 20/40/37 +f 20/40/37 18/39/36 22/47/44 +f 25/49/46 26/50/46 22/42/39 +f 22/42/39 21/41/38 25/49/46 +f 27/51/47 25/52/47 21/44/41 +f 21/44/41 23/43/40 27/51/47 +f 28/53/48 27/54/48 23/46/43 +f 23/46/43 24/45/42 28/53/48 +f 26/55/49 28/56/49 24/48/45 +f 24/48/45 22/47/44 26/55/49 +f 29/3/50 30/2/51 31/1/52 +f 31/1/52 32/4/52 29/3/50 +f 33/7/53 34/6/54 35/5/55 +f 35/5/55 36/8/56 33/7/53 +f 30/11/57 37/10/58 38/9/59 +f 38/9/59 31/12/59 30/11/57 +f 34/15/60 39/14/61 40/13/62 +f 40/13/62 35/16/63 34/15/60 +f 37/19/64 41/18/65 42/17/66 +f 42/17/66 38/20/66 37/19/64 +f 39/23/67 43/22/68 44/21/69 +f 44/21/69 40/24/70 39/23/67 +f 41/27/71 29/26/72 32/25/73 +f 32/25/73 42/28/73 41/27/71 +f 43/31/74 33/30/75 36/29/76 +f 36/29/76 44/32/77 43/31/74 +f 29/3/50 36/8/56 35/5/55 +f 35/5/55 30/2/51 29/3/50 +f 33/7/53 45/34/78 46/33/79 +f 46/33/79 34/6/54 33/7/53 +f 30/11/57 35/16/63 40/13/62 +f 40/13/62 37/10/58 30/11/57 +f 34/15/60 46/36/80 47/35/81 +f 47/35/81 39/14/61 34/15/60 +f 37/19/64 40/24/70 44/21/69 +f 44/21/69 41/18/65 37/19/64 +f 39/23/67 47/38/82 48/37/83 +f 48/37/83 43/22/68 39/23/67 +f 41/27/71 44/32/77 36/29/76 +f 36/29/76 29/26/72 41/27/71 +f 43/31/74 48/40/84 45/39/85 +f 45/39/85 33/30/75 43/31/74 +f 45/34/78 49/42/86 50/41/87 +f 50/41/87 46/33/79 45/34/78 +f 46/36/80 50/44/88 51/43/89 +f 51/43/89 47/35/81 46/36/80 +f 47/38/82 51/46/90 52/45/91 +f 52/45/91 48/37/83 47/38/82 +f 48/40/84 52/48/92 49/47/93 +f 49/47/93 45/39/85 48/40/84 +f 49/42/86 53/50/94 54/49/94 +f 54/49/94 50/41/87 49/42/86 +f 50/44/88 54/52/95 55/51/95 +f 55/51/95 51/43/89 50/44/88 +f 51/46/90 55/54/96 56/53/96 +f 56/53/96 52/45/91 51/46/90 +f 52/48/92 56/56/97 53/55/97 +f 53/55/97 49/47/93 52/48/92 +f 57/57/98 58/58/98 59/59/98 +f 59/59/98 60/60/98 57/57/98 +f 61/61/99 62/62/99 63/63/99 +f 63/63/99 64/64/99 61/61/99 +f 65/65/100 66/66/100 67/67/100 +f 67/67/100 68/68/100 65/65/100 +f 57/57/98 64/69/98 63/70/98 +f 63/70/98 58/58/98 57/57/98 +f 69/71/99 70/72/99 71/73/99 +f 71/73/99 72/74/99 69/71/99 +f 60/75/100 59/76/100 73/77/100 +f 73/77/100 74/78/100 60/75/100 +f 58/58/98 75/79/98 76/80/98 +f 76/80/98 59/59/98 58/58/98 +f 77/81/99 78/82/99 63/63/99 +f 63/63/99 62/62/99 77/81/99 +f 79/83/100 80/84/100 67/67/100 +f 67/67/100 66/66/100 79/83/100 +f 78/85/98 75/79/98 58/58/98 +f 58/58/98 63/70/98 78/85/98 +f 81/86/99 82/87/99 71/73/99 +f 71/73/99 70/72/99 81/86/99 +f 82/87/99 77/81/99 62/62/99 +f 62/62/99 71/73/99 82/87/99 +f 76/88/100 83/89/100 73/77/100 +f 73/77/100 59/76/100 76/88/100 +f 84/90/101 85/91/101 80/92/101 +f 84/90/102 81/93/102 85/91/102 +f 80/92/103 85/91/103 86/94/103 +f 86/94/103 67/95/103 80/92/103 +f 85/91/102 81/93/102 70/96/102 +f 70/96/102 86/94/102 85/91/102 +f 67/95/101 86/94/101 87/97/101 +f 87/97/101 68/98/101 67/95/101 +f 86/94/102 70/96/102 69/99/102 +f 69/99/102 87/97/102 86/94/102 +f 62/62/99 61/61/99 72/74/99 +f 72/74/99 71/73/99 62/62/99 +f 88/100/104 89/101/104 90/102/104 +f 90/102/104 91/103/104 88/100/104 +f 89/101/100 92/104/100 93/105/100 +f 93/105/100 90/102/100 89/101/100 +f 94/106/105 95/107/105 96/108/105 +f 96/108/105 97/109/105 94/106/105 +f 95/107/106 98/110/106 99/111/106 +f 99/111/106 96/108/106 95/107/106 +f 98/112/107 100/113/107 101/114/107 +f 101/114/107 99/115/107 98/112/107 +f 102/116/108 103/117/108 101/114/108 +f 101/114/108 100/113/108 102/116/108 +f 102/116/109 104/118/109 105/119/109 +f 105/119/109 103/117/109 102/116/109 +f 104/120/110 106/107/110 107/121/110 +f 107/121/110 105/122/110 104/120/110 +f 106/107/111 108/123/111 109/124/111 +f 109/124/111 107/121/111 106/107/111 +f 108/125/112 110/126/112 111/127/112 +f 111/127/112 109/128/112 108/125/112 +f 112/129/113 113/130/113 111/127/113 +f 111/127/113 110/126/113 112/129/113 +f 112/129/114 94/131/114 97/132/114 +f 97/132/114 113/130/114 112/129/114 +f 76/133/115 75/134/115 95/135/115 +f 95/135/115 94/136/115 76/133/115 +f 75/134/116 78/133/117 98/136/117 +f 98/136/117 95/135/116 75/134/116 +f 81/133/118 84/134/118 106/135/118 +f 106/135/118 104/136/118 81/133/118 +f 84/134/119 80/133/119 108/136/119 +f 108/136/119 106/135/119 84/134/119 +f 96/137/120 114/138/121 113/139/122 +f 113/139/122 97/140/123 96/137/120 +f 115/141/124 111/142/125 113/139/122 +f 113/139/122 114/138/121 115/141/124 +f 107/143/126 109/144/127 111/142/125 +f 111/142/125 115/141/124 107/143/126 +f 115/145/128 103/146/128 105/147/128 +f 105/147/128 107/148/128 115/145/128 +f 114/149/129 96/150/129 99/151/129 +f 99/151/129 101/152/129 114/149/129 +f 66/153/102 65/154/102 93/155/102 +f 93/155/102 92/156/102 66/153/102 +f 74/154/98 73/153/98 88/156/98 +f 88/156/98 91/155/98 74/154/98 +f 115/145/130 114/149/130 101/152/130 +f 101/152/130 103/146/130 115/145/130 +f 116/157/131 117/158/131 118/159/132 +f 118/159/132 119/160/132 116/157/131 +f 120/161/133 121/162/133 117/158/131 +f 117/158/131 116/157/131 120/161/133 +f 122/163/134 123/164/135 124/165/136 +f 124/165/136 125/166/137 122/163/134 +f 123/164/135 126/163/138 127/167/139 +f 127/167/139 124/168/136 123/164/135 +f 118/169/140 122/170/140 125/171/141 +f 125/171/141 119/172/141 118/169/140 +f 121/169/142 126/170/142 128/173/143 +f 128/173/143 129/174/143 121/169/142 +f 120/175/100 116/176/100 124/177/100 +f 124/177/100 127/178/100 120/175/100 +f 116/176/100 119/179/100 125/180/100 +f 125/180/100 124/177/100 116/176/100 +f 130/167/144 131/168/145 123/164/135 +f 123/164/135 122/163/134 130/167/144 +f 131/165/145 128/166/146 126/163/138 +f 126/163/138 123/164/135 131/165/145 +f 132/174/147 130/173/148 122/170/140 +f 122/170/140 118/169/140 132/174/147 +f 120/172/149 127/171/149 126/170/142 +f 126/170/142 121/169/142 120/172/149 +f 133/181/150 134/182/151 135/183/152 +f 135/183/152 136/184/150 133/181/150 +f 134/182/151 137/185/153 138/186/153 +f 138/186/153 135/183/152 134/182/151 +f 136/187/154 135/188/155 139/189/156 +f 139/189/156 140/190/157 136/187/154 +f 135/188/155 138/191/158 141/192/158 +f 141/192/158 139/189/156 135/188/155 +f 140/193/159 139/194/160 142/195/161 +f 142/195/161 143/196/159 140/193/159 +f 139/194/160 141/197/162 144/198/162 +f 144/198/162 142/195/161 139/194/160 +f 143/199/163 142/200/164 134/201/165 +f 134/201/165 133/202/163 143/199/163 +f 142/200/164 144/203/166 137/204/166 +f 137/204/166 134/201/165 142/200/164 +f 145/205/167 146/206/168 147/207/99 +f 147/207/99 148/208/99 145/205/167 +f 149/209/169 145/210/170 148/211/102 +f 148/211/102 150/212/102 149/209/169 +f 146/213/171 151/214/172 152/215/173 +f 152/215/173 147/216/173 146/213/171 +f 153/217/174 154/218/174 155/219/174 +f 155/219/174 156/220/174 153/217/174 +f 157/217/175 158/218/175 159/219/175 +f 159/219/175 160/220/175 157/217/175 +f 161/221/176 162/222/176 163/223/176 +f 163/223/176 164/224/176 161/221/176 +f 149/225/177 151/226/178 165/227/179 +f 165/227/179 166/228/179 149/225/177 +f 153/220/180 160/217/180 159/218/180 +f 159/218/180 154/219/180 153/220/180 +f 157/220/181 156/217/181 155/218/181 +f 155/218/181 158/219/181 157/220/181 +f 164/224/182 163/223/182 157/229/182 +f 157/229/182 160/230/182 164/224/182 +f 163/223/183 162/222/183 156/231/183 +f 156/231/183 157/229/184 163/223/183 +f 162/222/185 161/221/185 153/232/185 +f 153/232/185 156/231/185 162/222/185 +f 164/224/186 160/230/186 153/232/186 +f 153/232/186 161/221/186 164/224/186 +f 154/233/187 159/234/187 167/235/187 +f 167/235/187 168/236/187 154/233/187 +f 168/235/188 169/236/188 155/233/188 +f 155/233/188 154/234/188 168/235/188 +f 170/236/189 158/233/190 155/234/189 +f 155/234/189 169/235/189 170/236/189 +f 170/235/191 167/236/191 159/233/191 +f 159/233/191 158/234/191 170/235/191 +f 171/237/180 172/238/180 173/239/180 +f 173/239/180 174/240/180 171/237/180 +f 175/241/99 176/242/99 177/243/99 +f 177/243/99 178/244/99 175/241/99 +f 179/238/192 172/239/192 171/240/192 +f 171/240/192 180/237/192 179/238/192 +f 177/242/101 181/243/101 182/244/101 +f 182/244/101 178/241/101 177/242/101 +f 173/238/175 183/239/175 184/240/175 +f 184/240/175 174/237/175 173/238/175 +f 185/242/173 176/243/173 175/244/173 +f 175/244/173 186/241/173 185/242/173 +f 182/241/100 181/242/100 185/243/100 +f 185/243/100 186/244/100 182/241/100 +f 184/237/193 183/238/193 179/239/193 +f 179/239/193 180/240/193 184/237/193 +f 187/245/180 168/246/180 167/247/180 +f 167/247/180 188/248/180 187/245/180 +f 169/246/192 168/247/192 187/248/192 +f 187/248/192 189/245/192 169/246/192 +f 167/247/175 170/246/175 190/245/175 +f 190/245/175 188/248/175 167/247/175 +f 170/247/193 169/246/193 189/245/193 +f 189/245/193 190/248/193 170/247/193 +f 191/249/101 192/250/101 193/251/101 +f 193/251/101 194/252/101 191/249/101 +f 195/253/173 196/254/173 197/255/173 +f 197/255/173 198/256/173 195/253/173 +f 192/257/100 195/258/100 198/259/100 +f 198/259/100 193/260/100 192/257/100 +f 199/261/194 166/262/194 180/263/194 +f 180/263/194 171/264/194 199/261/194 +f 166/262/195 165/265/195 184/266/195 +f 184/266/195 180/263/195 166/262/195 +f 165/265/196 200/267/196 174/268/196 +f 174/268/196 184/266/196 165/265/196 +f 200/267/197 199/261/197 171/264/197 +f 171/264/197 174/268/197 200/267/197 +f 188/267/198 190/265/198 183/266/198 +f 183/266/198 173/268/198 188/267/198 +f 190/265/199 189/262/199 179/263/199 +f 179/263/199 183/266/199 190/265/199 +f 189/262/200 187/261/200 172/264/200 +f 172/264/200 179/263/200 189/262/200 +f 187/261/201 188/267/201 173/268/201 +f 173/268/201 172/264/201 187/261/201 +f 147/269/202 152/270/202 186/271/202 +f 186/271/202 175/272/202 147/269/202 +f 152/270/203 150/273/203 182/274/203 +f 182/274/203 186/271/203 152/270/203 +f 150/273/204 148/275/204 178/276/204 +f 178/276/204 182/274/204 150/273/204 +f 148/275/205 147/269/205 175/272/205 +f 175/272/205 178/276/205 148/275/205 +f 194/275/206 193/273/206 181/274/206 +f 181/274/206 177/276/206 194/275/206 +f 193/273/207 198/270/207 185/271/207 +f 185/271/207 181/274/207 193/273/207 +f 198/270/208 197/269/208 176/272/208 +f 176/272/208 185/271/208 198/270/208 +f 197/269/209 194/275/209 177/276/209 +f 177/276/209 176/272/209 197/269/209 +f 199/277/210 200/278/210 146/206/168 +f 146/206/168 145/205/167 199/277/210 +f 166/279/211 199/280/211 145/210/170 +f 145/210/170 149/209/169 166/279/211 +f 200/281/212 165/282/212 151/214/172 +f 151/214/172 146/213/171 200/281/212 +f 150/283/100 152/284/100 151/226/178 +f 151/226/178 149/225/177 150/283/100 +f 201/285/193 202/286/193 203/287/193 +f 203/287/193 204/288/193 201/285/193 +f 205/289/213 206/290/213 207/291/213 +f 207/291/213 208/292/213 205/289/213 +f 201/285/214 209/288/215 210/287/215 +f 210/287/215 202/286/214 201/285/214 +f 211/289/216 212/290/216 213/291/180 +f 213/291/180 214/292/180 211/289/216 +f 215/293/213 216/287/213 217/288/213 +f 217/288/213 218/294/213 215/293/213 +f 219/292/217 220/291/217 221/293/218 +f 221/293/218 222/294/218 219/292/217 +f 223/293/193 224/291/193 225/292/193 +f 225/292/193 226/294/193 223/293/193 +f 227/293/219 228/287/220 229/288/220 +f 229/288/220 230/294/219 227/293/219 +f 223/293/193 226/294/193 204/288/193 +f 204/288/193 203/287/193 223/293/193 +f 215/293/213 218/294/213 208/292/213 +f 208/292/213 207/291/213 215/293/213 +f 209/288/215 222/294/218 221/293/218 +f 221/293/218 210/287/215 209/288/215 +f 227/293/219 230/294/219 214/292/180 +f 214/292/180 213/291/180 227/293/219 +f 216/287/213 212/286/213 211/285/213 +f 211/285/213 217/288/213 216/287/213 +f 231/289/217 232/290/217 220/291/217 +f 220/291/217 219/292/217 231/289/217 +f 224/291/193 206/295/193 205/289/193 +f 205/289/193 225/292/193 224/291/193 +f 228/287/220 232/286/221 231/285/221 +f 231/285/221 229/288/220 228/287/220 +f 233/296/222 234/297/223 235/298/224 +f 233/296/222 235/298/224 236/299/225 +f 233/300/222 237/301/226 238/302/227 +f 233/300/222 238/302/227 234/303/223 +f 234/297/223 239/304/228 240/305/229 +f 240/305/229 235/298/224 234/297/223 +f 235/298/224 240/305/229 241/306/230 +f 241/306/230 236/299/225 235/298/224 +f 237/301/226 242/307/231 243/308/232 +f 243/308/232 238/302/227 237/301/226 +f 238/302/227 243/308/232 239/309/228 +f 239/309/228 234/303/223 238/302/227 +f 239/304/228 244/309/233 245/308/234 +f 245/308/234 240/305/229 239/304/228 +f 240/305/229 245/308/234 246/307/235 +f 246/307/235 241/306/230 240/305/229 +f 242/307/231 247/306/236 248/305/237 +f 248/305/237 243/308/232 242/307/231 +f 243/308/232 248/305/237 244/304/233 +f 244/304/233 239/309/228 243/308/232 +f 244/309/233 249/303/238 250/302/239 +f 250/302/239 245/308/234 244/309/233 +f 245/308/234 250/302/239 251/301/240 +f 251/301/240 246/307/235 245/308/234 +f 247/306/236 252/299/241 253/298/242 +f 253/298/242 248/305/237 247/306/236 +f 248/305/237 253/298/242 249/297/238 +f 249/297/238 244/304/233 248/305/237 +f 254/300/243 250/302/239 249/303/238 +f 254/300/243 251/301/240 250/302/239 +f 254/296/243 253/298/242 252/299/241 +f 254/296/243 249/297/238 253/298/242 +f 233/296/222 236/299/225 255/310/244 +f 255/310/244 256/311/245 233/296/222 +f 237/301/226 233/300/222 256/312/245 +f 256/312/245 257/313/246 237/301/226 +f 236/299/225 241/306/230 258/314/247 +f 258/314/247 255/310/244 236/299/225 +f 242/307/231 237/301/226 257/313/246 +f 257/313/246 259/315/248 242/307/231 +f 241/306/230 246/307/235 260/316/249 +f 260/316/249 258/314/247 241/306/230 +f 247/306/236 242/307/231 259/315/248 +f 259/315/248 261/314/250 247/306/236 +f 246/307/235 251/301/240 262/313/251 +f 262/313/251 260/316/249 246/307/235 +f 252/299/241 247/306/236 261/314/250 +f 261/314/250 263/310/252 252/299/241 +f 251/301/240 254/300/243 264/312/253 +f 264/312/253 262/313/251 251/301/240 +f 254/296/243 252/299/241 263/310/252 +f 263/310/252 264/311/253 254/296/243 +f 256/311/245 255/310/244 265/317/254 +f 265/317/254 266/318/255 256/311/245 +f 257/313/246 256/312/245 266/319/255 +f 266/319/255 267/320/256 257/313/246 +f 255/310/244 258/314/247 268/321/257 +f 268/321/257 265/317/254 255/310/244 +f 259/315/248 257/313/246 267/320/256 +f 267/320/256 269/322/258 259/315/248 +f 258/314/247 260/316/249 270/322/259 +f 270/322/259 268/321/257 258/314/247 +f 261/314/250 259/315/248 269/322/258 +f 269/322/258 271/321/260 261/314/250 +f 260/316/249 262/313/251 272/320/261 +f 272/320/261 270/322/259 260/316/249 +f 263/310/252 261/314/250 271/321/260 +f 271/321/260 273/317/262 263/310/252 +f 262/313/251 264/312/253 274/319/263 +f 274/319/263 272/320/261 262/313/251 +f 264/311/253 263/310/252 273/317/262 +f 273/317/262 274/318/263 264/311/253 +f 275/323/264 276/324/265 277/325/266 +f 277/325/266 278/326/267 275/323/264 +f 276/324/265 279/327/268 280/328/269 +f 280/328/269 277/325/266 276/324/265 +f 279/327/268 281/329/270 282/330/271 +f 282/330/271 280/328/269 279/327/268 +f 281/329/270 283/331/272 284/332/273 +f 284/332/273 282/330/271 281/329/270 +f 283/331/272 285/333/274 286/334/275 +f 286/334/275 284/332/273 283/331/272 +f 285/333/274 275/335/264 278/336/267 +f 278/336/267 286/334/275 285/333/274 +f 287/337/276 288/338/277 289/339/278 +f 287/337/279 289/340/280 290/341/281 +f 287/337/282 290/338/283 291/339/284 +f 287/337/285 291/340/286 288/341/287 +f 292/342/288 293/343/288 294/344/288 +f 294/344/288 295/345/288 292/342/288 +f 295/342/289 294/343/289 296/344/290 +f 296/344/290 297/345/289 295/342/289 +f 297/342/291 296/343/291 298/344/291 +f 298/344/291 299/345/291 297/342/291 +f 299/342/292 298/343/292 293/344/292 +f 293/344/292 292/345/292 299/342/292 +f 300/346/293 301/347/293 292/342/293 +f 292/342/293 295/345/293 300/346/293 +f 301/346/294 302/347/294 299/342/294 +f 299/342/294 292/345/294 301/346/294 +f 302/346/295 303/347/295 297/342/295 +f 297/342/295 299/345/295 302/346/295 +f 303/346/296 300/347/296 295/342/296 +f 295/342/296 297/345/296 303/346/296 +f 304/348/297 305/349/297 306/350/297 +f 306/350/297 307/351/297 304/348/297 +f 308/352/297 309/353/297 310/354/297 +f 310/354/297 311/355/297 308/352/297 +f 307/356/298 312/357/298 313/358/298 +f 313/358/298 304/359/298 307/356/298 +f 313/360/299 314/361/299 305/362/299 +f 305/362/299 304/363/299 313/360/299 +f 309/364/300 315/365/300 316/366/301 +f 316/366/301 310/367/301 309/364/300 +f 310/359/302 316/358/302 317/357/302 +f 317/357/302 311/356/302 310/359/302 +f 311/368/303 317/369/303 318/370/303 +f 318/370/303 308/371/303 311/368/303 +f 309/353/297 308/352/297 306/350/297 +f 306/350/297 305/349/297 309/353/297 +f 315/365/300 309/364/300 305/362/299 +f 305/362/299 314/361/299 315/365/300 +f 312/369/304 307/368/304 306/371/304 +f 306/371/304 319/370/304 312/369/304 +f 306/372/297 308/373/297 320/374/297 +f 320/374/297 321/375/297 306/372/297 +f 308/376/305 318/377/305 322/378/305 +f 322/378/305 320/379/305 308/376/305 +f 319/377/98 306/376/98 321/379/98 +f 321/379/98 323/378/98 319/377/98 +f 324/380/100 325/381/100 326/382/100 +f 326/382/100 327/383/100 324/380/100 +f 324/384/297 327/385/297 328/386/297 +f 328/386/297 329/387/297 324/384/297 +f 330/387/306 331/386/306 332/388/306 +f 332/388/306 333/389/306 330/387/306 +f 334/389/306 335/388/306 336/390/306 +f 336/390/306 337/391/306 334/389/306 +f 338/391/297 339/390/297 340/392/297 +f 340/392/297 341/393/297 338/391/297 +f 342/393/297 343/392/297 344/394/297 +f 344/394/297 345/395/297 342/393/297 +f 329/380/100 328/383/100 331/396/100 +f 331/396/100 330/397/100 329/380/100 +f 333/397/100 332/398/100 335/399/100 +f 335/399/100 334/400/100 333/397/100 +f 337/401/307 336/399/307 339/402/307 +f 339/402/307 338/403/307 337/401/307 +f 341/403/100 340/402/100 343/404/100 +f 343/404/100 342/405/100 341/403/100 +f 345/395/297 344/394/297 346/406/297 +f 346/406/297 347/407/297 345/395/297 +f 348/408/308 349/409/309 350/410/310 +f 350/410/310 351/411/310 348/408/308 +f 352/412/98 348/413/98 351/414/311 +f 351/414/311 353/415/311 352/412/98 +f 354/416/99 355/417/99 356/418/99 +f 356/418/99 357/419/99 354/416/99 +f 358/420/103 350/421/103 349/422/312 +f 349/422/312 359/423/312 358/420/103 +f 360/424/100 361/425/100 362/426/100 +f 362/426/100 363/427/100 360/424/100 +f 357/428/297 356/429/297 349/409/309 +f 349/409/309 348/408/308 357/428/297 +f 364/430/313 365/431/313 351/411/310 +f 351/411/310 350/410/310 364/430/313 +f 354/378/98 357/432/98 348/413/98 +f 348/413/98 352/412/98 354/378/98 +f 365/433/311 366/434/311 353/415/311 +f 353/415/311 351/414/311 365/433/311 +f 367/435/103 364/436/103 350/421/103 +f 350/421/103 358/420/103 367/435/103 +f 356/437/312 355/438/312 359/423/312 +f 359/423/312 349/422/312 356/437/312 +f 366/434/311 365/433/311 362/439/311 +f 362/439/311 361/440/311 366/434/311 +f 368/431/297 369/430/297 370/441/297 +f 370/441/297 371/442/297 368/431/297 +f 364/436/305 367/435/305 360/443/305 +f 360/443/305 363/444/305 364/436/305 +f 365/445/99 364/446/99 369/447/99 +f 369/447/99 368/448/99 365/445/99 +f 364/436/314 363/444/314 370/449/314 +f 370/449/314 369/450/314 364/436/314 +f 363/427/100 362/426/100 371/451/100 +f 371/451/100 370/452/100 363/427/100 +f 362/439/315 365/433/315 368/453/315 +f 368/453/315 371/454/315 362/439/315 +f 372/411/310 373/408/316 374/409/316 +f 374/409/316 375/410/310 372/411/310 +f 375/414/103 374/413/102 376/412/102 +f 376/412/102 377/415/103 375/414/103 +f 378/416/99 379/419/99 380/418/99 +f 380/418/99 381/417/99 378/416/99 +f 373/422/98 372/421/98 382/420/98 +f 382/420/98 383/423/98 373/422/98 +f 384/425/100 385/426/100 386/427/100 +f 386/427/100 387/424/100 384/425/100 +f 373/408/316 380/428/317 379/429/317 +f 379/429/317 374/409/316 373/408/316 +f 375/410/310 388/430/313 389/431/313 +f 389/431/313 372/411/310 375/410/310 +f 374/413/102 379/432/102 378/378/102 +f 378/378/102 376/412/102 374/413/102 +f 377/415/103 390/434/103 388/433/103 +f 388/433/103 375/414/103 377/415/103 +f 372/421/98 389/436/98 391/435/98 +f 391/435/98 382/420/98 372/421/98 +f 383/423/98 381/438/173 380/437/173 +f 380/437/173 373/422/98 383/423/98 +f 390/434/305 387/440/305 386/439/305 +f 386/439/305 388/433/305 390/434/305 +f 392/430/318 393/441/318 394/442/318 +f 394/442/318 395/431/318 392/430/318 +f 389/436/98 385/444/98 384/443/98 +f 384/443/98 391/435/98 389/436/98 +f 388/446/99 392/447/99 395/448/99 +f 395/448/99 389/445/99 388/446/99 +f 389/436/98 395/450/98 394/449/98 +f 394/449/98 385/444/98 389/436/98 +f 385/426/100 394/451/100 393/452/100 +f 393/452/100 386/427/100 385/426/100 +f 386/439/102 393/454/102 392/453/102 +f 392/453/102 388/433/102 386/439/102 +f 396/455/319 397/456/319 398/457/320 +f 398/457/320 399/458/320 396/455/319 +f 400/459/321 401/460/321 402/461/322 +f 402/461/322 403/462/322 400/459/321 +f 401/463/100 396/464/100 399/465/100 +f 399/465/100 402/466/100 401/463/100 +f 399/458/320 398/457/320 404/467/205 +f 404/467/205 405/468/205 399/458/320 +f 403/462/322 402/461/322 406/469/323 +f 406/469/323 407/470/323 403/462/322 +f 402/466/100 399/465/100 405/471/100 +f 405/471/100 406/472/100 402/466/100 +f 405/467/205 404/468/205 408/458/324 +f 408/458/324 409/457/324 405/467/205 +f 407/470/323 406/469/323 410/461/325 +f 410/461/325 411/462/325 407/470/323 +f 406/472/100 405/471/100 409/473/100 +f 409/473/100 410/474/100 406/472/100 +f 409/457/324 408/458/324 412/455/326 +f 412/455/326 413/456/326 409/457/324 +f 411/462/325 410/461/325 414/460/327 +f 414/460/327 415/459/327 411/462/325 +f 410/474/100 409/473/100 413/475/100 +f 413/475/100 414/476/100 410/474/100 +f 397/456/98 396/455/98 416/477/98 +f 416/477/98 417/478/98 397/456/98 +f 401/460/102 400/459/102 418/479/102 +f 418/479/102 419/480/102 401/460/102 +f 396/464/100 401/463/100 419/481/100 +f 419/481/100 416/482/100 396/464/100 +f 413/456/102 412/455/102 420/477/102 +f 420/477/102 421/478/102 413/456/102 +f 415/459/98 414/460/98 422/480/98 +f 422/480/98 423/479/98 415/459/98 +f 414/476/100 413/475/100 421/483/100 +f 421/483/100 422/484/100 414/476/100 +f 423/485/100 418/486/100 400/487/100 +f 400/487/100 415/488/100 423/485/100 +f 415/488/100 400/487/100 403/489/100 +f 403/489/100 411/490/100 415/488/100 +f 424/491/100 425/492/100 426/493/100 +f 426/493/100 427/494/100 424/491/100 +f 428/495/315 429/496/315 430/497/315 +f 430/497/315 431/498/315 428/495/315 +f 432/499/328 433/500/328 434/501/329 +f 434/501/329 435/502/329 432/499/328 +f 436/503/312 437/497/312 438/496/312 +f 438/496/312 439/504/312 436/503/312 +f 440/505/330 441/506/330 442/507/331 +f 442/507/331 443/508/331 440/505/330 +f 444/509/100 445/510/100 446/511/100 +f 433/512/332 447/513/332 448/514/332 +f 448/514/332 434/515/332 433/512/332 +f 449/516/100 450/517/100 451/518/100 +f 452/519/100 453/520/100 451/518/100 +f 451/518/100 450/517/100 452/519/100 +f 454/521/100 455/522/100 426/493/100 +f 426/493/100 425/492/100 454/521/100 +f 456/523/333 457/524/333 433/500/328 +f 433/500/328 432/499/328 456/523/333 +f 458/525/334 459/526/334 441/506/330 +f 441/506/330 440/505/330 458/525/334 +f 433/512/335 457/527/335 460/528/335 +f 460/528/335 447/513/335 433/512/335 +f 452/519/100 444/509/100 446/511/100 +f 446/511/100 453/520/100 452/519/100 +f 461/529/102 448/530/102 424/531/102 +f 424/531/102 427/532/102 461/529/102 +f 448/530/336 447/533/336 425/534/336 +f 425/534/336 424/531/336 448/530/336 +f 447/533/337 460/535/337 454/536/337 +f 454/536/337 425/534/337 447/533/337 +f 460/535/98 462/537/98 455/538/98 +f 455/538/98 454/536/98 460/535/98 +f 462/539/338 463/540/338 426/541/338 +f 426/541/338 455/542/338 462/539/338 +f 463/540/339 461/543/339 427/544/339 +f 427/544/339 426/541/339 463/540/339 +f 462/545/100 460/528/100 457/527/100 +f 457/527/100 464/546/100 462/545/100 +f 464/547/102 457/524/102 456/523/102 +f 456/523/102 465/548/102 464/547/102 +f 435/502/98 434/501/98 466/549/98 +f 466/549/98 467/550/98 435/502/98 +f 466/551/100 434/515/100 448/514/100 +f 448/514/100 461/552/100 466/551/100 +f 430/497/315 429/496/315 468/504/315 +f 468/504/315 469/503/315 430/497/315 +f 466/553/340 461/543/340 446/554/340 +f 446/554/340 445/555/340 466/553/340 +f 461/543/341 463/540/341 453/556/341 +f 453/556/341 446/554/341 461/543/341 +f 463/540/342 462/539/342 451/557/342 +f 451/557/342 453/556/342 463/540/342 +f 462/539/343 464/558/343 449/559/343 +f 449/559/343 451/557/343 462/539/343 +f 438/496/312 437/497/312 470/498/312 +f 470/498/312 471/495/312 438/496/312 +f 442/507/344 441/506/344 452/560/344 +f 452/560/344 450/561/344 442/507/344 +f 441/506/345 459/526/345 444/562/345 +f 444/562/345 452/560/345 441/506/345 +f 467/563/318 466/553/318 429/564/318 +f 429/564/318 428/565/318 467/563/318 +f 466/553/318 445/555/318 468/566/318 +f 468/566/318 429/564/318 466/553/318 +f 445/510/100 444/509/100 469/567/100 +f 469/567/100 468/568/100 445/510/100 +f 444/562/346 459/526/346 430/569/346 +f 430/569/346 469/570/346 444/562/346 +f 459/526/347 458/525/347 431/571/347 +f 431/571/347 430/569/347 459/526/347 +f 443/508/347 442/507/347 437/572/347 +f 437/572/347 436/573/347 443/508/347 +f 442/507/346 450/561/346 470/574/346 +f 470/574/346 437/572/346 442/507/346 +f 450/517/100 449/516/100 471/575/100 +f 471/575/100 470/576/100 450/517/100 +f 449/559/318 464/558/318 438/577/318 +f 438/577/318 471/578/318 449/559/318 +f 464/558/318 465/579/318 439/580/318 +f 439/580/318 438/577/318 464/558/318 +f 472/491/100 473/492/100 474/493/100 +f 474/493/100 475/494/100 472/491/100 +f 476/495/315 477/496/315 478/497/315 +f 478/497/315 479/498/315 476/495/315 +f 480/499/328 481/500/328 482/501/329 +f 482/501/329 483/502/329 480/499/328 +f 484/503/312 485/497/312 486/496/312 +f 486/496/312 487/504/312 484/503/312 +f 488/505/330 489/506/330 490/507/331 +f 490/507/331 491/508/331 488/505/330 +f 492/509/100 493/510/100 494/511/100 +f 481/512/332 495/513/332 496/514/332 +f 496/514/332 482/515/332 481/512/332 +f 497/516/100 498/517/100 499/518/100 +f 500/519/100 501/520/100 499/518/100 +f 499/518/100 498/517/100 500/519/100 +f 502/521/100 503/522/100 474/493/100 +f 474/493/100 473/492/100 502/521/100 +f 504/523/348 505/524/348 481/500/328 +f 481/500/328 480/499/328 504/523/348 +f 506/525/334 507/526/334 489/506/330 +f 489/506/330 488/505/330 506/525/334 +f 481/512/335 505/527/335 508/528/335 +f 508/528/335 495/513/335 481/512/335 +f 500/519/100 492/509/100 494/511/100 +f 494/511/100 501/520/100 500/519/100 +f 509/529/102 496/530/102 472/531/102 +f 472/531/102 475/532/102 509/529/102 +f 496/530/336 495/533/336 473/534/336 +f 473/534/336 472/531/336 496/530/336 +f 495/533/337 508/535/337 502/536/337 +f 502/536/337 473/534/337 495/533/337 +f 508/535/98 510/537/98 503/538/98 +f 503/538/98 502/536/98 508/535/98 +f 510/539/349 511/540/349 474/541/349 +f 474/541/349 503/542/349 510/539/349 +f 511/540/350 509/543/350 475/544/350 +f 475/544/350 474/541/350 511/540/350 +f 510/545/100 508/528/100 505/527/100 +f 505/527/100 512/546/100 510/545/100 +f 512/547/102 505/524/102 504/523/102 +f 504/523/102 513/548/102 512/547/102 +f 483/502/98 482/501/98 514/549/98 +f 514/549/98 515/550/98 483/502/98 +f 514/551/100 482/515/100 496/514/100 +f 496/514/100 509/552/100 514/551/100 +f 478/497/315 477/496/315 516/504/315 +f 516/504/315 517/503/315 478/497/315 +f 514/553/351 509/543/351 494/554/351 +f 494/554/351 493/555/351 514/553/351 +f 509/543/352 511/540/352 501/556/352 +f 501/556/352 494/554/352 509/543/352 +f 511/540/353 510/539/353 499/557/353 +f 499/557/353 501/556/353 511/540/353 +f 510/539/354 512/558/354 497/559/354 +f 497/559/354 499/557/354 510/539/354 +f 486/496/312 485/497/312 518/498/312 +f 518/498/312 519/495/312 486/496/312 +f 490/507/344 489/506/344 500/560/344 +f 500/560/344 498/561/344 490/507/344 +f 489/506/345 507/526/345 492/562/345 +f 492/562/345 500/560/345 489/506/345 +f 515/563/355 514/553/355 477/564/355 +f 477/564/355 476/565/355 515/563/355 +f 514/553/355 493/555/355 516/566/355 +f 516/566/355 477/564/355 514/553/355 +f 493/510/100 492/509/100 517/567/100 +f 517/567/100 516/568/100 493/510/100 +f 492/562/346 507/526/346 478/569/346 +f 478/569/346 517/570/346 492/562/346 +f 507/526/347 506/525/347 479/571/347 +f 479/571/347 478/569/347 507/526/347 +f 491/508/356 490/507/356 485/572/356 +f 485/572/356 484/573/356 491/508/356 +f 490/507/357 498/561/357 518/574/357 +f 518/574/357 485/572/357 490/507/357 +f 498/517/100 497/516/100 519/575/100 +f 519/575/100 518/576/100 498/517/100 +f 497/559/318 512/558/318 486/577/318 +f 486/577/318 519/578/318 497/559/318 +f 512/558/318 513/579/318 487/580/318 +f 487/580/318 486/577/318 512/558/318 +f 520/581/358 521/582/358 522/583/359 +f 522/583/359 523/584/359 520/581/358 +f 524/585/360 525/586/360 526/587/360 +f 523/584/359 522/583/359 527/588/361 +f 527/588/361 528/589/361 523/584/359 +f 526/587/362 525/586/362 529/590/362 +f 528/589/361 527/588/361 530/591/363 +f 530/591/363 531/592/363 528/589/361 +f 529/590/360 525/586/360 532/593/360 +f 531/592/363 530/591/363 533/594/364 +f 533/594/364 534/595/364 531/592/363 +f 532/593/315 525/586/315 535/596/315 +f 534/595/364 533/594/364 536/597/365 +f 536/597/365 537/598/366 534/595/364 +f 535/596/315 525/586/315 538/599/315 +f 537/598/366 536/597/365 539/600/367 +f 539/600/367 540/601/367 537/598/366 +f 538/599/315 525/586/315 541/602/315 +f 540/601/367 539/600/367 542/603/368 +f 542/603/368 543/604/368 540/601/367 +f 541/602/369 525/586/369 544/605/369 +f 543/604/368 542/603/368 545/606/370 +f 545/606/370 546/607/370 543/604/368 +f 544/605/371 525/586/371 547/608/371 +f 546/607/370 545/606/370 521/609/358 +f 521/609/358 520/610/358 546/607/370 +f 547/608/311 525/586/311 524/585/311 +f 522/611/315 521/612/315 548/585/315 +f 548/585/315 549/587/315 522/611/315 +f 521/612/315 545/613/315 550/608/315 +f 550/608/315 548/585/315 521/612/315 +f 545/613/315 542/614/315 551/605/315 +f 551/605/315 550/608/315 545/613/315 +f 542/614/311 539/615/311 552/602/311 +f 552/602/311 551/605/311 542/614/311 +f 539/615/315 536/616/315 553/599/315 +f 553/599/315 552/602/315 539/615/315 +f 536/616/315 533/617/315 554/596/315 +f 554/596/315 553/599/315 536/616/315 +f 533/617/315 530/618/315 555/593/315 +f 555/593/315 554/596/315 533/617/315 +f 530/618/360 527/619/360 556/590/360 +f 556/590/360 555/593/360 530/618/360 +f 527/619/315 522/611/315 549/587/315 +f 549/587/315 556/590/315 527/619/315 +f 549/620/372 548/621/372 524/622/372 +f 524/622/372 526/623/372 549/620/372 +f 548/621/373 550/624/373 547/625/373 +f 547/625/373 524/622/373 548/621/373 +f 550/624/363 551/626/363 544/627/363 +f 544/627/363 547/625/363 550/624/363 +f 551/626/361 552/628/361 541/629/361 +f 541/629/361 544/627/361 551/626/361 +f 552/628/374 553/630/374 538/631/374 +f 538/631/374 541/629/374 552/628/374 +f 553/630/318 554/632/318 535/633/318 +f 535/633/318 538/631/318 553/630/318 +f 554/632/375 555/634/375 532/635/375 +f 532/635/375 535/633/375 554/632/375 +f 555/634/376 556/636/376 529/637/376 +f 529/637/376 532/635/376 555/634/376 +f 556/638/377 549/620/377 526/623/377 +f 526/623/377 529/639/377 556/638/377 +f 557/493/99 558/492/99 559/491/99 +f 559/491/99 560/494/99 557/493/99 +f 561/497/98 562/496/98 563/495/98 +f 563/495/98 564/498/98 561/497/98 +f 565/501/329 566/500/328 567/499/328 +f 567/499/328 568/502/329 565/501/329 +f 569/496/312 570/497/312 571/503/312 +f 571/503/312 572/504/312 569/496/312 +f 573/507/378 574/506/379 575/505/379 +f 575/505/379 576/508/378 573/507/378 +f 577/509/99 578/511/99 579/510/99 +f 580/514/380 581/513/380 566/512/380 +f 566/512/380 565/515/380 580/514/380 +f 582/516/99 583/518/99 584/517/99 +f 583/518/99 585/520/99 586/519/99 +f 586/519/99 584/517/99 583/518/99 +f 557/493/99 587/522/99 588/521/99 +f 588/521/99 558/492/99 557/493/99 +f 566/500/328 589/524/333 590/523/333 +f 590/523/333 567/499/328 566/500/328 +f 574/506/379 591/526/381 592/525/381 +f 592/525/381 575/505/379 574/506/379 +f 566/512/382 581/513/382 593/528/382 +f 593/528/382 589/527/382 566/512/382 +f 586/519/99 585/520/99 578/511/99 +f 578/511/99 577/509/99 586/519/99 +f 594/529/102 560/532/102 559/531/102 +f 559/531/102 580/530/102 594/529/102 +f 580/530/336 559/531/336 558/534/336 +f 558/534/336 581/533/336 580/530/336 +f 581/533/383 558/534/383 588/536/383 +f 588/536/383 593/535/383 581/533/383 +f 593/535/98 588/536/98 587/538/98 +f 587/538/98 595/537/98 593/535/98 +f 595/539/384 587/542/384 557/541/384 +f 557/541/384 596/540/384 595/539/384 +f 596/540/385 557/541/385 560/544/385 +f 560/544/385 594/543/385 596/540/385 +f 595/545/99 597/546/99 589/527/99 +f 589/527/99 593/528/99 595/545/99 +f 597/547/102 598/548/102 590/523/102 +f 590/523/102 589/524/102 597/547/102 +f 599/549/98 565/501/98 568/502/98 +f 568/502/98 600/550/98 599/549/98 +f 599/551/99 594/552/99 580/514/99 +f 580/514/99 565/515/99 599/551/99 +f 561/497/98 601/503/98 602/504/98 +f 602/504/98 562/496/98 561/497/98 +f 599/553/386 579/555/386 578/554/386 +f 578/554/386 594/543/386 599/553/386 +f 594/543/387 578/554/387 585/556/387 +f 585/556/387 596/540/387 594/543/387 +f 596/540/338 585/556/338 583/557/338 +f 583/557/338 595/539/338 596/540/338 +f 595/539/343 583/557/343 582/559/343 +f 582/559/343 597/558/343 595/539/343 +f 569/496/312 603/495/312 604/498/312 +f 604/498/312 570/497/312 569/496/312 +f 573/507/344 584/561/344 586/560/344 +f 586/560/344 574/506/344 573/507/344 +f 574/506/345 586/560/345 577/562/345 +f 577/562/345 591/526/345 574/506/345 +f 600/563/318 563/565/318 562/564/318 +f 562/564/318 599/553/318 600/563/318 +f 599/553/318 562/564/318 602/566/318 +f 602/566/318 579/555/318 599/553/318 +f 579/510/99 602/568/99 601/567/99 +f 601/567/99 577/509/99 579/510/99 +f 577/562/346 601/570/346 561/569/346 +f 561/569/346 591/526/346 577/562/346 +f 591/526/388 561/569/388 564/571/388 +f 564/571/388 592/525/388 591/526/388 +f 576/508/388 571/573/388 570/572/388 +f 570/572/388 573/507/388 576/508/388 +f 573/507/346 570/572/346 604/574/346 +f 604/574/346 584/561/346 573/507/346 +f 584/517/99 604/576/99 603/575/99 +f 603/575/99 582/516/99 584/517/99 +f 582/559/318 603/578/318 569/577/318 +f 569/577/318 597/558/318 582/559/318 +f 597/558/318 569/577/318 572/580/318 +f 572/580/318 598/579/318 597/558/318 +f 605/493/99 606/492/99 607/491/99 +f 607/491/99 608/494/99 605/493/99 +f 609/497/315 610/496/315 611/495/315 +f 611/495/315 612/498/315 609/497/315 +f 613/501/389 614/500/328 615/499/328 +f 615/499/328 616/502/389 613/501/389 +f 617/496/312 618/497/312 619/503/312 +f 619/503/312 620/504/312 617/496/312 +f 621/507/378 622/506/379 623/505/379 +f 623/505/379 624/508/378 621/507/378 +f 625/509/99 626/511/99 627/510/99 +f 628/514/390 629/513/390 614/512/390 +f 614/512/390 613/515/390 628/514/390 +f 630/516/99 631/518/99 632/517/99 +f 631/518/99 633/520/99 634/519/99 +f 634/519/99 632/517/99 631/518/99 +f 605/493/99 635/522/99 636/521/99 +f 636/521/99 606/492/99 605/493/99 +f 614/500/328 637/524/333 638/523/333 +f 638/523/333 615/499/328 614/500/328 +f 622/506/379 639/526/381 640/525/381 +f 640/525/381 623/505/379 622/506/379 +f 614/512/391 629/513/391 641/528/391 +f 641/528/391 637/527/391 614/512/391 +f 634/519/99 633/520/99 626/511/99 +f 626/511/99 625/509/99 634/519/99 +f 642/529/312 608/532/312 607/531/312 +f 607/531/312 628/530/312 642/529/312 +f 628/530/392 607/531/392 606/534/392 +f 606/534/392 629/533/392 628/530/392 +f 629/533/337 606/534/337 636/536/337 +f 636/536/337 641/535/337 629/533/337 +f 641/535/98 636/536/98 635/538/98 +f 635/538/98 643/537/98 641/535/98 +f 643/539/393 635/542/393 605/541/393 +f 605/541/393 644/540/393 643/539/393 +f 644/540/394 605/541/394 608/544/394 +f 608/544/394 642/543/394 644/540/394 +f 643/545/99 645/546/99 637/527/99 +f 637/527/99 641/528/99 643/545/99 +f 645/547/102 646/548/102 638/523/102 +f 638/523/102 637/524/102 645/547/102 +f 647/549/98 613/501/98 616/502/98 +f 616/502/98 648/550/98 647/549/98 +f 647/551/99 642/552/99 628/514/99 +f 628/514/99 613/515/99 647/551/99 +f 609/497/315 649/503/315 650/504/315 +f 650/504/315 610/496/315 609/497/315 +f 647/553/351 627/555/351 626/554/351 +f 626/554/351 642/543/351 647/553/351 +f 642/543/395 626/554/395 633/556/395 +f 633/556/395 644/540/395 642/543/395 +f 644/540/396 633/556/396 631/557/396 +f 631/557/396 643/539/396 644/540/396 +f 643/539/343 631/557/343 630/559/343 +f 630/559/343 645/558/343 643/539/343 +f 617/496/312 651/495/312 652/498/312 +f 652/498/312 618/497/312 617/496/312 +f 621/507/344 632/561/344 634/560/344 +f 634/560/344 622/506/344 621/507/344 +f 622/506/345 634/560/345 625/562/345 +f 625/562/345 639/526/345 622/506/345 +f 648/563/318 611/565/318 610/564/318 +f 610/564/318 647/553/318 648/563/318 +f 647/553/318 610/564/318 650/566/318 +f 650/566/318 627/555/318 647/553/318 +f 627/510/99 650/568/99 649/567/99 +f 649/567/99 625/509/99 627/510/99 +f 625/562/346 649/570/346 609/569/346 +f 609/569/346 639/526/346 625/562/346 +f 639/526/388 609/569/388 612/571/388 +f 612/571/388 640/525/388 639/526/388 +f 624/508/388 619/573/388 618/572/388 +f 618/572/388 621/507/388 624/508/388 +f 621/507/346 618/572/346 652/574/346 +f 652/574/346 632/561/346 621/507/346 +f 632/517/99 652/576/99 651/575/99 +f 651/575/99 630/516/99 632/517/99 +f 630/559/318 651/578/318 617/577/318 +f 617/577/318 645/558/318 630/559/318 +f 645/558/318 617/577/318 620/580/318 +f 620/580/318 646/579/318 645/558/318 +f 653/493/99 654/492/99 655/491/99 +f 655/491/99 656/494/99 653/493/99 +f 657/497/315 658/496/315 659/495/315 +f 659/495/315 660/498/315 657/497/315 +f 661/501/389 662/500/328 663/499/328 +f 663/499/328 664/502/389 661/501/389 +f 665/496/312 666/497/312 667/503/312 +f 667/503/312 668/504/312 665/496/312 +f 669/507/397 670/506/379 671/505/379 +f 671/505/379 672/508/397 669/507/397 +f 673/509/99 674/511/99 675/510/99 +f 676/514/380 677/513/380 662/512/380 +f 662/512/380 661/515/380 676/514/380 +f 678/516/99 679/518/99 680/517/99 +f 679/518/99 681/520/99 682/519/99 +f 682/519/99 680/517/99 679/518/99 +f 653/493/99 683/522/99 684/521/99 +f 684/521/99 654/492/99 653/493/99 +f 662/500/328 685/524/333 686/523/333 +f 686/523/333 663/499/328 662/500/328 +f 670/506/379 687/526/381 688/525/381 +f 688/525/381 671/505/379 670/506/379 +f 662/512/382 677/513/382 689/528/382 +f 689/528/382 685/527/382 662/512/382 +f 682/519/99 681/520/99 674/511/99 +f 674/511/99 673/509/99 682/519/99 +f 690/529/102 656/532/102 655/531/102 +f 655/531/102 676/530/102 690/529/102 +f 676/530/392 655/531/392 654/534/392 +f 654/534/392 677/533/392 676/530/392 +f 677/533/383 654/534/383 684/536/383 +f 684/536/383 689/535/398 677/533/383 +f 689/535/98 684/536/98 683/538/98 +f 683/538/98 691/537/98 689/535/98 +f 691/539/399 683/542/399 653/541/399 +f 653/541/399 692/540/399 691/539/399 +f 692/540/400 653/541/400 656/544/400 +f 656/544/400 690/543/400 692/540/400 +f 691/545/99 693/546/99 685/527/99 +f 685/527/99 689/528/99 691/545/99 +f 693/547/102 694/548/102 686/523/102 +f 686/523/102 685/524/102 693/547/102 +f 695/549/98 661/501/98 664/502/98 +f 664/502/98 696/550/98 695/549/98 +f 695/551/99 690/552/99 676/514/99 +f 676/514/99 661/515/99 695/551/99 +f 657/497/315 697/503/315 698/504/315 +f 698/504/315 658/496/315 657/497/315 +f 695/553/401 675/555/401 674/554/401 +f 674/554/401 690/543/401 695/553/401 +f 690/543/402 674/554/402 681/556/402 +f 681/556/402 692/540/402 690/543/402 +f 692/540/403 681/556/403 679/557/403 +f 679/557/403 691/539/403 692/540/403 +f 691/539/354 679/557/354 678/559/354 +f 678/559/354 693/558/354 691/539/354 +f 665/496/312 699/495/312 700/498/312 +f 700/498/312 666/497/312 665/496/312 +f 669/507/344 680/561/344 682/560/344 +f 682/560/344 670/506/344 669/507/344 +f 670/506/345 682/560/345 673/562/345 +f 673/562/345 687/526/345 670/506/345 +f 696/563/355 659/565/355 658/564/355 +f 658/564/355 695/553/355 696/563/355 +f 695/553/355 658/564/355 698/566/355 +f 698/566/355 675/555/355 695/553/355 +f 675/510/99 698/568/99 697/567/99 +f 697/567/99 673/509/99 675/510/99 +f 673/562/346 697/570/346 657/569/346 +f 657/569/346 687/526/346 673/562/346 +f 687/526/388 657/569/388 660/571/388 +f 660/571/388 688/525/388 687/526/388 +f 672/508/404 667/573/404 666/572/404 +f 666/572/404 669/507/404 672/508/404 +f 669/507/357 666/572/357 700/574/357 +f 700/574/357 680/561/357 669/507/357 +f 680/517/99 700/576/99 699/575/99 +f 699/575/99 678/516/99 680/517/99 +f 678/559/318 699/578/318 665/577/318 +f 665/577/318 693/558/318 678/559/318 +f 693/558/318 665/577/318 668/580/318 +f 668/580/318 694/579/318 693/558/318 +f 701/493/102 702/492/102 703/491/101 +f 703/491/101 704/494/101 701/493/102 +f 705/497/99 706/496/99 707/495/99 +f 707/495/99 708/498/99 705/497/99 +f 709/501/405 710/500/358 711/499/358 +f 711/499/358 712/502/405 709/501/405 +f 713/496/100 714/497/100 715/503/100 +f 715/503/100 716/504/100 713/496/100 +f 717/507/406 718/506/206 719/505/206 +f 719/505/206 720/508/406 717/507/406 +f 721/509/312 722/511/312 723/510/312 +f 724/514/407 725/513/407 710/512/407 +f 710/512/407 709/515/407 724/514/407 +f 726/516/312 727/518/312 728/517/312 +f 727/518/312 729/520/312 730/519/312 +f 730/519/312 728/517/312 727/518/312 +f 701/493/102 731/522/102 732/521/102 +f 732/521/102 702/492/102 701/493/102 +f 710/500/358 733/524/408 734/523/408 +f 734/523/408 711/499/358 710/500/358 +f 718/506/206 735/526/409 736/525/409 +f 736/525/409 719/505/206 718/506/206 +f 710/512/410 725/513/410 737/528/410 +f 737/528/410 733/527/410 710/512/410 +f 730/519/312 729/520/312 722/511/312 +f 722/511/312 721/509/312 730/519/312 +f 738/529/100 704/532/100 703/531/100 +f 703/531/100 724/530/100 738/529/100 +f 724/530/411 703/531/411 702/534/411 +f 702/534/411 725/533/411 724/530/411 +f 725/533/412 702/534/412 732/536/412 +f 732/536/412 737/535/412 725/533/412 +f 737/535/99 732/536/99 731/538/99 +f 731/538/99 739/537/99 737/535/99 +f 739/539/413 731/542/413 701/541/413 +f 701/541/413 740/540/413 739/539/413 +f 740/540/414 701/541/414 704/544/414 +f 704/544/414 738/543/414 740/540/414 +f 739/545/101 741/546/101 733/527/101 +f 733/527/101 737/528/101 739/545/101 +f 741/547/100 742/548/100 734/523/100 +f 734/523/100 733/524/100 741/547/100 +f 743/549/99 709/501/99 712/502/99 +f 712/502/99 744/550/99 743/549/99 +f 743/551/102 738/552/102 724/514/102 +f 724/514/102 709/515/102 743/551/102 +f 705/497/99 745/503/99 746/504/99 +f 746/504/99 706/496/99 705/497/99 +f 743/553/415 723/555/415 722/554/415 +f 722/554/415 738/543/415 743/553/415 +f 738/543/416 722/554/416 729/556/416 +f 729/556/416 740/540/416 738/543/416 +f 740/540/417 729/556/417 727/557/417 +f 727/557/417 739/539/417 740/540/417 +f 739/539/418 727/557/418 726/559/418 +f 726/559/418 741/558/418 739/539/418 +f 713/496/100 747/495/100 748/498/100 +f 748/498/100 714/497/100 713/496/100 +f 717/507/419 728/561/419 730/560/419 +f 730/560/419 718/506/419 717/507/419 +f 718/506/420 730/560/420 721/562/420 +f 721/562/420 735/526/420 718/506/420 +f 744/563/355 707/565/355 706/564/355 +f 706/564/355 743/553/355 744/563/355 +f 743/553/318 706/564/318 746/566/318 +f 746/566/318 723/555/318 743/553/318 +f 723/510/312 746/568/312 745/567/312 +f 745/567/312 721/509/312 723/510/312 +f 721/562/346 745/570/346 705/569/346 +f 705/569/346 735/526/346 721/562/346 +f 735/526/421 705/569/421 708/571/421 +f 708/571/421 736/525/421 735/526/421 +f 720/508/421 715/573/421 714/572/421 +f 714/572/421 717/507/421 720/508/421 +f 717/507/346 714/572/346 748/574/346 +f 748/574/346 728/561/346 717/507/346 +f 728/517/312 748/576/312 747/575/312 +f 747/575/312 726/516/312 728/517/312 +f 726/559/318 747/578/318 713/577/318 +f 713/577/318 741/558/318 726/559/318 +f 741/558/355 713/577/355 716/580/355 +f 716/580/355 742/579/355 741/558/355 +f 749/640/422 301/347/423 300/346/423 +f 300/346/423 750/641/424 749/640/422 +f 750/640/425 300/347/426 303/346/426 +f 303/346/426 751/641/427 750/640/425 +f 751/640/428 303/347/429 302/346/429 +f 302/346/429 752/641/430 751/640/428 +f 302/347/431 301/346/431 749/641/432 +f 749/641/432 752/640/433 302/347/431 +f 288/642/277 749/643/422 750/644/424 +f 750/644/424 289/645/278 288/642/277 +f 289/645/280 750/644/425 751/643/427 +f 751/643/427 290/642/281 289/645/280 +f 290/645/283 751/644/428 752/643/430 +f 752/643/430 291/646/284 290/645/283 +f 752/644/433 749/643/432 288/642/287 +f 288/642/287 291/645/286 752/644/433 +f 753/1/1 754/2/2 755/3/3 +f 755/3/3 756/4/1 753/1/1 +f 757/5/4 758/6/5 759/7/6 +f 759/7/6 760/8/7 757/5/4 +f 761/9/8 762/10/9 754/11/10 +f 754/11/10 753/12/8 761/9/8 +f 763/13/434 764/14/13 758/15/14 +f 758/15/14 757/16/435 763/13/434 +f 765/17/16 766/18/17 762/19/18 +f 762/19/18 761/20/16 765/17/16 +f 767/21/19 768/22/20 764/23/21 +f 764/23/21 763/24/22 767/21/19 +f 756/25/23 755/26/72 766/27/71 +f 766/27/71 765/28/23 756/25/23 +f 760/29/26 759/30/27 768/31/28 +f 768/31/28 767/32/29 760/29/26 +f 757/5/4 760/8/7 755/3/3 +f 755/3/3 754/2/2 757/5/4 +f 769/33/30 770/34/31 759/7/6 +f 759/7/6 758/6/5 769/33/30 +f 763/13/434 757/16/435 754/11/10 +f 754/11/10 762/10/9 763/13/434 +f 771/35/436 769/36/33 758/15/14 +f 758/15/14 764/14/13 771/35/436 +f 767/21/19 763/24/22 762/19/18 +f 762/19/18 766/18/17 767/21/19 +f 772/37/34 771/38/35 764/23/21 +f 764/23/21 768/22/20 772/37/34 +f 760/29/26 767/32/29 766/27/71 +f 766/27/71 755/26/72 760/29/26 +f 770/39/36 772/40/37 768/31/28 +f 768/31/28 759/30/27 770/39/36 +f 773/41/38 774/42/39 770/34/31 +f 770/34/31 769/33/30 773/41/38 +f 775/43/40 773/44/41 769/36/33 +f 769/36/33 771/35/436 775/43/40 +f 776/45/42 775/46/437 771/38/35 +f 771/38/35 772/37/34 776/45/42 +f 774/47/44 776/48/45 772/40/37 +f 772/40/37 770/39/36 774/47/44 +f 777/49/438 778/50/438 774/42/39 +f 774/42/39 773/41/38 777/49/438 +f 779/51/47 777/52/47 773/44/41 +f 773/44/41 775/43/40 779/51/47 +f 780/53/439 779/54/440 775/46/437 +f 775/46/437 776/45/42 780/53/439 +f 778/55/441 780/56/441 776/48/45 +f 776/48/45 774/47/44 778/55/441 +f 781/181/150 782/184/150 783/183/442 +f 783/183/442 784/182/443 781/181/150 +f 784/182/443 783/183/442 785/186/444 +f 785/186/444 786/185/444 784/182/443 +f 782/187/445 787/190/446 788/189/447 +f 788/189/447 783/188/448 782/187/445 +f 783/188/448 788/189/447 789/192/449 +f 789/192/449 785/191/449 783/188/448 +f 787/193/159 790/196/159 791/195/450 +f 791/195/450 788/194/451 787/193/159 +f 788/194/451 791/195/450 792/198/452 +f 792/198/452 789/197/452 788/194/451 +f 790/199/453 781/202/453 784/201/454 +f 784/201/454 791/200/455 790/199/453 +f 791/200/455 784/201/454 786/204/456 +f 786/204/456 792/203/456 791/200/455 +f 793/3/50 794/2/51 795/1/52 +f 795/1/52 796/4/52 793/3/50 +f 797/7/457 798/6/458 799/5/459 +f 799/5/459 800/8/460 797/7/457 +f 794/11/57 801/10/58 802/9/59 +f 802/9/59 795/12/59 794/11/57 +f 798/15/461 803/14/462 804/13/463 +f 804/13/463 799/16/464 798/15/461 +f 801/19/64 805/18/65 806/17/66 +f 806/17/66 802/20/66 801/19/64 +f 803/23/465 807/22/466 808/21/467 +f 808/21/467 804/24/468 803/23/465 +f 805/27/71 793/26/72 796/25/73 +f 796/25/73 806/28/73 805/27/71 +f 807/31/469 797/30/470 800/29/471 +f 800/29/471 808/32/472 807/31/469 +f 793/3/50 800/8/460 799/5/459 +f 799/5/459 794/2/51 793/3/50 +f 797/7/457 809/34/473 810/33/474 +f 810/33/474 798/6/458 797/7/457 +f 794/11/57 799/16/464 804/13/463 +f 804/13/463 801/10/58 794/11/57 +f 798/15/461 810/36/475 811/35/476 +f 811/35/476 803/14/462 798/15/461 +f 801/19/64 804/24/468 808/21/467 +f 808/21/467 805/18/65 801/19/64 +f 803/23/465 811/38/477 812/37/478 +f 812/37/478 807/22/466 803/23/465 +f 805/27/71 808/32/472 800/29/471 +f 800/29/471 793/26/72 805/27/71 +f 807/31/469 812/40/479 809/39/480 +f 809/39/480 797/30/470 807/31/469 +f 809/34/473 813/42/481 814/41/482 +f 814/41/482 810/33/474 809/34/473 +f 810/36/475 814/44/88 815/43/89 +f 815/43/89 811/35/476 810/36/475 +f 811/38/477 815/46/483 816/45/484 +f 816/45/484 812/37/478 811/38/477 +f 812/40/479 816/48/92 813/47/93 +f 813/47/93 809/39/480 812/40/479 +f 813/42/481 817/50/485 818/49/485 +f 818/49/485 814/41/482 813/42/481 +f 814/44/88 818/52/95 819/51/95 +f 819/51/95 815/43/89 814/44/88 +f 815/46/483 819/54/96 820/53/96 +f 820/53/96 816/45/484 815/46/483 +f 816/48/92 820/56/97 817/55/97 +f 817/55/97 813/47/93 816/48/92 +f 821/647/100 822/648/100 823/649/100 +f 823/649/100 824/650/100 821/647/100 +f 825/651/486 826/652/486 827/653/486 +f 827/653/486 828/654/486 825/651/486 +f 829/655/297 830/656/297 827/653/487 +f 827/653/487 826/652/487 829/655/297 +f 831/652/102 832/651/102 833/654/102 +f 833/654/102 834/653/102 831/652/102 +f 835/657/346 836/658/346 833/659/346 +f 833/659/346 832/660/346 835/657/346 +f 837/661/100 838/662/100 823/649/100 +f 823/649/100 822/648/100 837/661/100 +f 831/652/488 834/653/488 830/656/297 +f 830/656/297 829/655/297 831/652/488 +f 825/663/346 828/664/346 836/658/346 +f 836/658/346 835/657/346 825/663/346 +f 828/665/100 827/666/100 839/667/100 +f 839/667/100 840/668/100 828/665/100 +f 827/666/100 830/669/100 841/670/100 +f 841/670/100 839/667/100 827/666/100 +f 830/669/100 834/671/100 842/672/100 +f 842/672/100 841/670/100 830/669/100 +f 834/671/100 833/673/100 843/674/100 +f 843/674/100 842/672/100 834/671/100 +f 833/673/100 836/675/100 844/676/100 +f 844/676/100 843/674/100 833/673/100 +f 836/675/100 828/665/100 840/668/100 +f 840/668/100 844/676/100 836/675/100 +f 840/677/312 839/678/312 821/679/312 +f 821/679/312 824/680/312 840/677/312 +f 839/678/489 841/681/489 822/682/489 +f 822/682/489 821/679/489 839/678/489 +f 841/681/490 842/678/490 837/679/490 +f 837/679/490 822/682/490 841/681/490 +f 842/678/98 843/677/98 838/680/98 +f 838/680/98 837/679/98 842/678/98 +f 843/683/318 844/684/318 823/685/318 +f 823/685/318 838/686/318 843/683/318 +f 844/684/318 840/687/318 824/688/318 +f 824/688/318 823/685/318 844/684/318 +f 845/181/491 846/182/492 847/183/493 +f 847/183/493 848/184/491 845/181/491 +f 846/182/492 849/185/494 850/186/494 +f 850/186/494 847/183/493 846/182/492 +f 848/187/495 847/188/496 851/189/497 +f 851/189/497 852/190/498 848/187/495 +f 847/188/496 850/191/499 853/192/499 +f 853/192/499 851/189/497 847/188/496 +f 852/193/500 851/194/501 854/195/502 +f 854/195/502 855/196/500 852/193/500 +f 851/194/501 853/197/503 856/198/503 +f 856/198/503 854/195/502 851/194/501 +f 855/199/504 854/200/505 846/201/506 +f 846/201/506 845/202/504 855/199/504 +f 854/200/505 856/203/507 849/204/507 +f 849/204/507 846/201/506 854/200/505 +f 857/181/508 858/182/509 859/183/510 +f 859/183/510 860/184/508 857/181/508 +f 858/182/509 861/185/511 862/186/511 +f 862/186/511 859/183/510 858/182/509 +f 860/187/512 859/188/513 863/189/514 +f 863/189/514 864/190/512 860/187/512 +f 859/188/513 862/191/515 865/192/515 +f 865/192/515 863/189/514 859/188/513 +f 864/193/516 863/194/517 866/195/518 +f 866/195/518 867/196/516 864/193/516 +f 863/194/517 865/197/519 868/198/519 +f 868/198/519 866/195/518 863/194/517 +f 867/199/520 866/200/521 858/201/522 +f 858/201/522 857/202/520 867/199/520 +f 866/200/521 868/203/523 861/204/523 +f 861/204/523 858/201/522 866/200/521 +f 869/689/524 870/690/524 871/691/524 +f 871/691/524 872/692/524 869/689/524 +f 873/693/525 872/694/525 871/691/525 +f 871/691/525 874/695/525 873/693/525 +f 870/690/526 875/696/526 874/695/526 +f 874/695/526 871/691/526 870/690/526 +f 869/697/527 876/698/527 875/696/527 +f 875/696/527 870/690/527 869/697/527 +f 873/693/528 874/695/528 877/699/528 +f 877/699/528 878/700/528 873/693/528 +f 879/701/529 877/699/529 874/695/529 +f 874/695/529 875/696/529 879/701/529 +f 880/702/530 879/701/530 875/696/530 +f 875/696/530 876/698/530 880/702/530 +f 881/703/311 882/704/311 883/705/311 +f 883/705/311 884/706/311 881/703/311 +f 885/707/531 886/708/531 884/706/531 +f 884/706/531 883/705/531 885/707/531 +f 886/708/532 887/709/532 881/710/532 +f 881/710/532 884/706/532 886/708/532 +f 888/711/533 878/712/533 877/699/533 +f 877/699/533 885/707/533 888/711/533 +f 879/701/534 886/708/534 885/707/534 +f 885/707/534 877/699/534 879/701/534 +f 880/713/535 887/709/535 886/708/535 +f 886/708/535 879/701/535 880/713/535 +f 889/689/536 890/690/536 891/691/536 +f 891/691/536 892/692/536 889/689/536 +f 893/693/537 892/694/537 891/691/537 +f 891/691/537 894/695/537 893/693/537 +f 890/690/538 895/696/539 894/695/538 +f 894/695/538 891/691/539 890/690/538 +f 889/697/540 896/698/541 895/696/541 +f 895/696/541 890/690/541 889/697/540 +f 893/693/542 894/695/542 897/699/542 +f 897/699/542 898/700/542 893/693/542 +f 899/701/543 897/699/543 894/695/543 +f 894/695/543 895/696/543 899/701/543 +f 900/702/544 899/701/544 895/696/544 +f 895/696/544 896/698/544 900/702/544 +f 901/703/98 902/704/98 903/705/98 +f 903/705/98 904/706/98 901/703/98 +f 903/705/545 902/714/545 905/711/545 +f 905/711/545 906/707/545 903/705/545 +f 906/707/546 907/708/546 904/706/546 +f 904/706/546 903/705/546 906/707/546 +f 907/708/547 908/709/547 901/710/547 +f 901/710/547 904/706/547 907/708/547 +f 905/711/548 898/712/548 897/699/548 +f 897/699/548 906/707/548 905/711/548 +f 899/701/549 907/708/549 906/707/549 +f 906/707/549 897/699/549 899/701/549 +f 900/713/550 908/709/550 907/708/550 +f 907/708/550 899/701/550 900/713/550 +f 909/689/536 910/690/536 911/691/536 +f 911/691/536 912/692/536 909/689/536 +f 910/690/551 913/696/551 914/695/551 +f 914/695/551 911/691/551 910/690/551 +f 909/697/552 915/698/552 913/696/552 +f 913/696/552 910/690/552 909/697/552 +f 916/701/553 917/699/553 914/695/553 +f 914/695/553 913/696/553 916/701/553 +f 918/702/554 916/701/554 913/696/554 +f 913/696/554 915/698/554 918/702/554 +f 919/703/311 920/704/311 921/705/311 +f 921/705/311 922/706/311 919/703/311 +f 923/707/546 924/708/546 922/706/546 +f 922/706/546 921/705/546 923/707/546 +f 924/708/555 925/709/555 919/710/555 +f 919/710/555 922/706/555 924/708/555 +f 916/701/556 924/708/556 923/707/556 +f 923/707/556 917/699/556 916/701/556 +f 918/713/557 925/709/557 924/708/557 +f 924/708/557 916/701/557 918/713/557 +f 926/689/536 927/690/536 928/691/536 +f 928/691/536 929/692/536 926/689/536 +f 927/690/539 930/696/539 931/695/539 +f 931/695/539 928/691/539 927/690/539 +f 926/697/541 932/698/540 930/696/540 +f 930/696/540 927/690/541 926/697/541 +f 933/701/558 934/699/558 931/695/559 +f 931/695/559 930/696/558 933/701/558 +f 935/702/560 933/701/560 930/696/560 +f 930/696/560 932/698/560 935/702/560 +f 936/703/98 937/704/98 938/705/98 +f 938/705/98 939/706/98 936/703/98 +f 940/707/561 941/708/561 939/706/561 +f 939/706/561 938/705/561 940/707/561 +f 941/708/555 942/709/555 936/710/555 +f 936/710/555 939/706/555 941/708/555 +f 933/701/562 941/708/562 940/707/562 +f 940/707/562 934/699/562 933/701/562 +f 935/713/563 942/709/563 941/708/563 +f 941/708/563 933/701/563 935/713/563 +f 943/689/536 944/690/536 945/691/536 +f 945/691/536 946/692/536 943/689/536 +f 944/690/538 947/696/538 948/695/538 +f 948/695/538 945/691/538 944/690/538 +f 943/697/552 949/698/552 947/696/552 +f 947/696/552 944/690/552 943/697/552 +f 950/701/543 951/699/543 948/695/543 +f 948/695/543 947/696/543 950/701/543 +f 952/702/564 950/701/564 947/696/564 +f 947/696/564 949/698/564 952/702/564 +f 953/703/98 954/704/98 955/705/98 +f 955/705/98 956/706/98 953/703/98 +f 957/707/546 958/708/546 956/706/546 +f 956/706/546 955/705/546 957/707/546 +f 958/708/555 959/709/555 953/710/555 +f 953/710/555 956/706/555 958/708/555 +f 950/701/549 958/708/549 957/707/549 +f 957/707/549 951/699/549 950/701/549 +f 952/713/565 959/709/565 958/708/565 +f 958/708/565 950/701/565 952/713/565 +f 960/689/524 961/690/524 962/691/524 +f 962/691/524 963/692/524 960/689/524 +f 964/693/566 963/694/566 962/691/566 +f 962/691/566 965/695/566 964/693/566 +f 961/690/567 966/696/567 965/695/567 +f 965/695/567 962/691/567 961/690/567 +f 964/693/568 965/695/569 967/699/568 +f 967/699/568 968/700/568 964/693/568 +f 969/701/570 967/699/570 965/695/570 +f 965/695/570 966/696/570 969/701/570 +f 970/703/311 971/704/311 972/705/311 +f 972/705/311 973/706/311 970/703/311 +f 972/705/571 971/714/571 974/711/571 +f 974/711/571 975/707/571 972/705/571 +f 975/707/572 976/708/572 973/706/572 +f 973/706/572 972/705/572 975/707/572 +f 974/711/573 968/712/573 967/699/573 +f 967/699/573 975/707/573 974/711/573 +f 969/701/574 976/708/574 975/707/574 +f 975/707/574 967/699/574 969/701/574 +f 977/689/575 978/690/575 979/691/575 +f 979/691/575 980/692/575 977/689/575 +f 981/693/576 980/694/576 979/691/577 +f 979/691/577 982/695/576 981/693/576 +f 978/690/578 983/696/579 982/695/579 +f 982/695/579 979/691/579 978/690/578 +f 981/693/580 982/695/580 984/699/580 +f 984/699/580 985/700/580 981/693/580 +f 986/701/581 984/699/581 982/695/582 +f 982/695/582 983/696/581 986/701/581 +f 987/703/311 988/704/311 989/705/311 +f 989/705/311 990/706/311 987/703/311 +f 989/705/583 988/714/583 991/711/583 +f 991/711/583 992/707/583 989/705/583 +f 992/707/584 993/708/584 990/706/584 +f 990/706/584 989/705/584 992/707/584 +f 991/711/585 985/712/585 984/699/585 +f 984/699/585 992/707/585 991/711/585 +f 986/701/586 993/708/586 992/707/586 +f 992/707/586 984/699/586 986/701/586 +f 994/689/524 995/690/524 996/691/524 +f 996/691/524 997/692/524 994/689/524 +f 998/693/587 997/694/587 996/691/587 +f 996/691/587 999/695/587 998/693/587 +f 995/690/588 1000/696/588 999/695/588 +f 999/695/588 996/691/588 995/690/588 +f 998/693/589 999/695/589 1001/699/589 +f 1001/699/589 1002/700/589 998/693/589 +f 1003/701/570 1001/699/570 999/695/570 +f 999/695/570 1000/696/570 1003/701/570 +f 1004/703/311 1005/704/311 1006/705/311 +f 1006/705/311 1007/706/311 1004/703/311 +f 1006/705/590 1005/714/590 1008/711/590 +f 1008/711/590 1009/707/590 1006/705/590 +f 1009/707/591 1010/708/591 1007/706/591 +f 1007/706/591 1006/705/591 1009/707/591 +f 1008/711/592 1002/712/592 1001/699/592 +f 1001/699/592 1009/707/592 1008/711/592 +f 1003/701/586 1010/708/586 1009/707/586 +f 1009/707/586 1001/699/586 1003/701/586 +f 1011/689/593 1012/690/593 1013/691/593 +f 1013/691/593 1014/692/593 1011/689/593 +f 1015/693/594 1014/694/594 1013/691/594 +f 1013/691/594 1016/695/594 1015/693/594 +f 1012/690/595 1017/696/595 1016/695/595 +f 1016/695/595 1013/691/595 1012/690/595 +f 1011/697/596 1018/698/596 1017/696/596 +f 1017/696/596 1012/690/596 1011/697/596 +f 1015/693/597 1016/695/597 1019/699/597 +f 1019/699/597 1020/700/597 1015/693/597 +f 1021/701/598 1019/699/598 1016/695/598 +f 1016/695/598 1017/696/598 1021/701/598 +f 1022/702/599 1021/701/599 1017/696/599 +f 1017/696/599 1018/698/599 1022/702/599 +f 1023/703/99 1024/704/99 1025/705/99 +f 1025/705/99 1026/706/99 1023/703/99 +f 1025/705/600 1024/714/600 1027/711/600 +f 1027/711/600 1028/707/600 1025/705/600 +f 1028/707/601 1029/708/601 1026/706/601 +f 1026/706/601 1025/705/601 1028/707/601 +f 1029/708/602 1030/709/602 1023/710/602 +f 1023/710/602 1026/706/602 1029/708/602 +f 1027/711/603 1020/712/603 1019/699/603 +f 1019/699/603 1028/707/603 1027/711/603 +f 1021/701/604 1029/708/604 1028/707/604 +f 1028/707/604 1019/699/604 1021/701/604 +f 1022/713/605 1030/709/605 1029/708/605 +f 1029/708/605 1021/701/605 1022/713/605 +f 1031/715/100 1032/716/100 1033/717/100 +f 1033/717/100 1034/718/100 1031/715/100 +f 1035/719/606 1036/720/606 1034/718/606 +f 1034/718/606 1033/717/606 1035/719/606 +f 1036/720/607 1037/721/607 1031/722/607 +f 1031/722/607 1034/718/607 1036/720/607 +f 1038/723/608 1036/720/608 1035/719/608 +f 1035/719/608 1039/724/608 1038/723/608 +f 1040/725/609 1037/726/609 1036/720/609 +f 1036/720/609 1038/723/609 1040/725/609 +f 1041/727/99 1042/728/99 1043/729/99 +f 1043/729/99 1044/730/99 1041/727/99 +f 1042/728/610 1045/731/610 1046/732/610 +f 1046/732/610 1043/729/610 1042/728/610 +f 1041/733/611 1047/734/611 1045/731/611 +f 1045/731/611 1042/728/611 1041/733/611 +f 1038/723/612 1039/724/612 1046/732/612 +f 1046/732/612 1045/731/612 1038/723/612 +f 1040/725/613 1038/723/613 1045/731/613 +f 1045/731/613 1047/735/613 1040/725/613 +f 1048/715/100 1049/716/100 1050/717/100 +f 1050/717/100 1051/718/100 1048/715/100 +f 1052/719/614 1053/720/614 1051/718/614 +f 1051/718/614 1050/717/614 1052/719/614 +f 1053/720/615 1054/721/615 1048/722/615 +f 1048/722/615 1051/718/615 1053/720/615 +f 1055/723/616 1053/720/616 1052/719/616 +f 1052/719/616 1056/724/616 1055/723/616 +f 1057/725/617 1054/726/617 1053/720/617 +f 1053/720/617 1055/723/617 1057/725/617 +f 1058/727/99 1059/728/99 1060/729/99 +f 1060/729/99 1061/730/99 1058/727/99 +f 1059/728/618 1062/731/618 1063/732/618 +f 1063/732/618 1060/729/618 1059/728/618 +f 1058/733/619 1064/734/619 1062/731/619 +f 1062/731/619 1059/728/619 1058/733/619 +f 1055/723/620 1056/724/620 1063/732/620 +f 1063/732/620 1062/731/620 1055/723/620 +f 1057/725/621 1055/723/621 1062/731/621 +f 1062/731/621 1064/735/621 1057/725/621 +f 1065/715/100 1066/716/100 1067/717/100 +f 1067/717/100 1068/718/100 1065/715/100 +f 1069/719/622 1070/720/622 1068/718/622 +f 1068/718/622 1067/717/622 1069/719/622 +f 1070/720/623 1071/721/623 1065/722/624 +f 1065/722/624 1068/718/623 1070/720/623 +f 1072/723/625 1070/720/625 1069/719/625 +f 1069/719/625 1073/724/625 1072/723/625 +f 1074/725/626 1071/726/626 1070/720/626 +f 1070/720/626 1072/723/626 1074/725/626 +f 1075/727/627 1076/728/627 1077/729/627 +f 1077/729/627 1078/730/627 1075/727/627 +f 1076/728/628 1079/731/628 1080/732/629 +f 1080/732/629 1077/729/628 1076/728/628 +f 1075/733/630 1081/734/630 1079/731/630 +f 1079/731/630 1076/728/630 1075/733/630 +f 1072/723/631 1073/724/631 1080/732/631 +f 1080/732/631 1079/731/631 1072/723/631 +f 1074/725/632 1072/723/632 1079/731/632 +f 1079/731/632 1081/735/632 1074/725/632 +f 1082/715/100 1083/716/100 1084/717/100 +f 1084/717/100 1085/718/100 1082/715/100 +f 1086/719/633 1087/720/633 1085/718/633 +f 1085/718/633 1084/717/633 1086/719/633 +f 1087/720/634 1088/721/634 1082/722/634 +f 1082/722/634 1085/718/634 1087/720/634 +f 1089/723/635 1087/720/635 1086/719/635 +f 1086/719/635 1090/724/635 1089/723/635 +f 1091/725/636 1088/726/636 1087/720/636 +f 1087/720/636 1089/723/636 1091/725/636 +f 1092/727/637 1093/728/637 1094/729/637 +f 1094/729/637 1095/730/637 1092/727/637 +f 1093/728/638 1096/731/638 1097/732/638 +f 1097/732/638 1094/729/638 1093/728/638 +f 1092/733/639 1098/734/639 1096/731/639 +f 1096/731/639 1093/728/639 1092/733/639 +f 1089/723/640 1090/724/640 1097/732/640 +f 1097/732/640 1096/731/640 1089/723/640 +f 1091/725/641 1089/723/641 1096/731/641 +f 1096/731/641 1098/735/641 1091/725/641 +f 1099/715/100 1100/716/100 1101/717/100 +f 1101/717/100 1102/718/100 1099/715/100 +f 1103/719/642 1104/720/642 1102/718/642 +f 1102/718/642 1101/717/642 1103/719/642 +f 1104/720/643 1105/721/643 1099/722/643 +f 1099/722/643 1102/718/643 1104/720/643 +f 1106/723/644 1104/720/644 1103/719/644 +f 1103/719/644 1107/724/644 1106/723/644 +f 1108/725/645 1105/726/645 1104/720/645 +f 1104/720/645 1106/723/645 1108/725/645 +f 1109/727/99 1110/728/99 1111/729/99 +f 1111/729/99 1112/730/99 1109/727/99 +f 1110/728/646 1113/731/646 1114/732/646 +f 1114/732/646 1111/729/646 1110/728/646 +f 1109/733/647 1115/734/647 1113/731/647 +f 1113/731/647 1110/728/647 1109/733/647 +f 1106/723/648 1107/724/648 1114/732/648 +f 1114/732/648 1113/731/648 1106/723/648 +f 1108/725/649 1106/723/650 1113/731/649 +f 1113/731/649 1115/735/649 1108/725/649 +f 1116/715/100 1117/716/100 1118/717/100 +f 1118/717/100 1119/718/100 1116/715/100 +f 1120/719/651 1121/720/652 1119/718/651 +f 1119/718/651 1118/717/651 1120/719/651 +f 1121/720/653 1122/721/653 1116/722/653 +f 1116/722/653 1119/718/653 1121/720/653 +f 1123/723/654 1121/720/654 1120/719/654 +f 1120/719/654 1124/724/654 1123/723/654 +f 1125/725/655 1122/726/655 1121/720/655 +f 1121/720/655 1123/723/655 1125/725/655 +f 1126/727/99 1127/728/99 1128/729/99 +f 1128/729/99 1129/730/99 1126/727/99 +f 1127/728/656 1130/731/656 1131/732/656 +f 1131/732/656 1128/729/656 1127/728/656 +f 1126/733/657 1132/734/657 1130/731/657 +f 1130/731/657 1127/728/657 1126/733/657 +f 1123/723/658 1124/724/658 1131/732/658 +f 1131/732/658 1130/731/658 1123/723/658 +f 1125/725/659 1123/723/659 1130/731/659 +f 1130/731/659 1132/735/659 1125/725/659 +f 1133/715/660 1134/716/660 1135/717/660 +f 1135/717/660 1136/718/660 1133/715/660 +f 1137/719/661 1138/720/661 1136/718/661 +f 1136/718/661 1135/717/661 1137/719/661 +f 1138/720/662 1139/721/662 1133/722/662 +f 1133/722/662 1136/718/662 1138/720/662 +f 1140/723/663 1138/720/663 1137/719/663 +f 1137/719/663 1141/724/663 1140/723/663 +f 1142/725/664 1139/726/664 1138/720/664 +f 1138/720/664 1140/723/664 1142/725/664 +f 1143/727/99 1144/728/99 1145/729/99 +f 1145/729/99 1146/730/99 1143/727/99 +f 1144/728/665 1147/731/665 1148/732/665 +f 1148/732/665 1145/729/665 1144/728/665 +f 1143/733/666 1149/734/666 1147/731/666 +f 1147/731/666 1144/728/666 1143/733/666 +f 1140/723/667 1141/724/667 1148/732/667 +f 1148/732/667 1147/731/667 1140/723/667 +f 1142/725/668 1140/723/668 1147/731/668 +f 1147/731/668 1149/735/668 1142/725/668 +f 1150/715/100 1151/716/100 1152/717/100 +f 1152/717/100 1153/718/100 1150/715/100 +f 1154/719/669 1155/720/669 1153/718/669 +f 1153/718/669 1152/717/669 1154/719/669 +f 1155/720/670 1156/721/670 1150/722/670 +f 1150/722/670 1153/718/670 1155/720/670 +f 1157/723/671 1155/720/671 1154/719/671 +f 1154/719/671 1158/724/671 1157/723/671 +f 1159/725/672 1156/726/672 1155/720/672 +f 1155/720/672 1157/723/672 1159/725/672 +f 1160/727/99 1161/728/99 1162/729/99 +f 1162/729/99 1163/730/99 1160/727/99 +f 1161/728/673 1164/731/673 1165/732/673 +f 1165/732/673 1162/729/673 1161/728/673 +f 1160/733/674 1166/734/674 1164/731/674 +f 1164/731/674 1161/728/674 1160/733/674 +f 1157/723/675 1158/724/675 1165/732/675 +f 1165/732/675 1164/731/675 1157/723/675 +f 1159/725/676 1157/723/676 1164/731/676 +f 1164/731/676 1166/735/676 1159/725/676 +f 1167/715/100 1168/716/100 1169/717/100 +f 1169/717/100 1170/718/100 1167/715/100 +f 1171/719/677 1172/720/677 1170/718/678 +f 1170/718/678 1169/717/677 1171/719/677 +f 1172/720/679 1173/721/679 1167/722/679 +f 1167/722/679 1170/718/679 1172/720/679 +f 1174/723/680 1172/720/680 1171/719/680 +f 1171/719/680 1175/724/680 1174/723/680 +f 1176/725/681 1173/726/681 1172/720/681 +f 1172/720/681 1174/723/681 1176/725/681 +f 1177/727/99 1178/728/99 1179/729/99 +f 1179/729/99 1180/730/99 1177/727/99 +f 1178/728/665 1181/731/665 1182/732/665 +f 1182/732/665 1179/729/665 1178/728/665 +f 1177/733/682 1183/734/682 1181/731/682 +f 1181/731/682 1178/728/682 1177/733/682 +f 1174/723/683 1175/724/683 1182/732/683 +f 1182/732/683 1181/731/683 1174/723/683 +f 1176/725/684 1174/723/684 1181/731/684 +f 1181/731/684 1183/735/684 1176/725/684 +f 1184/689/685 1185/692/685 1186/691/685 +f 1186/691/685 1187/690/685 1184/689/685 +f 1188/693/686 1189/695/686 1186/691/686 +f 1186/691/686 1185/694/686 1188/693/686 +f 1187/690/687 1186/691/687 1189/695/687 +f 1189/695/687 1190/696/687 1187/690/687 +f 1184/697/688 1187/690/688 1190/696/688 +f 1190/696/688 1191/698/688 1184/697/688 +f 1188/693/689 1192/700/689 1193/699/689 +f 1193/699/689 1189/695/689 1188/693/689 +f 1194/701/690 1190/696/690 1189/695/690 +f 1189/695/690 1193/699/690 1194/701/690 +f 1195/702/691 1191/698/691 1190/696/691 +f 1190/696/691 1194/701/691 1195/702/691 +f 1196/703/99 1197/706/99 1198/705/99 +f 1198/705/99 1199/704/99 1196/703/99 +f 1198/705/692 1200/707/692 1201/711/692 +f 1201/711/692 1199/714/692 1198/705/692 +f 1200/707/693 1198/705/693 1197/706/694 +f 1197/706/694 1202/708/694 1200/707/693 +f 1202/708/695 1197/706/695 1196/710/695 +f 1196/710/695 1203/709/695 1202/708/695 +f 1201/711/696 1200/707/696 1193/699/696 +f 1193/699/696 1192/712/696 1201/711/696 +f 1194/701/697 1193/699/697 1200/707/697 +f 1200/707/697 1202/708/697 1194/701/697 +f 1195/713/698 1194/701/698 1202/708/698 +f 1202/708/698 1203/709/698 1195/713/698 +f 1204/715/100 1205/718/100 1206/717/100 +f 1206/717/100 1207/716/100 1204/715/100 +f 1208/719/699 1206/717/699 1205/718/699 +f 1205/718/699 1209/720/699 1208/719/699 +f 1209/720/700 1205/718/700 1204/722/700 +f 1204/722/700 1210/721/700 1209/720/700 +f 1211/723/701 1212/724/701 1208/719/701 +f 1208/719/701 1209/720/701 1211/723/701 +f 1213/725/702 1211/723/702 1209/720/702 +f 1209/720/702 1210/726/702 1213/725/702 +f 1214/727/99 1215/730/99 1216/729/99 +f 1216/729/99 1217/728/99 1214/727/99 +f 1217/728/703 1216/729/703 1218/732/703 +f 1218/732/703 1219/731/703 1217/728/703 +f 1214/733/704 1217/728/704 1219/731/704 +f 1219/731/704 1220/734/704 1214/733/704 +f 1211/723/705 1219/731/705 1218/732/705 +f 1218/732/705 1212/724/705 1211/723/705 +f 1213/725/706 1220/735/707 1219/731/706 +f 1219/731/706 1211/723/706 1213/725/706 +f 1221/715/100 1222/718/100 1223/717/100 +f 1223/717/100 1224/716/100 1221/715/100 +f 1225/719/708 1223/717/708 1222/718/708 +f 1222/718/708 1226/720/708 1225/719/708 +f 1226/720/709 1222/718/709 1221/722/709 +f 1221/722/709 1227/721/709 1226/720/709 +f 1228/723/710 1229/724/710 1225/719/710 +f 1225/719/710 1226/720/710 1228/723/710 +f 1230/725/711 1228/723/711 1226/720/711 +f 1226/720/711 1227/726/711 1230/725/711 +f 1231/727/99 1232/730/99 1233/729/99 +f 1233/729/99 1234/728/99 1231/727/99 +f 1234/728/712 1233/729/712 1235/732/712 +f 1235/732/712 1236/731/712 1234/728/712 +f 1231/733/713 1234/728/713 1236/731/713 +f 1236/731/713 1237/734/713 1231/733/713 +f 1228/723/714 1236/731/714 1235/732/714 +f 1235/732/714 1229/724/714 1228/723/714 +f 1230/725/715 1237/735/715 1236/731/715 +f 1236/731/715 1228/723/715 1230/725/715 +f 1238/715/100 1239/718/100 1240/717/100 +f 1240/717/100 1241/716/100 1238/715/100 +f 1242/719/716 1240/717/716 1239/718/716 +f 1239/718/716 1243/720/716 1242/719/716 +f 1243/720/717 1239/718/717 1238/722/717 +f 1238/722/717 1244/721/717 1243/720/717 +f 1245/723/718 1246/724/718 1242/719/718 +f 1242/719/718 1243/720/718 1245/723/718 +f 1247/725/719 1245/723/719 1243/720/719 +f 1243/720/719 1244/726/719 1247/725/719 +f 1248/727/720 1249/730/720 1250/729/720 +f 1250/729/720 1251/728/720 1248/727/720 +f 1251/728/721 1250/729/721 1252/732/721 +f 1252/732/721 1253/731/721 1251/728/721 +f 1248/733/722 1251/728/723 1253/731/723 +f 1253/731/723 1254/734/723 1248/733/722 +f 1245/723/724 1253/731/724 1252/732/724 +f 1252/732/724 1246/724/724 1245/723/724 +f 1247/725/725 1254/735/725 1253/731/725 +f 1253/731/725 1245/723/725 1247/725/725 +f 1255/715/100 1256/718/100 1257/717/100 +f 1257/717/100 1258/716/100 1255/715/100 +f 1259/719/726 1257/717/726 1256/718/726 +f 1256/718/726 1260/720/726 1259/719/726 +f 1260/720/727 1256/718/727 1255/722/727 +f 1255/722/727 1261/721/727 1260/720/727 +f 1262/723/728 1263/724/728 1259/719/728 +f 1259/719/728 1260/720/728 1262/723/728 +f 1264/725/729 1262/723/729 1260/720/729 +f 1260/720/729 1261/726/729 1264/725/729 +f 1265/727/99 1266/730/99 1267/729/99 +f 1267/729/99 1268/728/99 1265/727/99 +f 1268/728/730 1267/729/730 1269/732/730 +f 1269/732/730 1270/731/731 1268/728/730 +f 1265/733/732 1268/728/732 1270/731/732 +f 1270/731/732 1271/734/732 1265/733/732 +f 1262/723/733 1270/731/733 1269/732/733 +f 1269/732/733 1263/724/733 1262/723/733 +f 1264/725/734 1271/735/734 1270/731/734 +f 1270/731/734 1262/723/734 1264/725/734 +f 1272/715/100 1273/718/100 1274/717/100 +f 1274/717/100 1275/716/100 1272/715/100 +f 1276/719/735 1274/717/735 1273/718/736 +f 1273/718/736 1277/720/735 1276/719/735 +f 1277/720/737 1273/718/737 1272/722/737 +f 1272/722/737 1278/721/737 1277/720/737 +f 1279/723/738 1280/724/738 1276/719/738 +f 1276/719/738 1277/720/738 1279/723/738 +f 1281/725/739 1279/723/740 1277/720/740 +f 1277/720/740 1278/726/739 1281/725/739 +f 1282/727/720 1283/730/720 1284/729/720 +f 1284/729/720 1285/728/720 1282/727/720 +f 1285/728/741 1284/729/741 1286/732/741 +f 1286/732/741 1287/731/741 1285/728/741 +f 1282/733/742 1285/728/742 1287/731/742 +f 1287/731/742 1288/734/742 1282/733/742 +f 1279/723/743 1287/731/743 1286/732/743 +f 1286/732/743 1280/724/743 1279/723/743 +f 1281/725/744 1288/735/745 1287/731/744 +f 1287/731/744 1279/723/744 1281/725/744 +f 1289/715/100 1290/718/100 1291/717/100 +f 1291/717/100 1292/716/100 1289/715/100 +f 1293/719/746 1291/717/746 1290/718/746 +f 1290/718/746 1294/720/746 1293/719/746 +f 1294/720/747 1290/718/747 1289/722/747 +f 1289/722/747 1295/721/747 1294/720/747 +f 1296/723/748 1297/724/748 1293/719/748 +f 1293/719/748 1294/720/748 1296/723/748 +f 1298/725/749 1296/723/749 1294/720/749 +f 1294/720/749 1295/726/749 1298/725/749 +f 1299/727/750 1300/730/750 1301/729/750 +f 1301/729/750 1302/728/750 1299/727/750 +f 1302/728/751 1301/729/751 1303/732/751 +f 1303/732/751 1304/731/751 1302/728/751 +f 1299/733/752 1302/728/752 1304/731/752 +f 1304/731/752 1305/734/752 1299/733/752 +f 1296/723/753 1304/731/753 1303/732/753 +f 1303/732/753 1297/724/753 1296/723/753 +f 1298/725/754 1305/735/754 1304/731/754 +f 1304/731/754 1296/723/754 1298/725/754 +f 1306/715/100 1307/718/100 1308/717/100 +f 1308/717/100 1309/716/100 1306/715/100 +f 1310/719/755 1308/717/755 1307/718/755 +f 1307/718/755 1311/720/755 1310/719/755 +f 1311/720/756 1307/718/756 1306/722/756 +f 1306/722/756 1312/721/756 1311/720/756 +f 1313/723/757 1314/724/757 1310/719/757 +f 1310/719/757 1311/720/757 1313/723/757 +f 1315/725/758 1313/723/758 1311/720/758 +f 1311/720/758 1312/726/758 1315/725/758 +f 1316/727/99 1317/730/99 1318/729/99 +f 1318/729/99 1319/728/99 1316/727/99 +f 1319/728/759 1318/729/759 1320/732/759 +f 1320/732/759 1321/731/759 1319/728/759 +f 1316/733/760 1319/728/760 1321/731/760 +f 1321/731/760 1322/734/760 1316/733/760 +f 1313/723/761 1321/731/761 1320/732/761 +f 1320/732/761 1314/724/761 1313/723/761 +f 1315/725/762 1322/735/762 1321/731/762 +f 1321/731/762 1313/723/762 1315/725/762 +f 1323/715/100 1324/718/100 1325/717/100 +f 1325/717/100 1326/716/100 1323/715/100 +f 1327/719/755 1325/717/755 1324/718/755 +f 1324/718/755 1328/720/755 1327/719/755 +f 1328/720/763 1324/718/763 1323/722/763 +f 1323/722/763 1329/721/763 1328/720/763 +f 1330/723/764 1331/724/764 1327/719/764 +f 1327/719/764 1328/720/764 1330/723/764 +f 1332/725/765 1330/723/765 1328/720/765 +f 1328/720/765 1329/726/765 1332/725/765 +f 1333/727/99 1334/730/99 1335/729/99 +f 1335/729/99 1336/728/99 1333/727/99 +f 1336/728/766 1335/729/766 1337/732/766 +f 1337/732/766 1338/731/766 1336/728/766 +f 1333/733/767 1336/728/767 1338/731/767 +f 1338/731/767 1339/734/767 1333/733/767 +f 1330/723/768 1338/731/768 1337/732/768 +f 1337/732/768 1331/724/768 1330/723/768 +f 1332/725/769 1339/735/769 1338/731/769 +f 1338/731/769 1330/723/769 1332/725/769 +f 1340/715/770 1341/718/770 1342/717/770 +f 1342/717/770 1343/716/770 1340/715/770 +f 1344/719/771 1342/717/771 1341/718/771 +f 1341/718/771 1345/720/771 1344/719/771 +f 1345/720/772 1341/718/773 1340/722/772 +f 1340/722/772 1346/721/773 1345/720/772 +f 1347/723/774 1348/724/774 1344/719/774 +f 1344/719/774 1345/720/774 1347/723/774 +f 1349/725/775 1347/723/775 1345/720/775 +f 1345/720/775 1346/726/775 1349/725/775 +f 1350/727/99 1351/730/99 1352/729/99 +f 1352/729/99 1353/728/99 1350/727/99 +f 1353/728/703 1352/729/703 1354/732/703 +f 1354/732/703 1355/731/776 1353/728/703 +f 1350/733/777 1353/728/777 1355/731/777 +f 1355/731/777 1356/734/777 1350/733/777 +f 1347/723/778 1355/731/778 1354/732/778 +f 1354/732/778 1348/724/778 1347/723/778 +f 1349/725/779 1356/735/779 1355/731/779 +f 1355/731/779 1347/723/779 1349/725/779 +f 1357/736/780 212/737/780 1358/738/780 +f 1358/738/780 1359/739/780 1357/736/780 +f 1360/736/192 1361/737/192 212/738/192 +f 212/738/192 1357/739/192 1360/736/192 +f 1362/740/781 1363/741/782 1361/742/782 +f 1361/742/782 1360/743/781 1362/740/781 +f 1359/744/175 1358/745/175 1363/746/175 +f 1363/746/175 1362/747/175 1359/744/175 +f 1364/744/216 1365/745/216 1366/748/216 +f 1366/748/216 1367/747/216 1364/744/216 +f 1368/736/783 206/737/783 1365/738/783 +f 1365/738/783 1364/739/783 1368/736/783 +f 1369/736/784 1370/737/784 206/738/784 +f 206/738/784 1368/739/784 1369/736/784 +f 1367/740/175 1366/741/175 1370/742/175 +f 1370/742/175 1369/743/175 1367/740/175 +f 1371/740/180 1372/741/180 1373/742/180 +f 1373/742/180 1374/743/180 1371/740/180 +f 1375/743/783 1376/742/785 1372/741/785 +f 1372/741/785 1371/740/783 1375/743/783 +f 1377/736/786 202/737/786 1376/738/786 +f 1376/738/786 1375/739/786 1377/736/786 +f 1374/736/787 1373/737/787 202/738/787 +f 202/738/787 1377/739/787 1374/736/787 +f 1378/736/180 1379/737/180 232/738/180 +f 232/738/180 1380/739/180 1378/736/180 +f 1381/747/783 1382/748/783 1379/745/783 +f 1379/745/783 1378/744/783 1381/747/783 +f 1383/744/788 1384/745/784 1382/748/784 +f 1382/748/784 1381/747/788 1383/744/788 +f 1380/736/789 232/737/789 1384/738/789 +f 1384/738/789 1383/739/789 1380/736/789 +f 1385/749/181 1386/750/181 1361/742/782 +f 1361/742/782 1363/741/782 1385/749/181 +f 1387/751/175 1385/752/175 1363/746/175 +f 1363/746/175 1358/745/175 1387/751/175 +f 1388/751/216 1389/752/216 1366/748/216 +f 1366/748/216 1365/745/216 1388/751/216 +f 1389/749/175 1390/750/175 1370/742/175 +f 1370/742/175 1366/741/175 1389/749/175 +f 1391/749/180 1392/750/180 1373/742/180 +f 1373/742/180 1372/741/180 1391/749/180 +f 1393/750/785 1391/749/785 1372/741/785 +f 1372/741/785 1376/742/785 1393/750/785 +f 1394/752/783 1395/751/783 1379/745/783 +f 1379/745/783 1382/748/783 1394/752/783 +f 1396/751/790 1394/752/790 1382/748/784 +f 1382/748/784 1384/745/784 1396/751/790 +f 1388/751/219 1365/745/219 1397/753/219 +f 1397/753/219 1398/754/219 1388/751/219 +f 1390/750/217 1399/755/217 1400/756/217 +f 1400/756/217 1370/742/217 1390/750/217 +f 1395/751/791 1401/754/792 1402/753/792 +f 1402/753/792 1379/745/791 1395/751/791 +f 1396/751/181 1384/745/181 1403/753/793 +f 1403/753/793 1404/754/794 1396/751/181 +f 1405/754/217 1406/753/217 1407/757/217 +f 1407/757/217 1408/758/217 1405/754/217 +f 1409/755/795 1410/756/795 1411/757/796 +f 1411/757/796 1412/758/796 1409/755/795 +f 1413/757/220 1414/756/797 1415/755/797 +f 1415/755/797 1416/758/220 1413/757/220 +f 1417/757/798 1418/756/799 1419/755/800 +f 1419/755/800 1420/758/801 1417/757/798 +f 1413/757/220 1416/758/220 1398/754/219 +f 1398/754/219 1397/753/219 1413/757/220 +f 1399/755/217 1408/758/217 1407/757/217 +f 1407/757/217 1400/756/217 1399/755/217 +f 1401/754/792 1412/758/796 1411/757/796 +f 1411/757/796 1402/753/792 1401/754/792 +f 1417/757/798 1420/758/801 1404/754/794 +f 1404/754/794 1403/753/793 1417/757/798 +f 1387/751/217 1358/745/217 1406/753/217 +f 1406/753/217 1405/754/217 1387/751/217 +f 1393/750/795 1376/742/795 1410/756/795 +f 1410/756/795 1409/755/795 1393/750/795 +f 1414/756/797 1373/742/797 1392/750/797 +f 1392/750/797 1415/755/797 1414/756/797 +f 1418/756/799 1361/742/786 1386/750/786 +f 1386/750/786 1419/755/800 1418/756/799 +f 1421/181/802 1422/182/803 1423/183/493 +f 1423/183/493 1424/184/802 1421/181/802 +f 1422/182/803 1425/185/804 1426/186/804 +f 1426/186/804 1423/183/493 1422/182/803 +f 1424/187/805 1423/188/806 1427/189/807 +f 1427/189/807 1428/190/808 1424/187/805 +f 1423/188/806 1426/191/809 1429/192/809 +f 1429/192/809 1427/189/807 1423/188/806 +f 1428/193/500 1427/194/501 1430/195/502 +f 1430/195/502 1431/196/500 1428/193/500 +f 1427/194/501 1429/197/810 1432/198/810 +f 1432/198/810 1430/195/502 1427/194/501 +f 1431/199/504 1430/200/505 1422/201/506 +f 1422/201/506 1421/202/504 1431/199/504 +f 1430/200/505 1432/203/507 1425/204/507 +f 1425/204/507 1422/201/506 1430/200/505 +f 1433/181/508 1434/182/509 1435/183/510 +f 1435/183/510 1436/184/508 1433/181/508 +f 1434/182/509 1437/185/511 1438/186/511 +f 1438/186/511 1435/183/510 1434/182/509 +f 1436/187/811 1435/188/812 1439/189/813 +f 1439/189/813 1440/190/811 1436/187/811 +f 1435/188/812 1438/191/814 1441/192/814 +f 1441/192/814 1439/189/813 1435/188/812 +f 1440/193/516 1439/194/517 1442/195/518 +f 1442/195/518 1443/196/516 1440/193/516 +f 1439/194/517 1441/197/519 1444/198/519 +f 1444/198/519 1442/195/518 1439/194/517 +f 1443/199/815 1442/200/816 1434/201/817 +f 1434/201/817 1433/202/815 1443/199/815 +f 1442/200/816 1444/203/818 1437/204/818 +f 1437/204/818 1434/201/817 1442/200/816 +# 2079 faces + diff --git a/examples/shaders/resources/models/church_diffuse.png b/examples/shaders/resources/models/church_diffuse.png new file mode 100644 index 0000000..73b9fb7 Binary files /dev/null and b/examples/shaders/resources/models/church_diffuse.png differ diff --git a/examples/shaders/resources/models/watermill.obj b/examples/shaders/resources/models/watermill.obj new file mode 100644 index 0000000..a0a80d4 --- /dev/null +++ b/examples/shaders/resources/models/watermill.obj @@ -0,0 +1,5316 @@ +# (c) 2018 Medieval Assets Pack by Alberto Cano +# Licensed as Creative Commons Attribution-NonCommercial 4.0 + +# +# object watermill +# + +v -13.1924 2.3021 -2.7990 +v -6.7437 5.5026 -2.5075 +v -6.9255 5.7207 -2.5075 +v -13.3742 2.5202 -2.7990 +v -13.1924 2.3021 -9.7624 +v -13.3742 2.5202 -9.7624 +v -6.9255 5.7207 -10.0539 +v -6.7437 5.5026 -10.0539 +v -12.6656 2.5635 -3.5030 +v -6.7437 5.5026 -3.5030 +v -6.9255 5.7207 -3.5030 +v -6.9255 5.7207 -9.0585 +v -12.6656 2.5635 -9.0585 +v -6.7437 5.5026 -9.0585 +v 10.7261 -0.0000 -2.3791 +v 10.7261 8.6527 -2.3791 +v -6.7437 8.6527 -2.3791 +v -6.7437 -0.0000 -2.3791 +v 10.7261 0.0000 -6.2807 +v 10.7261 13.1014 -6.2807 +v -6.7437 -0.0000 -10.1824 +v -6.7437 8.6527 -10.1824 +v 10.7261 8.6527 -10.1824 +v 10.7261 0.0000 -10.1824 +v 6.6390 8.4318 -1.8382 +v 7.3490 12.3719 -6.2807 +v 1.9912 11.9781 -6.2807 +v 1.9912 8.4318 -1.8381 +v 1.9912 8.0019 -1.8381 +v 6.6390 8.0019 -1.8382 +v 12.3149 8.4318 -11.0430 +v 12.5793 13.9616 -6.2807 +v 12.5793 13.3516 -6.2807 +v 12.3149 8.0019 -11.0430 +v 12.3150 8.4318 -1.5184 +v 12.3150 8.0019 -1.5184 +v 6.6390 8.4318 -10.7233 +v 1.9912 8.4318 -10.7233 +v 6.6390 8.0019 -10.7233 +v 1.9912 8.0019 -10.7233 +v -2.6566 8.4318 -1.8381 +v -3.3666 12.3719 -6.2807 +v -2.6566 8.0019 -1.8381 +v -8.5969 13.3516 -6.2807 +v -8.5969 13.9616 -6.2807 +v -8.3325 8.4318 -11.0430 +v -8.3325 8.0019 -11.0430 +v -8.3325 8.0019 -1.5184 +v -8.3325 8.4318 -1.5184 +v -2.6566 8.4318 -10.7233 +v -2.6566 8.0019 -10.7233 +v -3.3666 11.8666 -6.2807 +v 1.9912 11.4750 -6.2807 +v 7.3490 11.8666 -6.2807 +v -6.7437 -0.0000 -6.2807 +v -6.7437 13.1141 -6.2807 +v 8.9974 12.5399 -7.0188 +v 10.2888 12.8128 -7.0188 +v 10.3359 12.5903 -7.0188 +v 9.0444 12.3173 -7.0188 +v 8.9004 12.9984 -6.4117 +v 10.1919 13.2713 -6.4117 +v 8.9475 12.7759 -6.4117 +v 10.1888 13.2863 -6.2807 +v 8.8973 13.0134 -6.2807 +v 8.9443 12.7909 -6.2807 +v 10.3359 12.5903 -5.5426 +v 10.2888 12.8128 -5.5426 +v 8.9974 12.5399 -5.5426 +v 9.0444 12.3173 -5.5426 +v 10.1919 13.2713 -6.1497 +v 8.9004 12.9984 -6.1497 +v 8.9475 12.7759 -6.1497 +v 7.8352 12.2633 -7.0188 +v 9.1355 12.4905 -7.0188 +v 9.1747 12.2665 -7.0188 +v 7.8743 12.0393 -7.0188 +v 7.7545 12.7250 -6.4117 +v 9.0548 12.9522 -6.4117 +v 7.7937 12.5010 -6.4117 +v 9.0522 12.9673 -6.2807 +v 7.7519 12.7401 -6.2807 +v 7.7910 12.5161 -6.2807 +v 9.1747 12.2665 -5.5426 +v 9.1355 12.4905 -5.5426 +v 7.8352 12.2633 -5.5426 +v 7.8743 12.0393 -5.5426 +v 9.0548 12.9522 -6.1497 +v 7.7545 12.7250 -6.1497 +v 7.7937 12.5010 -6.1497 +v 6.6801 12.0216 -7.0188 +v 7.9904 12.1810 -7.0188 +v 8.0179 11.9552 -7.0188 +v 6.7075 11.7958 -7.0188 +v 6.6235 12.4869 -6.4117 +v 7.9338 12.6462 -6.4117 +v 6.6509 12.2611 -6.4117 +v 7.9320 12.6614 -6.2807 +v 6.6216 12.5021 -6.2807 +v 6.6491 12.2763 -6.2807 +v 8.0179 11.9552 -5.5426 +v 7.9904 12.1810 -5.5426 +v 6.6801 12.0216 -5.5426 +v 6.7075 11.7958 -5.5426 +v 7.9338 12.6462 -6.1497 +v 6.6235 12.4869 -6.1497 +v 6.6509 12.2611 -6.1497 +v 5.5013 11.7586 -7.0188 +v 6.8116 11.9180 -7.0188 +v 6.8391 11.6922 -7.0188 +v 5.5287 11.5329 -7.0188 +v 5.4447 12.2239 -6.4117 +v 6.7551 12.3832 -6.4117 +v 5.4722 11.9981 -6.4117 +v 6.7532 12.3984 -6.2807 +v 5.4429 12.2391 -6.2807 +v 5.4703 12.0133 -6.2807 +v 6.8391 11.6922 -5.5426 +v 6.8116 11.9180 -5.5426 +v 5.5013 11.7586 -5.5426 +v 5.5287 11.5329 -5.5426 +v 6.7551 12.3832 -6.1497 +v 5.4447 12.2239 -6.1497 +v 5.4722 11.9981 -6.1497 +v 4.2453 11.6604 -7.0188 +v 5.5556 11.8198 -7.0188 +v 5.5831 11.5940 -7.0188 +v 4.2727 11.4346 -7.0188 +v 4.1887 12.1257 -6.4117 +v 5.4991 12.2850 -6.4117 +v 4.2161 11.8999 -6.4117 +v 5.4972 12.3002 -6.2807 +v 4.1868 12.1409 -6.2807 +v 4.2143 11.9151 -6.2807 +v 5.5831 11.5940 -5.5426 +v 5.5556 11.8198 -5.5426 +v 4.2453 11.6604 -5.5426 +v 4.2727 11.4346 -5.5426 +v 5.4991 12.2850 -6.1497 +v 4.1887 12.1257 -6.1497 +v 4.2161 11.8999 -6.1497 +v 3.3182 11.6102 -7.0188 +v 4.6363 11.6808 -7.0188 +v 4.6485 11.4537 -7.0188 +v 3.3304 11.3830 -7.0188 +v 3.2931 12.0782 -6.4117 +v 4.6113 12.1488 -6.4117 +v 3.3053 11.8511 -6.4117 +v 4.6104 12.1641 -6.2807 +v 3.2923 12.0935 -6.2807 +v 3.3045 11.8664 -6.2807 +v 4.6485 11.4537 -5.5426 +v 4.6363 11.6808 -5.5426 +v 3.3182 11.6102 -5.5426 +v 3.3304 11.3830 -5.5426 +v 4.6113 12.1488 -6.1497 +v 3.2931 12.0782 -6.1497 +v 3.3053 11.8511 -6.1497 +v -4.9956 12.5685 -7.0188 +v -3.6852 12.4092 -7.0188 +v -3.7127 12.1834 -7.0188 +v -5.0230 12.3427 -7.0188 +v -3.6561 12.6486 -6.4117 +v -3.6286 12.8744 -6.4117 +v -4.9390 13.0337 -6.4117 +v -4.9664 12.8080 -6.4117 +v -3.6268 12.8896 -6.2807 +v -3.6542 12.6638 -6.2807 +v -4.9371 13.0489 -6.2807 +v -4.9646 12.8232 -6.2807 +v -3.7127 12.1834 -5.5426 +v -3.6852 12.4092 -5.5426 +v -4.9956 12.5685 -5.5426 +v -5.0230 12.3427 -5.5426 +v -3.6561 12.6486 -6.1497 +v -3.6286 12.8744 -6.1497 +v -4.9390 13.0337 -6.1497 +v -4.9664 12.8080 -6.1497 +v -3.8354 12.0721 -7.0188 +v -3.8277 12.2994 -7.0188 +v -2.5085 12.2548 -7.0188 +v -2.5161 12.0275 -7.0188 +v -2.4926 12.7232 -6.4117 +v -3.8119 12.7678 -6.4117 +v -2.5003 12.4959 -6.4117 +v -3.8114 12.7831 -6.2807 +v -2.4921 12.7386 -6.2807 +v -2.4998 12.5112 -6.2807 +v -2.5085 12.2548 -5.5426 +v -3.8277 12.2994 -5.5426 +v -3.8354 12.0721 -5.5426 +v -2.5161 12.0275 -5.5426 +v -2.4926 12.7232 -6.1497 +v -3.8119 12.7678 -6.1497 +v -2.5003 12.4959 -6.1497 +v -2.5604 11.9055 -7.0188 +v -2.5410 12.1322 -7.0188 +v -1.2258 12.0191 -7.0188 +v -1.2452 11.7925 -7.0188 +v -1.1857 12.4861 -6.4117 +v -2.5008 12.5991 -6.4117 +v -1.2051 12.2595 -6.4117 +v -2.4995 12.6144 -6.2807 +v -1.1844 12.5014 -6.2807 +v -1.2038 12.2748 -6.2807 +v -1.2258 12.0191 -5.5426 +v -2.5410 12.1322 -5.5426 +v -2.5604 11.9055 -5.5426 +v -1.2452 11.7925 -5.5426 +v -1.1857 12.4861 -6.1497 +v -2.5008 12.5991 -6.1497 +v -1.2051 12.2595 -6.1497 +v -1.4316 11.6943 -7.0188 +v -1.4041 11.9201 -7.0188 +v -0.0938 11.7608 -7.0188 +v -0.1212 11.5350 -7.0188 +v -0.0372 12.2260 -6.4117 +v -1.3476 12.3854 -6.4117 +v -0.0647 12.0003 -6.4117 +v -1.3457 12.4006 -6.2807 +v -0.0354 12.2412 -6.2807 +v -0.0628 12.0155 -6.2807 +v -0.0938 11.7608 -5.5426 +v -1.4041 11.9201 -5.5426 +v -1.4316 11.6943 -5.5426 +v -0.1212 11.5350 -5.5426 +v -0.0372 12.2260 -6.1497 +v -1.3476 12.3854 -6.1497 +v -0.0647 12.0003 -6.1497 +v -0.2528 11.4404 -7.0188 +v -0.2254 11.6662 -7.0188 +v 1.0850 11.5068 -7.0188 +v 1.0575 11.2811 -7.0188 +v 1.1416 11.9721 -6.4117 +v -0.1688 12.1314 -6.4117 +v 1.1141 11.7463 -6.4117 +v -0.1669 12.1466 -6.2807 +v 1.1434 11.9873 -6.2807 +v 1.1159 11.7615 -6.2807 +v 1.0850 11.5068 -5.5426 +v -0.2254 11.6662 -5.5426 +v -0.2528 11.4404 -5.5426 +v 1.0575 11.2811 -5.5426 +v 1.1416 11.9721 -6.1497 +v -0.1688 12.1314 -6.1497 +v 1.1141 11.7463 -6.1497 +v 1.0355 11.3300 -7.0188 +v 1.0432 11.5573 -7.0188 +v 2.3624 11.5128 -7.0188 +v 2.3548 11.2855 -7.0188 +v 2.3783 11.9812 -6.4117 +v 1.0590 12.0257 -6.4117 +v 2.3706 11.7539 -6.4117 +v 1.0595 12.0410 -6.2807 +v 2.3788 11.9965 -6.2807 +v 2.3711 11.7692 -6.2807 +v 2.3624 11.5128 -5.5426 +v 1.0432 11.5573 -5.5426 +v 1.0355 11.3300 -5.5426 +v 2.3548 11.2855 -5.5426 +v 2.3783 11.9812 -6.1497 +v 1.0590 12.0257 -6.1497 +v 2.3706 11.7539 -6.1497 +v 2.1005 11.2570 -7.0188 +v 2.0730 11.4827 -7.0188 +v 3.3834 11.6421 -7.0188 +v 3.4108 11.4163 -7.0188 +v 3.3268 12.1074 -6.4117 +v 2.0165 11.9480 -6.4117 +v 3.3543 11.8816 -6.4117 +v 2.0146 11.9632 -6.2807 +v 3.3250 12.1226 -6.2807 +v 3.3524 11.8968 -6.2807 +v 3.3834 11.6421 -5.5426 +v 2.0730 11.4827 -5.5426 +v 2.1005 11.2570 -5.5426 +v 3.4108 11.4163 -5.5426 +v 3.3268 12.1074 -6.1497 +v 2.0165 11.9480 -6.1497 +v 3.3543 11.8816 -6.1497 +v -6.2966 12.8862 -7.0188 +v -4.9862 12.7268 -7.0188 +v -5.0137 12.5011 -7.0188 +v -6.3240 12.6604 -7.0188 +v -4.9571 12.9663 -6.4117 +v -4.9296 13.1921 -6.4117 +v -6.2400 13.3514 -6.4117 +v -6.2674 13.1257 -6.4117 +v -4.9278 13.2073 -6.2807 +v -4.9552 12.9815 -6.2807 +v -6.2381 13.3666 -6.2807 +v -6.2656 13.1409 -6.2807 +v -5.0137 12.5011 -5.5426 +v -4.9862 12.7268 -5.5426 +v -6.2966 12.8862 -5.5426 +v -6.3240 12.6604 -5.5426 +v -4.9571 12.9663 -6.1497 +v -4.9296 13.1921 -6.1497 +v -6.2400 13.3514 -6.1497 +v -6.2674 13.1257 -6.1497 +v -8.5583 13.8088 -7.0188 +v -7.3338 13.3157 -7.0188 +v -7.4188 13.1048 -7.0188 +v -8.6432 13.5978 -7.0188 +v -7.2437 13.5395 -6.4117 +v -7.1587 13.7505 -6.4117 +v -8.3832 14.2435 -6.4117 +v -8.4682 14.0326 -6.4117 +v -7.1530 13.7647 -6.2807 +v -7.2380 13.5537 -6.2807 +v -8.3775 14.2577 -6.2807 +v -8.4625 14.0468 -6.2807 +v -7.4188 13.1048 -5.5426 +v -7.3338 13.3157 -5.5426 +v -8.5583 13.8088 -5.5426 +v -8.6432 13.5978 -5.5426 +v -7.2437 13.5395 -6.1497 +v -7.1587 13.7505 -6.1497 +v -8.3832 14.2435 -6.1497 +v -8.4682 14.0326 -6.1497 +v -7.4860 13.1990 -7.0188 +v -6.1757 13.0397 -7.0188 +v -6.2031 12.8139 -7.0188 +v -7.5135 12.9732 -7.0188 +v -6.1465 13.2792 -6.4117 +v -6.1191 13.5049 -6.4117 +v -7.4294 13.6643 -6.4117 +v -7.4569 13.4385 -6.4117 +v -6.1172 13.5201 -6.2807 +v -6.1447 13.2943 -6.2807 +v -7.4276 13.6795 -6.2807 +v -7.4550 13.4537 -6.2807 +v -6.2031 12.8139 -5.5426 +v -6.1757 13.0397 -5.5426 +v -7.4860 13.1990 -5.5426 +v -7.5135 12.9732 -5.5426 +v -6.1465 13.2792 -6.1497 +v -6.1191 13.5049 -6.1497 +v -7.4294 13.6643 -6.1497 +v -7.4569 13.4385 -6.1497 +v 11.5790 13.1102 -7.0188 +v 11.5127 13.3278 -7.0188 +v 12.7755 13.7122 -7.0188 +v 12.8418 13.4947 -7.0188 +v 11.4425 13.5586 -6.4117 +v 11.3762 13.7761 -6.4117 +v 12.6390 14.1606 -6.4117 +v 12.7053 13.9430 -6.4117 +v 11.4380 13.5732 -6.2807 +v 11.3718 13.7908 -6.2807 +v 12.6345 14.1752 -6.2807 +v 12.7008 13.9577 -6.2807 +v 12.7755 13.7122 -5.5426 +v 11.5127 13.3278 -5.5426 +v 11.5790 13.1102 -5.5426 +v 12.8418 13.4947 -5.5426 +v 11.3762 13.7761 -6.1497 +v 11.4425 13.5586 -6.1497 +v 12.6390 14.1606 -6.1497 +v 12.7053 13.9430 -6.1497 +v 10.2689 12.9589 -7.0188 +v 11.5604 13.2318 -7.0188 +v 11.6074 13.0093 -7.0188 +v 10.3159 12.7364 -7.0188 +v 10.1720 13.4174 -6.4117 +v 11.4635 13.6904 -6.4117 +v 10.2190 13.1949 -6.4117 +v 11.4603 13.7054 -6.2807 +v 10.1688 13.4324 -6.2807 +v 10.2158 13.2099 -6.2807 +v 11.6074 13.0093 -5.5426 +v 11.5604 13.2318 -5.5426 +v 10.2689 12.9589 -5.5426 +v 10.3159 12.7364 -5.5426 +v 11.4635 13.6904 -6.1497 +v 10.1720 13.4174 -6.1497 +v 10.2190 13.1949 -6.1497 +v 1.8981 10.8573 -2.0736 +v -0.8458 8.7261 -2.0736 +v -0.8458 8.7261 -0.1199 +v 1.8981 11.3885 0.1367 +v 4.6419 8.7261 -0.1199 +v 4.6419 8.7261 -2.0736 +v 1.8981 11.7860 2.3471 +v 1.8981 12.0145 2.3471 +v -0.8458 8.7261 1.8338 +v -0.8458 8.4976 1.8338 +v 4.6419 8.4976 1.8338 +v 4.6419 8.7261 1.8338 +v 4.6419 8.4976 -2.0736 +v 4.6419 8.4976 -0.1199 +v 1.8981 11.7860 -6.4944 +v 1.8981 12.0145 -6.4944 +v 4.6419 8.7261 -5.9811 +v 4.6419 8.4976 -5.9811 +v -0.8458 8.4976 -5.9811 +v -0.8458 8.7261 -5.9811 +v -0.8458 8.4976 -2.0736 +v -0.8458 8.7261 -4.0274 +v -0.8458 8.4976 -4.0274 +v 1.8981 10.6287 -2.0736 +v 1.8981 11.1600 0.1367 +v 1.8981 11.1600 -4.2840 +v 1.8981 11.3885 -4.2840 +v 4.6419 8.7261 -4.0274 +v 4.6419 8.4976 -4.0274 +v -0.8458 8.4976 -0.1199 +v 2.6362 10.8058 -1.0937 +v 2.6362 11.0788 0.1977 +v 2.6362 10.8562 0.2448 +v 2.6362 10.5833 -1.0467 +v 2.0290 11.2644 -1.1907 +v 2.0291 11.5373 0.1008 +v 2.0290 11.0419 -1.1436 +v 1.8981 11.5523 0.0977 +v 1.8981 11.2794 -1.1938 +v 1.8981 11.0568 -1.1468 +v 1.1600 10.8562 0.2448 +v 1.1600 11.0788 0.1977 +v 1.1600 10.8058 -1.0937 +v 1.1600 10.5833 -1.0467 +v 1.7671 11.5373 0.1008 +v 1.7671 11.2644 -1.1907 +v 1.7671 11.0418 -1.1436 +v 2.6362 10.5205 -1.9756 +v 2.6362 10.7478 -0.6753 +v 2.6362 10.5237 -0.6362 +v 2.6362 10.2965 -1.9365 +v 2.0290 10.9822 -2.0563 +v 2.0290 11.2094 -0.7560 +v 2.0290 10.7582 -2.0172 +v 1.8981 11.2245 -0.7586 +v 1.8981 10.9973 -2.0589 +v 1.8981 10.7733 -2.0198 +v 1.1600 10.5237 -0.6362 +v 1.1600 10.7478 -0.6753 +v 1.1600 10.5205 -1.9756 +v 1.1600 10.2965 -1.9365 +v 1.7671 11.2094 -0.7560 +v 1.7671 10.9822 -2.0563 +v 1.7671 10.7582 -2.0172 +v 1.1982 10.4359 -2.0215 +v 1.0834 10.7076 -3.3081 +v 1.0844 10.4851 -3.3552 +v 1.1993 10.2134 -2.0685 +v 1.8009 10.9081 -1.9756 +v 1.6860 11.1798 -3.2622 +v 1.8019 10.6856 -2.0226 +v 1.8164 11.1977 -3.2701 +v 1.9313 10.9261 -1.9834 +v 1.9323 10.7036 -2.0305 +v 2.5550 10.5184 -3.4794 +v 2.5540 10.7409 -3.4324 +v 2.6688 10.4692 -2.1457 +v 2.6699 10.2467 -2.1928 +v 1.9469 11.1857 -3.2843 +v 2.0618 10.9141 -1.9976 +v 2.0629 10.6915 -2.0447 +v 1.1600 10.7338 -3.2444 +v 1.1600 10.8931 -4.5548 +v 1.1600 10.6673 -4.5823 +v 1.1600 10.5080 -3.2719 +v 1.7671 11.1990 -3.1879 +v 1.7671 11.3584 -4.4982 +v 1.7671 10.9733 -3.2153 +v 1.8981 11.3736 -4.4964 +v 1.8981 11.2142 -3.1860 +v 1.8981 10.9885 -3.2135 +v 2.6362 10.6673 -4.5823 +v 2.6362 10.8931 -4.5548 +v 2.6362 10.7338 -3.2445 +v 2.6362 10.5080 -3.2719 +v 2.0290 11.3584 -4.4982 +v 2.0290 11.1990 -3.1879 +v 2.0290 10.9733 -3.2153 +v 2.6362 11.2196 1.1507 +v 2.6362 11.4422 1.1037 +v 2.6362 11.7151 2.3952 +v 2.6362 11.4926 2.4422 +v 2.0290 11.6782 1.0538 +v 2.0290 11.9007 1.0068 +v 2.0290 12.1736 2.2983 +v 2.0290 11.9511 2.3453 +v 1.8981 11.6932 1.0507 +v 1.8981 11.9157 1.0036 +v 1.8981 12.1886 2.2951 +v 1.8981 11.9661 2.3421 +v 1.1600 11.7151 2.3952 +v 1.1600 11.4422 1.1037 +v 1.1600 11.2196 1.1507 +v 1.1600 11.4926 2.4422 +v 1.7671 11.9007 1.0068 +v 1.7671 11.6782 1.0538 +v 1.7671 12.1736 2.2983 +v 1.7671 11.9511 2.3453 +v 2.6362 11.1887 0.1778 +v 2.6362 11.4617 1.4693 +v 2.6362 11.2391 1.5163 +v 2.6362 10.9662 0.2248 +v 2.0291 11.6473 0.0809 +v 2.0291 11.9202 1.3724 +v 2.0291 11.4248 0.1279 +v 1.8981 11.9352 1.3692 +v 1.8981 11.6623 0.0777 +v 1.8981 11.4397 0.1247 +v 1.1600 11.2391 1.5163 +v 1.1600 11.4617 1.4693 +v 1.1600 11.1887 0.1778 +v 1.1600 10.9662 0.2248 +v 1.7671 11.9202 1.3724 +v 1.7671 11.6473 0.0809 +v 1.7671 11.4248 0.1279 +v 1.1600 11.0324 -4.4912 +v 1.1599 11.1918 -5.8016 +v 1.1599 10.9660 -5.8291 +v 1.1600 10.8067 -4.5187 +v 1.7671 11.4977 -4.4347 +v 1.7671 11.6570 -5.7450 +v 1.7671 11.2719 -4.4621 +v 1.8981 11.6722 -5.7432 +v 1.8981 11.5129 -4.4328 +v 1.8981 11.2871 -4.4603 +v 2.6362 10.9660 -5.8291 +v 2.6362 11.1918 -5.8016 +v 2.6362 11.0324 -4.4913 +v 2.6362 10.8067 -4.5187 +v 2.0290 11.6570 -5.7450 +v 2.0290 11.4977 -4.4347 +v 2.0290 11.2719 -4.4621 +v 1.6385 11.2224 1.2384 +v 2.1576 11.2224 1.2384 +v 2.1576 10.7301 1.2384 +v 1.6385 10.7301 1.2384 +v 2.1576 11.1032 5.0371 +v 2.1576 11.5955 5.0371 +v 1.6385 11.5955 5.0371 +v 1.6385 11.1032 5.0371 +v 2.1576 10.7372 3.3072 +v 1.6385 10.7372 3.3072 +v 2.1576 11.2294 3.3072 +v 1.6385 11.2294 3.3072 +v -6.9438 6.4623 -6.2807 +v -6.9438 8.0396 -6.2807 +v -6.9438 7.6647 -6.7971 +v -6.9438 6.4930 -6.7971 +v -7.0316 6.3524 -7.2009 +v -7.0316 6.5211 -7.2009 +v -6.9131 6.5211 -7.2009 +v -6.9131 6.3524 -7.2009 +v -7.0316 7.7709 -7.0675 +v -7.0316 8.3162 -6.2807 +v -6.9131 8.3162 -6.2807 +v -6.9131 7.7709 -7.0675 +v -7.0316 6.5211 -5.3605 +v -7.0316 6.3524 -5.3605 +v -6.9131 6.3524 -5.3605 +v -6.9131 6.5211 -5.3605 +v -7.0316 6.3524 -5.4939 +v -7.0316 6.2936 -6.2807 +v -6.9131 6.2936 -6.2807 +v -6.9131 6.3524 -5.4939 +v -7.1616 6.3524 -7.0675 +v -7.1616 6.4929 -6.7971 +v -7.1616 6.5211 -7.0675 +v -7.0316 7.6647 -6.7971 +v -7.0316 8.0396 -6.2807 +v -7.1616 6.5211 -5.4939 +v -7.1616 6.5039 -5.7644 +v -7.1616 6.3524 -5.4939 +v -7.1616 6.4623 -6.2807 +v -7.1616 6.2936 -6.2807 +v -6.9438 6.5039 -5.7644 +v -6.9438 7.6647 -5.7644 +v -7.0316 7.7709 -5.4939 +v -6.9131 7.7709 -5.4939 +v -7.0316 6.3524 -7.0675 +v -6.9131 6.3524 -7.0675 +v -7.0316 7.6647 -5.7644 +v -7.0316 6.4930 -6.7971 +v -7.0316 6.5039 -5.7644 +v -7.0316 6.4623 -6.2807 +v -7.0316 6.5211 -5.4939 +v -6.9131 6.5211 -5.4939 +v -7.0316 6.5211 -7.0675 +v -6.9131 6.5211 -7.0675 +v -7.1616 6.3524 -7.2009 +v -7.1616 6.5211 -7.2009 +v -7.1616 6.5211 -5.3605 +v -7.1616 6.3524 -5.3605 +v -5.7067 3.0829 -13.9368 +v -0.3334 3.0829 -13.9368 +v -0.3334 3.7395 -10.2128 +v -5.7067 3.7395 -10.2128 +v -0.3334 3.9558 -10.2510 +v -0.3334 3.2991 -13.9749 +v -5.7067 3.2991 -13.9749 +v -5.7067 3.9558 -10.2510 +v -6.7437 -0.0000 -2.8264 +v -6.7437 5.5026 -2.8264 +v -12.6656 2.5635 -2.8264 +v -12.6656 -0.0000 -2.8264 +v -6.7437 -0.0000 -9.5914 +v -12.6656 -0.0000 -9.5914 +v -12.6656 2.5635 -9.5914 +v -6.7437 5.5026 -9.5914 +v 1.8981 6.1673 -1.1123 +v 1.8981 9.7710 -1.1123 +v -0.0020 8.2690 -1.1123 +v -0.0020 6.1673 -1.1123 +v 4.3370 6.1014 -5.3857 +v 4.3370 8.9071 -5.3857 +v 4.3370 8.9071 1.2384 +v 4.3370 6.1014 1.2384 +v -0.5409 6.1014 1.2384 +v -0.5409 8.9071 1.2384 +v -0.5409 8.9071 -5.3857 +v -0.5409 6.1014 -5.3857 +v 3.7981 6.1673 -1.1123 +v 3.7981 8.2690 -1.1123 +v 3.7981 8.2690 1.2384 +v 3.7981 6.1673 1.2384 +v 1.8981 11.5136 1.2384 +v 1.8981 9.7710 1.2384 +v -0.0020 8.2690 1.2384 +v -0.0020 6.1673 1.2384 +v 1.8981 6.1673 1.2384 +v -3.1730 6.7688 -10.1848 +v -2.6566 7.1437 -10.1848 +v -2.6566 5.5664 -10.1848 +v -3.1730 5.5971 -10.1848 +v -3.5768 5.6252 -10.1540 +v -3.5768 5.6252 -10.2725 +v -3.5768 5.4565 -10.2725 +v -3.5768 5.4565 -10.1540 +v -2.6566 7.4203 -10.1540 +v -2.6566 7.4203 -10.2725 +v -3.4434 6.8751 -10.2725 +v -3.4434 6.8751 -10.1540 +v -1.7364 5.4565 -10.1540 +v -1.7364 5.4565 -10.2725 +v -1.7364 5.6252 -10.2725 +v -1.7364 5.6252 -10.1540 +v -2.6566 5.3977 -10.1540 +v -2.6566 5.3977 -10.2725 +v -1.8698 5.4565 -10.2725 +v -1.8698 5.4565 -10.1540 +v -3.4434 5.4565 -10.4025 +v -3.4434 5.6252 -10.4025 +v -3.1730 5.5971 -10.4025 +v -2.6566 7.1437 -10.2725 +v -3.1730 6.7688 -10.2725 +v -1.8698 5.6252 -10.4025 +v -1.8698 5.4565 -10.4025 +v -2.1403 5.6080 -10.4025 +v -2.6566 5.3977 -10.4025 +v -2.6566 5.5664 -10.4025 +v -2.1403 6.7688 -10.1848 +v -2.1403 5.6080 -10.1848 +v -1.8698 6.8751 -10.1540 +v -1.8698 6.8751 -10.2725 +v -3.4434 5.4565 -10.1540 +v -3.4434 5.4565 -10.2725 +v -2.1403 6.7688 -10.2725 +v -3.1730 5.5971 -10.2725 +v -2.1403 5.6080 -10.2725 +v -2.6566 5.5664 -10.2725 +v -1.8698 5.6252 -10.2725 +v -1.8698 5.6252 -10.1540 +v -3.4434 5.6252 -10.2725 +v -3.4434 5.6252 -10.1540 +v -3.5768 5.6252 -10.4025 +v -3.5768 5.4565 -10.4025 +v -1.7364 5.4565 -10.4025 +v -1.7364 5.6252 -10.4025 +v 10.7400 7.6647 -6.7971 +v 10.7400 8.0396 -6.2807 +v 10.7400 6.4623 -6.2807 +v 10.7400 6.4930 -6.7971 +v 10.7092 6.5211 -7.2009 +v 10.8277 6.5211 -7.2009 +v 10.8277 6.3524 -7.2009 +v 10.7092 6.3524 -7.2009 +v 10.7092 8.3162 -6.2807 +v 10.8277 8.3162 -6.2807 +v 10.8277 7.7710 -7.0676 +v 10.7092 7.7710 -7.0676 +v 10.7092 6.3524 -5.3605 +v 10.8277 6.3524 -5.3605 +v 10.8277 6.5211 -5.3605 +v 10.7092 6.5211 -5.3605 +v 10.7092 6.2936 -6.2807 +v 10.8277 6.2936 -6.2807 +v 10.8277 6.3524 -5.4939 +v 10.7092 6.3524 -5.4939 +v 10.9577 6.3524 -7.0676 +v 10.9577 6.5211 -7.0676 +v 10.9577 6.4930 -6.7971 +v 10.8277 8.0396 -6.2807 +v 10.8277 7.6647 -6.7971 +v 10.9577 6.5211 -5.4939 +v 10.9577 6.3524 -5.4939 +v 10.9577 6.5039 -5.7644 +v 10.9577 6.2936 -6.2807 +v 10.9577 6.4623 -6.2807 +v 10.7400 7.6647 -5.7644 +v 10.7400 6.5039 -5.7644 +v 10.7092 7.7710 -5.4939 +v 10.8277 7.7710 -5.4939 +v 10.7092 6.3524 -7.0676 +v 10.8277 6.3524 -7.0676 +v 10.8277 7.6647 -5.7644 +v 10.8277 6.4930 -6.7971 +v 10.8277 6.5039 -5.7644 +v 10.8277 6.4623 -6.2807 +v 10.8277 6.5211 -5.4939 +v 10.7092 6.5211 -5.4939 +v 10.8277 6.5211 -7.0676 +v 10.7092 6.5211 -7.0676 +v 10.9577 6.5211 -7.2009 +v 10.9577 6.3524 -7.2009 +v 10.9577 6.3524 -5.3605 +v 10.9577 6.5211 -5.3605 +v 4.7721 3.0631 -10.1932 +v 4.7721 3.0631 -10.4264 +v 4.5257 3.0631 -10.4264 +v 4.5257 3.0631 -10.1932 +v 4.7721 -0.0000 -10.4264 +v 4.7721 -0.0000 -10.1932 +v 4.5257 -0.0000 -10.4264 +v 4.5257 -0.0000 -10.1932 +v 4.1057 2.8480 -10.5415 +v 6.5122 3.0489 -10.5415 +v 6.5122 3.0489 -10.1932 +v 4.1057 2.8480 -10.1932 +v 4.1057 3.1343 -10.5415 +v 6.5122 3.3352 -10.5415 +v 4.1057 3.1343 -10.1932 +v 6.5122 3.3352 -10.1932 +v 8.9187 3.1343 -10.1932 +v 8.9187 2.8480 -10.1932 +v 8.9187 2.8480 -10.5415 +v 8.9187 3.1343 -10.5415 +v 8.4489 3.0631 -10.1932 +v 8.4489 3.0631 -10.4264 +v 8.2024 3.0631 -10.4264 +v 8.2024 3.0631 -10.1932 +v 8.4489 -0.0000 -10.4264 +v 8.4489 -0.0000 -10.1932 +v 8.2024 -0.0000 -10.4264 +v 8.2024 -0.0000 -10.1932 +v 6.1227 6.7688 -10.1848 +v 6.6390 7.1438 -10.1848 +v 6.6390 5.5664 -10.1848 +v 6.1227 5.5971 -10.1848 +v 5.7188 5.6252 -10.1540 +v 5.7188 5.6252 -10.2725 +v 5.7188 5.4565 -10.2725 +v 5.7188 5.4565 -10.1540 +v 6.6390 7.4203 -10.1540 +v 6.6390 7.4203 -10.2725 +v 5.8522 6.8751 -10.2725 +v 5.8522 6.8751 -10.1540 +v 7.5592 5.4565 -10.1540 +v 7.5592 5.4565 -10.2725 +v 7.5592 5.6252 -10.2725 +v 7.5592 5.6252 -10.1540 +v 6.6390 5.3977 -10.1540 +v 6.6390 5.3977 -10.2725 +v 7.4258 5.4565 -10.2725 +v 7.4258 5.4565 -10.1540 +v 5.8522 5.4565 -10.4026 +v 5.8522 5.6252 -10.4026 +v 6.1227 5.5971 -10.4026 +v 6.6390 7.1438 -10.2725 +v 6.1227 6.7688 -10.2725 +v 7.4258 5.6252 -10.4026 +v 7.4258 5.4565 -10.4026 +v 7.1553 5.6080 -10.4026 +v 6.6390 5.3977 -10.4026 +v 6.6390 5.5664 -10.4026 +v 7.1553 6.7688 -10.1848 +v 7.1553 5.6080 -10.1848 +v 7.4258 6.8751 -10.1540 +v 7.4258 6.8751 -10.2725 +v 5.8522 5.4565 -10.1540 +v 5.8522 5.4565 -10.2725 +v 7.1553 6.7688 -10.2725 +v 6.1227 5.5971 -10.2725 +v 7.1553 5.6080 -10.2725 +v 6.6390 5.5664 -10.2725 +v 7.4258 5.6252 -10.2725 +v 7.4258 5.6252 -10.1540 +v 5.8522 5.6252 -10.2725 +v 5.8522 5.6252 -10.1540 +v 5.7188 5.6252 -10.4025 +v 5.7188 5.4565 -10.4025 +v 7.5592 5.4565 -10.4026 +v 7.5592 5.6252 -10.4026 +v -0.1257 8.5720 1.3493 +v -0.1257 8.1054 1.3493 +v 1.0004 8.9625 1.3394 +v 0.8976 9.3296 1.3394 +v -0.1257 8.1054 0.7798 +v 1.0004 8.9625 0.8269 +v -0.1257 8.5720 0.7798 +v 0.8976 9.3296 0.8269 +v 1.8981 9.3882 1.3493 +v 1.8981 10.1187 1.3493 +v 1.8981 9.3882 0.7798 +v 1.8981 10.1187 0.7798 +v 3.8743 8.5720 1.3493 +v 2.8985 9.3296 1.3393 +v 2.7958 8.9625 1.3393 +v 3.8743 8.1054 1.3493 +v 2.7958 8.9625 0.8269 +v 3.8743 8.1054 0.7798 +v 2.8985 9.3296 0.8269 +v 3.8743 8.5720 0.7798 +v 2.0446 9.7973 1.2384 +v 2.0904 10.0820 2.4593 +v 1.7058 10.0819 2.4593 +v 1.7515 9.7973 1.2384 +v 2.0446 10.1751 1.2384 +v 2.0904 10.4244 2.2498 +v 1.7515 10.1751 1.2384 +v 1.7058 10.4244 2.2498 +v 2.0739 10.7611 3.2159 +v 1.7223 10.7611 3.2159 +v 2.0739 10.7611 2.7627 +v 1.7223 10.7611 2.7627 +v -12.3257 0.0143 -9.8101 +v -12.8953 0.0143 -9.8101 +v -12.8432 1.4775 -9.6989 +v -12.3307 1.4775 -9.6989 +v -12.3257 0.0143 -9.2405 +v -12.3307 1.4775 -9.1865 +v -12.8432 1.4775 -9.1865 +v -12.8953 0.0143 -9.2405 +v -12.8953 2.5418 -9.6505 +v -12.3258 3.0013 -9.6505 +v -12.3258 3.0013 -9.0809 +v -12.8953 2.5418 -9.0809 +v -12.3257 0.0143 -2.6443 +v -12.3307 1.4775 -2.7554 +v -12.8432 1.4775 -2.7554 +v -12.8953 0.0143 -2.6443 +v -12.3257 0.0143 -3.2139 +v -12.3307 1.4775 -3.2679 +v -12.8953 0.0143 -3.2139 +v -12.8432 1.4775 -3.2679 +v -12.3258 3.0013 -2.8039 +v -12.8953 2.5418 -2.8039 +v -12.3258 3.0013 -3.3735 +v -12.8953 2.5418 -3.3735 +v -12.6547 0.4863 -2.8264 +v -12.6547 0.4863 -9.5914 +v -12.7857 0.4863 -9.5914 +v -12.7857 0.4863 -2.8264 +v -12.7857 -0.0000 -9.5914 +v -12.7857 -0.0000 -2.8264 +v -12.6656 0.4863 -9.5780 +v -6.8956 0.4863 -9.5780 +v -6.8956 0.4863 -9.7089 +v -12.6656 0.4863 -9.7089 +v -6.8956 -0.0000 -9.7089 +v -12.6656 -0.0000 -9.7089 +v -6.8956 0.4863 -2.7219 +v -6.8956 0.4863 -2.8528 +v -12.6656 0.4863 -2.8528 +v -12.6656 0.4863 -2.7219 +v -6.8956 -0.0000 -2.7219 +v -12.6656 -0.0000 -2.7219 +v -7.3871 0.3840 -2.7893 +v -7.3871 -0.2451 -2.7893 +v -7.3871 -0.2451 -1.9671 +v -7.3871 0.3840 -1.9671 +v 11.2820 -0.2451 -1.9671 +v 11.2820 -0.2451 -2.7893 +v 11.2820 0.3840 -2.7893 +v 11.2820 0.3840 -1.9671 +v 1.9475 -0.6210 -1.9671 +v 1.9475 0.0080 -1.9671 +v 1.9475 0.0080 -2.7893 +v -5.8918 -1.1745 -2.6535 +v -6.6824 -1.1745 -2.6535 +v -6.6781 -2.2343 -2.4061 +v -5.8875 -2.2343 -2.4061 +v -6.6824 -1.1745 -3.4441 +v -6.6781 -2.2343 -3.1967 +v -5.8918 -1.1745 -3.4441 +v -5.8875 -2.2343 -3.1967 +v -5.8875 -0.0000 -2.4061 +v -6.6781 -0.0000 -2.4061 +v -6.6781 -0.0000 -3.1967 +v -5.8875 -0.0000 -3.1967 +v -2.5347 -1.1745 -2.6535 +v -3.3252 -1.1745 -2.6535 +v -3.3210 -2.2343 -2.4061 +v -2.5304 -2.2343 -2.4061 +v -3.3252 -1.1745 -3.4441 +v -3.3210 -2.2343 -3.1967 +v -2.5347 -1.1745 -3.4441 +v -2.5304 -2.2343 -3.1967 +v -2.5304 -0.0000 -2.4061 +v -3.3210 -0.0000 -2.4061 +v -3.3210 -0.0000 -3.1967 +v -2.5304 -0.0000 -3.1967 +v 0.7326 -1.1745 -2.6535 +v -0.0579 -1.1745 -2.6535 +v -0.0537 -2.2343 -2.4061 +v 0.7369 -2.2343 -2.4061 +v -0.0579 -1.1745 -3.4441 +v -0.0537 -2.2343 -3.1967 +v 0.7326 -1.1745 -3.4441 +v 0.7369 -2.2343 -3.1967 +v 0.7369 -0.0000 -2.4061 +v -0.0537 -0.0000 -2.4061 +v -0.0537 -0.0000 -3.1967 +v 0.7369 -0.0000 -3.1967 +v 3.9780 -1.1745 -2.6535 +v 3.1874 -1.1745 -2.6535 +v 3.1917 -2.2343 -2.4061 +v 3.9823 -2.2343 -2.4061 +v 3.1874 -1.1745 -3.4441 +v 3.1917 -2.2343 -3.1967 +v 3.9780 -1.1745 -3.4441 +v 3.9823 -2.2343 -3.1967 +v 3.9823 -0.0000 -2.4061 +v 3.1917 -0.0000 -2.4061 +v 3.1917 -0.0000 -3.1967 +v 3.9823 -0.0000 -3.1967 +v 7.2583 -1.1745 -2.6535 +v 6.4678 -1.1745 -2.6535 +v 6.4720 -2.2343 -2.4061 +v 7.2626 -2.2343 -2.4061 +v 6.4678 -1.1745 -3.4441 +v 6.4720 -2.2343 -3.1967 +v 7.2583 -1.1745 -3.4441 +v 7.2626 -2.2343 -3.1967 +v 7.2626 -0.0000 -2.4061 +v 6.4720 -0.0000 -2.4061 +v 6.4720 -0.0000 -3.1967 +v 7.2626 -0.0000 -3.1967 +v 10.6465 -1.1745 -2.6535 +v 9.8559 -1.1745 -2.6535 +v 9.8602 -2.2343 -2.4061 +v 10.6508 -2.2343 -2.4061 +v 9.8559 -1.1745 -3.4441 +v 9.8602 -2.2343 -3.1967 +v 10.6465 -1.1745 -3.4441 +v 10.6508 -2.2343 -3.1967 +v 10.6508 -0.0000 -2.4061 +v 9.8602 -0.0000 -2.4061 +v 9.8602 -0.0000 -3.1967 +v 10.6508 -0.0000 -3.1967 +v 0.6510 3.2326 -2.3791 +v 0.5856 4.7686 0.0009 +v -0.1260 4.7686 0.0009 +v -0.1915 3.2326 -2.3791 +v 0.6510 4.1788 -2.3791 +v 0.5856 5.0694 -0.6441 +v -0.1915 4.1788 -2.3791 +v -0.1260 5.0694 -0.6441 +v 0.6510 6.1014 0.9746 +v -0.1915 6.1014 0.9746 +v 0.6510 6.1014 0.1321 +v -0.1915 6.1014 0.1321 +v 3.9760 3.2326 -2.3791 +v 3.9106 4.7686 0.0009 +v 3.1989 4.7686 0.0009 +v 3.1335 3.2326 -2.3791 +v 3.9760 4.1788 -2.3791 +v 3.9106 5.0694 -0.6441 +v 3.1335 4.1788 -2.3791 +v 3.1989 5.0694 -0.6441 +v 3.9760 6.1014 0.9746 +v 3.1335 6.1014 0.9746 +v 3.9760 6.1014 0.1321 +v 3.1335 6.1014 0.1321 +v 2.2664 3.2138 -2.3791 +v 2.2664 3.2138 10.8189 +v 2.5022 2.7597 10.8189 +v 2.5022 2.7597 -2.3791 +v 1.7553 3.2367 -2.3791 +v 1.7553 3.2367 10.8189 +v 1.4799 2.8055 -2.3791 +v 1.4799 2.8055 10.8189 +v 1.7156 2.3514 -2.3791 +v 1.7156 2.3514 10.8189 +v 2.2267 2.3285 -2.3791 +v 2.2267 2.3285 10.8189 +v -1.3164 -0.1528 3.8302 +v -0.9563 -0.5129 3.8301 +v -0.9563 -0.5129 4.4788 +v -1.3164 -0.1528 4.4788 +v 5.2683 5.7118 4.4788 +v 5.2683 5.7118 3.8302 +v 4.9082 6.0719 3.8302 +v 4.9082 6.0719 4.4788 +v -1.6452 3.1171 5.3292 +v -3.0426 3.1798 5.3292 +v -2.8677 3.1720 6.3959 +v -1.6452 3.1171 6.3959 +v -2.8767 2.9720 6.3959 +v -3.0516 2.9799 5.3292 +v -1.6542 2.9172 5.3292 +v -1.6542 2.9172 6.3959 +v -1.6452 3.1171 4.2626 +v -1.6542 2.9172 4.2626 +v -2.8766 2.9720 4.2626 +v -2.8677 3.1720 4.2626 +v 2.1926 7.6130 4.5971 +v 4.5802 6.8570 4.5971 +v 4.5802 6.8570 3.7993 +v 2.1926 7.6130 3.7993 +v 2.1622 6.9376 4.5971 +v 4.2163 6.2872 4.5971 +v 2.1622 6.9376 3.7993 +v 4.2163 6.2872 3.7993 +v 6.2701 5.0084 4.5971 +v 6.2701 5.0084 3.7993 +v 5.6700 4.6970 4.5971 +v 5.6700 4.6970 3.7993 +v 6.8092 2.5626 4.5971 +v 6.8092 2.5626 3.7993 +v 6.1338 2.5929 4.5971 +v 6.1338 2.5929 3.7993 +v 6.0532 0.1749 4.5971 +v 6.0532 0.1749 3.7993 +v 5.4834 0.5389 4.5971 +v 5.4834 0.5389 3.7993 +v 4.2046 -1.5149 4.5971 +v 4.2046 -1.5149 3.7993 +v 3.8931 -0.9148 4.5971 +v 3.8931 -0.9148 3.7993 +v 1.7588 -2.0540 4.5971 +v 1.7588 -2.0540 3.7993 +v 1.7891 -1.3786 4.5971 +v 1.7891 -1.3786 3.7993 +v -0.6289 -1.2980 4.5971 +v -0.6289 -1.2980 3.7993 +v -0.2650 -0.7282 4.5971 +v -0.2650 -0.7282 3.7993 +v -2.3187 0.5506 4.5971 +v -2.3187 0.5506 3.7993 +v -1.7186 0.8620 4.5971 +v -1.7186 0.8620 3.7993 +v -2.8579 2.9964 4.5971 +v -2.8579 2.9964 3.7994 +v -2.1824 2.9661 4.5971 +v -2.1824 2.9661 3.7993 +v -2.1018 5.3841 4.5971 +v -2.1018 5.3841 3.7993 +v -1.5320 5.0201 4.5971 +v -1.5320 5.0201 3.7993 +v -0.2533 7.0739 4.5971 +v -0.2533 7.0739 3.7993 +v 0.0582 6.4738 4.5971 +v 0.0582 6.4738 3.7993 +v 2.1926 7.6130 6.9501 +v 4.5802 6.8570 6.9501 +v 4.5802 6.8570 6.1523 +v 2.1926 7.6130 6.1523 +v 2.1623 6.9376 6.9501 +v 4.2163 6.2872 6.9501 +v 2.1623 6.9376 6.1523 +v 4.2163 6.2872 6.1523 +v 6.2701 5.0084 6.9501 +v 6.2701 5.0084 6.1523 +v 5.6700 4.6970 6.9501 +v 5.6700 4.6970 6.1523 +v 6.8092 2.5626 6.9501 +v 6.8092 2.5626 6.1523 +v 6.1338 2.5929 6.9501 +v 6.1338 2.5929 6.1523 +v 6.0532 0.1749 6.9501 +v 6.0532 0.1749 6.1523 +v 5.4834 0.5389 6.9501 +v 5.4834 0.5389 6.1523 +v 4.2046 -1.5149 6.9501 +v 4.2046 -1.5149 6.1523 +v 3.8931 -0.9148 6.9501 +v 3.8931 -0.9148 6.1523 +v 1.7588 -2.0540 6.9501 +v 1.7588 -2.0540 6.1523 +v 1.7891 -1.3786 6.9501 +v 1.7891 -1.3786 6.1523 +v -0.6289 -1.2980 6.9501 +v -0.6289 -1.2980 6.1523 +v -0.2650 -0.7282 6.9501 +v -0.2650 -0.7282 6.1523 +v -2.3187 0.5506 6.9501 +v -2.3187 0.5506 6.1523 +v -1.7186 0.8620 6.9501 +v -1.7186 0.8620 6.1523 +v -2.8579 2.9964 6.9501 +v -2.8579 2.9964 6.1523 +v -2.1824 2.9661 6.9501 +v -2.1824 2.9661 6.1523 +v -2.1018 5.3841 6.9501 +v -2.1019 5.3841 6.1523 +v -1.5320 5.0201 6.9501 +v -1.5320 5.0201 6.1523 +v -0.2533 7.0739 6.9501 +v -0.2533 7.0739 6.1523 +v 0.0582 6.4738 6.9501 +v 0.0582 6.4738 6.1523 +v -1.2551 4.4490 5.3292 +v -2.5273 5.0306 5.3292 +v -2.3680 4.9578 6.3959 +v -1.2551 4.4490 6.3959 +v -2.4512 4.7757 6.3959 +v -2.6105 4.8486 5.3292 +v -1.3383 4.2669 5.3292 +v -1.3383 4.2669 6.3959 +v -1.2551 4.4490 4.2626 +v -1.3383 4.2669 4.2626 +v -2.4512 4.7757 4.2626 +v -2.3680 4.9578 4.2626 +v 1.5088 1.8799 3.5739 +v 2.5213 1.9253 3.5739 +v 2.5213 1.9253 4.6569 +v 1.5088 1.8799 4.6569 +v 1.7612 2.3664 3.1911 +v 2.2262 2.3872 3.1911 +v 2.9882 2.8249 3.5739 +v 2.9882 2.8249 4.6569 +v 2.4406 2.8004 3.1911 +v 2.4426 3.6791 3.5739 +v 2.4426 3.6791 4.6569 +v 2.1901 3.1926 3.1911 +v 1.4300 3.6337 3.5739 +v 1.4300 3.6337 4.6569 +v 1.7251 3.1718 3.1911 +v 0.9631 2.7341 3.5739 +v 0.9631 2.7341 4.6569 +v 1.5107 2.7586 3.1911 +v -2.4255 3.0341 3.8302 +v -2.4255 2.5248 3.8302 +v -2.4255 2.5248 4.4788 +v -2.4255 3.0341 4.4788 +v 6.3774 2.5248 4.4788 +v 6.3774 2.5248 3.8302 +v 6.3774 3.0342 3.8302 +v 6.3774 3.0342 4.4788 +v -0.9563 6.0719 3.8301 +v -1.3165 5.7118 3.8302 +v -1.3164 5.7118 4.4788 +v -0.9563 6.0719 4.4788 +v 4.9082 -0.5129 4.4788 +v 4.9082 -0.5129 3.8302 +v 5.2683 -0.1528 3.8302 +v 5.2683 -0.1528 4.4788 +v -0.3944 5.5377 5.3292 +v -1.3561 6.5535 5.3292 +v -1.2357 6.4263 6.3959 +v -0.3944 5.5377 6.3959 +v -1.3810 6.2887 6.3959 +v -1.5015 6.4159 5.3292 +v -0.5398 5.4001 5.3292 +v -0.5398 5.4001 6.3959 +v -0.3944 5.5377 4.2625 +v -0.5398 5.4001 4.2625 +v -1.3810 6.2887 4.2625 +v -1.2357 6.4263 4.2625 +v 0.8114 6.2247 5.3292 +v 0.3003 7.5268 5.3292 +v 0.3643 7.3638 6.3959 +v 0.8114 6.2247 6.3959 +v 0.1779 7.2906 6.3959 +v 0.1140 7.4536 5.3292 +v 0.6250 6.1516 5.3292 +v 0.6250 6.1516 6.3959 +v 0.8114 6.2247 4.2625 +v 0.6250 6.1516 4.2625 +v 0.1779 7.2906 4.2625 +v 0.3643 7.3638 4.2625 +v 1.7213 -1.6220 3.8301 +v 2.2306 -1.6220 3.8301 +v 2.2306 -1.6220 4.4788 +v 1.7213 -1.6220 4.4788 +v 2.2306 7.1810 4.4788 +v 2.2306 7.1810 3.8302 +v 1.7213 7.1810 3.8302 +v 1.7213 7.1810 4.4788 +v 5.3781 4.0634 5.3292 +v 6.6616 4.6196 5.3292 +v 6.5009 4.5499 6.3959 +v 5.3781 4.0633 6.3959 +v 6.4213 4.7336 6.3959 +v 6.5820 4.8032 5.3292 +v 5.2985 4.2470 5.3292 +v 5.2985 4.2470 6.3959 +v 5.3781 4.0634 4.2626 +v 5.2985 4.2470 4.2626 +v 6.4213 4.7336 4.2626 +v 6.5009 4.5499 4.2626 +v 2.1867 6.4100 5.3292 +v 2.2006 7.8087 5.3292 +v 2.1989 7.6336 6.3959 +v 2.1867 6.4100 6.3959 +v 1.9987 7.6356 6.3959 +v 2.0005 7.8107 5.3292 +v 1.9866 6.4120 5.3292 +v 1.9866 6.4120 6.3959 +v 2.1867 6.4100 4.2625 +v 1.9866 6.4120 4.2625 +v 1.9987 7.6356 4.2625 +v 2.1989 7.6336 4.2625 +v 3.5314 6.0666 5.3292 +v 4.0682 7.3582 5.3292 +v 4.0010 7.1965 6.3959 +v 3.5314 6.0666 6.3959 +v 3.8162 7.2733 6.3959 +v 3.8834 7.4351 5.3292 +v 3.3466 6.1434 5.3292 +v 3.3465 6.1434 6.3959 +v 3.5314 6.0666 4.2625 +v 3.3466 6.1434 4.2625 +v 3.8162 7.2733 4.2626 +v 4.0010 7.1965 4.2626 +v 4.6494 5.2444 5.3292 +v 5.6311 6.2410 5.3292 +v 5.5082 6.1162 6.3959 +v 4.6494 5.2444 6.3959 +v 5.3656 6.2566 6.3959 +v 5.4885 6.3814 5.3292 +v 4.5069 5.3849 5.3292 +v 4.5069 5.3849 6.3959 +v 4.6494 5.2444 4.2626 +v 4.5069 5.3849 4.2626 +v 5.3656 6.2566 4.2626 +v 5.5082 6.1162 4.2626 +v 1.7213 -1.6220 6.3903 +v 2.2306 -1.6220 6.3903 +v 2.2306 -1.6220 7.0389 +v 1.7213 -1.6220 7.0389 +v 2.2306 7.1810 7.0389 +v 2.2306 7.1810 6.3903 +v 1.7213 7.1810 6.3903 +v 1.7213 7.1810 7.0389 +v -1.3164 -0.1528 6.3903 +v -0.9563 -0.5129 6.3903 +v -0.9563 -0.5129 7.0389 +v -1.3164 -0.1528 7.0389 +v 5.2683 5.7118 7.0390 +v 5.2683 5.7118 6.3903 +v 4.9082 6.0719 6.3903 +v 4.9082 6.0719 7.0389 +v -0.9563 6.0719 6.3903 +v -1.3164 5.7118 6.3903 +v -1.3164 5.7118 7.0389 +v -0.9563 6.0719 7.0389 +v 4.9082 -0.5129 7.0389 +v 4.9082 -0.5129 6.3903 +v 5.2683 -0.1528 6.3903 +v 5.2683 -0.1528 7.0389 +v 1.5088 3.6791 7.3165 +v 2.5213 3.6337 7.3165 +v 2.5213 3.6337 6.2335 +v 1.5088 3.6791 6.2335 +v 1.7612 3.1926 7.6994 +v 2.2262 3.1718 7.6994 +v 2.9883 2.7341 7.3165 +v 2.9882 2.7341 6.2335 +v 2.4407 2.7586 7.6994 +v 2.4426 1.8799 7.3165 +v 2.4426 1.8799 6.2335 +v 2.1901 2.3664 7.6993 +v 1.4301 1.9253 7.3165 +v 1.4300 1.9253 6.2335 +v 1.7251 2.3872 7.6993 +v 0.9631 2.8249 7.3165 +v 0.9631 2.8249 6.2335 +v 1.5107 2.8004 7.6994 +v -2.4255 3.0341 6.3903 +v -2.4255 2.5248 6.3903 +v -2.4255 2.5248 7.0389 +v -2.4255 3.0341 7.0389 +v 6.3774 2.5248 7.0390 +v 6.3774 2.5248 6.3903 +v 6.3774 3.0342 6.3903 +v 6.3774 3.0342 7.0390 +v 3.3775 -0.5761 5.3292 +v 3.9782 -1.8393 5.3292 +v 3.9029 -1.6812 6.3959 +v 3.3775 -0.5761 6.3959 +v 4.0837 -1.5952 6.3959 +v 4.1589 -1.7534 5.3292 +v 3.5582 -0.4901 5.3292 +v 3.5582 -0.4901 6.3959 +v 3.3775 -0.5761 4.2625 +v 3.5582 -0.4901 4.2625 +v 4.0837 -1.5952 4.2625 +v 3.9030 -1.6812 4.2625 +v -1.3290 1.2614 5.3292 +v -2.5705 0.6170 5.3292 +v -2.4150 0.6977 6.3959 +v -1.3290 1.2614 6.3959 +v -2.3228 0.5201 6.3959 +v -2.4783 0.4394 5.3292 +v -1.2368 1.0838 5.3292 +v -1.2368 1.0838 6.3959 +v -1.3290 1.2614 4.2626 +v -1.2368 1.0838 4.2626 +v -2.3228 0.5201 4.2626 +v -2.4150 0.6977 4.2626 +v -0.5196 0.1341 5.3292 +v -1.4294 -0.9285 5.3292 +v -1.3155 -0.7955 6.3959 +v -0.5196 0.1341 6.3959 +v -1.1634 -0.9256 6.3959 +v -1.2773 -1.0587 5.3292 +v -0.3676 0.0039 5.3292 +v -0.3676 0.0039 6.3959 +v -0.5196 0.1341 4.2625 +v -0.3676 0.0039 4.2625 +v -1.1634 -0.9256 4.2625 +v -1.3154 -0.7955 4.2625 +v 4.5324 0.1934 5.3292 +v 5.5626 -0.7529 5.3292 +v 5.4336 -0.6344 6.3959 +v 4.5324 0.1934 6.3959 +v 5.5690 -0.4870 6.3959 +v 5.6980 -0.6055 5.3292 +v 4.6678 0.3408 5.3292 +v 4.6678 0.3408 6.3959 +v 4.5324 0.1934 4.2625 +v 4.6678 0.3408 4.2625 +v 5.5690 -0.4870 4.2625 +v 5.4336 -0.6344 4.2625 +v 10.8807 3.4479 -2.2299 +v 10.3030 3.4479 -2.2299 +v 10.2904 -0.0000 -2.0822 +v 11.0330 -0.0000 -2.0822 +v 10.3030 3.4479 -2.8076 +v 10.2904 -0.0000 -2.8247 +v 10.8807 3.4479 -2.8076 +v 11.0330 -0.0000 -2.8247 +v 11.0330 8.5873 -2.0822 +v 10.2904 8.5873 -2.0822 +v 10.2904 9.1802 -2.8247 +v 11.0330 9.1802 -2.8247 +v 2.0184 -0.8569 5.3292 +v 2.1021 -2.2531 5.3292 +v 2.0916 -2.0783 6.3959 +v 2.0184 -0.8569 6.3959 +v 2.2914 -2.0664 6.3959 +v 2.3019 -2.2412 5.3292 +v 2.2181 -0.8449 5.3292 +v 2.2181 -0.8449 6.3959 +v 2.0184 -0.8569 4.2625 +v 2.2182 -0.8449 4.2625 +v 2.2914 -2.0664 4.2625 +v 2.0916 -2.0783 4.2625 +v 0.6531 -0.6081 5.3292 +v 0.2076 -1.9341 5.3292 +v 0.2634 -1.7680 6.3959 +v 0.6531 -0.6081 6.3959 +v 0.4531 -1.8318 6.3959 +v 0.3973 -1.9978 5.3292 +v 0.8428 -0.6718 5.3292 +v 0.8428 -0.6718 6.3959 +v 0.6531 -0.6081 4.2625 +v 0.8428 -0.6718 4.2625 +v 0.4531 -1.8318 4.2625 +v 0.2634 -1.7680 4.2625 +v 5.3150 1.3395 5.3292 +v 6.6246 0.8480 5.3292 +v 6.4607 0.9096 6.3959 +v 5.3150 1.3395 6.3959 +v 6.5310 1.0969 6.3959 +v 6.6950 1.0354 5.3292 +v 5.3853 1.5269 5.3292 +v 5.3853 1.5269 6.3959 +v 5.3150 1.3395 4.2626 +v 5.3853 1.5269 4.2626 +v 6.5310 1.0969 4.2626 +v 6.4607 0.9096 4.2626 +v 5.6113 2.6953 5.3292 +v 7.0097 2.7302 5.3292 +v 6.8346 2.7258 6.3959 +v 5.6113 2.6953 6.3959 +v 6.8296 2.9259 6.3959 +v 7.0047 2.9303 5.3292 +v 5.6063 2.8954 5.3292 +v 5.6063 2.8954 6.3959 +v 5.6113 2.6953 4.2626 +v 5.6063 2.8954 4.2626 +v 6.8296 2.9259 4.2626 +v 6.8346 2.7258 4.2626 +v 3.9105 6.3911 1.7275 +v 3.9105 5.8571 1.7275 +v 4.5186 5.8571 1.7275 +v 4.5186 6.3911 1.7275 +v 4.5186 5.6880 -0.9886 +v 4.5186 6.2220 -0.9886 +v 3.9105 5.6880 -0.9886 +v 3.9105 6.2220 -0.9886 +v 4.5186 5.8571 -3.7047 +v 4.5186 6.3911 -3.7047 +v 3.9105 5.8571 -3.7047 +v 3.9105 6.3911 -3.7047 +v 3.9168 6.1014 1.3850 +v 4.4864 6.1014 1.3850 +v 4.4343 7.5645 1.2739 +v 3.9218 7.5645 1.2739 +v 3.9168 6.1014 0.8154 +v 3.9218 7.5645 0.7614 +v 4.4343 7.5645 0.7614 +v 4.4864 6.1014 0.8154 +v 4.4864 8.7979 1.3850 +v 3.9168 9.2575 1.3850 +v 3.9168 9.2575 0.8154 +v 4.4864 8.7979 0.8154 +v -0.8180 6.3911 0.8068 +v -0.8180 5.8571 0.8068 +v -0.8180 5.8571 1.4149 +v -0.8180 6.3911 1.4149 +v 4.6141 5.8571 1.4149 +v 4.6141 5.8571 0.8068 +v 4.6141 6.3911 0.8068 +v 4.6141 6.3911 1.4149 +v 1.8981 5.6880 1.4149 +v 1.8981 6.2220 1.4149 +v 1.8981 5.6880 0.8068 +v 1.8981 6.2220 0.8068 +v -0.1207 6.1014 1.3850 +v -0.1257 7.5645 1.2739 +v -0.6382 7.5645 1.2739 +v -0.6903 6.1014 1.3850 +v -0.1207 6.1014 0.8154 +v -0.1257 7.5645 0.7614 +v -0.6903 6.1014 0.8154 +v -0.6382 7.5645 0.7614 +v -0.1207 9.2575 1.3850 +v -0.6903 8.7979 1.3850 +v -0.1207 9.2575 0.8154 +v -0.6903 8.7979 0.8154 +v 10.9958 3.4479 -10.3012 +v 11.1481 0.0000 -10.4490 +v 10.4056 0.0000 -10.4490 +v 10.4182 3.4479 -10.3012 +v 10.4056 0.0000 -9.7064 +v 10.4182 3.4479 -9.7236 +v 11.1481 0.0000 -9.7064 +v 10.9958 3.4479 -9.7236 +v 10.4056 8.5873 -10.4490 +v 11.1481 8.5873 -10.4490 +v 10.4056 9.1802 -9.7064 +v 11.1481 9.1802 -9.7064 +v 10.8526 3.9181 -9.9190 +v 10.8526 3.9181 -2.4672 +v 10.6571 3.9181 -2.4672 +v 10.6571 3.9181 -9.9190 +v 10.8526 4.5472 -9.9190 +v 10.8526 4.5472 -2.4672 +v 10.6571 4.5472 -9.9190 +v 10.6571 4.5472 -2.4672 +v 10.3781 3.9181 -2.2788 +v -6.5928 3.9181 -2.2788 +v -6.5928 3.9181 -2.4743 +v 10.3781 3.9181 -2.4743 +v 10.3781 4.5472 -2.2788 +v -6.5928 4.5471 -2.2788 +v 10.3781 4.5472 -2.4743 +v -6.5928 4.5471 -2.4743 +v -0.7627 6.3911 1.7275 +v -0.7627 5.8571 1.7275 +v -0.1547 5.8571 1.7275 +v -0.1547 6.3911 1.7275 +v -0.1547 5.6880 -0.9886 +v -0.1547 6.2220 -0.9886 +v -0.7627 5.6880 -0.9886 +v -0.7627 6.2220 -0.9886 +v -0.1547 5.8571 -3.7047 +v -0.1547 6.3911 -3.7047 +v -0.7627 5.8571 -3.7047 +v -0.7627 6.3911 -3.7047 +v -9.5780 13.2240 -5.7084 +v -9.5780 13.2240 -6.8530 +v -9.5780 12.0794 -6.8530 +v -9.5780 12.0794 -5.7084 +v -7.0316 12.1154 -5.8837 +v -7.0316 11.4287 -5.8837 +v -7.0316 12.1154 -6.6777 +v -7.0316 11.4287 -6.6777 +v 13.3742 12.0794 -6.8530 +v 13.3742 13.2240 -6.8530 +v 13.3742 13.2240 -5.7084 +v 13.3742 12.0794 -5.7084 +v 10.8277 12.1154 -5.8837 +v 10.8277 11.4287 -5.8837 +v 10.8277 12.1154 -6.6777 +v 10.8277 11.4287 -6.6777 +v 4.5500 0.4863 -10.2550 +v -6.4192 0.4863 -10.2550 +v -6.4192 0.4863 -10.1240 +v 4.5500 0.4863 -10.1240 +v 4.5500 -0.0000 -10.2550 +v -6.4192 -0.0000 -10.2550 +v 8.4124 0.4863 -10.1240 +v 10.6462 0.4863 -10.1240 +v 10.6462 0.4863 -10.2550 +v 8.4124 0.4863 -10.2550 +v 10.6462 0.0000 -10.2550 +v 8.4124 0.0000 -10.2550 +v 10.7255 0.4863 -10.0665 +v 10.7256 0.4863 -2.4950 +v 10.8565 0.4863 -2.4950 +v 10.8565 0.4863 -10.0665 +v 10.8565 -0.0000 -2.4950 +v 10.8565 0.0000 -10.0665 +v -0.5905 1.5860 -13.8366 +v -0.4251 0.0182 -14.0014 +v -0.9883 0.0182 -14.0014 +v -0.9242 1.5860 -13.8366 +v -0.9883 0.0182 -13.5140 +v -0.9242 1.5860 -13.5666 +v -0.4251 0.0182 -13.5140 +v -0.5905 1.5860 -13.5666 +v -0.9320 3.1539 -13.8763 +v -0.5124 3.1539 -13.8763 +v -0.9319 3.1539 -13.5649 +v -0.5124 3.1539 -13.5649 +v -5.5213 1.5860 -13.8366 +v -5.1876 1.5860 -13.8366 +v -5.1235 0.0182 -14.0014 +v -5.6866 0.0182 -14.0014 +v -5.1876 1.5860 -13.5666 +v -5.1235 0.0182 -13.5140 +v -5.5213 1.5860 -13.5666 +v -5.6866 0.0182 -13.5140 +v -5.5994 3.1539 -13.8763 +v -5.1798 3.1539 -13.8763 +v -5.1798 3.1539 -13.5649 +v -5.5994 3.1539 -13.5649 +v -6.8947 3.4479 -10.2905 +v -6.3171 3.4479 -10.2905 +v -6.3044 -0.0000 -10.4383 +v -7.0470 -0.0000 -10.4383 +v -6.3171 3.4479 -9.7129 +v -6.3044 -0.0000 -9.6957 +v -6.8947 3.4479 -9.7129 +v -7.0470 -0.0000 -9.6957 +v -7.0470 8.5873 -10.4383 +v -6.3045 8.5873 -10.4383 +v -6.3045 9.1801 -9.6957 +v -7.0470 9.1801 -9.6957 +v -6.4257 3.9181 -10.2572 +v 10.5452 3.9181 -10.2572 +v 10.5452 3.9181 -10.0617 +v -6.4257 3.9181 -10.0617 +v -6.4257 4.5471 -10.2572 +v 10.5452 4.5472 -10.2572 +v -6.4257 4.5471 -10.0617 +v 10.5452 4.5472 -10.0617 +v -6.9209 3.4479 -2.2090 +v -7.0732 -0.0000 -2.0613 +v -6.3306 -0.0000 -2.0613 +v -6.3433 3.4479 -2.2090 +v -6.3306 -0.0000 -2.8038 +v -6.3433 3.4479 -2.7867 +v -7.0732 -0.0000 -2.8038 +v -6.9209 3.4479 -2.7867 +v -6.3306 8.5873 -2.0613 +v -7.0732 8.5873 -2.0613 +v -6.3306 9.1801 -2.8038 +v -7.0732 9.1801 -2.8038 +v 1.5088 1.8799 10.4382 +v 2.5213 1.9253 10.4382 +v 2.5213 1.9253 11.5212 +v 1.5088 1.8799 11.5212 +v 1.7613 2.3664 10.0553 +v 2.2262 2.3872 10.0553 +v 2.9883 2.8249 10.4382 +v 2.9882 2.8249 11.5212 +v 2.4407 2.8004 10.0553 +v 2.4426 3.6791 10.4382 +v 2.4426 3.6791 11.5212 +v 2.1901 3.1926 10.0553 +v 1.4301 3.6337 10.4382 +v 1.4300 3.6337 11.5212 +v 1.7251 3.1718 10.0553 +v 0.9631 2.7341 10.4382 +v 0.9631 2.7341 11.5212 +v 1.5107 2.7586 10.0553 +v 2.9369 4.0367 13.6746 +v 2.9369 3.7386 10.6560 +v 0.7733 3.7386 10.6560 +v 0.7733 4.0367 13.6746 +v 4.3514 -0.1928 14.0014 +v -0.6387 -0.1928 14.0014 +v 4.5400 -0.1928 10.6142 +v -0.8273 -0.1928 10.6142 +# 1595 vertices + +vn -0.0324 -0.0266 0.9991 +vn -0.0324 -0.0265 0.9991 +vn -0.0324 -0.0266 -0.9991 +vn -0.0324 -0.0265 -0.9991 +vn -0.7683 -0.6401 -0.0000 +vn 0.4444 -0.8958 -0.0000 +vn -0.4452 0.8955 0.0000 +vn -0.4450 0.8955 0.0000 +vn 0.0000 -0.0000 1.0000 +vn 1.0000 0.0000 -0.0000 +vn 1.0000 -0.0000 -0.0000 +vn -0.0000 0.0000 -1.0000 +vn -0.0317 0.7597 0.6495 +vn -0.1354 0.9908 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.0000 0.7816 0.6238 +vn 0.9985 0.0000 -0.0553 +vn 0.9984 0.0000 -0.0557 +vn 0.9984 -0.0000 0.0557 +vn 0.9985 -0.0000 0.0553 +vn -0.1110 0.7057 0.6997 +vn -0.2907 0.9568 0.0000 +vn -0.1110 0.7058 -0.6997 +vn -0.0317 0.7599 -0.6493 +vn -0.0000 0.7816 -0.6237 +vn -0.0557 -0.0000 0.9984 +vn -0.0561 -0.0000 0.9984 +vn -0.0557 0.0000 -0.9984 +vn -0.0561 0.0000 -0.9984 +vn 0.0308 0.7597 0.6495 +vn 0.1345 0.9909 0.0000 +vn -0.9984 0.0000 -0.0557 +vn -0.9985 0.0000 -0.0553 +vn -0.9984 -0.0000 0.0557 +vn -0.9985 -0.0000 0.0553 +vn 0.2911 0.9567 0.0000 +vn 0.1112 0.7057 0.6997 +vn 0.1112 0.7058 -0.6997 +vn 0.0308 0.7599 -0.6493 +vn 0.0565 -0.0000 0.9984 +vn 0.0564 -0.0000 0.9984 +vn 0.0565 0.0000 -0.9984 +vn 0.0564 0.0000 -0.9984 +vn -0.0316 -0.7660 -0.6421 +vn -0.0948 -0.7275 -0.6795 +vn -0.0000 -0.7714 -0.6363 +vn -0.0000 -0.7877 -0.6161 +vn -0.0316 -0.7658 0.6424 +vn 0.0000 -0.7877 0.6161 +vn 0.0000 -0.7714 0.6363 +vn -0.0948 -0.7275 0.6795 +vn 0.0944 -0.7275 -0.6796 +vn 0.1869 -0.6585 -0.7290 +vn 0.1068 -0.7147 -0.6912 +vn 0.0317 -0.7660 -0.6421 +vn -0.1068 -0.7147 -0.6912 +vn -0.1865 -0.6584 -0.7292 +vn 0.0944 -0.7275 0.6796 +vn 0.0317 -0.7658 0.6424 +vn 0.1068 -0.7147 0.6912 +vn 0.1869 -0.6584 0.7291 +vn -0.1864 -0.6584 0.7292 +vn -0.1068 -0.7147 0.6912 +vn -1.0000 -0.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn -0.1637 0.7744 -0.6111 +vn -0.1638 0.7744 -0.6111 +vn -0.1640 0.7747 -0.6107 +vn -0.9784 -0.2067 0.0000 +vn -0.2053 0.9718 -0.1162 +vn -0.1636 0.7743 0.6113 +vn -0.1640 0.7747 0.6107 +vn -0.1637 0.7744 0.6111 +vn -0.1638 0.7743 0.6112 +vn -0.2053 0.9718 0.1162 +vn -0.2053 0.9718 0.1164 +vn -0.1364 0.7797 -0.6111 +vn -0.1362 0.7797 -0.6111 +vn -0.1366 0.7798 -0.6110 +vn -0.1366 0.7797 -0.6111 +vn -0.9851 -0.1720 0.0000 +vn -0.1707 0.9785 -0.1162 +vn -0.1711 0.9784 -0.1161 +vn -0.1364 0.7797 0.6111 +vn -0.1366 0.7797 0.6111 +vn -0.1366 0.7798 0.6110 +vn -0.1360 0.7797 0.6113 +vn -0.1711 0.9784 0.1161 +vn -0.1707 0.9785 0.1162 +vn -0.0956 0.7858 -0.6111 +vn -0.0948 0.7858 -0.6111 +vn -0.0956 0.7859 -0.6110 +vn -0.9927 -0.1209 0.0000 +vn -0.9927 -0.1205 0.0000 +vn -0.1200 0.9860 -0.1161 +vn -0.1196 0.9860 -0.1161 +vn -0.0956 0.7858 0.6111 +vn -0.0956 0.7859 0.6110 +vn -0.0948 0.7857 0.6112 +vn -0.1196 0.9860 0.1163 +vn -0.1200 0.9860 0.1161 +vn -0.1196 0.9860 0.1161 +vn -0.1203 0.9859 -0.1161 +vn -0.0948 0.7859 0.6110 +vn -0.1196 0.9860 0.1160 +vn -0.1203 0.9859 0.1161 +vn -0.0955 0.7858 -0.6111 +vn -0.0955 0.7859 -0.6110 +vn -0.0955 0.7858 0.6111 +vn -0.0422 0.7904 -0.6111 +vn -0.0422 0.7905 -0.6110 +vn -0.9986 -0.0534 0.0000 +vn -0.0534 0.9918 -0.1162 +vn -0.0542 0.9918 -0.1161 +vn -0.0421 0.7904 0.6111 +vn -0.0422 0.7904 0.6111 +vn -0.0422 0.7905 0.6110 +vn -0.0534 0.9918 0.1160 +vn -0.0542 0.9917 0.1163 +vn -0.0534 0.9918 0.1162 +vn 0.9927 -0.1205 -0.0000 +vn 0.9927 -0.1209 -0.0000 +vn 0.0948 0.7858 -0.6111 +vn 0.0955 0.7859 -0.6110 +vn 0.0955 0.7858 -0.6111 +vn 0.0956 0.7858 -0.6111 +vn -0.9927 0.1205 0.0000 +vn -0.9927 0.1209 0.0000 +vn 0.1196 0.9860 -0.1161 +vn 0.1196 0.9861 -0.1158 +vn 0.1203 0.9859 -0.1161 +vn 0.0948 0.7858 0.6111 +vn 0.0956 0.7858 0.6111 +vn 0.0955 0.7858 0.6111 +vn 0.1196 0.9860 0.1161 +vn 0.1196 0.9860 0.1163 +vn 0.1203 0.9859 0.1161 +vn 0.0271 0.7912 -0.6110 +vn 0.0271 0.7911 -0.6111 +vn 0.0263 0.7911 -0.6111 +vn 0.9994 -0.0339 -0.0000 +vn 0.9994 -0.0336 -0.0000 +vn 0.0339 0.9927 -0.1162 +vn 0.9994 -0.0339 0.0004 +vn 0.0271 0.7912 0.6110 +vn 0.0263 0.7911 0.6111 +vn 0.0271 0.7911 0.6111 +vn 0.0339 0.9927 0.1162 +vn 0.0339 0.9927 0.1160 +vn 0.9994 -0.0336 -0.0004 +vn 0.0677 0.7888 -0.6109 +vn 0.0677 0.7886 -0.6112 +vn 0.9963 -0.0858 -0.0000 +vn 0.9963 -0.0854 -0.0000 +vn 0.0850 0.9896 -0.1162 +vn 0.0842 0.9897 -0.1162 +vn 0.0677 0.7888 0.6109 +vn 0.0677 0.7886 0.6112 +vn 0.0677 0.7885 0.6113 +vn 0.0850 0.9896 0.1162 +vn 0.0842 0.9897 0.1160 +vn 0.0947 0.7858 -0.6111 +vn 0.1195 0.9860 -0.1161 +vn 0.0955 0.7859 0.6110 +vn 0.0947 0.7858 0.6112 +vn 0.1195 0.9860 0.1161 +vn 0.1195 0.9860 0.1163 +vn 0.0948 0.7859 -0.6110 +vn 0.0948 0.7859 0.6110 +vn 0.0263 0.7912 -0.6110 +vn 0.0338 0.9927 -0.1162 +vn 0.0331 0.9927 -0.1162 +vn 0.0338 0.9927 0.1162 +vn 0.0339 0.9926 0.1164 +vn 0.0331 0.9927 0.1162 +vn -0.0947 0.7858 -0.6111 +vn 0.9927 0.1205 -0.0000 +vn 0.9927 0.1209 -0.0000 +vn -0.1196 0.9861 -0.1158 +vn -0.1195 0.9861 -0.1158 +vn -0.1195 0.9860 -0.1161 +vn -0.0955 0.7859 0.6110 +vn -0.0947 0.7858 0.6112 +vn -0.1195 0.9860 0.1161 +vn 0.0956 0.7859 -0.6110 +vn 0.1203 0.9860 -0.1158 +vn 0.0956 0.7859 0.6110 +vn 0.1203 0.9859 0.1159 +vn 0.9277 -0.3734 -0.0000 +vn 0.9276 -0.3735 -0.0000 +vn 0.2962 0.7343 -0.6109 +vn 0.2962 0.7340 -0.6112 +vn -0.9277 0.3734 0.0000 +vn -0.9275 0.3738 0.0000 +vn 0.9277 -0.3734 0.0004 +vn 0.9275 -0.3738 0.0004 +vn 0.3708 0.9214 -0.1162 +vn 0.3714 0.9212 -0.1158 +vn 0.3707 0.9215 -0.1158 +vn -0.9276 0.3735 0.0000 +vn 0.2962 0.7343 0.6107 +vn 0.2962 0.7340 0.6112 +vn 0.2962 0.7343 0.6109 +vn 0.9275 -0.3738 -0.0000 +vn 0.9277 -0.3734 -0.0004 +vn 0.3708 0.9214 0.1162 +vn 0.3713 0.9212 0.1163 +vn 0.9927 -0.1205 0.0004 +vn 0.9927 -0.1205 -0.0004 +vn 0.1196 0.9860 0.1160 +vn -0.9567 -0.2911 0.0000 +vn -0.9566 -0.2914 0.0000 +vn -0.2304 0.7572 -0.6111 +vn -0.2304 0.7572 -0.6113 +vn 0.9567 0.2911 -0.0000 +vn -0.2892 0.9503 -0.1158 +vn -0.2895 0.9501 -0.1158 +vn -0.2891 0.9502 -0.1162 +vn 0.9566 0.2914 -0.0000 +vn -0.2304 0.7572 0.6111 +vn -0.2304 0.7572 0.6113 +vn -0.2304 0.7573 0.6110 +vn -0.2891 0.9502 0.1162 +vn -0.2895 0.9501 0.1160 +vn -0.2891 0.9502 0.1163 +vn -0.1640 0.7744 -0.6111 +vn -0.1640 0.7745 -0.6110 +vn -0.9785 -0.2064 0.0000 +vn -0.2048 0.9719 -0.1161 +vn -0.1640 0.7745 0.6110 +vn -0.1637 0.7745 0.6110 +vn -0.1640 0.7743 0.6112 +vn -0.2052 0.9718 0.1159 +vn -0.2048 0.9719 0.1161 +vn -0.6136 0.7897 0.0000 +vn -0.6676 0.7439 -0.0319 +vn -0.0000 0.9769 -0.2139 +vn 0.6676 0.7439 -0.0319 +vn 0.6135 0.7897 0.0000 +vn -0.1835 -0.0000 0.9830 +vn -0.1842 -0.0000 0.9829 +vn 0.1843 -0.0000 0.9829 +vn 0.1842 -0.0000 0.9829 +vn 0.1843 0.0000 -0.9829 +vn 0.1842 0.0000 -0.9829 +vn -0.1835 0.0000 -0.9830 +vn -0.1842 0.0000 -0.9829 +vn -0.6658 -0.7462 -0.0000 +vn -0.6135 -0.7897 -0.0000 +vn -0.6676 -0.7439 0.0319 +vn -0.7092 -0.6886 0.1512 +vn 0.6662 -0.7458 -0.0000 +vn 0.6131 -0.7900 -0.0000 +vn 0.6671 -0.7442 -0.0319 +vn 0.7097 -0.6882 -0.1508 +vn 0.0000 0.9768 0.2143 +vn 0.0000 0.9621 0.2726 +vn -0.7141 0.6975 0.0589 +vn -0.6675 0.7439 0.0323 +vn -0.7141 0.6975 -0.0590 +vn -0.0000 0.9621 -0.2726 +vn 0.7141 0.6975 0.0591 +vn 0.6676 0.7439 0.0323 +vn 0.7141 0.6975 -0.0590 +vn -0.7093 -0.6886 -0.1508 +vn -0.7406 -0.6466 -0.1831 +vn -0.7141 -0.6975 -0.0591 +vn -0.6676 -0.7439 -0.0319 +vn -0.7141 -0.6976 0.0594 +vn -0.7406 -0.6466 0.1831 +vn 0.7097 -0.6882 0.1511 +vn 0.7409 -0.6462 0.1830 +vn 0.7137 -0.6979 0.0594 +vn 0.6671 -0.7442 0.0319 +vn 0.7137 -0.6979 -0.0591 +vn 0.7409 -0.6462 -0.1829 +vn 0.6112 0.7744 -0.1635 +vn 0.6113 0.7743 -0.1635 +vn -0.0000 -0.2068 -0.9784 +vn 0.1166 0.9717 -0.2053 +vn 0.1158 0.9718 -0.2052 +vn 0.1166 0.9717 -0.2054 +vn -0.6112 0.7744 -0.1635 +vn -0.1166 0.9717 -0.2053 +vn -0.1158 0.9718 -0.2052 +vn 0.6112 0.7797 -0.1361 +vn 0.6112 0.7797 -0.1360 +vn -0.0000 -0.1720 -0.9851 +vn 0.1165 0.9784 -0.1710 +vn 0.1158 0.9785 -0.1707 +vn 0.1165 0.9783 -0.1711 +vn -0.0000 -0.1724 -0.9850 +vn -0.6112 0.7797 -0.1361 +vn -0.6112 0.7797 -0.1360 +vn -0.1165 0.9784 -0.1707 +vn -0.1158 0.9784 -0.1711 +vn -0.9962 -0.0225 0.0842 +vn -0.9962 -0.0225 0.0841 +vn -0.6126 0.7606 0.2149 +vn -0.6124 0.7607 0.2152 +vn -0.6128 0.7603 0.2154 +vn 0.0873 -0.2056 0.9747 +vn 0.0872 -0.2060 0.9747 +vn -0.1203 0.9691 0.2155 +vn -0.1203 0.9691 0.2156 +vn -0.1203 0.9690 0.2158 +vn 0.0865 -0.2060 0.9747 +vn 0.0873 -0.2060 0.9747 +vn 0.9962 0.0225 -0.0841 +vn 0.9962 0.0225 -0.0842 +vn 0.9962 0.0225 -0.0846 +vn 0.6052 0.7881 0.1124 +vn 0.6052 0.7881 0.1123 +vn 0.6053 0.7881 0.1124 +vn 0.0865 -0.2056 0.9748 +vn 0.1113 0.9743 0.1959 +vn 0.1120 0.9742 0.1959 +vn 0.1113 0.9744 0.1955 +vn -0.6111 0.7858 0.0955 +vn -0.6111 0.7858 0.0954 +vn 0.0000 -0.1209 0.9927 +vn 0.0000 -0.1205 0.9927 +vn -0.1158 0.9860 0.1200 +vn -0.1165 0.9859 0.1200 +vn 0.6111 0.7858 0.0955 +vn 0.6111 0.7858 0.0954 +vn 0.6111 0.7858 0.0956 +vn 0.1158 0.9860 0.1199 +vn 0.1158 0.9860 0.1200 +vn 0.1165 0.9859 0.1200 +vn 0.6112 0.7744 -0.1636 +vn 0.0000 0.2068 0.9784 +vn 0.1158 0.9718 -0.2053 +vn -0.6112 0.7744 -0.1636 +vn -0.1158 0.9718 -0.2053 +vn -0.1166 0.9717 -0.2054 +vn 0.0000 -0.1202 0.9928 +vn 0.0000 -1.0000 0.0037 +vn 0.0000 -0.9944 0.1060 +vn -0.0000 1.0000 -0.0033 +vn -0.0000 0.9944 -0.1057 +vn 0.0000 -0.9783 0.2071 +vn -0.0000 0.9783 -0.2071 +vn -0.0000 0.8219 -0.5696 +vn 0.0000 -0.9972 0.0744 +vn -0.0000 -1.0000 -0.0000 +vn 0.0000 0.8219 0.5696 +vn -0.0000 -0.9972 -0.0746 +vn 0.0000 -0.8093 0.5874 +vn 0.0000 -0.8091 0.5877 +vn -0.0000 -0.8094 -0.5873 +vn -0.0000 -0.8090 -0.5878 +vn -0.0000 0.9968 -0.0805 +vn -0.0000 0.9968 -0.0801 +vn 0.0000 0.9982 0.0593 +vn 0.0000 0.9983 0.0591 +vn 0.0000 0.9946 0.1034 +vn -0.0000 0.9980 -0.0635 +vn -0.0000 0.9980 -0.0637 +vn -0.0000 -0.9972 -0.0744 +vn 0.0000 -0.9848 0.1736 +vn 0.0000 -0.9849 0.1732 +vn -0.0000 0.9848 -0.1739 +vn -0.0000 0.9848 -0.1736 +vn -0.0000 -0.1737 -0.9848 +vn -1.0000 -0.0000 0.0001 +vn -1.0000 -0.0000 0.0002 +vn -0.0000 1.0000 0.0000 +vn -0.5699 0.8217 0.0000 +vn 0.0752 -0.9972 -0.0000 +vn 0.5699 0.8217 0.0000 +vn -0.0745 -0.9972 -0.0000 +vn 0.5874 -0.8093 -0.0000 +vn -0.5874 -0.8093 -0.0000 +vn -0.0805 0.9968 0.0000 +vn -0.0804 0.9968 0.0000 +vn 0.0594 0.9982 0.0000 +vn 0.1038 0.9946 0.0000 +vn -0.0632 0.9980 0.0000 +vn 0.0745 -0.9972 -0.0000 +vn -0.0752 -0.9972 -0.0000 +vn 0.0827 -0.9966 -0.0000 +vn -0.0834 0.9965 0.0000 +vn -0.0832 -0.9965 -0.0000 +vn 0.0832 0.9965 0.0000 +vn -0.5694 0.8221 0.0000 +vn 0.0744 -0.9972 -0.0000 +vn 0.5696 0.8219 0.0000 +vn -0.0736 -0.9973 -0.0000 +vn 0.5873 -0.8094 -0.0000 +vn -0.5879 -0.8090 -0.0000 +vn 0.0593 0.9982 0.0000 +vn 0.1030 0.9947 0.0000 +vn -0.0631 0.9980 0.0000 +vn 0.0736 -0.9973 -0.0000 +vn -0.0744 -0.9972 -0.0000 +vn 0.0083 0.0002 1.0000 +vn 0.0090 -0.0000 1.0000 +vn 0.0008 -0.0000 1.0000 +vn -0.0030 -0.0004 1.0000 +vn 0.6059 -0.7955 0.0000 +vn 0.6059 -0.7955 -0.0000 +vn 0.5195 -0.8545 -0.0000 +vn 0.5197 -0.8543 -0.0000 +vn 0.0414 0.0013 -0.9991 +vn -0.0143 -0.0015 -0.9999 +vn 0.0038 -0.0002 -1.0000 +vn 0.0421 0.0000 -0.9991 +vn -0.5949 0.8038 0.0000 +vn -0.6071 0.7946 0.0000 +vn 0.0000 -0.0008 1.0000 +vn -0.0000 -0.0027 -1.0000 +vn -0.0097 0.0002 1.0000 +vn 0.0031 -0.0004 1.0000 +vn -0.0008 -0.0000 1.0000 +vn -0.0097 -0.0000 1.0000 +vn -0.6220 -0.7830 0.0000 +vn -0.5287 -0.8488 -0.0000 +vn -0.5285 -0.8489 -0.0000 +vn -0.6220 -0.7830 -0.0000 +vn -0.0045 0.0000 -1.0000 +vn 0.0151 -0.0015 -0.9999 +vn -0.0428 0.0015 -0.9991 +vn -0.0436 0.0000 -0.9990 +vn 0.6165 0.7874 0.0000 +vn 0.6130 0.7901 0.0000 +vn 0.0000 -0.9739 0.2271 +vn 0.0000 -0.8861 0.4635 +vn 0.9991 -0.0050 -0.0421 +vn 0.9990 0.0000 -0.0447 +vn 1.0000 -0.0027 -0.0083 +vn 1.0000 -0.0004 -0.0072 +vn -0.0000 0.9710 -0.2393 +vn -0.0000 0.9163 -0.4005 +vn -0.9991 -0.0050 -0.0418 +vn -1.0000 -0.0004 -0.0072 +vn -1.0000 -0.0027 -0.0083 +vn -0.9990 0.0000 -0.0447 +vn 0.0000 -0.7442 0.6680 +vn 0.9997 0.0221 0.0049 +vn 0.9997 0.0244 -0.0000 +vn -0.0000 0.8358 -0.5490 +vn -0.9997 0.0244 0.0000 +vn -0.9997 0.0221 0.0049 +vn -0.0000 0.0757 -0.9971 +vn 1.0000 0.0034 -0.0000 +vn 0.0000 -0.0369 0.9993 +vn -0.9994 0.0356 0.0000 +vn -0.0158 0.0371 -0.9992 +vn 1.0000 -0.0032 -0.0000 +vn 0.0342 -0.0806 0.9962 +vn -0.9988 -0.0490 0.0000 +vn 0.0000 0.0757 0.9971 +vn -0.0000 -0.0369 -0.9993 +vn -0.0158 0.0371 0.9992 +vn 0.0342 -0.0806 -0.9962 +vn 0.0402 0.9992 0.0000 +vn -0.0402 0.9992 0.0000 +vn 0.0000 0.2273 0.9738 +vn -1.0000 -0.0040 0.0000 +vn -0.0000 -0.2273 -0.9738 +vn 1.0000 0.0040 -0.0000 +vn 0.0000 -0.2061 0.9785 +vn -1.0000 0.0036 0.0000 +vn -0.0000 0.2061 -0.9785 +vn 1.0000 -0.0036 -0.0000 +vn 0.0000 -0.8402 0.5423 +vn 0.9996 0.0126 0.0243 +vn -0.0000 0.8896 -0.4567 +vn -0.9996 0.0126 0.0244 +vn 0.0000 -0.5899 0.8075 +vn 0.9988 -0.0481 -0.0097 +vn -0.0000 0.6011 -0.7992 +vn -0.9988 -0.0481 -0.0097 +vn 0.9996 0.0126 0.0244 +vn -0.9996 0.0126 0.0243 +vn 0.8876 0.4607 0.0000 +vn 0.0448 0.9990 0.0000 +vn -0.8427 0.5383 0.0000 +vn -0.8876 -0.4607 -0.0000 +vn -0.0448 -0.9990 -0.0000 +vn 0.8427 -0.5383 -0.0000 +vn -0.7071 -0.7071 0.0000 +vn 0.7071 0.7071 -0.0000 +vn -0.0000 -0.0000 1.0000 +vn 0.7071 -0.7071 -0.0000 +vn -0.7071 0.7071 0.0000 +vn 0.0448 0.9990 -0.0000 +vn -0.9858 0.0443 0.1620 +vn -0.9858 0.0442 -0.1620 +vn 0.3019 0.9534 -0.0000 +vn -0.3019 -0.9534 0.0000 +vn 0.0000 -0.0000 -1.0000 +vn 0.7381 0.6747 0.0000 +vn -0.0000 0.0000 1.0000 +vn -0.7381 -0.6747 -0.0000 +vn 0.9766 0.2153 0.0000 +vn -0.9766 -0.2153 -0.0000 +vn 0.9534 -0.3019 0.0000 +vn -0.9534 0.3018 -0.0000 +vn 0.6747 -0.7381 -0.0000 +vn 0.0000 0.0000 1.0000 +vn -0.6747 0.7381 -0.0000 +vn 0.0000 0.0000 -1.0000 +vn 0.2153 -0.9766 0.0000 +vn -0.2153 0.9766 -0.0000 +vn -0.3019 -0.9534 -0.0000 +vn 0.3019 0.9534 0.0000 +vn -0.0000 -0.0000 -1.0000 +vn -0.9766 -0.2153 0.0000 +vn 0.9766 0.2153 -0.0000 +vn -0.9534 0.3019 -0.0000 +vn 0.6747 -0.7381 0.0000 +vn -0.2153 0.9766 0.0000 +vn 0.7381 0.6747 -0.0000 +vn -0.7381 -0.6747 0.0000 +vn 0.9534 -0.3019 -0.0000 +vn -0.9534 0.3019 0.0000 +vn -0.6747 0.7381 0.0000 +vn 0.2153 -0.9766 -0.0000 +vn 0.4158 0.9095 -0.0000 +vn -0.4158 -0.9095 -0.0000 +vn -0.8974 0.4104 0.1620 +vn 0.4158 0.9095 0.0000 +vn -0.8974 0.4103 -0.1621 +vn 0.0448 -0.9990 -0.0000 +vn 0.0281 -0.6272 -0.7784 +vn 0.8876 -0.4607 0.0000 +vn 0.5572 -0.2892 -0.7784 +vn 0.8427 0.5383 0.0000 +vn 0.5291 0.3380 -0.7784 +vn -0.0448 0.9990 0.0000 +vn -0.0281 0.6272 -0.7784 +vn -0.8876 0.4607 -0.0000 +vn -0.5572 0.2892 -0.7784 +vn -0.8427 -0.5383 -0.0000 +vn -0.5291 -0.3380 -0.7784 +vn 0.0000 -1.0000 -0.0000 +vn 0.7262 0.6875 -0.0000 +vn -0.7262 -0.6875 0.0000 +vn -0.6784 0.7166 0.1620 +vn 0.7262 0.6875 0.0000 +vn -0.7262 -0.6875 -0.0000 +vn -0.6784 0.7166 -0.1620 +vn 0.9309 0.3654 -0.0000 +vn -0.9309 -0.3654 -0.0000 +vn -0.3605 0.9186 0.1620 +vn 0.9309 0.3654 0.0000 +vn -0.9309 -0.3654 0.0000 +vn -0.3605 0.9186 -0.1620 +vn 0.0000 -1.0000 0.0000 +vn 0.3976 -0.9175 -0.0000 +vn -0.3976 0.9175 -0.0000 +vn 0.9054 0.3924 0.1620 +vn 0.3976 -0.9175 0.0000 +vn -0.3976 0.9175 0.0000 +vn 0.9054 0.3924 -0.1620 +vn 1.0000 -0.0100 0.0000 +vn -1.0000 0.0099 -0.0000 +vn 0.0098 0.9867 0.1620 +vn 1.0000 -0.0100 -0.0000 +vn -1.0000 0.0099 0.0000 +vn 0.0098 0.9867 -0.1620 +vn 0.9234 -0.3838 0.0000 +vn -0.9234 0.3838 -0.0000 +vn 0.3788 0.9112 0.1620 +vn 0.9234 -0.3838 -0.0000 +vn 0.3787 0.9112 -0.1620 +vn 0.7124 -0.7018 0.0000 +vn -0.7124 0.7018 0.0000 +vn 0.6925 0.7030 0.1620 +vn -0.7124 0.7018 -0.0000 +vn 0.6925 0.7030 -0.1620 +vn 0.0281 0.6272 0.7784 +vn 0.8876 0.4607 -0.0000 +vn 0.5572 0.2892 0.7784 +vn 0.5291 -0.3380 0.7784 +vn -0.0448 -0.9990 0.0000 +vn -0.0281 -0.6272 0.7784 +vn -0.8876 -0.4607 0.0000 +vn -0.5572 -0.2892 0.7784 +vn -0.5291 0.3380 0.7784 +vn -0.9031 -0.4294 -0.0000 +vn 0.9031 0.4294 0.0000 +vn 0.4238 -0.8912 0.1620 +vn 0.9031 0.4294 -0.0000 +vn 0.4238 -0.8912 -0.1620 +vn -0.4607 0.8876 0.0000 +vn 0.4607 -0.8876 -0.0000 +vn -0.8758 -0.4546 0.1620 +vn -0.4607 0.8876 -0.0000 +vn 0.4607 -0.8876 0.0000 +vn -0.8758 -0.4546 -0.1620 +vn -0.7596 0.6504 -0.0000 +vn 0.7596 -0.6504 0.0000 +vn -0.6417 -0.7496 0.1620 +vn -0.6418 -0.7496 -0.1620 +vn -0.6765 -0.7365 -0.0000 +vn 0.6765 0.7365 0.0000 +vn 0.7267 -0.6676 0.1620 +vn -0.6765 -0.7365 0.0000 +vn 0.6765 0.7365 -0.0000 +vn 0.7267 -0.6676 -0.1620 +vn 0.0000 0.0428 0.9991 +vn -1.0000 0.0037 0.0000 +vn -0.0000 0.0050 -1.0000 +vn 0.9990 0.0441 -0.0000 +vn 0.0000 -0.0287 0.9996 +vn -1.0000 -0.0023 -0.0010 +vn -0.0000 -0.0030 -1.0000 +vn 0.9995 -0.0278 -0.0125 +vn -0.9982 -0.0598 0.0000 +vn 0.9982 0.0599 0.0000 +vn 0.0590 -0.9850 0.1620 +vn -0.9982 -0.0598 -0.0000 +vn 0.9982 0.0598 0.0000 +vn 0.0591 -0.9850 -0.1620 +vn -0.9479 0.3184 0.0000 +vn 0.9479 -0.3185 0.0000 +vn -0.3143 -0.9354 0.1620 +vn -0.9479 0.3184 -0.0000 +vn 0.9479 -0.3185 -0.0000 +vn -0.3143 -0.9354 -0.1620 +vn -0.3513 -0.9363 0.0000 +vn 0.3513 0.9363 0.0000 +vn 0.9239 -0.3467 0.1620 +vn -0.3513 -0.9363 -0.0000 +vn 0.3513 0.9363 -0.0000 +vn 0.9239 -0.3467 -0.1620 +vn 0.0250 -0.9997 -0.0000 +vn -0.0250 0.9997 -0.0000 +vn 0.9865 0.0247 0.1620 +vn -0.0250 0.9997 0.0000 +vn 0.9865 0.0246 -0.1620 +vn 0.0000 -0.9981 0.0621 +vn -0.0000 0.9981 -0.0621 +vn 0.0000 -0.9981 -0.0621 +vn -0.0000 0.9981 0.0621 +vn -1.0000 0.0034 0.0000 +vn 0.9994 0.0356 -0.0000 +vn -0.0319 -0.0752 0.9967 +vn -1.0000 -0.0029 0.0000 +vn 0.0156 0.0366 -0.9992 +vn 0.9991 -0.0423 -0.0000 +vn -0.0621 -0.9981 -0.0000 +vn 0.0621 0.9981 0.0000 +vn 0.0621 -0.9981 -0.0000 +vn -0.0621 0.9981 0.0000 +vn 0.0319 -0.0752 0.9967 +vn 1.0000 -0.0029 -0.0000 +vn -0.0156 0.0366 -0.9992 +vn -0.9991 -0.0423 0.0000 +vn -0.0000 0.0428 -0.9991 +vn 0.0000 0.0050 1.0000 +vn -0.0000 -0.0287 -0.9996 +vn -1.0000 -0.0023 0.0010 +vn 0.0000 -0.0030 1.0000 +vn 0.9995 -0.0278 0.0125 +vn -0.0000 1.0000 -0.0000 +vn -0.0000 -0.9981 -0.0621 +vn 0.0000 0.9981 0.0621 +vn 0.0687 -0.0000 0.9976 +vn 0.3992 0.9169 0.0000 +vn 0.0687 -0.0000 -0.9976 +vn -0.2476 -0.9689 0.0000 +vn -0.0687 0.0000 0.9976 +vn -0.3992 0.9169 0.0000 +vn -0.0687 -0.0000 -0.9976 +vn 0.2476 -0.9689 -0.0000 +vn -0.0000 0.1045 -0.9945 +vn -0.9992 0.0409 0.0000 +vn 0.0000 0.0335 0.9994 +vn 0.9945 0.1049 -0.0000 +vn -0.0000 -0.0253 -0.9997 +vn -1.0000 -0.0049 0.0000 +vn 0.0000 -0.0011 1.0000 +vn 0.9988 -0.0497 -0.0000 +vn 0.9992 0.0409 -0.0000 +vn -0.9945 0.1049 0.0000 +vn 1.0000 -0.0049 -0.0000 +vn -0.9988 -0.0497 0.0000 +vn 1.0000 0.0037 -0.0000 +vn -0.9990 0.0441 0.0000 +vn 1.0000 -0.0023 0.0010 +vn -0.9995 -0.0278 0.0125 +vn 1.0000 -0.0023 -0.0010 +vn -0.9995 -0.0278 -0.0125 +vn -0.8427 -0.5383 0.0000 +vn -0.0000 0.9952 -0.0983 +vn -0.0000 0.0770 0.9970 +vn 0.9377 0.3472 0.0115 +vn 0.0000 0.0106 -0.9999 +vn -0.9379 0.3466 0.0115 +# 693 vertex normals + +vt 0.1884 0.3161 0.0000 +vt 0.1688 0.2372 0.0000 +vt 0.1720 0.2371 0.0000 +vt 0.1916 0.3161 0.0000 +vt 0.1897 0.3947 0.0000 +vt 0.1929 0.3947 0.0000 +vt 0.1761 0.4742 0.0000 +vt 0.1729 0.4743 0.0000 +vt 0.8659 0.5518 0.0000 +vt 0.8811 0.5518 0.0000 +vt 0.2678 0.4000 0.0000 +vt 0.3731 0.4000 0.0000 +vt 0.3775 0.5142 0.0000 +vt 0.3625 0.5142 0.0000 +vt 0.2785 0.5142 0.0000 +vt 0.2634 0.5142 0.0000 +vt 0.8659 0.7423 0.0000 +vt 0.8811 0.7423 0.0000 +vt 0.2378 0.6247 0.0000 +vt 0.2378 0.7564 0.0000 +vt 0.0073 0.7564 0.0000 +vt 0.0073 0.6247 0.0000 +vt 0.3222 0.6253 0.0000 +vt 0.3222 0.8615 0.0000 +vt 0.3859 0.7813 0.0000 +vt 0.3859 0.6253 0.0000 +vt 0.3977 0.6216 0.0000 +vt 0.3977 0.7587 0.0000 +vt 0.6692 0.7587 0.0000 +vt 0.6692 0.6216 0.0000 +vt 0.2584 0.6253 0.0000 +vt 0.2584 0.7813 0.0000 +vt 0.6393 0.8948 0.0000 +vt 0.6603 0.9912 0.0000 +vt 0.5682 0.9915 0.0000 +vt 0.5679 0.8988 0.0000 +vt 0.4652 0.3844 0.0000 +vt 0.3951 0.3844 0.0000 +vt 0.3951 0.3767 0.0000 +vt 0.4652 0.3767 0.0000 +vt 0.5293 0.8048 0.0000 +vt 0.6002 0.8912 0.0000 +vt 0.6002 0.8852 0.0000 +vt 0.5293 0.7988 0.0000 +vt 0.6712 0.8048 0.0000 +vt 0.6712 0.7988 0.0000 +vt 0.7279 0.8770 0.0000 +vt 0.7512 0.9909 0.0000 +vt 0.0986 0.9914 0.0000 +vt 0.0076 0.9910 0.0000 +vt 0.0312 0.8770 0.0000 +vt 0.1198 0.8951 0.0000 +vt 0.1907 0.9919 0.0000 +vt 0.1911 0.8992 0.0000 +vt 0.5509 0.3767 0.0000 +vt 0.5509 0.3844 0.0000 +vt 0.3047 0.3948 0.0000 +vt 0.2353 0.3943 0.0000 +vt 0.2353 0.3891 0.0000 +vt 0.3047 0.3895 0.0000 +vt 0.3615 0.3951 0.0000 +vt 0.3615 0.3898 0.0000 +vt 0.4965 0.8953 0.0000 +vt 0.4761 0.9918 0.0000 +vt 0.3250 0.3844 0.0000 +vt 0.3250 0.3767 0.0000 +vt 0.3852 0.9921 0.0000 +vt 0.4078 0.8780 0.0000 +vt 0.3512 0.8786 0.0000 +vt 0.3737 0.9928 0.0000 +vt 0.2827 0.9924 0.0000 +vt 0.2625 0.8958 0.0000 +vt 0.2393 0.3844 0.0000 +vt 0.2393 0.3767 0.0000 +vt 0.4877 0.3906 0.0000 +vt 0.4876 0.3958 0.0000 +vt 0.4182 0.3954 0.0000 +vt 0.4182 0.3902 0.0000 +vt 0.1962 0.8161 0.0000 +vt 0.2250 0.8102 0.0000 +vt 0.2249 0.8378 0.0000 +vt 0.1972 0.8377 0.0000 +vt 0.2537 0.8163 0.0000 +vt 0.2525 0.8379 0.0000 +vt 0.2248 0.8654 0.0000 +vt 0.2247 0.8925 0.0000 +vt 0.1909 0.8859 0.0000 +vt 0.1961 0.8592 0.0000 +vt 0.1913 0.7894 0.0000 +vt 0.2251 0.7831 0.0000 +vt 0.2535 0.8594 0.0000 +vt 0.2585 0.8862 0.0000 +vt 0.2588 0.7896 0.0000 +vt 0.7429 0.6168 0.0000 +vt 0.7429 0.8534 0.0000 +vt 0.6776 0.7729 0.0000 +vt 0.6776 0.6168 0.0000 +vt 0.8082 0.6168 0.0000 +vt 0.8082 0.7729 0.0000 +vt 0.9227 0.9895 0.0000 +vt 0.9227 0.9512 0.0000 +vt 0.9293 0.9512 0.0000 +vt 0.9293 0.9895 0.0000 +vt 0.9004 0.9895 0.0000 +vt 0.9005 0.9511 0.0000 +vt 0.9267 0.9948 0.0000 +vt 0.9044 0.9948 0.0000 +vt 0.8966 0.9511 0.0000 +vt 0.8966 0.9894 0.0000 +vt 0.8966 0.9959 0.0000 +vt 0.9005 0.9962 0.0000 +vt 0.8639 0.9512 0.0000 +vt 0.8705 0.9512 0.0000 +vt 0.8705 0.9895 0.0000 +vt 0.8639 0.9896 0.0000 +vt 0.8928 0.9511 0.0000 +vt 0.8928 0.9895 0.0000 +vt 0.8888 0.9948 0.0000 +vt 0.8665 0.9948 0.0000 +vt 0.8927 0.9962 0.0000 +vt 0.9864 0.9556 0.0000 +vt 0.9864 0.9896 0.0000 +vt 0.9923 0.9896 0.0000 +vt 0.9923 0.9556 0.0000 +vt 0.9699 0.9941 0.0000 +vt 0.9899 0.9944 0.0000 +vt 0.9668 0.9894 0.0000 +vt 0.9668 0.9558 0.0000 +vt 0.9699 0.9511 0.0000 +vt 0.9899 0.9508 0.0000 +vt 0.9636 0.9900 0.0000 +vt 0.9666 0.9954 0.0000 +vt 0.9636 0.9552 0.0000 +vt 0.9666 0.9497 0.0000 +vt 0.9349 0.9896 0.0000 +vt 0.9408 0.9896 0.0000 +vt 0.9408 0.9556 0.0000 +vt 0.9349 0.9556 0.0000 +vt 0.9373 0.9944 0.0000 +vt 0.9573 0.9941 0.0000 +vt 0.9604 0.9894 0.0000 +vt 0.9604 0.9558 0.0000 +vt 0.9573 0.9511 0.0000 +vt 0.9373 0.9508 0.0000 +vt 0.9606 0.9954 0.0000 +vt 0.9606 0.9497 0.0000 +vt 0.1239 0.8661 0.0000 +vt 0.1267 0.7769 0.0000 +vt 0.0818 0.7722 0.0000 +vt 0.0642 0.8658 0.0000 +vt 0.8811 0.6471 0.0000 +vt 0.8811 0.5994 0.0000 +vt 0.8735 0.7423 0.0000 +vt 0.8659 0.6471 0.0000 +vt 0.8659 0.6947 0.0000 +vt 0.8735 0.6471 0.0000 +vt 0.8735 0.5994 0.0000 +vt 0.8735 0.6947 0.0000 +vt 0.1822 0.8667 0.0000 +vt 0.1730 0.7754 0.0000 +vt 0.0351 0.7642 0.0000 +vt 0.0061 0.8654 0.0000 +vt 0.8811 0.6947 0.0000 +vt 0.8659 0.5994 0.0000 +vt 0.8735 0.5518 0.0000 +vt 0.6444 0.2297 0.0000 +vt 0.6444 0.2727 0.0000 +vt 0.5991 0.2727 0.0000 +vt 0.5991 0.2297 0.0000 +vt 0.4953 0.2059 0.0000 +vt 0.4953 0.0967 0.0000 +vt 0.4666 0.0967 0.0000 +vt 0.4666 0.2059 0.0000 +vt 0.5046 0.2222 0.0000 +vt 0.5145 0.1045 0.0000 +vt 0.5422 0.1069 0.0000 +vt 0.5323 0.2246 0.0000 +vt 0.4953 0.0054 0.0000 +vt 0.4666 0.0054 0.0000 +vt 0.5025 0.0043 0.0000 +vt 0.5302 0.0067 0.0000 +vt 0.9428 0.4005 0.0000 +vt 0.9431 0.4547 0.0000 +vt 0.9608 0.4418 0.0000 +vt 0.9606 0.4015 0.0000 +vt 0.9778 0.3925 0.0000 +vt 0.9778 0.4048 0.0000 +vt 0.9864 0.4048 0.0000 +vt 0.9864 0.3925 0.0000 +vt 0.8648 0.4175 0.0000 +vt 0.8648 0.4561 0.0000 +vt 0.8691 0.4561 0.0000 +vt 0.8691 0.4175 0.0000 +vt 0.9700 0.3925 0.0000 +vt 0.9700 0.4048 0.0000 +vt 0.9875 0.3622 0.0000 +vt 0.9713 0.3620 0.0000 +vt 0.9713 0.3644 0.0000 +vt 0.9874 0.3646 0.0000 +vt 0.9862 0.3834 0.0000 +vt 0.9757 0.3888 0.0000 +vt 0.9862 0.3899 0.0000 +vt 0.9623 0.4520 0.0000 +vt 0.9428 0.4662 0.0000 +vt 0.9428 0.4766 0.0000 +vt 0.9725 0.4560 0.0000 +vt 0.9252 0.3899 0.0000 +vt 0.9356 0.3892 0.0000 +vt 0.9252 0.3834 0.0000 +vt 0.9557 0.3876 0.0000 +vt 0.9557 0.3811 0.0000 +vt 0.9251 0.4021 0.0000 +vt 0.9253 0.4419 0.0000 +vt 0.8648 0.4948 0.0000 +vt 0.8691 0.4948 0.0000 +vt 0.9551 0.3618 0.0000 +vt 0.9551 0.3641 0.0000 +vt 0.9233 0.4520 0.0000 +vt 0.9131 0.4560 0.0000 +vt 0.8751 0.3692 0.0000 +vt 0.8751 0.4273 0.0000 +vt 0.8790 0.4273 0.0000 +vt 0.8790 0.3692 0.0000 +vt 0.8751 0.4589 0.0000 +vt 0.8790 0.4589 0.0000 +vt 0.8751 0.4906 0.0000 +vt 0.8790 0.4906 0.0000 +vt 0.8751 0.5481 0.0000 +vt 0.8790 0.5481 0.0000 +vt 0.9280 0.3763 0.0000 +vt 0.9513 0.3758 0.0000 +vt 0.9513 0.3736 0.0000 +vt 0.9279 0.3740 0.0000 +vt 0.9746 0.3753 0.0000 +vt 0.9746 0.3731 0.0000 +vt 0.9131 0.4088 0.0000 +vt 0.9233 0.4082 0.0000 +vt 0.8691 0.5453 0.0000 +vt 0.8648 0.5453 0.0000 +vt 0.8648 0.3670 0.0000 +vt 0.8691 0.3670 0.0000 +vt 0.9725 0.4088 0.0000 +vt 0.9623 0.4078 0.0000 +vt 0.9868 0.3695 0.0000 +vt 0.9745 0.3698 0.0000 +vt 0.9868 0.3728 0.0000 +vt 0.9512 0.3703 0.0000 +vt 0.9278 0.3707 0.0000 +vt 0.9156 0.3709 0.0000 +vt 0.9157 0.3743 0.0000 +vt 0.9875 0.3597 0.0000 +vt 0.9713 0.3594 0.0000 +vt 0.9552 0.3592 0.0000 +vt 0.9929 0.3757 0.0000 +vt 0.9929 0.3727 0.0000 +vt 0.9869 0.3759 0.0000 +vt 0.9928 0.3694 0.0000 +vt 0.9914 0.3899 0.0000 +vt 0.9914 0.3834 0.0000 +vt 0.9524 0.3592 0.0000 +vt 0.9524 0.3617 0.0000 +vt 0.9524 0.3641 0.0000 +vt 0.9902 0.3646 0.0000 +vt 0.9902 0.3623 0.0000 +vt 0.9902 0.3597 0.0000 +vt 0.9200 0.3834 0.0000 +vt 0.9200 0.3899 0.0000 +vt 0.9096 0.3711 0.0000 +vt 0.9097 0.3744 0.0000 +vt 0.9097 0.3774 0.0000 +vt 0.9157 0.3773 0.0000 +vt 0.1289 0.3537 0.0000 +vt 0.0137 0.3537 0.0000 +vt 0.0137 0.4382 0.0000 +vt 0.1289 0.4382 0.0000 +vt 0.4766 0.4518 0.0000 +vt 0.4766 0.4572 0.0000 +vt 0.3830 0.4573 0.0000 +vt 0.3830 0.4518 0.0000 +vt 0.6096 0.4518 0.0000 +vt 0.6096 0.4572 0.0000 +vt 0.7033 0.4518 0.0000 +vt 0.7033 0.4572 0.0000 +vt 0.5240 0.7648 0.0000 +vt 0.5240 0.8937 0.0000 +vt 0.3951 0.8248 0.0000 +vt 0.3951 0.7648 0.0000 +vt 0.1505 0.2812 0.0000 +vt 0.1505 0.3422 0.0000 +vt 0.0082 0.3422 0.0000 +vt 0.0082 0.2812 0.0000 +vt 0.0716 0.4485 0.0000 +vt 0.0716 0.5484 0.0000 +vt 0.0217 0.5068 0.0000 +vt 0.0217 0.4485 0.0000 +vt 0.8234 0.8593 0.0000 +vt 0.8234 0.9411 0.0000 +vt 0.9925 0.9411 0.0000 +vt 0.9925 0.8593 0.0000 +vt 0.1215 0.4485 0.0000 +vt 0.1215 0.5068 0.0000 +vt 0.8901 0.5180 0.0000 +vt 0.8901 0.7490 0.0000 +vt 0.9156 0.6965 0.0000 +vt 0.9156 0.5234 0.0000 +vt 0.2486 0.4756 0.0000 +vt 0.1896 0.5421 0.0000 +vt 0.1896 0.4976 0.0000 +vt 0.2355 0.4593 0.0000 +vt 0.1306 0.4756 0.0000 +vt 0.1436 0.4593 0.0000 +vt 0.6350 0.2846 0.0000 +vt 0.6350 0.3431 0.0000 +vt 0.5881 0.3431 0.0000 +vt 0.5881 0.2846 0.0000 +vt 0.6820 0.2846 0.0000 +vt 0.6820 0.3431 0.0000 +vt 0.9915 0.8501 0.0000 +vt 0.8954 0.8501 0.0000 +vt 0.8954 0.7507 0.0000 +vt 0.9915 0.7507 0.0000 +vt 0.3786 0.1451 0.0000 +vt 0.3786 0.3326 0.0000 +vt 0.3891 0.3326 0.0000 +vt 0.3891 0.1451 0.0000 +vt 0.7667 0.3346 0.0000 +vt 0.7673 0.4164 0.0000 +vt 0.7555 0.4165 0.0000 +vt 0.7548 0.3347 0.0000 +vt 0.4133 0.1416 0.0000 +vt 0.4006 0.2464 0.0000 +vt 0.4186 0.2464 0.0000 +vt 0.4313 0.1416 0.0000 +vt 0.2607 0.1423 0.0000 +vt 0.2607 0.2438 0.0000 +vt 0.2461 0.2438 0.0000 +vt 0.2461 0.1423 0.0000 +vt 0.2607 0.1303 0.0000 +vt 0.2461 0.1303 0.0000 +vt 0.2607 0.3453 0.0000 +vt 0.2607 0.3573 0.0000 +vt 0.2461 0.3573 0.0000 +vt 0.2461 0.3453 0.0000 +vt 0.7679 0.4982 0.0000 +vt 0.7561 0.4983 0.0000 +vt 0.4133 0.3512 0.0000 +vt 0.4313 0.3512 0.0000 +vt 0.4482 0.2391 0.0000 +vt 0.4482 0.2206 0.0000 +vt 0.4893 0.2545 0.0000 +vt 0.4855 0.2691 0.0000 +vt 0.9854 0.7385 0.0000 +vt 0.9580 0.7382 0.0000 +vt 0.9610 0.6700 0.0000 +vt 0.9857 0.6703 0.0000 +vt 0.9502 0.7399 0.0000 +vt 0.9501 0.6811 0.0000 +vt 0.9264 0.6809 0.0000 +vt 0.9239 0.7397 0.0000 +vt 0.5220 0.2714 0.0000 +vt 0.5220 0.3003 0.0000 +vt 0.9593 0.6220 0.0000 +vt 0.9868 0.6223 0.0000 +vt 0.9510 0.6222 0.0000 +vt 0.9246 0.6221 0.0000 +vt 0.5941 0.2391 0.0000 +vt 0.5585 0.2691 0.0000 +vt 0.5548 0.2545 0.0000 +vt 0.5941 0.2206 0.0000 +vt 0.9881 0.5079 0.0000 +vt 0.9869 0.5744 0.0000 +vt 0.9621 0.5741 0.0000 +vt 0.9607 0.5076 0.0000 +vt 0.9272 0.5632 0.0000 +vt 0.9509 0.5634 0.0000 +vt 0.9517 0.5063 0.0000 +vt 0.9254 0.5061 0.0000 +vt 0.4201 0.0039 0.0000 +vt 0.4228 0.0782 0.0000 +vt 0.4000 0.0782 0.0000 +vt 0.4027 0.0039 0.0000 +vt 0.5790 0.0082 0.0000 +vt 0.5482 0.0194 0.0000 +vt 0.5565 0.1052 0.0000 +vt 0.5903 0.1113 0.0000 +vt 0.4550 0.0050 0.0000 +vt 0.4584 0.0840 0.0000 +vt 0.4292 0.0840 0.0000 +vt 0.4327 0.0050 0.0000 +vt 0.4218 0.1384 0.0000 +vt 0.4010 0.1384 0.0000 +vt 0.5435 0.1550 0.0000 +vt 0.5563 0.1901 0.0000 +vt 0.4572 0.1306 0.0000 +vt 0.4305 0.1306 0.0000 +vt 0.8039 0.3638 0.0000 +vt 0.7807 0.3638 0.0000 +vt 0.7828 0.4242 0.0000 +vt 0.8037 0.4242 0.0000 +vt 0.8351 0.3650 0.0000 +vt 0.8563 0.3650 0.0000 +vt 0.8522 0.4238 0.0000 +vt 0.8331 0.4238 0.0000 +vt 0.8101 0.3656 0.0000 +vt 0.8081 0.4227 0.0000 +vt 0.8272 0.4227 0.0000 +vt 0.8313 0.3656 0.0000 +vt 0.7807 0.4750 0.0000 +vt 0.8039 0.4940 0.0000 +vt 0.8563 0.4919 0.0000 +vt 0.8351 0.4919 0.0000 +vt 0.8101 0.4708 0.0000 +vt 0.8313 0.4708 0.0000 +vt 0.5601 0.4797 0.0000 +vt 0.3807 0.4797 0.0000 +vt 0.3807 0.4762 0.0000 +vt 0.5601 0.4762 0.0000 +vt 0.3807 0.4633 0.0000 +vt 0.5601 0.4633 0.0000 +vt 0.5889 0.5255 0.0000 +vt 0.3840 0.5255 0.0000 +vt 0.3840 0.5208 0.0000 +vt 0.5889 0.5208 0.0000 +vt 0.3840 0.5035 0.0000 +vt 0.5889 0.5035 0.0000 +vt 0.5706 0.5490 0.0000 +vt 0.5706 0.5533 0.0000 +vt 0.3808 0.5541 0.0000 +vt 0.3807 0.5498 0.0000 +vt 0.5705 0.5330 0.0000 +vt 0.3807 0.5338 0.0000 +vt 0.5090 0.3650 0.0000 +vt 0.5148 0.3650 0.0000 +vt 0.5148 0.3726 0.0000 +vt 0.5090 0.3726 0.0000 +vt 0.3303 0.3726 0.0000 +vt 0.3303 0.3650 0.0000 +vt 0.3361 0.3650 0.0000 +vt 0.3361 0.3726 0.0000 +vt 0.3313 0.3566 0.0000 +vt 0.4236 0.3528 0.0000 +vt 0.4236 0.3590 0.0000 +vt 0.3313 0.3628 0.0000 +vt 0.4226 0.3726 0.0000 +vt 0.4226 0.3650 0.0000 +vt 0.5159 0.3564 0.0000 +vt 0.5159 0.3626 0.0000 +vt 0.2855 0.3255 0.0000 +vt 0.2635 0.3255 0.0000 +vt 0.2636 0.2915 0.0000 +vt 0.2856 0.2915 0.0000 +vt 0.3158 0.3260 0.0000 +vt 0.2915 0.3260 0.0000 +vt 0.2991 0.2927 0.0000 +vt 0.3234 0.2927 0.0000 +vt 0.2856 0.3631 0.0000 +vt 0.2636 0.3631 0.0000 +vt 0.3234 0.3630 0.0000 +vt 0.2991 0.3630 0.0000 +vt 0.6413 0.0064 0.0000 +vt 0.6382 0.1433 0.0000 +vt 0.6038 0.1433 0.0000 +vt 0.6006 0.0064 0.0000 +vt 0.8881 0.1417 0.0000 +vt 0.9069 0.2171 0.0000 +vt 0.9339 0.2250 0.0000 +vt 0.9181 0.1117 0.0000 +vt 0.3745 0.0027 0.0000 +vt 0.3762 0.0672 0.0000 +vt 0.3946 0.0672 0.0000 +vt 0.3963 0.0027 0.0000 +vt 0.6413 0.2231 0.0000 +vt 0.6006 0.2231 0.0000 +vt 0.8952 0.2709 0.0000 +vt 0.9181 0.2937 0.0000 +vt 0.3745 0.1420 0.0000 +vt 0.3963 0.1420 0.0000 +vt 0.2243 0.5355 0.0000 +vt 0.3737 0.5358 0.0000 +vt 0.3737 0.5416 0.0000 +vt 0.2243 0.5412 0.0000 +vt 0.2244 0.5297 0.0000 +vt 0.3737 0.5300 0.0000 +vt 0.2244 0.5239 0.0000 +vt 0.3737 0.5242 0.0000 +vt 0.2244 0.5181 0.0000 +vt 0.3738 0.5184 0.0000 +vt 0.2243 0.5470 0.0000 +vt 0.3737 0.5474 0.0000 +vt 0.3737 0.5532 0.0000 +vt 0.2243 0.5528 0.0000 +vt 0.9692 0.3535 0.0000 +vt 0.9522 0.3535 0.0000 +vt 0.9522 0.3319 0.0000 +vt 0.9692 0.3319 0.0000 +vt 0.9670 0.0975 0.0000 +vt 0.9670 0.3286 0.0000 +vt 0.9536 0.3286 0.0000 +vt 0.9536 0.0975 0.0000 +vt 0.9928 0.1002 0.0000 +vt 0.9928 0.3274 0.0000 +vt 0.9761 0.3274 0.0000 +vt 0.9761 0.1002 0.0000 +vt 0.9286 0.0130 0.0000 +vt 0.9286 0.0967 0.0000 +vt 0.9842 0.0862 0.0000 +vt 0.9842 0.0130 0.0000 +vt 0.9440 0.3357 0.0000 +vt 0.9446 0.3624 0.0000 +vt 0.7859 0.3613 0.0000 +vt 0.7853 0.3347 0.0000 +vt 0.8517 0.3105 0.0000 +vt 0.8517 0.3273 0.0000 +vt 0.7609 0.3271 0.0000 +vt 0.7609 0.3103 0.0000 +vt 0.8729 0.0130 0.0000 +vt 0.8729 0.0862 0.0000 +vt 0.9426 0.3107 0.0000 +vt 0.9425 0.3275 0.0000 +vt 0.0106 0.5607 0.0000 +vt 0.0693 0.5607 0.0000 +vt 0.0693 0.5818 0.0000 +vt 0.0106 0.5818 0.0000 +vt 0.1315 0.2244 0.0000 +vt 0.1820 0.2084 0.0000 +vt 0.1909 0.2224 0.0000 +vt 0.1322 0.2410 0.0000 +vt 0.0484 0.5931 0.0000 +vt 0.0985 0.5931 0.0000 +vt 0.0985 0.6094 0.0000 +vt 0.0484 0.6094 0.0000 +vt 0.1312 0.2169 0.0000 +vt 0.1779 0.2021 0.0000 +vt 0.1708 0.1910 0.0000 +vt 0.1306 0.2037 0.0000 +vt 0.1280 0.5607 0.0000 +vt 0.1280 0.5818 0.0000 +vt 0.2177 0.1694 0.0000 +vt 0.2324 0.1770 0.0000 +vt 0.1486 0.5931 0.0000 +vt 0.1486 0.6094 0.0000 +vt 0.2110 0.1659 0.0000 +vt 0.1993 0.1598 0.0000 +vt 0.1867 0.5607 0.0000 +vt 0.1867 0.5818 0.0000 +vt 0.2291 0.1177 0.0000 +vt 0.2457 0.1169 0.0000 +vt 0.1987 0.5931 0.0000 +vt 0.1987 0.6094 0.0000 +vt 0.2216 0.1180 0.0000 +vt 0.2084 0.1186 0.0000 +vt 0.2455 0.5607 0.0000 +vt 0.2455 0.5818 0.0000 +vt 0.2131 0.0672 0.0000 +vt 0.2271 0.0583 0.0000 +vt 0.2488 0.5931 0.0000 +vt 0.2488 0.6094 0.0000 +vt 0.2068 0.0712 0.0000 +vt 0.1956 0.0784 0.0000 +vt 0.3042 0.5607 0.0000 +vt 0.3042 0.5818 0.0000 +vt 0.1740 0.0315 0.0000 +vt 0.1817 0.0167 0.0000 +vt 0.2989 0.5931 0.0000 +vt 0.2989 0.6094 0.0000 +vt 0.1706 0.0381 0.0000 +vt 0.1645 0.0499 0.0000 +vt 0.3629 0.5607 0.0000 +vt 0.3629 0.5818 0.0000 +vt 0.1223 0.0201 0.0000 +vt 0.1216 0.0035 0.0000 +vt 0.3490 0.5931 0.0000 +vt 0.3490 0.6094 0.0000 +vt 0.1227 0.0276 0.0000 +vt 0.1233 0.0408 0.0000 +vt 0.4216 0.5607 0.0000 +vt 0.4216 0.5818 0.0000 +vt 0.0719 0.0361 0.0000 +vt 0.0629 0.0221 0.0000 +vt 0.3991 0.5931 0.0000 +vt 0.3991 0.6094 0.0000 +vt 0.0759 0.0424 0.0000 +vt 0.0830 0.0535 0.0000 +vt 0.4803 0.5607 0.0000 +vt 0.4803 0.5818 0.0000 +vt 0.0361 0.0751 0.0000 +vt 0.0214 0.0675 0.0000 +vt 0.4492 0.5931 0.0000 +vt 0.4492 0.6094 0.0000 +vt 0.0428 0.0786 0.0000 +vt 0.0545 0.0847 0.0000 +vt 0.5391 0.5607 0.0000 +vt 0.5391 0.5818 0.0000 +vt 0.0247 0.1268 0.0000 +vt 0.0082 0.1276 0.0000 +vt 0.4993 0.5931 0.0000 +vt 0.4993 0.6094 0.0000 +vt 0.0322 0.1265 0.0000 +vt 0.0455 0.1259 0.0000 +vt 0.5978 0.5607 0.0000 +vt 0.5978 0.5818 0.0000 +vt 0.0407 0.1773 0.0000 +vt 0.0267 0.1862 0.0000 +vt 0.5494 0.5931 0.0000 +vt 0.5494 0.6094 0.0000 +vt 0.0470 0.1733 0.0000 +vt 0.0582 0.1661 0.0000 +vt 0.6565 0.5607 0.0000 +vt 0.6565 0.5818 0.0000 +vt 0.0798 0.2130 0.0000 +vt 0.0721 0.2278 0.0000 +vt 0.5995 0.5931 0.0000 +vt 0.5995 0.6094 0.0000 +vt 0.0832 0.2064 0.0000 +vt 0.0893 0.1946 0.0000 +vt 0.7152 0.5607 0.0000 +vt 0.7152 0.5818 0.0000 +vt 0.6496 0.5931 0.0000 +vt 0.6496 0.6094 0.0000 +vt 0.6391 0.3731 0.0000 +vt 0.6137 0.3731 0.0000 +vt 0.6137 0.3482 0.0000 +vt 0.6391 0.3482 0.0000 +vt 0.4544 0.3169 0.0000 +vt 0.4656 0.3226 0.0000 +vt 0.4647 0.3407 0.0000 +vt 0.4403 0.3282 0.0000 +vt 0.5881 0.3731 0.0000 +vt 0.5881 0.3482 0.0000 +vt 0.4773 0.3180 0.0000 +vt 0.4902 0.3307 0.0000 +vt 0.5642 0.3731 0.0000 +vt 0.5642 0.3482 0.0000 +vt 0.4817 0.3062 0.0000 +vt 0.4997 0.3049 0.0000 +vt 0.5440 0.3731 0.0000 +vt 0.5440 0.3482 0.0000 +vt 0.4757 0.2951 0.0000 +vt 0.4867 0.2808 0.0000 +vt 0.6808 0.3731 0.0000 +vt 0.6620 0.3731 0.0000 +vt 0.6620 0.3482 0.0000 +vt 0.6808 0.3482 0.0000 +vt 0.4582 0.2943 0.0000 +vt 0.4512 0.3047 0.0000 +vt 0.4334 0.3017 0.0000 +vt 0.4486 0.2789 0.0000 +vt 0.3379 0.1155 0.0000 +vt 0.3193 0.1155 0.0000 +vt 0.3187 0.0046 0.0000 +vt 0.3426 0.0045 0.0000 +vt 0.3659 0.1098 0.0000 +vt 0.3482 0.1098 0.0000 +vt 0.3478 0.0045 0.0000 +vt 0.3705 0.0045 0.0000 +vt 0.2816 0.0051 0.0000 +vt 0.2837 0.1095 0.0000 +vt 0.2662 0.1099 0.0000 +vt 0.2591 0.0056 0.0000 +vt 0.3131 0.0039 0.0000 +vt 0.3125 0.1094 0.0000 +vt 0.2949 0.1093 0.0000 +vt 0.2904 0.0039 0.0000 +vt 0.3431 0.2807 0.0000 +vt 0.3192 0.2807 0.0000 +vt 0.3702 0.2668 0.0000 +vt 0.3475 0.2849 0.0000 +vt 0.2881 0.2831 0.0000 +vt 0.2657 0.2837 0.0000 +vt 0.3130 0.2846 0.0000 +vt 0.2903 0.2665 0.0000 +vt 0.2214 0.3548 0.0000 +vt 0.2214 0.3722 0.0000 +vt 0.2040 0.3722 0.0000 +vt 0.2040 0.3548 0.0000 +vt 0.2046 0.3497 0.0000 +vt 0.2004 0.2816 0.0000 +vt 0.2136 0.2816 0.0000 +vt 0.2178 0.3497 0.0000 +vt 0.2411 0.3544 0.0000 +vt 0.2411 0.2795 0.0000 +vt 0.2237 0.2795 0.0000 +vt 0.2237 0.3544 0.0000 +vt 0.2046 0.2135 0.0000 +vt 0.2178 0.2135 0.0000 +vt 0.2411 0.2046 0.0000 +vt 0.2237 0.2046 0.0000 +vt 0.7023 0.3783 0.0000 +vt 0.7023 0.1337 0.0000 +vt 0.6961 0.1337 0.0000 +vt 0.6961 0.3783 0.0000 +vt 0.7427 0.2621 0.0000 +vt 0.7427 0.4473 0.0000 +vt 0.7270 0.4473 0.0000 +vt 0.7270 0.2621 0.0000 +vt 0.6997 0.4149 0.0000 +vt 0.3834 0.4149 0.0000 +vt 0.3834 0.4193 0.0000 +vt 0.6997 0.4193 0.0000 +vt 0.6785 0.4123 0.0000 +vt 0.3903 0.4123 0.0000 +vt 0.3903 0.4016 0.0000 +vt 0.6785 0.4016 0.0000 +vt 0.8832 0.8218 0.0000 +vt 0.8832 0.8488 0.0000 +vt 0.8562 0.8488 0.0000 +vt 0.8562 0.8218 0.0000 +vt 0.8710 0.7512 0.0000 +vt 0.8917 0.8200 0.0000 +vt 0.8540 0.8099 0.0000 +vt 0.8484 0.7451 0.0000 +vt 0.8182 0.7463 0.0000 +vt 0.8124 0.8205 0.0000 +vt 0.8508 0.8205 0.0000 +vt 0.8449 0.7463 0.0000 +vt 0.3820 0.4953 0.0000 +vt 0.5991 0.4958 0.0000 +vt 0.5991 0.4984 0.0000 +vt 0.3820 0.4979 0.0000 +vt 0.3820 0.4857 0.0000 +vt 0.5991 0.4862 0.0000 +vt 0.7115 0.5479 0.0000 +vt 0.5941 0.5479 0.0000 +vt 0.5941 0.5410 0.0000 +vt 0.7115 0.5410 0.0000 +vt 0.5941 0.5155 0.0000 +vt 0.7115 0.5155 0.0000 +vt 0.7457 0.4780 0.0000 +vt 0.5660 0.4780 0.0000 +vt 0.5660 0.4749 0.0000 +vt 0.7457 0.4749 0.0000 +vt 0.5660 0.4633 0.0000 +vt 0.7457 0.4633 0.0000 +vt 0.8057 0.5298 0.0000 +vt 0.7294 0.5298 0.0000 +vt 0.7294 0.6060 0.0000 +vt 0.8057 0.6060 0.0000 +vt 0.6612 0.1309 0.0000 +vt 0.6485 0.0073 0.0000 +vt 0.6916 0.0073 0.0000 +vt 0.6867 0.1309 0.0000 +vt 0.7121 0.1290 0.0000 +vt 0.6986 0.0054 0.0000 +vt 0.7386 0.0054 0.0000 +vt 0.7343 0.1290 0.0000 +vt 0.6873 0.2545 0.0000 +vt 0.6552 0.2545 0.0000 +vt 0.7344 0.2526 0.0000 +vt 0.7088 0.2526 0.0000 +vt 0.8292 0.1250 0.0000 +vt 0.8097 0.1250 0.0000 +vt 0.8090 0.0084 0.0000 +vt 0.8341 0.0084 0.0000 +vt 0.8586 0.1191 0.0000 +vt 0.8400 0.1191 0.0000 +vt 0.8396 0.0083 0.0000 +vt 0.8634 0.0083 0.0000 +vt 0.7677 0.0047 0.0000 +vt 0.7698 0.1145 0.0000 +vt 0.7514 0.1150 0.0000 +vt 0.7440 0.0053 0.0000 +vt 0.8025 0.0059 0.0000 +vt 0.8019 0.1168 0.0000 +vt 0.7834 0.1168 0.0000 +vt 0.7786 0.0059 0.0000 +vt 0.8346 0.2987 0.0000 +vt 0.8096 0.2987 0.0000 +vt 0.8632 0.2841 0.0000 +vt 0.8394 0.3032 0.0000 +vt 0.7745 0.2971 0.0000 +vt 0.7509 0.2976 0.0000 +vt 0.8024 0.3010 0.0000 +vt 0.7786 0.2819 0.0000 +vt 0.6958 0.4416 0.0000 +vt 0.3795 0.4416 0.0000 +vt 0.3795 0.4460 0.0000 +vt 0.6958 0.4460 0.0000 +vt 0.6755 0.4344 0.0000 +vt 0.3873 0.4344 0.0000 +vt 0.3873 0.4237 0.0000 +vt 0.6755 0.4237 0.0000 +vt 0.0717 0.1664 0.0000 +vt 0.0717 0.1020 0.0000 +vt 0.1177 0.1020 0.0000 +vt 0.1177 0.1664 0.0000 +vt 0.1846 0.1339 0.0000 +vt 0.1642 0.1838 0.0000 +vt 0.1382 0.1821 0.0000 +vt 0.1245 0.1299 0.0000 +vt 0.0073 0.2189 0.0000 +vt 0.0078 0.2710 0.0000 +vt 0.0457 0.2750 0.0000 +vt 0.0498 0.2189 0.0000 +vt 0.1935 0.0540 0.0000 +vt 0.1671 0.1244 0.0000 +vt 0.1288 0.1255 0.0000 +vt 0.0985 0.0566 0.0000 +# 797 texture coords + +o watermill +g watermill +f 1/1/1 2/2/2 3/3/2 +f 3/3/2 4/4/1 1/1/1 +f 5/5/3 6/6/3 7/7/4 +f 7/7/4 8/8/4 5/5/3 +f 4/4/5 6/6/5 5/5/5 +f 5/5/5 1/1/5 4/4/5 +f 9/9/6 10/10/6 2/10/6 +f 2/10/6 1/9/6 9/9/6 +f 6/11/7 4/12/7 3/13/8 +f 6/11/7 3/13/8 11/14/8 +f 6/11/7 11/14/8 12/15/8 +f 6/11/7 12/15/8 7/16/8 +f 13/17/6 5/17/6 8/18/6 +f 8/18/6 14/18/6 13/17/6 +f 1/9/6 5/17/6 13/17/6 +f 13/17/6 9/9/6 1/9/6 +f 15/19/9 16/20/9 17/21/9 +f 17/21/9 18/22/9 15/19/9 +f 19/23/10 20/24/11 16/25/11 +f 16/25/11 15/26/10 19/23/10 +f 21/27/12 22/28/12 23/29/12 +f 23/29/12 24/30/12 21/27/12 +f 19/23/10 24/31/10 23/32/11 +f 23/32/11 20/24/11 19/23/10 +f 25/33/13 26/34/14 27/35/15 +f 27/35/15 28/36/16 25/33/13 +f 25/37/9 28/38/9 29/39/9 +f 29/39/9 30/40/9 25/37/9 +f 31/41/17 32/42/18 33/43/18 +f 33/43/18 34/44/17 31/41/17 +f 33/43/19 32/42/19 35/45/20 +f 35/45/20 36/46/20 33/43/19 +f 26/34/14 25/33/13 35/47/21 +f 35/47/21 32/48/22 26/34/14 +f 26/49/14 32/50/22 31/51/23 +f 31/51/23 37/52/24 26/49/14 +f 27/53/15 26/49/14 37/52/24 +f 37/52/24 38/54/25 27/53/15 +f 30/40/26 36/55/27 35/56/27 +f 35/56/27 25/37/26 30/40/26 +f 37/57/28 31/58/29 34/59/29 +f 34/59/29 39/60/28 37/57/28 +f 38/61/12 37/57/12 39/60/12 +f 39/60/12 40/62/12 38/61/12 +f 41/63/30 28/36/16 27/35/15 +f 27/35/15 42/64/31 41/63/30 +f 29/39/9 28/38/9 41/65/9 +f 41/65/9 43/66/9 29/39/9 +f 44/43/32 45/42/32 46/41/33 +f 46/41/33 47/44/33 44/43/32 +f 44/43/34 48/46/35 49/45/35 +f 49/45/35 45/42/34 44/43/34 +f 42/64/31 45/67/36 49/68/37 +f 49/68/37 41/63/30 42/64/31 +f 46/69/38 45/70/36 42/71/31 +f 42/71/31 50/72/39 46/69/38 +f 50/72/39 42/71/31 27/53/15 +f 27/53/15 38/54/25 50/72/39 +f 49/73/40 48/74/40 43/66/41 +f 43/66/41 41/65/41 49/73/40 +f 47/75/42 46/76/42 50/77/43 +f 50/77/43 51/78/43 47/75/42 +f 51/78/12 50/77/12 38/61/12 +f 38/61/12 40/62/12 51/78/12 +f 43/79/44 52/80/45 53/81/46 +f 53/81/46 29/82/47 43/79/44 +f 51/83/48 40/84/49 53/81/50 +f 53/81/50 52/80/51 51/83/48 +f 54/85/52 33/86/53 36/87/54 +f 36/87/54 30/88/55 54/85/52 +f 53/81/46 54/85/52 30/88/55 +f 30/88/55 29/82/47 53/81/46 +f 52/80/45 43/79/44 48/89/56 +f 48/89/56 44/90/57 52/80/45 +f 54/85/58 39/91/59 34/92/60 +f 34/92/60 33/86/61 54/85/58 +f 53/81/50 40/84/49 39/91/59 +f 39/91/59 54/85/58 53/81/50 +f 52/80/51 44/90/62 47/93/63 +f 47/93/63 51/83/48 52/80/51 +f 55/94/64 56/95/65 22/96/65 +f 22/96/65 21/97/64 55/94/64 +f 55/94/64 18/98/64 17/99/65 +f 17/99/65 56/95/65 55/94/64 +f 57/100/12 58/101/12 59/102/12 +f 59/102/12 60/103/12 57/100/12 +f 58/101/66 57/100/67 61/104/66 +f 61/104/66 62/105/68 58/101/66 +f 57/100/69 60/106/69 63/107/69 +f 63/107/69 61/104/69 57/100/69 +f 64/108/70 62/105/70 61/104/70 +f 61/104/70 65/109/70 64/108/70 +f 66/110/69 65/109/69 61/104/69 +f 61/104/69 63/111/69 66/110/69 +f 67/112/9 68/113/9 69/114/9 +f 69/114/9 70/115/9 67/112/9 +f 68/113/71 71/116/72 72/117/73 +f 72/117/73 69/114/74 68/113/71 +f 69/114/69 72/117/69 73/118/69 +f 73/118/69 70/119/69 69/114/69 +f 72/117/75 71/116/76 64/108/75 +f 64/108/75 65/109/75 72/117/75 +f 66/110/69 73/120/69 72/117/69 +f 72/117/69 65/109/69 66/110/69 +f 74/100/12 75/101/12 76/102/12 +f 76/102/12 77/103/12 74/100/12 +f 75/101/77 74/100/78 78/104/79 +f 78/104/79 79/105/80 75/101/77 +f 74/100/81 77/106/81 80/107/81 +f 80/107/81 78/104/81 74/100/81 +f 81/108/82 79/105/83 78/104/83 +f 78/104/83 82/109/83 81/108/82 +f 83/110/81 82/109/81 78/104/81 +f 78/104/81 80/111/81 83/110/81 +f 84/112/9 85/113/9 86/114/9 +f 86/114/9 87/115/9 84/112/9 +f 85/113/84 88/116/85 89/117/86 +f 89/117/86 86/114/87 85/113/84 +f 86/114/81 89/117/81 90/118/81 +f 90/118/81 87/119/81 86/114/81 +f 89/117/88 88/116/88 81/108/89 +f 81/108/89 82/109/88 89/117/88 +f 83/110/81 90/120/81 89/117/81 +f 89/117/81 82/109/81 83/110/81 +f 91/100/12 92/101/12 93/102/12 +f 93/102/12 94/103/12 91/100/12 +f 92/101/90 91/100/91 95/104/92 +f 95/104/92 96/105/92 92/101/90 +f 91/100/93 94/106/94 97/107/94 +f 97/107/94 95/104/93 91/100/93 +f 98/108/95 96/105/95 95/104/96 +f 95/104/96 99/109/96 98/108/95 +f 100/110/94 99/109/93 95/104/93 +f 95/104/93 97/111/94 100/110/94 +f 101/112/9 102/113/9 103/114/9 +f 103/114/9 104/115/9 101/112/9 +f 102/113/97 105/116/98 106/117/97 +f 106/117/97 103/114/99 102/113/97 +f 103/114/93 106/117/93 107/118/94 +f 107/118/94 104/119/94 103/114/93 +f 106/117/100 105/116/101 98/108/101 +f 98/108/101 99/109/102 106/117/100 +f 100/110/94 107/120/94 106/117/93 +f 106/117/93 99/109/93 100/110/94 +f 108/100/12 109/101/12 110/102/12 +f 110/102/12 111/103/12 108/100/12 +f 109/101/90 108/100/90 112/104/91 +f 112/104/91 113/105/92 109/101/90 +f 108/100/93 111/106/93 114/107/94 +f 114/107/94 112/104/93 108/100/93 +f 115/108/96 113/105/103 112/104/96 +f 112/104/96 116/109/103 115/108/96 +f 117/110/94 116/109/94 112/104/93 +f 112/104/93 114/111/94 117/110/94 +f 118/112/9 119/113/9 120/114/9 +f 120/114/9 121/115/9 118/112/9 +f 119/113/97 122/116/97 123/117/104 +f 123/117/104 120/114/97 119/113/97 +f 120/114/93 123/117/93 124/118/94 +f 124/118/94 121/119/93 120/114/93 +f 123/117/105 122/116/106 115/108/102 +f 115/108/102 116/109/106 123/117/105 +f 117/110/94 124/120/94 123/117/93 +f 123/117/93 116/109/94 117/110/94 +f 125/100/12 126/101/12 127/102/12 +f 127/102/12 128/103/12 125/100/12 +f 126/101/90 125/100/107 129/104/108 +f 129/104/108 130/105/91 126/101/90 +f 125/100/94 128/106/93 131/107/93 +f 131/107/93 129/104/94 125/100/94 +f 132/108/96 130/105/96 129/104/96 +f 129/104/96 133/109/96 132/108/96 +f 134/110/93 133/109/93 129/104/93 +f 129/104/93 131/111/93 134/110/93 +f 135/112/9 136/113/9 137/114/9 +f 137/114/9 138/115/9 135/112/9 +f 136/113/97 139/116/104 140/117/109 +f 140/117/109 137/114/109 136/113/97 +f 137/114/94 140/117/94 141/118/93 +f 141/118/93 138/119/93 137/114/94 +f 140/117/100 139/116/105 132/108/102 +f 132/108/102 133/109/102 140/117/100 +f 134/110/94 141/120/93 140/117/94 +f 140/117/94 133/109/93 134/110/94 +f 142/100/12 143/101/12 144/102/12 +f 144/102/12 145/103/12 142/100/12 +f 143/101/110 142/100/110 146/104/110 +f 146/104/110 147/105/111 143/101/110 +f 142/100/112 145/106/112 148/107/112 +f 148/107/112 146/104/112 142/100/112 +f 149/108/113 147/105/114 146/104/113 +f 146/104/113 150/109/113 149/108/113 +f 151/110/112 150/109/112 146/104/112 +f 146/104/112 148/111/112 151/110/112 +f 152/112/9 153/113/9 154/114/9 +f 154/114/9 155/115/9 152/112/9 +f 153/113/115 156/116/116 157/117/117 +f 157/117/117 154/114/115 153/113/115 +f 154/114/112 157/117/112 158/118/112 +f 158/118/112 155/119/112 154/114/112 +f 157/117/118 156/116/119 149/108/120 +f 149/108/120 150/109/120 157/117/118 +f 151/110/112 158/120/112 157/117/112 +f 157/117/112 150/109/112 151/110/112 +f 159/121/12 160/122/12 161/123/12 +f 161/123/12 162/124/12 159/121/12 +f 163/125/121 161/126/122 160/122/121 +f 160/122/121 164/127/121 163/125/121 +f 165/128/123 164/127/124 160/122/125 +f 160/122/125 159/121/126 165/128/123 +f 166/129/127 165/128/127 159/121/128 +f 159/121/128 162/130/127 166/129/127 +f 164/127/121 167/131/122 168/132/121 +f 168/132/121 163/125/121 164/127/121 +f 167/131/129 164/127/130 165/128/130 +f 165/128/130 169/133/131 167/131/129 +f 170/134/127 169/133/128 165/128/127 +f 165/128/127 166/129/127 170/134/127 +f 171/135/9 172/136/9 173/137/9 +f 173/137/9 174/138/9 171/135/9 +f 172/136/121 171/139/122 175/140/121 +f 175/140/121 176/141/121 172/136/121 +f 177/142/132 173/137/133 172/136/134 +f 172/136/134 176/141/134 177/142/132 +f 178/143/127 174/144/127 173/137/128 +f 173/137/128 177/142/127 178/143/127 +f 168/145/121 167/131/122 176/141/121 +f 176/141/121 175/140/121 168/145/121 +f 177/142/135 176/141/136 167/131/135 +f 167/131/135 169/133/137 177/142/135 +f 170/146/127 178/143/127 177/142/127 +f 177/142/127 169/133/128 170/146/127 +f 179/102/12 180/101/12 181/100/12 +f 181/100/12 182/103/12 179/102/12 +f 183/104/138 181/100/139 180/101/140 +f 180/101/140 184/105/138 183/104/138 +f 185/107/141 182/106/142 181/100/142 +f 181/100/142 183/104/142 185/107/141 +f 183/104/143 184/105/143 186/108/143 +f 186/108/143 187/109/143 183/104/143 +f 188/110/141 185/111/141 183/104/142 +f 183/104/142 187/109/144 188/110/141 +f 189/114/9 190/113/9 191/112/9 +f 191/112/9 192/115/9 189/114/9 +f 193/117/145 194/116/145 190/113/146 +f 190/113/146 189/114/147 193/117/145 +f 195/118/141 193/117/142 189/114/141 +f 189/114/141 192/119/142 195/118/141 +f 186/108/148 194/116/148 193/117/149 +f 193/117/149 187/109/148 186/108/148 +f 188/110/142 187/109/141 193/117/150 +f 193/117/150 195/120/141 188/110/142 +f 196/102/12 197/101/12 198/100/12 +f 198/100/12 199/103/12 196/102/12 +f 200/104/151 198/100/152 197/101/152 +f 197/101/152 201/105/151 200/104/151 +f 202/107/153 199/106/154 198/100/153 +f 198/100/153 200/104/154 202/107/153 +f 200/104/155 201/105/156 203/108/155 +f 203/108/155 204/109/155 200/104/155 +f 205/110/154 202/111/153 200/104/154 +f 200/104/154 204/109/154 205/110/154 +f 206/114/9 207/113/9 208/112/9 +f 208/112/9 209/115/9 206/114/9 +f 210/117/157 211/116/157 207/113/158 +f 207/113/158 206/114/159 210/117/157 +f 212/118/153 210/117/154 206/114/154 +f 206/114/154 209/119/154 212/118/153 +f 203/108/160 211/116/161 210/117/160 +f 210/117/160 204/109/160 203/108/160 +f 205/110/154 204/109/154 210/117/154 +f 210/117/154 212/120/153 205/110/154 +f 213/102/12 214/101/12 215/100/12 +f 215/100/12 216/103/12 213/102/12 +f 217/104/124 215/100/125 214/101/162 +f 214/101/162 218/105/124 217/104/124 +f 219/107/121 216/106/121 215/100/122 +f 215/100/122 217/104/122 219/107/121 +f 217/104/131 218/105/163 220/108/163 +f 220/108/163 221/109/131 217/104/131 +f 222/110/121 219/111/121 217/104/122 +f 217/104/122 221/109/121 222/110/121 +f 223/114/9 224/113/9 225/112/9 +f 225/112/9 226/115/9 223/114/9 +f 227/117/164 228/116/134 224/113/165 +f 224/113/165 223/114/134 227/117/164 +f 229/118/121 227/117/122 223/114/122 +f 223/114/122 226/119/121 229/118/121 +f 220/108/166 228/116/167 227/117/137 +f 227/117/137 221/109/137 220/108/166 +f 222/110/121 221/109/121 227/117/122 +f 227/117/122 229/120/121 222/110/121 +f 230/102/12 231/101/12 232/100/12 +f 232/100/12 233/103/12 230/102/12 +f 234/104/124 232/100/125 231/101/125 +f 231/101/125 235/105/168 234/104/124 +f 236/107/122 233/106/122 232/100/121 +f 232/100/121 234/104/122 236/107/122 +f 234/104/129 235/105/163 237/108/163 +f 237/108/163 238/109/129 234/104/129 +f 239/110/121 236/111/122 234/104/122 +f 234/104/122 238/109/122 239/110/121 +f 240/114/9 241/113/9 242/112/9 +f 242/112/9 243/115/9 240/114/9 +f 244/117/134 245/116/169 241/113/134 +f 241/113/134 240/114/134 244/117/134 +f 246/118/122 244/117/122 240/114/121 +f 240/114/121 243/119/122 246/118/122 +f 237/108/166 245/116/166 244/117/135 +f 244/117/135 238/109/135 237/108/166 +f 239/110/121 238/109/122 244/117/122 +f 244/117/122 246/120/122 239/110/121 +f 247/102/12 248/101/12 249/100/12 +f 249/100/12 250/103/12 247/102/12 +f 251/104/170 249/100/139 248/101/140 +f 248/101/140 252/105/138 251/104/170 +f 253/107/142 250/106/141 249/100/142 +f 249/100/142 251/104/142 253/107/142 +f 251/104/143 252/105/171 254/108/171 +f 254/108/171 255/109/172 251/104/143 +f 256/110/142 253/111/142 251/104/142 +f 251/104/142 255/109/141 256/110/142 +f 257/114/9 258/113/9 259/112/9 +f 259/112/9 260/115/9 257/114/9 +f 261/117/146 262/116/147 258/113/146 +f 258/113/146 257/114/147 261/117/146 +f 263/118/142 261/117/142 257/114/142 +f 257/114/142 260/119/141 263/118/142 +f 254/108/173 262/116/173 261/117/174 +f 261/117/174 255/109/175 254/108/173 +f 256/110/142 255/109/141 261/117/142 +f 261/117/142 263/120/142 256/110/142 +f 264/102/12 265/101/12 266/100/12 +f 266/100/12 267/103/12 264/102/12 +f 268/104/108 266/100/107 265/101/176 +f 265/101/176 269/105/108 268/104/108 +f 270/107/177 267/106/177 266/100/178 +f 266/100/178 268/104/177 270/107/177 +f 268/104/179 269/105/180 271/108/181 +f 271/108/181 272/109/96 268/104/179 +f 273/110/177 270/111/177 268/104/177 +f 268/104/177 272/109/177 273/110/177 +f 274/114/9 275/113/9 276/112/9 +f 276/112/9 277/115/9 274/114/9 +f 278/117/182 279/116/182 275/113/183 +f 275/113/183 274/114/109 278/117/182 +f 280/118/177 278/117/177 274/114/178 +f 274/114/178 277/119/177 280/118/177 +f 271/108/184 279/116/184 278/117/105 +f 278/117/105 272/109/102 271/108/184 +f 273/110/177 272/109/177 278/117/177 +f 278/117/177 280/120/177 273/110/177 +f 281/121/12 282/122/12 283/123/12 +f 283/123/12 284/124/12 281/121/12 +f 285/125/121 283/126/122 282/122/121 +f 282/122/121 286/127/122 285/125/121 +f 287/128/185 286/127/123 282/122/126 +f 282/122/126 281/121/126 287/128/185 +f 288/129/127 287/128/128 281/121/127 +f 281/121/127 284/130/127 288/129/127 +f 286/127/122 289/131/121 290/132/121 +f 290/132/121 285/125/121 286/127/122 +f 289/131/129 286/127/130 287/128/186 +f 287/128/186 291/133/131 289/131/129 +f 292/134/127 291/133/127 287/128/128 +f 287/128/128 288/129/127 292/134/127 +f 293/135/9 294/136/9 295/137/9 +f 295/137/9 296/138/9 293/135/9 +f 294/136/121 293/139/122 297/140/121 +f 297/140/121 298/141/122 294/136/121 +f 299/142/187 295/137/133 294/136/133 +f 294/136/133 298/141/132 299/142/187 +f 300/143/127 296/144/127 295/137/127 +f 295/137/127 299/142/128 300/143/127 +f 290/145/121 289/131/121 298/141/122 +f 298/141/122 297/140/121 290/145/121 +f 299/142/188 298/141/135 289/131/135 +f 289/131/135 291/133/137 299/142/188 +f 292/146/127 300/143/127 299/142/128 +f 299/142/128 291/133/127 292/146/127 +f 301/121/12 302/122/12 303/123/12 +f 303/123/12 304/124/12 301/121/12 +f 305/125/189 303/126/189 302/122/189 +f 302/122/189 306/127/190 305/125/189 +f 307/128/191 306/127/191 302/122/191 +f 302/122/191 301/121/192 307/128/191 +f 308/129/193 307/128/193 301/121/193 +f 301/121/193 304/130/194 308/129/193 +f 306/127/195 309/131/196 310/132/195 +f 310/132/195 305/125/189 306/127/195 +f 309/131/197 306/127/198 307/128/199 +f 307/128/199 311/133/197 309/131/197 +f 312/134/193 311/133/200 307/128/193 +f 307/128/193 308/129/193 312/134/193 +f 313/135/9 314/136/9 315/137/9 +f 315/137/9 316/138/9 313/135/9 +f 314/136/189 313/139/189 317/140/189 +f 317/140/189 318/141/190 314/136/189 +f 319/142/201 315/137/202 314/136/202 +f 314/136/202 318/141/203 319/142/201 +f 320/143/193 316/144/194 315/137/193 +f 315/137/193 319/142/193 320/143/193 +f 310/145/189 309/131/204 318/141/205 +f 318/141/205 317/140/189 310/145/189 +f 319/142/206 318/141/207 309/131/206 +f 309/131/206 311/133/206 319/142/206 +f 312/146/193 320/143/193 319/142/193 +f 319/142/193 311/133/200 312/146/193 +f 321/121/12 322/122/12 323/123/12 +f 323/123/12 324/124/12 321/121/12 +f 325/125/121 323/126/121 322/122/122 +f 322/122/122 326/127/121 325/125/121 +f 327/128/123 326/127/185 322/122/126 +f 322/122/126 321/121/126 327/128/123 +f 328/129/127 327/128/128 321/121/128 +f 321/121/128 324/130/127 328/129/127 +f 326/127/208 329/131/208 330/132/208 +f 330/132/208 325/125/121 326/127/208 +f 329/131/129 326/127/130 327/128/130 +f 327/128/130 331/133/129 329/131/129 +f 332/134/127 331/133/127 327/128/128 +f 327/128/128 328/129/127 332/134/127 +f 333/135/9 334/136/9 335/137/9 +f 335/137/9 336/138/9 333/135/9 +f 334/136/122 333/139/121 337/140/121 +f 337/140/121 338/141/121 334/136/122 +f 339/142/132 335/137/133 334/136/133 +f 334/136/133 338/141/187 339/142/132 +f 340/143/127 336/144/127 335/137/128 +f 335/137/128 339/142/128 340/143/127 +f 330/145/121 329/131/121 338/141/209 +f 338/141/209 337/140/121 330/145/121 +f 339/142/136 338/141/210 329/131/135 +f 329/131/135 331/133/135 339/142/136 +f 332/146/127 340/143/127 339/142/128 +f 339/142/128 331/133/127 332/146/127 +f 341/123/12 342/122/12 343/121/12 +f 343/121/12 344/124/12 341/123/12 +f 345/125/211 346/127/211 342/122/211 +f 342/122/211 341/126/212 345/125/211 +f 342/122/213 346/127/213 347/128/213 +f 347/128/213 343/121/214 342/122/213 +f 343/121/215 347/128/215 348/129/215 +f 348/129/215 344/130/215 343/121/215 +f 349/132/211 350/131/212 346/127/211 +f 346/127/211 345/125/211 349/132/211 +f 347/128/216 346/127/217 350/131/218 +f 350/131/218 351/133/218 347/128/216 +f 352/134/219 348/129/215 347/128/215 +f 347/128/215 351/133/215 352/134/219 +f 353/137/9 354/136/9 355/135/9 +f 355/135/9 356/138/9 353/137/9 +f 354/136/211 357/141/211 358/140/211 +f 358/140/211 355/139/212 354/136/211 +f 354/136/220 353/137/221 359/142/220 +f 359/142/220 357/141/222 354/136/220 +f 353/137/215 356/144/215 360/143/215 +f 360/143/215 359/142/215 353/137/215 +f 357/141/211 350/131/212 349/145/211 +f 349/145/211 358/140/211 357/141/211 +f 350/131/223 357/141/224 359/142/225 +f 359/142/225 351/133/223 350/131/223 +f 352/146/219 351/133/215 359/142/215 +f 359/142/215 360/143/215 352/146/219 +f 361/100/12 362/101/12 363/102/12 +f 363/102/12 364/103/12 361/100/12 +f 362/101/66 361/100/226 365/104/66 +f 365/104/66 366/105/227 362/101/66 +f 361/100/69 364/106/228 367/107/69 +f 367/107/69 365/104/69 361/100/69 +f 368/108/229 366/105/70 365/104/70 +f 365/104/70 369/109/70 368/108/229 +f 370/110/69 369/109/228 365/104/69 +f 365/104/69 367/111/69 370/110/69 +f 371/112/9 372/113/9 373/114/9 +f 373/114/9 374/115/9 371/112/9 +f 372/113/73 375/116/230 376/117/231 +f 376/117/231 373/114/232 372/113/73 +f 373/114/69 376/117/69 377/118/69 +f 377/118/69 374/119/228 373/114/69 +f 376/117/76 375/116/233 368/108/234 +f 368/108/234 369/109/75 376/117/76 +f 370/110/69 377/120/69 376/117/69 +f 376/117/69 369/109/228 370/110/69 +f 378/147/15 379/148/235 380/149/236 +f 380/149/236 381/150/237 378/147/15 +f 382/149/238 383/148/239 378/147/15 +f 378/147/15 381/150/237 382/149/238 +f 384/43/240 385/42/240 386/41/241 +f 386/41/241 387/44/241 384/43/240 +f 384/43/242 388/46/243 389/45/243 +f 389/45/243 385/42/242 384/43/242 +f 390/151/11 383/151/11 382/152/11 +f 382/152/11 391/152/11 390/151/11 +f 392/153/244 393/153/244 394/18/245 +f 394/18/245 395/18/245 392/153/244 +f 392/153/246 396/17/247 397/17/247 +f 397/17/247 393/153/246 392/153/246 +f 398/154/65 379/154/65 399/155/65 +f 399/155/65 400/155/65 398/154/65 +f 401/156/248 390/151/249 391/152/250 +f 391/152/250 402/157/251 401/156/248 +f 401/156/252 398/154/253 400/155/254 +f 400/155/254 403/158/255 401/156/252 +f 404/158/256 393/153/257 397/17/258 +f 397/17/258 399/155/259 404/158/256 +f 378/147/15 404/159/256 399/160/259 +f 399/160/259 379/148/235 378/147/15 +f 386/161/260 385/162/261 381/150/237 +f 381/150/237 380/149/236 386/161/260 +f 394/18/262 393/153/257 404/158/256 +f 404/158/256 405/163/263 394/18/262 +f 405/160/263 404/159/256 378/147/15 +f 378/147/15 383/148/239 405/160/263 +f 381/150/237 385/162/261 389/161/264 +f 389/161/264 382/149/238 381/150/237 +f 395/18/11 394/18/11 405/163/11 +f 405/163/11 406/163/11 395/18/11 +f 406/163/11 405/163/11 383/151/11 +f 383/151/11 390/151/11 406/163/11 +f 389/10/11 388/10/11 391/152/11 +f 391/152/11 382/152/11 389/10/11 +f 387/9/65 386/9/65 380/164/65 +f 380/164/65 407/164/65 387/9/65 +f 407/164/65 380/164/65 379/154/65 +f 379/154/65 398/154/65 407/164/65 +f 397/17/65 396/17/65 400/155/65 +f 400/155/65 399/155/65 397/17/65 +f 403/158/265 392/153/266 395/18/267 +f 395/18/267 406/163/268 403/158/265 +f 401/156/248 403/158/265 406/163/268 +f 406/163/268 390/151/249 401/156/248 +f 388/10/269 384/165/270 402/157/251 +f 402/157/251 391/152/250 388/10/269 +f 402/157/271 384/165/272 387/9/273 +f 387/9/273 407/164/274 402/157/271 +f 401/156/252 402/157/271 407/164/274 +f 407/164/274 398/154/253 401/156/252 +f 396/17/275 392/153/276 403/158/255 +f 403/158/255 400/155/254 396/17/275 +f 408/100/11 409/101/11 410/102/11 +f 410/102/11 411/103/10 408/100/11 +f 409/101/277 408/100/278 412/104/277 +f 412/104/277 413/105/277 409/101/277 +f 408/100/279 411/106/279 414/107/279 +f 414/107/279 412/104/279 408/100/279 +f 415/108/280 413/105/281 412/104/281 +f 412/104/281 416/109/282 415/108/280 +f 417/110/279 416/109/279 412/104/279 +f 412/104/279 414/111/279 417/110/279 +f 418/112/65 419/113/65 420/114/65 +f 420/114/65 421/115/64 418/112/65 +f 419/113/283 422/116/283 423/117/283 +f 423/117/283 420/114/283 419/113/283 +f 420/114/279 423/117/279 424/118/279 +f 424/118/279 421/119/279 420/114/279 +f 423/117/284 422/116/284 415/108/285 +f 415/108/285 416/109/285 423/117/284 +f 417/110/279 424/120/279 423/117/279 +f 423/117/279 416/109/279 417/110/279 +f 425/100/11 426/101/11 427/102/11 +f 427/102/11 428/103/11 425/100/11 +f 426/101/286 425/100/286 429/104/287 +f 429/104/287 430/105/286 426/101/286 +f 425/100/288 428/106/288 431/107/288 +f 431/107/288 429/104/288 425/100/288 +f 432/108/289 430/105/290 429/104/290 +f 429/104/290 433/109/291 432/108/289 +f 434/110/292 433/109/288 429/104/288 +f 429/104/288 431/111/288 434/110/292 +f 435/112/65 436/113/65 437/114/65 +f 437/114/65 438/115/65 435/112/65 +f 436/113/293 439/116/293 440/117/293 +f 440/117/293 437/114/294 436/113/293 +f 437/114/288 440/117/288 441/118/288 +f 441/118/288 438/119/288 437/114/288 +f 440/117/295 439/116/295 432/108/296 +f 432/108/296 433/109/296 440/117/295 +f 434/110/292 441/120/288 440/117/288 +f 440/117/288 433/109/288 434/110/292 +f 442/100/297 443/101/298 444/102/298 +f 444/102/298 445/103/297 442/100/297 +f 443/101/299 442/100/300 446/104/301 +f 446/104/301 447/105/300 443/101/299 +f 442/100/302 445/106/302 448/107/302 +f 448/107/302 446/104/303 442/100/302 +f 449/108/304 447/105/305 446/104/306 +f 446/104/306 450/109/304 449/108/304 +f 451/110/307 450/109/308 446/104/303 +f 446/104/303 448/111/308 451/110/307 +f 452/112/309 453/113/309 454/114/310 +f 454/114/310 455/115/311 452/112/309 +f 453/113/312 456/116/313 457/117/312 +f 457/117/312 454/114/314 453/113/312 +f 454/114/308 457/117/302 458/118/302 +f 458/118/302 455/119/315 454/114/308 +f 457/117/316 456/116/317 449/108/316 +f 449/108/316 450/109/318 457/117/316 +f 451/110/307 458/120/302 457/117/302 +f 457/117/302 450/109/308 451/110/307 +f 459/100/65 460/101/65 461/102/65 +f 461/102/65 462/103/65 459/100/65 +f 460/101/319 459/100/320 463/104/319 +f 463/104/319 464/105/319 460/101/319 +f 459/100/321 462/106/321 465/107/322 +f 465/107/322 463/104/321 459/100/321 +f 466/108/323 464/105/324 463/104/324 +f 463/104/324 467/109/323 466/108/323 +f 468/110/322 467/109/322 463/104/321 +f 463/104/321 465/111/322 468/110/322 +f 469/112/11 470/113/11 471/114/11 +f 471/114/11 472/115/11 469/112/11 +f 470/113/325 473/116/325 474/117/326 +f 474/117/326 471/114/327 470/113/325 +f 471/114/321 474/117/321 475/118/322 +f 475/118/322 472/119/321 471/114/321 +f 474/117/328 473/116/329 466/108/330 +f 466/108/330 467/109/330 474/117/328 +f 468/110/322 475/120/322 474/117/321 +f 474/117/321 467/109/322 468/110/322 +f 476/123/11 477/122/11 478/121/11 +f 478/121/11 479/124/11 476/123/11 +f 480/125/279 481/127/279 477/122/279 +f 477/122/279 476/126/279 480/125/279 +f 477/122/331 481/127/331 482/128/331 +f 482/128/331 478/121/278 477/122/331 +f 478/121/332 482/128/332 483/129/332 +f 483/129/332 479/130/332 478/121/332 +f 484/132/279 485/131/279 481/127/279 +f 481/127/279 480/125/279 484/132/279 +f 482/128/281 481/127/333 485/131/280 +f 485/131/280 486/133/282 482/128/281 +f 487/134/332 483/129/332 482/128/332 +f 482/128/332 486/133/332 487/134/332 +f 488/137/65 489/136/65 490/135/65 +f 490/135/65 491/138/65 488/137/65 +f 489/136/279 492/141/279 493/140/279 +f 493/140/279 490/139/279 489/136/279 +f 489/136/334 488/137/334 494/142/334 +f 494/142/334 492/141/334 489/136/334 +f 488/137/332 491/144/332 495/143/332 +f 495/143/332 494/142/332 488/137/332 +f 492/141/279 485/131/279 484/145/279 +f 484/145/279 493/140/279 492/141/279 +f 485/131/335 492/141/284 494/142/284 +f 494/142/284 486/133/285 485/131/335 +f 487/146/332 486/133/332 494/142/332 +f 494/142/332 495/143/332 487/146/332 +f 496/100/11 497/101/11 498/102/11 +f 498/102/11 499/103/11 496/100/11 +f 497/101/278 496/100/277 500/104/277 +f 500/104/277 501/105/331 497/101/278 +f 496/100/279 499/106/279 502/107/279 +f 502/107/279 500/104/279 496/100/279 +f 503/108/280 501/105/281 500/104/281 +f 500/104/281 504/109/280 503/108/280 +f 505/110/279 504/109/279 500/104/279 +f 500/104/279 502/111/279 505/110/279 +f 506/112/65 507/113/65 508/114/65 +f 508/114/65 509/115/65 506/112/65 +f 507/113/334 510/116/334 511/117/283 +f 511/117/283 508/114/283 507/113/334 +f 508/114/279 511/117/279 512/118/279 +f 512/118/279 509/119/279 508/114/279 +f 511/117/284 510/116/336 503/108/285 +f 503/108/285 504/109/285 511/117/284 +f 505/110/279 512/120/279 511/117/279 +f 511/117/279 504/109/279 505/110/279 +f 513/100/65 514/101/65 515/102/65 +f 515/102/65 516/103/65 513/100/65 +f 514/101/320 513/100/319 517/104/319 +f 517/104/319 518/105/319 514/101/320 +f 513/100/322 516/106/321 519/107/321 +f 519/107/321 517/104/321 513/100/322 +f 520/108/323 518/105/324 517/104/324 +f 517/104/324 521/109/323 520/108/323 +f 522/110/322 521/109/337 517/104/321 +f 517/104/321 519/111/321 522/110/322 +f 523/112/11 524/113/11 525/114/11 +f 525/114/11 526/115/11 523/112/11 +f 524/113/326 527/116/325 528/117/325 +f 528/117/325 525/114/325 524/113/326 +f 525/114/322 528/117/321 529/118/321 +f 529/118/321 526/119/322 525/114/322 +f 528/117/329 527/116/329 520/108/330 +f 520/108/330 521/109/330 528/117/329 +f 522/110/322 529/120/321 528/117/321 +f 528/117/321 521/109/337 522/110/322 +f 530/18/12 531/17/12 532/9/12 +f 532/9/12 533/10/12 530/18/12 +f 534/166/9 535/167/9 536/168/9 +f 536/168/9 537/169/9 534/166/9 +f 532/170/338 538/171/339 539/172/339 +f 539/172/339 533/173/338 532/170/338 +f 531/174/11 540/175/11 538/176/11 +f 538/176/11 532/177/11 531/174/11 +f 530/173/340 541/172/341 540/171/341 +f 540/171/341 531/170/340 530/173/340 +f 533/177/65 539/176/65 541/175/65 +f 541/175/65 530/174/65 533/177/65 +f 534/178/342 537/179/342 539/172/339 +f 539/172/339 538/171/339 534/178/342 +f 540/175/11 535/180/11 534/181/11 +f 534/181/11 538/176/11 540/175/11 +f 536/179/343 535/178/343 540/171/341 +f 540/171/341 541/172/341 536/179/343 +f 537/181/65 536/180/65 541/175/65 +f 541/175/65 539/176/65 537/181/65 +f 542/182/65 543/183/65 544/184/65 +f 544/184/65 545/185/65 542/182/65 +f 546/186/12 547/187/12 548/188/12 +f 548/188/12 549/189/12 546/186/12 +f 550/190/344 551/191/15 552/192/15 +f 552/192/15 553/193/344 550/190/344 +f 554/187/9 555/186/9 556/194/9 +f 556/194/9 557/195/9 554/187/9 +f 558/196/345 559/197/346 560/198/346 +f 560/198/346 561/199/345 558/196/345 +f 562/200/65 563/201/65 564/202/65 +f 565/203/65 566/204/65 551/205/65 +f 551/205/65 550/206/65 565/203/65 +f 567/207/65 568/208/65 569/209/65 +f 568/208/65 570/210/65 571/211/65 +f 571/211/65 569/209/65 568/208/65 +f 542/182/65 572/212/65 573/213/65 +f 573/213/65 543/183/65 542/182/65 +f 551/191/15 574/214/347 575/215/347 +f 575/215/347 552/192/15 551/191/15 +f 559/197/346 576/216/348 577/217/348 +f 577/217/348 560/198/346 559/197/346 +f 566/204/65 578/218/65 574/219/65 +f 574/219/65 551/205/65 566/204/65 +f 571/211/65 570/210/65 563/201/65 +f 563/201/65 562/200/65 571/211/65 +f 545/220/9 544/221/9 565/222/9 +f 565/222/9 579/223/9 545/220/9 +f 544/221/349 543/224/350 566/225/350 +f 566/225/350 565/222/349 544/221/349 +f 543/224/351 573/226/352 578/227/352 +f 578/227/352 566/225/351 543/224/351 +f 573/226/12 572/228/12 580/229/12 +f 580/229/12 578/227/12 573/226/12 +f 572/230/353 542/231/354 581/232/354 +f 581/232/354 580/233/353 572/230/353 +f 542/231/355 545/234/356 579/235/356 +f 579/235/356 581/232/355 542/231/355 +f 582/236/65 574/219/65 578/218/65 +f 578/218/65 580/237/65 582/236/65 +f 583/238/9 575/215/9 574/214/9 +f 574/214/9 582/239/9 583/238/9 +f 584/240/12 550/190/12 553/193/12 +f 553/193/12 585/241/12 584/240/12 +f 584/242/65 579/243/65 565/203/65 +f 565/203/65 550/206/65 584/242/65 +f 586/194/12 587/195/12 547/187/12 +f 547/187/12 546/186/12 586/194/12 +f 564/244/357 563/245/357 579/235/357 +f 579/235/357 584/246/357 564/244/357 +f 563/245/356 570/247/355 581/232/355 +f 581/232/355 579/235/356 563/245/356 +f 570/247/354 568/248/353 580/233/353 +f 580/233/353 581/232/354 570/247/354 +f 568/248/358 567/249/358 582/250/359 +f 582/250/359 580/233/359 568/248/358 +f 588/188/9 589/189/9 555/186/9 +f 555/186/9 554/187/9 588/188/9 +f 569/251/345 571/252/345 559/197/345 +f 559/197/345 558/196/345 569/251/345 +f 571/252/360 562/253/348 576/216/348 +f 576/216/348 559/197/360 571/252/360 +f 548/254/15 547/255/15 584/246/15 +f 584/246/15 585/256/15 548/254/15 +f 547/255/15 587/257/15 564/244/15 +f 564/244/15 584/246/15 547/255/15 +f 587/258/65 586/259/65 562/200/65 +f 562/200/65 564/202/65 587/258/65 +f 586/260/346 546/261/346 576/216/346 +f 576/216/346 562/253/346 586/260/346 +f 546/261/346 549/262/346 577/217/346 +f 577/217/346 576/216/346 546/261/346 +f 556/263/346 555/264/346 558/196/346 +f 558/196/346 561/199/346 556/263/346 +f 555/264/346 589/265/346 569/251/346 +f 569/251/346 558/196/346 555/264/346 +f 589/266/65 588/267/65 567/207/65 +f 567/207/65 569/209/65 589/266/65 +f 588/268/15 554/269/15 582/250/15 +f 582/250/15 567/249/15 588/268/15 +f 554/269/15 557/270/15 583/271/15 +f 583/271/15 582/250/15 554/269/15 +f 590/272/361 591/273/361 592/274/362 +f 592/274/362 593/275/361 590/272/361 +f 594/274/363 595/273/364 596/272/364 +f 596/272/364 597/275/364 594/274/363 +f 591/276/11 595/277/11 594/278/11 +f 594/278/11 592/279/11 591/276/11 +f 590/280/365 596/281/365 595/277/365 +f 595/277/365 591/276/365 590/280/365 +f 593/282/65 597/283/65 596/281/65 +f 596/281/65 590/280/65 593/282/65 +f 598/284/9 599/285/9 600/286/9 +f 600/286/9 601/287/9 598/284/9 +f 602/284/12 603/287/12 604/286/12 +f 604/286/12 605/285/12 602/284/12 +f 601/288/64 600/289/65 604/290/65 +f 604/290/65 603/291/64 601/288/64 +f 606/292/9 607/293/9 608/294/9 +f 608/294/9 609/295/9 606/292/9 +f 610/296/11 611/297/11 612/298/11 +f 612/298/11 613/299/11 610/296/11 +f 614/299/65 615/298/366 616/297/367 +f 616/297/367 617/296/65 614/299/65 +f 606/292/9 618/300/9 619/301/9 +f 619/301/9 607/293/9 606/292/9 +f 613/302/9 612/303/9 620/304/9 +f 620/304/9 621/305/9 613/302/9 +f 612/306/9 622/307/9 623/308/9 +f 623/308/9 620/309/9 612/306/9 +f 615/310/9 624/311/9 623/308/9 +f 623/308/9 622/307/9 615/310/9 +f 614/302/9 625/305/9 624/304/9 +f 624/304/9 615/303/9 614/302/9 +f 626/312/15 606/313/15 609/314/368 +f 609/314/368 625/315/368 626/312/15 +f 621/316/15 618/317/15 606/313/15 +f 606/313/15 626/312/15 621/316/15 +f 620/318/65 619/319/65 618/320/65 +f 618/320/65 621/321/65 620/318/65 +f 625/321/11 609/320/11 608/319/11 +f 608/319/11 624/318/11 625/321/11 +f 627/184/12 628/183/12 629/182/12 +f 629/182/12 630/185/12 627/184/12 +f 631/188/65 632/187/65 633/186/65 +f 633/186/65 634/189/65 631/188/65 +f 635/192/15 636/191/15 637/190/369 +f 637/190/369 638/193/369 635/192/15 +f 639/194/11 640/186/11 641/187/11 +f 641/187/11 642/195/11 639/194/11 +f 643/198/346 644/197/346 645/196/370 +f 645/196/370 646/199/370 643/198/346 +f 647/200/12 648/202/12 649/201/12 +f 636/205/12 650/204/12 651/203/12 +f 651/203/12 637/206/12 636/205/12 +f 652/207/12 653/209/12 654/208/12 +f 655/211/12 656/210/12 654/208/12 +f 654/208/12 653/209/12 655/211/12 +f 657/213/12 658/212/12 629/182/12 +f 629/182/12 628/183/12 657/213/12 +f 659/215/371 660/214/371 636/191/15 +f 636/191/15 635/192/15 659/215/371 +f 661/217/372 662/216/372 644/197/346 +f 644/197/346 643/198/346 661/217/372 +f 660/219/12 663/218/12 650/204/12 +f 650/204/12 636/205/12 660/219/12 +f 655/211/12 647/200/12 649/201/12 +f 649/201/12 656/210/12 655/211/12 +f 651/222/11 627/221/11 630/220/11 +f 630/220/11 664/223/11 651/222/11 +f 650/225/373 628/224/373 627/221/373 +f 627/221/373 651/222/373 650/225/373 +f 663/227/374 657/226/374 628/224/374 +f 628/224/374 650/225/374 663/227/374 +f 665/229/65 658/228/65 657/226/65 +f 657/226/65 663/227/65 665/229/65 +f 666/232/375 629/231/375 658/230/376 +f 658/230/376 665/233/376 666/232/375 +f 664/235/377 630/234/377 629/231/377 +f 629/231/377 666/232/377 664/235/377 +f 663/218/12 660/219/12 667/236/12 +f 667/236/12 665/237/12 663/218/12 +f 660/214/11 659/215/11 668/238/11 +f 668/238/11 667/239/11 660/214/11 +f 638/193/65 637/190/65 669/240/65 +f 669/240/65 670/241/65 638/193/65 +f 669/242/12 637/206/12 651/203/12 +f 651/203/12 664/243/12 669/242/12 +f 632/187/65 671/195/65 672/194/65 +f 672/194/65 633/186/65 632/187/65 +f 664/235/378 649/245/378 648/244/378 +f 648/244/378 669/246/378 664/235/378 +f 666/232/377 656/247/377 649/245/377 +f 649/245/377 664/235/377 666/232/377 +f 665/233/376 654/248/376 656/247/375 +f 656/247/375 666/232/375 665/233/376 +f 667/250/379 652/249/379 654/248/379 +f 654/248/379 665/233/379 667/250/379 +f 640/186/11 673/189/11 674/188/11 +f 674/188/11 641/187/11 640/186/11 +f 644/197/380 655/252/380 653/251/370 +f 653/251/370 645/196/370 644/197/380 +f 662/216/372 647/253/372 655/252/381 +f 655/252/381 644/197/381 662/216/372 +f 669/246/15 632/255/15 631/254/15 +f 631/254/15 670/256/15 669/246/15 +f 648/244/15 671/257/15 632/255/15 +f 632/255/15 669/246/15 648/244/15 +f 647/200/12 672/259/12 671/258/12 +f 671/258/12 648/202/12 647/200/12 +f 662/216/346 633/261/346 672/260/346 +f 672/260/346 647/253/346 662/216/346 +f 661/217/346 634/262/346 633/261/346 +f 633/261/346 662/216/346 661/217/346 +f 645/196/346 640/264/346 639/263/346 +f 639/263/346 646/199/346 645/196/346 +f 653/251/346 673/265/346 640/264/346 +f 640/264/346 645/196/346 653/251/346 +f 652/207/12 674/267/12 673/266/12 +f 673/266/12 653/209/12 652/207/12 +f 667/250/15 641/269/15 674/268/15 +f 674/268/15 652/249/15 667/250/15 +f 668/271/15 642/270/15 641/269/15 +f 641/269/15 667/250/15 668/271/15 +f 675/184/11 676/183/11 677/182/11 +f 677/182/11 678/185/11 675/184/11 +f 679/188/12 680/187/12 681/186/12 +f 681/186/12 682/189/12 679/188/12 +f 683/192/15 684/191/15 685/190/344 +f 685/190/344 686/193/344 683/192/15 +f 687/194/9 688/186/9 689/187/9 +f 689/187/9 690/195/9 687/194/9 +f 691/198/346 692/197/346 693/196/345 +f 693/196/345 694/199/345 691/198/346 +f 695/200/11 696/202/11 697/201/11 +f 684/205/11 698/204/11 699/203/11 +f 699/203/11 685/206/11 684/205/11 +f 700/207/11 701/209/11 702/208/11 +f 703/211/11 704/210/11 702/208/11 +f 702/208/11 701/209/11 703/211/11 +f 705/213/11 706/212/11 677/182/11 +f 677/182/11 676/183/11 705/213/11 +f 707/215/347 708/214/347 684/191/15 +f 684/191/15 683/192/15 707/215/347 +f 709/217/348 710/216/348 692/197/346 +f 692/197/346 691/198/346 709/217/348 +f 708/219/11 711/218/11 698/204/11 +f 698/204/11 684/205/11 708/219/11 +f 703/211/11 695/200/11 697/201/11 +f 697/201/11 704/210/11 703/211/11 +f 699/222/9 675/221/9 678/220/9 +f 678/220/9 712/223/9 699/222/9 +f 698/225/350 676/224/350 675/221/349 +f 675/221/349 699/222/349 698/225/350 +f 711/227/352 705/226/352 676/224/351 +f 676/224/351 698/225/351 711/227/352 +f 713/229/12 706/228/12 705/226/12 +f 705/226/12 711/227/12 713/229/12 +f 714/232/354 677/231/354 706/230/353 +f 706/230/353 713/233/353 714/232/354 +f 712/235/356 678/234/356 677/231/355 +f 677/231/355 714/232/355 712/235/356 +f 711/218/11 708/219/11 715/236/11 +f 715/236/11 713/237/11 711/218/11 +f 708/214/9 707/215/9 716/238/9 +f 716/238/9 715/239/9 708/214/9 +f 686/193/12 685/190/12 717/240/12 +f 717/240/12 718/241/12 686/193/12 +f 717/242/11 685/206/11 699/203/11 +f 699/203/11 712/243/11 717/242/11 +f 680/187/12 719/195/12 720/194/12 +f 720/194/12 681/186/12 680/187/12 +f 712/235/357 697/245/357 696/244/357 +f 696/244/357 717/246/357 712/235/357 +f 714/232/355 704/247/355 697/245/356 +f 697/245/356 712/235/356 714/232/355 +f 713/233/353 702/248/353 704/247/354 +f 704/247/354 714/232/354 713/233/353 +f 715/250/359 700/249/359 702/248/359 +f 702/248/359 713/233/359 715/250/359 +f 688/186/9 721/189/9 722/188/9 +f 722/188/9 689/187/9 688/186/9 +f 692/197/345 703/252/345 701/251/345 +f 701/251/345 693/196/345 692/197/345 +f 710/216/348 695/253/348 703/252/360 +f 703/252/360 692/197/360 710/216/348 +f 717/246/15 680/255/15 679/254/15 +f 679/254/15 718/256/15 717/246/15 +f 696/244/15 719/257/15 680/255/15 +f 680/255/15 717/246/15 696/244/15 +f 695/200/11 720/259/11 719/258/11 +f 719/258/11 696/202/11 695/200/11 +f 710/216/346 681/261/346 720/260/346 +f 720/260/346 695/253/346 710/216/346 +f 709/217/346 682/262/346 681/261/346 +f 681/261/346 710/216/346 709/217/346 +f 693/196/346 688/264/346 687/263/346 +f 687/263/346 694/199/346 693/196/346 +f 701/251/346 721/265/346 688/264/346 +f 688/264/346 693/196/346 701/251/346 +f 700/207/11 722/267/11 721/266/11 +f 721/266/11 701/209/11 700/207/11 +f 715/250/15 689/269/15 722/268/15 +f 722/268/15 700/249/15 715/250/15 +f 716/271/15 690/270/15 689/269/15 +f 689/269/15 715/250/15 716/271/15 +f 723/10/15 724/18/15 725/17/15 +f 725/17/15 726/9/15 723/10/15 +f 727/9/10 724/17/11 723/18/11 +f 723/18/11 728/10/10 727/9/10 +f 729/322/12 725/323/12 724/324/12 +f 724/324/12 727/325/12 729/322/12 +f 730/10/64 726/18/65 725/17/65 +f 725/17/65 729/9/64 730/10/64 +f 731/326/382 732/327/346 733/328/346 +f 733/328/346 734/329/382 731/326/382 +f 735/330/12 736/331/12 732/332/12 +f 732/332/12 731/333/12 735/330/12 +f 737/334/383 738/335/15 736/336/15 +f 736/336/15 735/337/383 737/334/383 +f 734/338/65 737/334/65 735/337/65 +f 735/337/65 731/339/65 734/338/65 +f 739/340/11 740/341/11 741/342/11 +f 741/342/11 742/343/11 739/340/11 +f 741/344/384 740/345/384 733/328/346 +f 733/328/346 732/327/346 741/344/384 +f 742/346/12 741/347/12 732/332/12 +f 732/332/12 736/331/12 742/346/12 +f 739/340/385 742/343/385 736/336/15 +f 736/336/15 738/335/15 739/340/385 +f 743/10/15 744/18/15 745/17/15 +f 745/17/15 746/9/15 743/10/15 +f 747/9/10 744/17/11 743/18/11 +f 743/18/11 748/10/10 747/9/10 +f 749/322/12 745/323/12 744/324/12 +f 744/324/12 747/325/12 749/322/12 +f 750/10/64 746/18/65 745/17/65 +f 745/17/65 749/9/64 750/10/64 +f 751/184/12 752/183/12 753/182/12 +f 753/182/12 754/185/12 751/184/12 +f 755/188/65 756/187/65 757/186/65 +f 757/186/65 758/189/65 755/188/65 +f 759/192/15 760/191/15 761/190/386 +f 761/190/386 762/193/386 759/192/15 +f 763/194/11 764/186/11 765/187/11 +f 765/187/11 766/195/11 763/194/11 +f 767/198/346 768/197/346 769/196/387 +f 769/196/387 770/199/387 767/198/346 +f 771/200/12 772/202/12 773/201/12 +f 760/205/12 774/204/12 775/203/12 +f 775/203/12 761/206/12 760/205/12 +f 776/207/12 777/209/12 778/208/12 +f 779/211/12 780/210/12 778/208/12 +f 778/208/12 777/209/12 779/211/12 +f 781/213/12 782/212/12 753/182/12 +f 753/182/12 752/183/12 781/213/12 +f 783/215/388 784/214/388 760/191/15 +f 760/191/15 759/192/15 783/215/388 +f 785/217/389 786/216/389 768/197/346 +f 768/197/346 767/198/346 785/217/389 +f 784/219/12 787/218/12 774/204/12 +f 774/204/12 760/205/12 784/219/12 +f 779/211/12 771/200/12 773/201/12 +f 773/201/12 780/210/12 779/211/12 +f 775/222/11 751/221/11 754/220/11 +f 754/220/11 788/223/11 775/222/11 +f 774/225/390 752/224/390 751/221/373 +f 751/221/373 775/222/373 774/225/390 +f 787/227/374 781/226/374 752/224/391 +f 752/224/391 774/225/391 787/227/374 +f 789/229/65 782/228/65 781/226/65 +f 781/226/65 787/227/65 789/229/65 +f 790/232/375 753/231/375 782/230/375 +f 782/230/375 789/233/375 790/232/375 +f 788/235/392 754/234/392 753/231/392 +f 753/231/392 790/232/392 788/235/392 +f 787/218/12 784/219/12 791/236/12 +f 791/236/12 789/237/12 787/218/12 +f 784/214/11 783/215/11 792/238/11 +f 792/238/11 791/239/11 784/214/11 +f 762/193/65 761/190/65 793/240/65 +f 793/240/65 794/241/65 762/193/65 +f 793/242/12 761/206/12 775/203/12 +f 775/203/12 788/243/12 793/242/12 +f 756/187/65 795/195/65 796/194/65 +f 796/194/65 757/186/65 756/187/65 +f 788/235/393 773/245/393 772/244/378 +f 772/244/378 793/246/378 788/235/393 +f 790/232/392 780/247/392 773/245/392 +f 773/245/392 788/235/392 790/232/392 +f 789/233/375 778/248/375 780/247/375 +f 780/247/375 790/232/375 789/233/375 +f 791/250/394 776/249/394 778/248/394 +f 778/248/394 789/233/394 791/250/394 +f 764/186/11 797/189/11 798/188/11 +f 798/188/11 765/187/11 764/186/11 +f 768/197/395 779/252/395 777/251/387 +f 777/251/387 769/196/387 768/197/395 +f 786/216/389 771/253/389 779/252/396 +f 779/252/396 768/197/396 786/216/389 +f 793/246/15 756/255/15 755/254/15 +f 755/254/15 794/256/15 793/246/15 +f 772/244/15 795/257/15 756/255/15 +f 756/255/15 793/246/15 772/244/15 +f 771/200/12 796/259/12 795/258/12 +f 795/258/12 772/202/12 771/200/12 +f 786/216/346 757/261/346 796/260/346 +f 796/260/346 771/253/346 786/216/346 +f 785/217/346 758/262/346 757/261/346 +f 757/261/346 786/216/346 785/217/346 +f 769/196/346 764/264/346 763/263/346 +f 763/263/346 770/199/346 769/196/346 +f 777/251/346 797/265/346 764/264/346 +f 764/264/346 769/196/346 777/251/346 +f 776/207/12 798/267/12 797/266/12 +f 797/266/12 777/209/12 776/207/12 +f 791/250/15 765/269/15 798/268/15 +f 798/268/15 776/249/15 791/250/15 +f 792/271/15 766/270/15 765/269/15 +f 765/269/15 791/250/15 792/271/15 +f 799/348/397 800/349/398 801/350/399 +f 801/350/399 802/351/400 799/348/397 +f 800/352/401 803/353/402 804/354/403 +f 804/354/403 801/355/404 800/352/401 +f 805/10/405 806/151/406 804/154/407 +f 804/154/407 803/9/408 805/10/405 +f 799/356/409 802/357/410 806/358/410 +f 806/358/410 805/359/409 799/356/409 +f 807/360/411 808/361/9 802/351/400 +f 802/351/400 801/350/399 807/360/411 +f 804/354/403 809/362/346 807/363/346 +f 807/363/346 801/355/404 804/354/403 +f 806/151/406 810/18/12 809/17/412 +f 809/17/412 804/154/407 806/151/406 +f 808/364/15 810/365/15 806/358/410 +f 806/358/410 802/357/410 808/364/15 +f 811/366/413 812/367/414 813/368/415 +f 813/368/415 814/369/416 811/366/413 +f 814/370/417 813/371/418 815/372/419 +f 815/372/419 816/373/420 814/370/417 +f 815/154/421 817/151/422 818/10/423 +f 818/10/423 816/9/424 815/154/421 +f 817/374/425 812/375/425 811/376/426 +f 811/376/426 818/377/426 817/374/425 +f 812/367/414 808/361/9 807/360/411 +f 807/360/411 813/368/415 812/367/414 +f 815/372/419 813/371/418 807/363/346 +f 807/363/346 809/362/346 815/372/419 +f 817/151/422 815/154/421 809/17/412 +f 809/17/412 810/18/12 817/151/422 +f 817/374/425 810/365/15 808/364/15 +f 808/364/15 812/375/425 817/374/425 +f 819/378/427 820/379/428 821/380/428 +f 821/380/428 822/381/427 819/378/427 +f 819/382/429 823/383/430 824/384/431 +f 824/384/431 820/385/432 819/382/429 +f 825/386/433 826/387/434 824/388/434 +f 824/388/434 823/389/433 825/386/433 +f 822/382/435 821/385/436 826/384/437 +f 826/384/437 825/383/438 822/382/435 +f 827/390/439 828/391/439 821/380/428 +f 821/380/428 820/379/428 827/390/439 +f 829/392/440 827/393/441 820/385/432 +f 820/385/432 824/384/431 829/392/440 +f 830/394/442 829/395/442 824/388/434 +f 824/388/434 826/387/434 830/394/442 +f 821/385/436 828/393/443 830/392/444 +f 830/392/444 826/384/437 821/385/436 +f 831/396/445 832/397/445 833/398/445 +f 833/398/445 834/399/445 831/396/445 +f 835/400/446 831/401/446 834/402/446 +f 834/402/446 836/403/446 835/400/446 +f 835/396/447 836/399/447 837/398/447 +f 837/398/447 838/397/447 835/396/447 +f 838/404/448 837/405/448 833/406/448 +f 833/406/448 832/407/448 838/404/448 +f 834/399/449 833/398/449 839/408/449 +f 839/408/449 840/409/449 834/399/449 +f 834/402/450 840/410/450 841/411/450 +f 841/411/450 836/403/450 834/402/450 +f 836/399/451 841/409/451 842/408/451 +f 842/408/451 837/398/451 836/399/451 +f 833/406/452 837/405/452 842/412/452 +f 842/412/452 839/413/452 833/406/452 +f 843/396/453 844/399/453 845/398/453 +f 845/398/453 846/397/453 843/396/453 +f 847/400/446 848/403/446 844/402/446 +f 844/402/446 843/401/446 847/400/446 +f 847/396/454 849/397/454 850/398/454 +f 850/398/454 848/399/454 847/396/454 +f 849/404/448 846/407/448 845/406/448 +f 845/406/448 850/405/448 849/404/448 +f 844/399/455 851/409/455 852/408/455 +f 852/408/455 845/398/455 844/399/455 +f 844/402/450 848/403/450 853/411/450 +f 853/411/450 851/410/450 844/402/450 +f 848/399/456 850/398/456 854/408/456 +f 854/408/456 853/409/456 848/399/456 +f 845/406/452 852/413/452 854/412/452 +f 854/412/452 850/405/452 845/406/452 +f 855/414/15 856/415/15 857/416/15 +f 857/416/15 858/417/15 855/414/15 +f 858/417/64 857/416/64 859/418/64 +f 859/418/64 860/419/64 858/417/64 +f 861/420/368 862/421/368 863/422/368 +f 863/422/368 864/423/368 861/420/368 +f 864/423/12 863/422/12 865/424/12 +f 865/424/12 866/425/12 864/423/12 +f 867/426/368 868/427/368 869/428/368 +f 869/428/368 870/429/368 867/426/368 +f 871/430/9 867/426/9 870/429/9 +f 870/429/9 872/431/9 871/430/9 +f 873/432/64 874/433/64 875/434/64 +f 875/434/64 876/435/64 873/432/64 +f 877/436/10 878/437/10 879/438/10 +f 879/438/10 880/439/10 877/436/10 +f 875/440/9 881/441/9 882/442/9 +f 882/442/9 876/443/9 875/440/9 +f 876/435/457 882/444/457 883/445/457 +f 883/445/457 873/432/457 876/435/457 +f 877/446/9 880/447/9 882/442/9 +f 882/442/9 881/441/9 877/446/9 +f 880/439/458 879/438/458 883/445/458 +f 883/445/458 882/444/458 880/439/458 +f 884/448/459 885/449/459 886/450/459 +f 886/450/459 887/451/459 884/448/459 +f 885/452/460 888/453/460 889/454/460 +f 889/454/460 886/455/460 885/452/460 +f 888/449/461 890/448/461 891/451/461 +f 891/451/461 889/450/461 888/449/461 +f 891/454/462 890/453/462 884/452/462 +f 884/452/462 887/455/462 891/454/462 +f 884/448/463 892/456/463 893/457/463 +f 893/457/463 885/449/463 884/448/463 +f 885/452/464 893/458/464 894/459/464 +f 894/459/464 888/453/464 885/452/464 +f 888/449/465 894/457/465 895/456/465 +f 895/456/465 890/448/465 888/449/465 +f 884/452/466 890/453/466 895/459/466 +f 895/459/466 892/458/466 884/452/466 +f 896/448/459 897/449/459 898/450/459 +f 898/450/459 899/451/459 896/448/459 +f 897/452/460 900/453/460 901/454/460 +f 901/454/460 898/455/460 897/452/460 +f 900/449/461 902/448/461 903/451/461 +f 903/451/461 901/450/461 900/449/461 +f 903/454/462 902/453/462 896/452/462 +f 896/452/462 899/455/462 903/454/462 +f 896/448/463 904/456/463 905/457/463 +f 905/457/463 897/449/463 896/448/463 +f 897/452/464 905/458/464 906/459/464 +f 906/459/464 900/453/464 897/452/464 +f 900/449/465 906/457/465 907/456/465 +f 907/456/465 902/448/465 900/449/465 +f 896/452/466 902/453/466 907/459/466 +f 907/459/466 904/458/466 896/452/466 +f 908/448/459 909/449/459 910/450/459 +f 910/450/459 911/451/459 908/448/459 +f 909/452/460 912/453/460 913/454/460 +f 913/454/460 910/455/460 909/452/460 +f 912/449/461 914/448/461 915/451/461 +f 915/451/461 913/450/461 912/449/461 +f 915/454/462 914/453/462 908/452/462 +f 908/452/462 911/455/462 915/454/462 +f 908/448/463 916/456/463 917/457/463 +f 917/457/463 909/449/463 908/448/463 +f 909/452/464 917/458/464 918/459/464 +f 918/459/464 912/453/464 909/452/464 +f 912/449/465 918/457/465 919/456/465 +f 919/456/465 914/448/465 912/449/465 +f 908/452/466 914/453/466 919/459/466 +f 919/459/466 916/458/466 908/452/466 +f 920/448/459 921/449/459 922/450/459 +f 922/450/459 923/451/459 920/448/459 +f 921/452/460 924/453/460 925/454/460 +f 925/454/460 922/455/460 921/452/460 +f 924/449/461 926/448/461 927/451/461 +f 927/451/461 925/450/461 924/449/461 +f 927/454/462 926/453/462 920/452/462 +f 920/452/462 923/455/462 927/454/462 +f 920/448/463 928/456/463 929/457/463 +f 929/457/463 921/449/463 920/448/463 +f 921/452/464 929/458/464 930/459/464 +f 930/459/464 924/453/464 921/452/464 +f 924/449/465 930/457/465 931/456/465 +f 931/456/465 926/448/465 924/449/465 +f 920/452/466 926/453/466 931/459/466 +f 931/459/466 928/458/466 920/452/466 +f 932/448/459 933/449/459 934/450/459 +f 934/450/459 935/451/459 932/448/459 +f 933/452/460 936/453/460 937/454/460 +f 937/454/460 934/455/460 933/452/460 +f 936/449/461 938/448/461 939/451/461 +f 939/451/461 937/450/461 936/449/461 +f 939/454/462 938/453/462 932/452/462 +f 932/452/462 935/455/462 939/454/462 +f 932/448/463 940/456/463 941/457/463 +f 941/457/463 933/449/463 932/448/463 +f 933/452/464 941/458/464 942/459/464 +f 942/459/464 936/453/464 933/452/464 +f 936/449/465 942/457/465 943/456/465 +f 943/456/465 938/448/465 936/449/465 +f 932/452/466 938/453/466 943/459/466 +f 943/459/466 940/458/466 932/452/466 +f 944/448/459 945/449/459 946/450/459 +f 946/450/459 947/451/459 944/448/459 +f 945/452/460 948/453/460 949/454/460 +f 949/454/460 946/455/460 945/452/460 +f 948/449/461 950/448/461 951/451/461 +f 951/451/461 949/450/461 948/449/461 +f 951/454/462 950/453/462 944/452/462 +f 944/452/462 947/455/462 951/454/462 +f 944/448/463 952/456/463 953/457/463 +f 953/457/463 945/449/463 944/448/463 +f 945/452/464 953/458/464 954/459/464 +f 954/459/464 948/453/464 945/452/464 +f 948/449/465 954/457/465 955/456/465 +f 955/456/465 950/448/465 948/449/465 +f 944/452/466 950/453/466 955/459/466 +f 955/459/466 952/458/466 944/452/466 +f 956/460/467 957/461/467 958/462/467 +f 958/462/467 959/463/467 956/460/467 +f 960/464/468 961/465/468 957/466/468 +f 957/466/468 956/467/468 960/464/468 +f 962/468/469 963/469/469 961/470/469 +f 961/470/469 960/471/469 962/468/469 +f 962/464/470 959/467/470 958/466/470 +f 958/466/470 963/465/470 962/464/470 +f 964/472/471 965/473/471 958/462/471 +f 958/462/471 957/461/471 964/472/471 +f 966/474/472 964/475/472 957/466/472 +f 957/466/472 961/465/472 966/474/472 +f 967/476/473 966/477/473 961/470/473 +f 961/470/473 963/469/473 967/476/473 +f 958/466/474 965/475/474 967/474/474 +f 967/474/474 963/465/474 958/466/474 +f 968/460/467 969/461/467 970/462/467 +f 970/462/467 971/463/467 968/460/467 +f 972/464/475 973/465/475 969/466/475 +f 969/466/475 968/467/475 972/464/475 +f 974/468/469 975/469/469 973/470/469 +f 973/470/469 972/471/469 974/468/469 +f 974/464/476 971/467/476 970/466/476 +f 970/466/476 975/465/476 974/464/476 +f 976/472/471 977/473/471 970/462/471 +f 970/462/471 969/461/471 976/472/471 +f 978/474/472 976/475/472 969/466/472 +f 969/466/472 973/465/472 978/474/472 +f 979/476/473 978/477/473 973/470/473 +f 973/470/473 975/469/473 979/476/473 +f 970/466/474 977/475/474 979/474/474 +f 979/474/474 975/465/474 970/466/474 +f 980/478/477 981/479/477 982/480/477 +f 982/480/477 983/481/477 980/478/477 +f 984/482/478 985/483/478 981/479/478 +f 981/479/478 980/478/478 984/482/478 +f 986/484/479 987/485/479 985/483/479 +f 985/483/479 984/482/479 986/484/479 +f 988/486/480 989/487/480 987/485/480 +f 987/485/480 986/484/480 988/486/480 +f 990/488/481 991/489/481 989/490/481 +f 989/490/481 988/491/481 990/488/481 +f 983/481/482 982/480/482 991/489/482 +f 991/489/482 990/488/482 983/481/482 +f 992/492/483 993/493/483 994/494/483 +f 994/494/483 995/495/483 992/492/483 +f 996/495/484 997/492/484 998/493/484 +f 998/493/484 999/494/484 996/495/484 +f 994/496/485 996/497/485 999/498/485 +f 999/498/485 995/499/485 994/496/485 +f 993/500/486 997/501/486 996/502/486 +f 996/502/486 994/503/486 993/500/486 +f 992/499/12 998/498/12 997/497/12 +f 997/497/12 993/496/12 992/499/12 +f 995/503/487 999/502/487 998/501/487 +f 998/501/487 992/500/487 995/503/487 +f 1000/504/488 1001/505/488 1002/506/488 +f 1002/506/488 1003/507/488 1000/504/488 +f 1004/506/481 1005/505/481 1006/504/481 +f 1006/504/481 1007/507/481 1004/506/481 +f 1002/508/9 1004/509/9 1007/510/9 +f 1007/510/9 1003/511/9 1002/508/9 +f 1001/512/489 1005/513/489 1004/514/489 +f 1004/514/489 1002/515/489 1001/512/489 +f 1008/511/12 1009/510/12 1010/509/12 +f 1010/509/12 1011/508/12 1008/511/12 +f 1000/504/478 1008/516/478 1011/517/478 +f 1011/517/478 1001/505/478 1000/504/478 +f 1010/517/481 1009/516/481 1006/504/481 +f 1006/504/481 1005/505/481 1010/517/481 +f 1011/518/490 1010/519/490 1005/513/490 +f 1005/513/490 1001/512/490 1011/518/490 +f 1012/520/491 1013/521/491 1014/522/491 +f 1014/522/491 1015/523/491 1012/520/491 +f 1016/524/9 1017/525/9 1013/526/9 +f 1013/526/9 1012/527/9 1016/524/9 +f 1018/528/492 1019/529/492 1017/530/492 +f 1017/530/492 1016/531/492 1018/528/492 +f 1015/532/493 1014/533/493 1019/534/493 +f 1019/534/493 1018/535/493 1015/532/493 +f 1013/521/494 1020/536/494 1021/537/494 +f 1021/537/494 1014/522/494 1013/521/494 +f 1017/525/495 1022/538/495 1020/539/495 +f 1020/539/495 1013/526/495 1017/525/495 +f 1019/529/496 1023/540/496 1022/541/496 +f 1022/541/496 1017/530/496 1019/529/496 +f 1014/533/493 1021/542/493 1023/543/493 +f 1023/543/493 1019/534/493 1014/533/493 +f 1020/536/497 1024/544/497 1025/545/497 +f 1025/545/497 1021/537/497 1020/536/497 +f 1022/538/485 1026/546/485 1024/547/485 +f 1024/547/485 1020/539/485 1022/538/485 +f 1023/540/498 1027/548/498 1026/549/498 +f 1026/549/498 1022/541/498 1023/540/498 +f 1021/542/12 1025/550/12 1027/551/12 +f 1027/551/12 1023/543/12 1021/542/12 +f 1024/544/499 1028/552/499 1029/553/499 +f 1029/553/499 1025/545/499 1024/544/499 +f 1026/546/485 1030/554/485 1028/555/485 +f 1028/555/485 1024/547/485 1026/546/485 +f 1027/548/500 1031/556/500 1030/557/500 +f 1030/557/500 1026/549/500 1027/548/500 +f 1025/550/12 1029/558/12 1031/559/12 +f 1031/559/12 1027/551/12 1025/550/12 +f 1028/552/501 1032/560/501 1033/561/501 +f 1033/561/501 1029/553/501 1028/552/501 +f 1030/554/502 1034/562/502 1032/563/502 +f 1032/563/502 1028/555/502 1030/554/502 +f 1031/556/503 1035/564/503 1034/565/503 +f 1034/565/503 1030/557/503 1031/556/503 +f 1029/558/504 1033/566/504 1035/567/504 +f 1035/567/504 1031/559/504 1029/558/504 +f 1032/560/505 1036/568/505 1037/569/505 +f 1037/569/505 1033/561/505 1032/560/505 +f 1034/562/485 1038/570/485 1036/571/485 +f 1036/571/485 1032/563/485 1034/562/485 +f 1035/564/506 1039/572/506 1038/573/506 +f 1038/573/506 1034/565/506 1035/564/506 +f 1033/566/504 1037/574/504 1039/575/504 +f 1039/575/504 1035/567/504 1033/566/504 +f 1036/568/507 1040/576/507 1041/577/507 +f 1041/577/507 1037/569/507 1036/568/507 +f 1038/570/502 1042/578/502 1040/579/502 +f 1040/579/502 1036/571/502 1038/570/502 +f 1039/572/508 1043/580/508 1042/581/508 +f 1042/581/508 1038/573/508 1039/572/508 +f 1037/574/509 1041/582/509 1043/583/509 +f 1043/583/509 1039/575/509 1037/574/509 +f 1040/576/496 1044/584/496 1045/585/496 +f 1045/585/496 1041/577/496 1040/576/496 +f 1042/578/485 1046/586/485 1044/587/485 +f 1044/587/485 1040/579/485 1042/578/485 +f 1043/580/494 1047/588/494 1046/589/494 +f 1046/589/494 1042/581/494 1043/580/494 +f 1041/582/12 1045/590/12 1047/591/12 +f 1047/591/12 1043/583/12 1041/582/12 +f 1044/584/510 1048/592/510 1049/593/510 +f 1049/593/510 1045/585/510 1044/584/510 +f 1046/586/9 1050/594/9 1048/595/9 +f 1048/595/9 1044/587/9 1046/586/9 +f 1047/588/511 1051/596/511 1050/597/511 +f 1050/597/511 1046/589/511 1047/588/511 +f 1045/590/12 1049/598/12 1051/599/12 +f 1051/599/12 1047/591/12 1045/590/12 +f 1048/592/512 1052/600/512 1053/601/512 +f 1053/601/512 1049/593/512 1048/592/512 +f 1050/594/9 1054/602/9 1052/603/9 +f 1052/603/9 1048/595/9 1050/594/9 +f 1051/596/499 1055/604/499 1054/605/499 +f 1054/605/499 1050/597/499 1051/596/499 +f 1049/598/12 1053/606/12 1055/607/12 +f 1055/607/12 1051/599/12 1049/598/12 +f 1052/600/503 1056/608/503 1057/609/503 +f 1057/609/503 1053/601/503 1052/600/503 +f 1054/602/502 1058/610/502 1056/611/502 +f 1056/611/502 1052/603/502 1054/602/502 +f 1055/604/513 1059/612/513 1058/613/513 +f 1058/613/513 1054/605/513 1055/604/513 +f 1053/606/509 1057/614/509 1059/615/509 +f 1059/615/509 1055/607/509 1053/606/509 +f 1056/608/514 1012/616/514 1015/617/514 +f 1015/617/514 1057/609/514 1056/608/514 +f 1058/610/485 1016/524/485 1012/527/485 +f 1012/527/485 1056/611/485 1058/610/485 +f 1059/612/505 1018/618/505 1016/619/505 +f 1016/619/505 1058/613/505 1059/612/505 +f 1057/614/504 1015/532/504 1018/535/504 +f 1018/535/504 1059/615/504 1057/614/504 +f 1060/520/491 1061/521/491 1062/522/491 +f 1062/522/491 1063/523/491 1060/520/491 +f 1064/524/9 1065/525/9 1061/526/9 +f 1061/526/9 1060/527/9 1064/524/9 +f 1066/528/507 1067/529/507 1065/530/507 +f 1065/530/507 1064/531/507 1066/528/507 +f 1063/532/504 1062/533/504 1067/534/504 +f 1067/534/504 1066/535/504 1063/532/504 +f 1061/521/515 1068/536/515 1069/537/515 +f 1069/537/515 1062/522/515 1061/521/515 +f 1065/525/495 1070/538/495 1068/539/495 +f 1068/539/495 1061/526/495 1065/525/495 +f 1067/529/516 1071/540/516 1070/541/516 +f 1070/541/516 1065/530/516 1067/529/516 +f 1062/533/509 1069/542/509 1071/543/509 +f 1071/543/509 1067/534/509 1062/533/509 +f 1068/536/511 1072/544/511 1073/545/511 +f 1073/545/511 1069/537/511 1068/536/511 +f 1070/538/9 1074/546/9 1072/547/9 +f 1072/547/9 1068/539/9 1070/538/9 +f 1071/540/510 1075/548/510 1074/549/510 +f 1074/549/510 1070/541/510 1071/540/510 +f 1069/542/509 1073/550/509 1075/551/509 +f 1075/551/509 1071/543/509 1069/542/509 +f 1072/544/517 1076/552/517 1077/553/517 +f 1077/553/517 1073/545/517 1072/544/517 +f 1074/546/9 1078/554/9 1076/555/9 +f 1076/555/9 1072/547/9 1074/546/9 +f 1075/548/518 1079/556/518 1078/557/518 +f 1078/557/518 1074/549/518 1075/548/518 +f 1073/550/12 1077/558/12 1079/559/12 +f 1079/559/12 1075/551/12 1073/550/12 +f 1076/552/501 1080/560/501 1081/561/501 +f 1081/561/501 1077/553/501 1076/552/501 +f 1078/554/485 1082/562/485 1080/563/485 +f 1080/563/485 1076/555/485 1078/554/485 +f 1079/556/519 1083/564/519 1082/565/519 +f 1082/565/519 1078/557/519 1079/556/519 +f 1077/558/504 1081/566/504 1083/567/504 +f 1083/567/504 1079/559/504 1077/558/504 +f 1080/560/520 1084/568/520 1085/569/520 +f 1085/569/520 1081/561/520 1080/560/520 +f 1082/562/502 1086/570/502 1084/571/502 +f 1084/571/502 1080/563/502 1082/562/502 +f 1083/564/514 1087/572/514 1086/573/514 +f 1086/573/514 1082/565/514 1083/564/514 +f 1081/566/504 1085/574/504 1087/575/504 +f 1087/575/504 1083/567/504 1081/566/504 +f 1084/568/492 1088/576/492 1089/577/492 +f 1089/577/492 1085/569/492 1084/568/492 +f 1086/570/495 1090/578/495 1088/579/495 +f 1088/579/495 1084/571/495 1086/570/495 +f 1087/572/491 1091/580/491 1090/581/491 +f 1090/581/491 1086/573/491 1087/572/491 +f 1085/574/493 1089/582/493 1091/583/493 +f 1091/583/493 1087/575/493 1085/574/493 +f 1088/576/516 1092/584/516 1093/585/516 +f 1093/585/516 1089/577/516 1088/576/516 +f 1090/578/485 1094/586/485 1092/587/485 +f 1092/587/485 1088/579/485 1090/578/485 +f 1091/580/515 1095/588/515 1094/589/515 +f 1094/589/515 1090/581/515 1091/580/515 +f 1089/582/504 1093/590/504 1095/591/504 +f 1095/591/504 1091/583/504 1089/582/504 +f 1092/584/510 1096/592/510 1097/593/510 +f 1097/593/510 1093/585/510 1092/584/510 +f 1094/586/485 1098/594/485 1096/595/485 +f 1096/595/485 1092/587/485 1094/586/485 +f 1095/588/511 1099/596/511 1098/597/511 +f 1098/597/511 1094/589/511 1095/588/511 +f 1093/590/12 1097/598/12 1099/599/12 +f 1099/599/12 1095/591/12 1093/590/12 +f 1096/592/518 1100/600/518 1101/601/518 +f 1101/601/518 1097/593/518 1096/592/518 +f 1098/594/502 1102/602/502 1100/603/502 +f 1100/603/502 1096/595/502 1098/594/502 +f 1099/596/517 1103/604/517 1102/605/517 +f 1102/605/517 1098/597/517 1099/596/517 +f 1097/598/12 1101/606/12 1103/607/12 +f 1103/607/12 1099/599/12 1097/598/12 +f 1100/600/519 1104/608/519 1105/609/519 +f 1105/609/519 1101/601/519 1100/600/519 +f 1102/602/9 1106/610/9 1104/611/9 +f 1104/611/9 1100/603/9 1102/602/9 +f 1103/604/501 1107/612/501 1106/613/501 +f 1106/613/501 1102/605/501 1103/604/501 +f 1101/606/509 1105/614/509 1107/615/509 +f 1107/615/509 1103/607/509 1101/606/509 +f 1104/608/514 1060/616/514 1063/617/514 +f 1063/617/514 1105/609/514 1104/608/514 +f 1106/610/485 1064/524/485 1060/527/485 +f 1060/527/485 1104/611/485 1106/610/485 +f 1107/612/520 1066/618/520 1064/619/520 +f 1064/619/520 1106/613/520 1107/612/520 +f 1105/614/504 1063/532/504 1066/535/504 +f 1066/535/504 1107/615/504 1105/614/504 +f 1108/504/521 1109/505/521 1110/506/521 +f 1110/506/521 1111/507/521 1108/504/521 +f 1112/506/522 1113/505/522 1114/504/522 +f 1114/504/522 1115/507/522 1112/506/522 +f 1110/508/502 1112/509/502 1115/510/502 +f 1115/510/502 1111/511/502 1110/508/502 +f 1109/512/523 1113/513/523 1112/514/523 +f 1112/514/523 1110/515/523 1109/512/523 +f 1116/511/509 1117/510/509 1118/509/509 +f 1118/509/509 1119/508/509 1116/511/509 +f 1108/504/524 1116/516/524 1119/517/524 +f 1119/517/524 1109/505/524 1108/504/524 +f 1118/517/522 1117/516/522 1114/504/522 +f 1114/504/522 1113/505/522 1118/517/522 +f 1119/518/525 1118/519/525 1113/513/525 +f 1113/513/525 1109/512/525 1119/518/525 +f 1120/620/526 1121/621/526 1122/622/526 +f 1122/622/526 1123/623/526 1120/620/526 +f 1124/624/527 1125/625/527 1121/626/527 +f 1121/626/527 1120/627/527 1124/624/527 +f 1121/621/528 1126/628/528 1127/629/528 +f 1127/629/528 1122/622/528 1121/621/528 +f 1125/625/529 1128/630/529 1126/631/529 +f 1126/631/529 1121/626/529 1125/625/529 +f 1126/628/530 1129/632/530 1130/633/530 +f 1130/633/530 1127/629/530 1126/628/530 +f 1128/630/531 1131/634/531 1129/635/531 +f 1129/635/531 1126/631/531 1128/630/531 +f 1129/632/532 1132/636/532 1133/637/532 +f 1133/637/532 1130/633/532 1129/632/532 +f 1131/634/533 1134/638/533 1132/639/533 +f 1132/639/533 1129/635/533 1131/634/533 +f 1132/640/534 1135/641/534 1136/642/534 +f 1136/642/534 1133/643/534 1132/640/534 +f 1134/644/535 1137/645/535 1135/646/535 +f 1135/646/535 1132/647/535 1134/644/535 +f 1135/641/536 1120/620/536 1123/623/536 +f 1123/623/536 1136/642/536 1135/641/536 +f 1137/645/537 1124/624/537 1120/627/537 +f 1120/627/537 1135/646/537 1137/645/537 +f 1138/492/65 1139/493/65 1140/494/65 +f 1140/494/65 1141/495/65 1138/492/65 +f 1142/495/11 1143/492/11 1144/493/11 +f 1144/493/11 1145/494/11 1142/495/11 +f 1140/496/495 1142/497/495 1145/498/495 +f 1145/498/495 1141/499/495 1140/496/495 +f 1139/500/538 1143/501/538 1142/502/538 +f 1142/502/538 1140/503/538 1139/500/538 +f 1138/499/509 1144/498/509 1143/497/509 +f 1143/497/509 1139/496/509 1138/499/509 +f 1141/503/368 1145/502/368 1144/501/368 +f 1144/501/368 1138/500/368 1141/503/368 +f 1146/492/487 1147/493/487 1148/494/487 +f 1148/494/487 1149/495/487 1146/492/487 +f 1150/495/486 1151/492/486 1152/493/486 +f 1152/493/486 1153/494/486 1150/495/486 +f 1148/496/502 1150/497/502 1153/498/502 +f 1153/498/502 1149/499/502 1148/496/502 +f 1147/500/483 1151/501/483 1150/502/483 +f 1150/502/483 1148/503/483 1147/500/483 +f 1146/499/509 1152/498/509 1151/497/509 +f 1151/497/509 1147/496/509 1146/499/509 +f 1149/503/484 1153/502/484 1152/501/484 +f 1152/501/484 1146/500/484 1149/503/484 +f 1154/504/539 1155/505/539 1156/506/539 +f 1156/506/539 1157/507/539 1154/504/539 +f 1158/506/540 1159/505/540 1160/504/540 +f 1160/504/540 1161/507/540 1158/506/540 +f 1156/508/9 1158/509/9 1161/510/9 +f 1161/510/9 1157/511/9 1156/508/9 +f 1155/512/541 1159/513/541 1158/514/541 +f 1158/514/541 1156/515/541 1155/512/541 +f 1162/511/12 1163/510/12 1164/509/12 +f 1164/509/12 1165/508/12 1162/511/12 +f 1154/504/542 1162/516/542 1165/517/542 +f 1165/517/542 1155/505/542 1154/504/542 +f 1164/517/543 1163/516/543 1160/504/543 +f 1160/504/543 1159/505/543 1164/517/543 +f 1165/518/544 1164/519/544 1159/513/544 +f 1159/513/544 1155/512/544 1165/518/544 +f 1166/504/545 1167/505/545 1168/506/545 +f 1168/506/545 1169/507/545 1166/504/545 +f 1170/506/546 1171/505/546 1172/504/546 +f 1172/504/546 1173/507/546 1170/506/546 +f 1168/508/485 1170/509/485 1173/510/485 +f 1173/510/485 1169/511/485 1168/508/485 +f 1167/512/547 1171/513/547 1170/514/547 +f 1170/514/547 1168/515/547 1167/512/547 +f 1174/511/12 1175/510/12 1176/509/12 +f 1176/509/12 1177/508/12 1174/511/12 +f 1166/504/548 1174/516/548 1177/517/548 +f 1177/517/548 1167/505/548 1166/504/548 +f 1176/517/549 1175/516/549 1172/504/549 +f 1172/504/549 1171/505/549 1176/517/549 +f 1177/518/550 1176/519/550 1171/513/550 +f 1171/513/550 1167/512/550 1177/518/550 +f 1178/492/551 1179/493/551 1180/494/551 +f 1180/494/551 1181/495/551 1178/492/551 +f 1182/495/368 1183/492/368 1184/493/368 +f 1184/493/368 1185/494/368 1182/495/368 +f 1180/496/485 1182/497/485 1185/498/485 +f 1185/498/485 1181/499/485 1180/496/485 +f 1179/500/10 1183/501/10 1182/502/10 +f 1182/502/10 1180/503/10 1179/500/10 +f 1178/499/504 1184/498/504 1183/497/504 +f 1183/497/504 1179/496/504 1178/499/504 +f 1181/503/64 1185/502/64 1184/501/64 +f 1184/501/64 1178/500/64 1181/503/64 +f 1186/504/552 1187/505/552 1188/506/552 +f 1188/506/552 1189/507/552 1186/504/552 +f 1190/506/553 1191/505/553 1192/504/553 +f 1192/504/553 1193/507/553 1190/506/553 +f 1188/508/485 1190/509/485 1193/510/485 +f 1193/510/485 1189/511/485 1188/508/485 +f 1187/512/554 1191/513/554 1190/514/554 +f 1190/514/554 1188/515/554 1187/512/554 +f 1194/511/504 1195/510/504 1196/509/504 +f 1196/509/504 1197/508/504 1194/511/504 +f 1186/504/555 1194/516/555 1197/517/555 +f 1197/517/555 1187/505/555 1186/504/555 +f 1196/517/556 1195/516/556 1192/504/556 +f 1192/504/556 1191/505/556 1196/517/556 +f 1197/518/557 1196/519/557 1191/513/557 +f 1191/513/557 1187/512/557 1197/518/557 +f 1198/504/558 1199/505/558 1200/506/558 +f 1200/506/558 1201/507/558 1198/504/558 +f 1202/506/559 1203/505/559 1204/504/559 +f 1204/504/559 1205/507/559 1202/506/559 +f 1200/508/9 1202/509/9 1205/510/9 +f 1205/510/9 1201/511/9 1200/508/9 +f 1199/512/560 1203/513/560 1202/514/560 +f 1202/514/560 1200/515/560 1199/512/560 +f 1206/511/12 1207/510/12 1208/509/12 +f 1208/509/12 1209/508/12 1206/511/12 +f 1198/504/561 1206/516/561 1209/517/561 +f 1209/517/561 1199/505/561 1198/504/561 +f 1208/517/562 1207/516/562 1204/504/562 +f 1204/504/562 1203/505/562 1208/517/562 +f 1209/518/563 1208/519/563 1203/513/563 +f 1203/513/563 1199/512/563 1209/518/563 +f 1210/504/564 1211/505/564 1212/506/564 +f 1212/506/564 1213/507/564 1210/504/564 +f 1214/506/565 1215/505/565 1216/504/565 +f 1216/504/565 1217/507/565 1214/506/565 +f 1212/508/9 1214/509/9 1217/510/9 +f 1217/510/9 1213/511/9 1212/508/9 +f 1211/512/566 1215/513/566 1214/514/566 +f 1214/514/566 1212/515/566 1211/512/566 +f 1218/511/504 1219/510/504 1220/509/504 +f 1220/509/504 1221/508/504 1218/511/504 +f 1210/504/567 1218/516/567 1221/517/567 +f 1221/517/567 1211/505/567 1210/504/567 +f 1220/517/565 1219/516/565 1216/504/565 +f 1216/504/565 1215/505/565 1220/517/565 +f 1221/518/568 1220/519/568 1215/513/568 +f 1215/513/568 1211/512/568 1221/518/568 +f 1222/504/569 1223/505/569 1224/506/569 +f 1224/506/569 1225/507/569 1222/504/569 +f 1226/506/570 1227/505/570 1228/504/570 +f 1228/504/570 1229/507/570 1226/506/570 +f 1224/508/485 1226/509/485 1229/510/485 +f 1229/510/485 1225/511/485 1224/508/485 +f 1223/512/571 1227/513/571 1226/514/571 +f 1226/514/571 1224/515/571 1223/512/571 +f 1230/511/504 1231/510/504 1232/509/504 +f 1232/509/504 1233/508/504 1230/511/504 +f 1222/504/569 1230/516/569 1233/517/569 +f 1233/517/569 1223/505/569 1222/504/569 +f 1232/517/572 1231/516/572 1228/504/572 +f 1228/504/572 1227/505/572 1232/517/572 +f 1233/518/573 1232/519/573 1227/513/573 +f 1227/513/573 1223/512/573 1233/518/573 +f 1234/492/551 1235/493/551 1236/494/551 +f 1236/494/551 1237/495/551 1234/492/551 +f 1238/495/368 1239/492/368 1240/493/368 +f 1240/493/368 1241/494/368 1238/495/368 +f 1236/496/485 1238/497/485 1241/498/485 +f 1241/498/485 1237/499/485 1236/496/485 +f 1235/500/10 1239/501/10 1238/502/10 +f 1238/502/10 1236/503/10 1235/500/10 +f 1234/499/504 1240/498/504 1239/497/504 +f 1239/497/504 1235/496/504 1234/499/504 +f 1237/503/64 1241/502/64 1240/501/64 +f 1240/501/64 1234/500/64 1237/503/64 +f 1242/492/483 1243/493/483 1244/494/483 +f 1244/494/483 1245/495/483 1242/492/483 +f 1246/495/484 1247/492/484 1248/493/484 +f 1248/493/484 1249/494/484 1246/495/484 +f 1244/496/495 1246/497/495 1249/498/495 +f 1249/498/495 1245/499/495 1244/496/495 +f 1243/500/486 1247/501/486 1246/502/486 +f 1246/502/486 1244/503/486 1243/500/486 +f 1242/499/12 1248/498/12 1247/497/12 +f 1247/497/12 1243/496/12 1242/499/12 +f 1245/503/487 1249/502/487 1248/501/487 +f 1248/501/487 1242/500/487 1245/503/487 +f 1250/492/487 1251/493/487 1252/494/487 +f 1252/494/487 1253/495/487 1250/492/487 +f 1254/495/486 1255/492/486 1256/493/486 +f 1256/493/486 1257/494/486 1254/495/486 +f 1252/496/502 1254/497/502 1257/498/502 +f 1257/498/502 1253/499/502 1252/496/502 +f 1251/500/483 1255/501/483 1254/502/483 +f 1254/502/483 1252/503/483 1251/500/483 +f 1250/499/509 1256/498/509 1255/497/509 +f 1255/497/509 1251/496/509 1250/499/509 +f 1253/503/484 1257/502/484 1256/501/484 +f 1256/501/484 1250/500/484 1253/503/484 +f 1258/620/478 1259/621/478 1260/622/478 +f 1260/622/478 1261/623/478 1258/620/478 +f 1262/624/574 1263/625/574 1259/626/574 +f 1259/626/574 1258/627/574 1262/624/574 +f 1259/621/575 1264/628/575 1265/629/575 +f 1265/629/575 1260/622/575 1259/621/575 +f 1263/625/576 1266/630/576 1264/631/576 +f 1264/631/576 1259/626/576 1263/625/576 +f 1264/628/482 1267/632/482 1268/633/482 +f 1268/633/482 1265/629/482 1264/628/482 +f 1266/630/577 1269/634/577 1267/635/577 +f 1267/635/577 1264/631/577 1266/630/577 +f 1267/632/578 1270/636/578 1271/637/578 +f 1271/637/578 1268/633/578 1267/632/578 +f 1269/634/579 1272/638/579 1270/639/579 +f 1270/639/579 1267/635/579 1269/634/579 +f 1270/640/580 1273/641/580 1274/642/580 +f 1274/642/580 1271/643/580 1270/640/580 +f 1272/644/581 1275/645/581 1273/646/581 +f 1273/646/581 1270/647/581 1272/644/581 +f 1273/641/479 1258/620/479 1261/623/479 +f 1261/623/479 1274/642/479 1273/641/479 +f 1275/645/582 1262/624/582 1258/627/582 +f 1258/627/582 1273/646/582 1275/645/582 +f 1276/492/64 1277/493/64 1278/494/64 +f 1278/494/64 1279/495/64 1276/492/64 +f 1280/495/10 1281/492/10 1282/493/10 +f 1282/493/10 1283/494/10 1280/495/10 +f 1278/496/485 1280/497/485 1283/498/485 +f 1283/498/485 1279/499/485 1278/496/485 +f 1277/500/538 1281/501/538 1280/502/538 +f 1280/502/538 1278/503/538 1277/500/538 +f 1276/499/504 1282/498/504 1281/497/504 +f 1281/497/504 1277/496/504 1276/499/504 +f 1279/503/368 1283/502/368 1282/501/368 +f 1282/501/368 1276/500/368 1279/503/368 +f 1284/504/583 1285/505/583 1286/506/583 +f 1286/506/583 1287/507/583 1284/504/583 +f 1288/506/584 1289/505/584 1290/504/584 +f 1290/504/584 1291/507/584 1288/506/584 +f 1286/508/502 1288/509/502 1291/510/502 +f 1291/510/502 1287/511/502 1286/508/502 +f 1285/512/585 1289/513/585 1288/514/585 +f 1288/514/585 1286/515/585 1285/512/585 +f 1292/511/509 1293/510/509 1294/509/509 +f 1294/509/509 1295/508/509 1292/511/509 +f 1284/504/583 1292/516/583 1295/517/583 +f 1295/517/583 1285/505/583 1284/504/583 +f 1294/517/586 1293/516/586 1290/504/586 +f 1290/504/586 1289/505/586 1294/517/586 +f 1295/518/587 1294/519/587 1289/513/587 +f 1289/513/587 1285/512/587 1295/518/587 +f 1296/504/588 1297/505/588 1298/506/588 +f 1298/506/588 1299/507/588 1296/504/588 +f 1300/506/589 1301/505/589 1302/504/589 +f 1302/504/589 1303/507/589 1300/506/589 +f 1298/508/485 1300/509/485 1303/510/485 +f 1303/510/485 1299/511/485 1298/508/485 +f 1297/512/590 1301/513/590 1300/514/590 +f 1300/514/590 1298/515/590 1297/512/590 +f 1304/511/12 1305/510/12 1306/509/12 +f 1306/509/12 1307/508/12 1304/511/12 +f 1296/504/591 1304/516/591 1307/517/591 +f 1307/517/591 1297/505/591 1296/504/591 +f 1306/517/592 1305/516/592 1302/504/592 +f 1302/504/592 1301/505/592 1306/517/592 +f 1307/518/593 1306/519/593 1301/513/593 +f 1301/513/593 1297/512/593 1307/518/593 +f 1308/504/594 1309/505/594 1310/506/594 +f 1310/506/594 1311/507/594 1308/504/594 +f 1312/506/595 1313/505/595 1314/504/595 +f 1314/504/595 1315/507/595 1312/506/595 +f 1310/508/495 1312/509/495 1315/510/495 +f 1315/510/495 1311/511/495 1310/508/495 +f 1309/512/596 1313/513/596 1312/514/596 +f 1312/514/596 1310/515/596 1309/512/596 +f 1316/511/12 1317/510/12 1318/509/12 +f 1318/509/12 1319/508/12 1316/511/12 +f 1308/504/594 1316/516/594 1319/517/594 +f 1319/517/594 1309/505/594 1308/504/594 +f 1318/517/595 1317/516/595 1314/504/595 +f 1314/504/595 1313/505/595 1318/517/595 +f 1319/518/597 1318/519/597 1313/513/597 +f 1313/513/597 1309/512/597 1319/518/597 +f 1320/504/598 1321/505/598 1322/506/598 +f 1322/506/598 1323/507/598 1320/504/598 +f 1324/506/599 1325/505/599 1326/504/599 +f 1326/504/599 1327/507/599 1324/506/599 +f 1322/508/9 1324/509/9 1327/510/9 +f 1327/510/9 1323/511/9 1322/508/9 +f 1321/512/600 1325/513/600 1324/514/600 +f 1324/514/600 1322/515/600 1321/512/600 +f 1328/511/504 1329/510/504 1330/509/504 +f 1330/509/504 1331/508/504 1328/511/504 +f 1320/504/601 1328/516/601 1331/517/601 +f 1331/517/601 1321/505/601 1320/504/601 +f 1330/517/602 1329/516/602 1326/504/602 +f 1326/504/602 1325/505/602 1330/517/602 +f 1331/518/603 1330/519/603 1325/513/603 +f 1325/513/603 1321/512/603 1331/518/603 +f 1332/648/604 1333/649/604 1334/650/604 +f 1334/650/604 1335/651/604 1332/648/604 +f 1333/652/605 1336/653/605 1337/654/605 +f 1337/654/605 1334/655/605 1333/652/605 +f 1337/656/606 1336/657/606 1338/658/606 +f 1338/658/606 1339/659/606 1337/656/606 +f 1339/660/607 1338/661/607 1332/662/607 +f 1332/662/607 1335/663/607 1339/660/607 +f 1332/648/608 1340/664/608 1341/665/608 +f 1341/665/608 1333/649/608 1332/648/608 +f 1336/653/609 1333/652/609 1341/666/609 +f 1341/666/609 1342/667/609 1336/653/609 +f 1336/657/610 1342/668/610 1343/669/610 +f 1343/669/610 1338/658/610 1336/657/610 +f 1338/661/611 1343/670/611 1340/671/611 +f 1340/671/611 1332/662/611 1338/661/611 +f 1344/504/612 1345/505/612 1346/506/612 +f 1346/506/612 1347/507/612 1344/504/612 +f 1348/506/613 1349/505/613 1350/504/613 +f 1350/504/613 1351/507/613 1348/506/613 +f 1346/508/502 1348/509/502 1351/510/502 +f 1351/510/502 1347/511/502 1346/508/502 +f 1345/512/614 1349/513/614 1348/514/614 +f 1348/514/614 1346/515/614 1345/512/614 +f 1352/511/12 1353/510/12 1354/509/12 +f 1354/509/12 1355/508/12 1352/511/12 +f 1344/504/615 1352/516/615 1355/517/615 +f 1355/517/615 1345/505/615 1344/504/615 +f 1354/517/616 1353/516/616 1350/504/616 +f 1350/504/616 1349/505/616 1354/517/616 +f 1355/518/617 1354/519/617 1349/513/617 +f 1349/513/617 1345/512/617 1355/518/617 +f 1356/504/618 1357/505/618 1358/506/618 +f 1358/506/618 1359/507/618 1356/504/618 +f 1360/506/619 1361/505/619 1362/504/619 +f 1362/504/619 1363/507/619 1360/506/619 +f 1358/508/502 1360/509/502 1363/510/502 +f 1363/510/502 1359/511/502 1358/508/502 +f 1357/512/620 1361/513/620 1360/514/620 +f 1360/514/620 1358/515/620 1357/512/620 +f 1364/511/12 1365/510/12 1366/509/12 +f 1366/509/12 1367/508/12 1364/511/12 +f 1356/504/621 1364/516/621 1367/517/621 +f 1367/517/621 1357/505/621 1356/504/621 +f 1366/517/622 1365/516/622 1362/504/622 +f 1362/504/622 1361/505/622 1366/517/622 +f 1367/518/623 1366/519/623 1361/513/623 +f 1361/513/623 1357/512/623 1367/518/623 +f 1368/504/624 1369/505/624 1370/506/624 +f 1370/506/624 1371/507/624 1368/504/624 +f 1372/506/625 1373/505/625 1374/504/625 +f 1374/504/625 1375/507/625 1372/506/625 +f 1370/508/502 1372/509/502 1375/510/502 +f 1375/510/502 1371/511/502 1370/508/502 +f 1369/512/626 1373/513/626 1372/514/626 +f 1372/514/626 1370/515/626 1369/512/626 +f 1376/511/509 1377/510/509 1378/509/509 +f 1378/509/509 1379/508/509 1376/511/509 +f 1368/504/627 1376/516/627 1379/517/627 +f 1379/517/627 1369/505/627 1368/504/627 +f 1378/517/628 1377/516/628 1374/504/628 +f 1374/504/628 1373/505/628 1378/517/628 +f 1379/518/629 1378/519/629 1373/513/629 +f 1373/513/629 1369/512/629 1379/518/629 +f 1380/504/630 1381/505/630 1382/506/630 +f 1382/506/630 1383/507/630 1380/504/630 +f 1384/506/631 1385/505/631 1386/504/631 +f 1386/504/631 1387/507/631 1384/506/631 +f 1382/508/9 1384/509/9 1387/510/9 +f 1387/510/9 1383/511/9 1382/508/9 +f 1381/512/632 1385/513/632 1384/514/632 +f 1384/514/632 1382/515/632 1381/512/632 +f 1388/511/12 1389/510/12 1390/509/12 +f 1390/509/12 1391/508/12 1388/511/12 +f 1380/504/630 1388/516/630 1391/517/630 +f 1391/517/630 1381/505/630 1380/504/630 +f 1390/517/633 1389/516/633 1386/504/633 +f 1386/504/633 1385/505/633 1390/517/633 +f 1391/518/634 1390/519/634 1385/513/634 +f 1385/513/634 1381/512/634 1391/518/634 +f 1392/672/9 1393/673/9 1394/674/9 +f 1394/674/9 1395/675/9 1392/672/9 +f 1394/676/11 1396/677/11 1397/678/11 +f 1397/678/11 1395/679/11 1394/676/11 +f 1393/680/635 1398/681/635 1396/682/635 +f 1396/682/635 1394/683/635 1393/680/635 +f 1393/676/64 1392/679/64 1399/678/64 +f 1399/678/64 1398/677/64 1393/676/64 +f 1395/683/636 1397/682/636 1399/681/636 +f 1399/681/636 1392/680/636 1395/683/636 +f 1400/684/11 1401/685/11 1397/678/11 +f 1397/678/11 1396/677/11 1400/684/11 +f 1402/686/637 1400/687/637 1396/682/637 +f 1396/682/637 1398/681/637 1402/686/637 +f 1399/678/65 1403/685/65 1402/684/65 +f 1402/684/65 1398/677/65 1399/678/65 +f 1401/687/638 1403/686/638 1399/681/638 +f 1399/681/638 1397/682/638 1401/687/638 +f 1404/396/453 1405/397/453 1406/398/453 +f 1406/398/453 1407/399/453 1404/396/453 +f 1408/400/639 1404/401/639 1407/402/639 +f 1407/402/639 1409/403/639 1408/400/639 +f 1408/396/454 1409/399/454 1410/398/454 +f 1410/398/454 1411/397/454 1408/396/454 +f 1411/404/640 1410/405/640 1406/406/640 +f 1406/406/640 1405/407/640 1411/404/640 +f 1407/399/641 1406/398/641 1412/408/641 +f 1412/408/641 1413/409/641 1407/399/641 +f 1407/402/642 1413/410/642 1414/411/642 +f 1414/411/642 1409/403/642 1407/402/642 +f 1409/399/643 1414/409/643 1415/408/643 +f 1415/408/643 1410/398/643 1409/399/643 +f 1406/406/644 1410/405/644 1415/412/644 +f 1415/412/644 1412/413/644 1406/406/644 +f 1416/672/64 1417/673/64 1418/674/64 +f 1418/674/64 1419/675/64 1416/672/64 +f 1420/675/10 1421/672/10 1422/673/10 +f 1422/673/10 1423/674/10 1420/675/10 +f 1418/676/9 1424/677/9 1425/678/9 +f 1425/678/9 1419/679/9 1418/676/9 +f 1417/680/645 1426/681/645 1424/682/645 +f 1424/682/645 1418/683/645 1417/680/645 +f 1417/676/509 1416/679/509 1427/678/509 +f 1427/678/509 1426/677/509 1417/676/509 +f 1419/683/646 1425/682/646 1427/681/646 +f 1427/681/646 1416/680/646 1419/683/646 +f 1420/684/9 1423/685/9 1425/678/9 +f 1425/678/9 1424/677/9 1420/684/9 +f 1421/686/647 1420/687/647 1424/682/647 +f 1424/682/647 1426/681/647 1421/686/647 +f 1427/678/509 1422/685/509 1421/684/509 +f 1421/684/509 1426/677/509 1427/678/509 +f 1423/687/648 1422/686/648 1427/681/648 +f 1427/681/648 1425/682/648 1423/687/648 +f 1428/396/453 1429/399/453 1430/398/453 +f 1430/398/453 1431/397/453 1428/396/453 +f 1432/400/446 1433/403/446 1429/402/446 +f 1429/402/446 1428/401/446 1432/400/446 +f 1432/396/454 1434/397/454 1435/398/454 +f 1435/398/454 1433/399/454 1432/396/454 +f 1434/404/448 1431/407/448 1430/406/448 +f 1430/406/448 1435/405/448 1434/404/448 +f 1429/399/649 1436/409/649 1437/408/649 +f 1437/408/649 1430/398/649 1429/399/649 +f 1429/402/650 1433/403/650 1438/411/650 +f 1438/411/650 1436/410/650 1429/402/650 +f 1433/399/651 1435/398/651 1439/408/651 +f 1439/408/651 1438/409/651 1433/399/651 +f 1430/406/652 1437/413/652 1439/412/652 +f 1439/412/652 1435/405/652 1430/406/652 +f 1440/648/653 1441/651/653 1442/650/653 +f 1442/650/653 1443/649/653 1440/648/653 +f 1443/652/605 1442/655/605 1444/654/605 +f 1444/654/605 1445/653/605 1443/652/605 +f 1444/656/654 1446/659/654 1447/658/654 +f 1447/658/654 1445/657/654 1444/656/654 +f 1446/660/607 1441/663/607 1440/662/607 +f 1440/662/607 1447/661/607 1446/660/607 +f 1440/648/655 1443/649/655 1448/665/655 +f 1448/665/655 1449/664/655 1440/648/655 +f 1445/653/656 1450/667/656 1448/666/656 +f 1448/666/656 1443/652/656 1445/653/656 +f 1445/657/657 1447/658/657 1451/669/657 +f 1451/669/657 1450/668/657 1445/657/657 +f 1447/661/658 1440/662/658 1449/671/658 +f 1449/671/658 1451/670/658 1447/661/658 +f 1452/688/538 1453/689/538 1454/690/538 +f 1454/690/538 1455/691/538 1452/688/538 +f 1456/692/10 1457/693/10 1453/694/10 +f 1453/694/10 1452/695/10 1456/692/10 +f 1458/691/368 1459/690/368 1457/689/368 +f 1457/689/368 1456/688/368 1458/691/368 +f 1460/696/551 1461/697/551 1462/698/551 +f 1462/698/551 1463/699/551 1460/696/551 +f 1464/700/9 1465/701/9 1461/702/9 +f 1461/702/9 1460/703/9 1464/700/9 +f 1466/699/659 1467/698/659 1465/697/659 +f 1465/697/659 1464/696/659 1466/699/659 +f 1468/672/9 1469/673/9 1470/674/9 +f 1470/674/9 1471/675/9 1468/672/9 +f 1470/676/10 1472/677/10 1473/678/10 +f 1473/678/10 1471/679/10 1470/676/10 +f 1469/680/635 1474/681/635 1472/682/635 +f 1472/682/635 1470/683/635 1469/680/635 +f 1469/676/64 1468/679/64 1475/678/64 +f 1475/678/64 1474/677/64 1469/676/64 +f 1471/683/636 1473/682/636 1475/681/636 +f 1475/681/636 1468/680/636 1471/683/636 +f 1476/684/10 1477/685/10 1473/678/10 +f 1473/678/10 1472/677/10 1476/684/10 +f 1478/686/660 1476/687/660 1472/682/660 +f 1472/682/660 1474/681/660 1478/686/660 +f 1475/678/64 1479/685/64 1478/684/64 +f 1478/684/64 1474/677/64 1475/678/64 +f 1477/687/661 1479/686/661 1475/681/661 +f 1475/681/661 1473/682/661 1477/687/661 +f 1480/704/64 1481/705/64 1482/706/64 +f 1482/706/64 1483/707/64 1480/704/64 +f 1484/708/662 1480/709/662 1483/710/662 +f 1483/710/662 1485/711/662 1484/708/662 +f 1486/712/663 1481/713/663 1480/714/663 +f 1480/714/663 1484/715/663 1486/712/663 +f 1486/708/664 1487/711/664 1482/710/664 +f 1482/710/664 1481/709/664 1486/708/664 +f 1485/715/665 1483/714/665 1482/713/665 +f 1482/713/665 1487/712/665 1485/715/665 +f 1488/706/10 1489/705/10 1490/704/10 +f 1490/704/10 1491/707/10 1488/706/10 +f 1491/706/666 1490/705/666 1492/704/666 +f 1492/704/666 1493/707/666 1491/706/666 +f 1490/706/667 1489/705/667 1494/704/667 +f 1494/704/667 1492/707/667 1490/706/667 +f 1494/707/668 1489/706/668 1488/705/668 +f 1488/705/668 1495/704/668 1494/707/668 +f 1488/706/669 1491/705/669 1493/704/669 +f 1493/704/669 1495/707/669 1488/706/669 +f 1496/716/368 1497/717/368 1498/718/368 +f 1498/718/368 1499/719/368 1496/716/368 +f 1500/720/12 1501/721/12 1497/717/12 +f 1497/717/12 1496/716/12 1500/720/12 +f 1502/722/368 1503/723/368 1504/724/368 +f 1504/724/368 1505/725/368 1502/722/368 +f 1505/725/12 1504/724/12 1506/726/12 +f 1506/726/12 1507/727/12 1505/725/12 +f 1508/728/368 1509/729/368 1510/730/368 +f 1510/730/368 1511/731/368 1508/728/368 +f 1511/731/10 1510/730/10 1512/732/10 +f 1512/732/10 1513/733/10 1511/731/10 +f 750/734/493 728/735/493 723/736/493 +f 723/736/493 746/737/493 750/734/493 +f 1514/738/670 1515/739/670 1516/740/670 +f 1516/740/670 1517/741/670 1514/738/670 +f 1517/742/671 1516/743/671 1518/744/671 +f 1518/744/671 1519/745/671 1517/742/671 +f 1518/740/672 1520/739/672 1521/738/672 +f 1521/738/672 1519/741/672 1518/740/672 +f 1520/744/673 1515/743/673 1514/742/673 +f 1514/742/673 1521/745/673 1520/744/673 +f 1514/738/674 1517/741/674 1522/746/674 +f 1522/746/674 1523/747/674 1514/738/674 +f 1517/742/675 1519/745/675 1524/748/675 +f 1524/748/675 1522/749/675 1517/742/675 +f 1521/738/676 1525/747/676 1524/746/676 +f 1524/746/676 1519/741/676 1521/738/676 +f 1521/745/677 1514/742/677 1523/749/677 +f 1523/749/677 1525/748/677 1521/745/677 +f 1526/738/670 1527/741/670 1528/740/670 +f 1528/740/670 1529/739/670 1526/738/670 +f 1527/742/678 1530/745/678 1531/744/678 +f 1531/744/678 1528/743/678 1527/742/678 +f 1531/740/672 1530/741/672 1532/738/672 +f 1532/738/672 1533/739/672 1531/740/672 +f 1533/744/679 1532/745/679 1526/742/679 +f 1526/742/679 1529/743/679 1533/744/679 +f 1526/738/674 1534/747/674 1535/746/674 +f 1535/746/674 1527/741/674 1526/738/674 +f 1527/742/680 1535/749/680 1536/748/680 +f 1536/748/680 1530/745/680 1527/742/680 +f 1532/738/676 1530/741/676 1536/746/676 +f 1536/746/676 1537/747/676 1532/738/676 +f 1532/745/681 1537/748/681 1534/749/681 +f 1534/749/681 1526/742/681 1532/745/681 +f 1538/750/653 1539/751/653 1540/752/653 +f 1540/752/653 1541/753/653 1538/750/653 +f 1539/754/682 1542/755/682 1543/756/682 +f 1543/756/682 1540/757/682 1539/754/682 +f 1543/758/654 1542/759/654 1544/760/654 +f 1544/760/654 1545/761/654 1543/758/654 +f 1545/762/683 1544/763/683 1538/764/683 +f 1538/764/683 1541/765/683 1545/762/683 +f 1538/750/655 1546/766/655 1547/767/655 +f 1547/767/655 1539/751/655 1538/750/655 +f 1542/755/684 1539/754/684 1547/768/684 +f 1547/768/684 1548/769/684 1542/755/684 +f 1542/759/657 1548/770/657 1549/771/657 +f 1549/771/657 1544/760/657 1542/759/657 +f 1544/763/685 1549/772/685 1546/773/685 +f 1546/773/685 1538/764/685 1544/763/685 +f 1550/774/538 1551/775/538 1552/776/538 +f 1552/776/538 1553/777/538 1550/774/538 +f 1554/778/12 1555/779/12 1551/780/12 +f 1551/780/12 1550/781/12 1554/778/12 +f 1556/777/368 1557/776/368 1555/775/368 +f 1555/775/368 1554/774/368 1556/777/368 +f 1558/750/604 1559/753/604 1560/752/604 +f 1560/752/604 1561/751/604 1558/750/604 +f 1561/754/682 1560/757/682 1562/756/682 +f 1562/756/682 1563/755/682 1561/754/682 +f 1562/758/606 1564/761/606 1565/760/606 +f 1565/760/606 1563/759/606 1562/758/606 +f 1564/762/683 1559/765/683 1558/764/683 +f 1558/764/683 1565/763/683 1564/762/683 +f 1558/750/608 1561/751/608 1566/767/608 +f 1566/767/608 1567/766/608 1558/750/608 +f 1563/755/686 1568/769/686 1566/768/686 +f 1566/768/686 1561/754/686 1563/755/686 +f 1563/759/610 1565/760/610 1569/771/610 +f 1569/771/610 1568/770/610 1563/759/610 +f 1565/763/687 1558/764/687 1567/773/687 +f 1567/773/687 1569/772/687 1565/763/687 +f 1570/620/526 1571/621/526 1572/622/526 +f 1572/622/526 1573/623/526 1570/620/526 +f 1574/624/527 1575/625/527 1571/626/527 +f 1571/626/527 1570/627/527 1574/624/527 +f 1571/621/528 1576/628/528 1577/629/528 +f 1577/629/528 1572/622/528 1571/621/528 +f 1575/625/529 1578/630/529 1576/631/529 +f 1576/631/529 1571/626/529 1575/625/529 +f 1576/628/530 1579/632/530 1580/633/530 +f 1580/633/530 1577/629/530 1576/628/530 +f 1578/630/531 1581/634/531 1579/635/531 +f 1579/635/531 1576/631/531 1578/630/531 +f 1579/632/532 1582/636/532 1583/637/532 +f 1583/637/532 1580/633/532 1579/632/532 +f 1581/634/533 1584/638/533 1582/639/533 +f 1582/639/533 1579/635/533 1581/634/533 +f 1582/640/534 1585/641/534 1586/642/534 +f 1586/642/534 1583/643/534 1582/640/534 +f 1584/644/535 1587/645/535 1585/646/535 +f 1585/646/535 1582/647/535 1584/644/535 +f 1585/641/688 1570/620/688 1573/623/688 +f 1573/623/688 1586/642/688 1585/641/688 +f 1587/645/537 1574/624/537 1570/627/537 +f 1570/627/537 1585/646/537 1587/645/537 +f 1588/782/689 1589/783/689 1590/784/689 +f 1590/784/689 1591/785/689 1588/782/689 +f 1592/786/690 1588/787/690 1591/788/690 +f 1591/788/690 1593/789/690 1592/786/690 +f 1594/790/691 1589/791/691 1588/792/691 +f 1588/792/691 1592/793/691 1594/790/691 +f 1595/794/692 1590/795/692 1589/796/692 +f 1589/796/692 1594/797/692 1595/794/692 +f 1593/793/693 1591/792/693 1590/791/693 +f 1590/791/693 1595/790/693 1593/793/693 +# 2214 faces + diff --git a/examples/shaders/resources/models/watermill_diffuse.png b/examples/shaders/resources/models/watermill_diffuse.png new file mode 100644 index 0000000..a44d7c6 Binary files /dev/null and b/examples/shaders/resources/models/watermill_diffuse.png differ diff --git a/examples/shaders/resources/plasma.png b/examples/shaders/resources/plasma.png new file mode 100644 index 0000000..01c2d88 Binary files /dev/null and b/examples/shaders/resources/plasma.png differ diff --git a/examples/shaders/resources/raysan.png b/examples/shaders/resources/raysan.png new file mode 100644 index 0000000..36e13ba Binary files /dev/null and b/examples/shaders/resources/raysan.png differ diff --git a/examples/shaders/resources/shaders/glsl100/base.fs b/examples/shaders/resources/shaders/glsl100/base.fs new file mode 100644 index 0000000..6a8d44e --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/base.fs @@ -0,0 +1,23 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +void main() +{ + // Texel color fetching from texture sampler + vec4 texelColor = texture2D(texture0, fragTexCoord); + + // NOTE: Implement here your fragment shader code + + gl_FragColor = texelColor*colDiffuse; +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl100/base.vs b/examples/shaders/resources/shaders/glsl100/base.vs new file mode 100644 index 0000000..32e8399 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/base.vs @@ -0,0 +1,26 @@ +#version 100 + +// Input vertex attributes +attribute vec3 vertexPosition; +attribute vec2 vertexTexCoord; +attribute vec3 vertexNormal; +attribute vec4 vertexColor; + +// Input uniform values +uniform mat4 mvp; + +// Output vertex attributes (to fragment shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// NOTE: Add here your custom variables + +void main() +{ + // Send vertex attributes to fragment shader + fragTexCoord = vertexTexCoord; + fragColor = vertexColor; + + // Calculate final vertex position + gl_Position = mvp*vec4(vertexPosition, 1.0); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl100/bloom.fs b/examples/shaders/resources/shaders/glsl100/bloom.fs new file mode 100644 index 0000000..673e011 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/bloom.fs @@ -0,0 +1,39 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +const vec2 size = vec2(800, 450); // render size +const float samples = 5.0; // pixels per axis; higher = bigger glow, worse performance +const float quality = 2.5; // lower = smaller glow, better quality + +void main() +{ + vec4 sum = vec4(0); + vec2 sizeFactor = vec2(1)/size*quality; + + // Texel color fetching from texture sampler + vec4 source = texture2D(texture0, fragTexCoord); + + const int range = 2; // should be = (samples - 1)/2; + + for (int x = -range; x <= range; x++) + { + for (int y = -range; y <= range; y++) + { + sum += texture2D(texture0, fragTexCoord + vec2(x, y)*sizeFactor); + } + } + + // Calculate final fragment color + gl_FragColor = ((sum/(samples*samples)) + source)*colDiffuse; +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl100/blur.fs b/examples/shaders/resources/shaders/glsl100/blur.fs new file mode 100644 index 0000000..2fef571 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/blur.fs @@ -0,0 +1,34 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +// NOTE: Render size values must be passed from code +const float renderWidth = 800.0; +const float renderHeight = 450.0; + +vec3 offset = vec3(0.0, 1.3846153846, 3.2307692308); +vec3 weight = vec3(0.2270270270, 0.3162162162, 0.0702702703); + +void main() +{ + // Texel color fetching from texture sampler + vec3 tc = texture2D(texture0, fragTexCoord).rgb*weight.x; + + tc += texture2D(texture0, fragTexCoord + vec2(offset.y)/renderWidth, 0.0).rgb*weight.y; + tc += texture2D(texture0, fragTexCoord - vec2(offset.y)/renderWidth, 0.0).rgb*weight.y; + + tc += texture2D(texture0, fragTexCoord + vec2(offset.z)/renderWidth, 0.0).rgb*weight.z; + tc += texture2D(texture0, fragTexCoord - vec2(offset.z)/renderWidth, 0.0).rgb*weight.z; + + gl_FragColor = vec4(tc, 1.0); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl100/color_mix.fs b/examples/shaders/resources/shaders/glsl100/color_mix.fs new file mode 100644 index 0000000..a163a8a --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/color_mix.fs @@ -0,0 +1,26 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform sampler2D texture1; +uniform vec4 colDiffuse; + +uniform float divider; + +void main() +{ + // Texel color fetching from texture sampler + vec4 texelColor0 = texture2D(texture0, fragTexCoord); + vec4 texelColor1 = texture2D(texture1, fragTexCoord); + + float x = fract(fragTexCoord.s); + float final = smoothstep(divider - 0.1, divider + 0.1, x); + + gl_FragColor = mix(texelColor0, texelColor1, final); +} diff --git a/examples/shaders/resources/shaders/glsl100/cross_hatching.fs b/examples/shaders/resources/shaders/glsl100/cross_hatching.fs new file mode 100644 index 0000000..d978de8 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/cross_hatching.fs @@ -0,0 +1,47 @@ +# version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +float hatchOffsetY = 5.0; +float lumThreshold01 = 0.9; +float lumThreshold02 = 0.7; +float lumThreshold03 = 0.5; +float lumThreshold04 = 0.3; + +void main() +{ + vec3 tc = vec3(1.0, 1.0, 1.0); + float lum = length(texture2D(texture0, fragTexCoord).rgb); + + if (lum < lumThreshold01) + { + if (mod(gl_FragCoord.x + gl_FragCoord.y, 10.0) == 0.0) tc = vec3(0.0, 0.0, 0.0); + } + + if (lum < lumThreshold02) + { + if (mod(gl_FragCoord .x - gl_FragCoord .y, 10.0) == 0.0) tc = vec3(0.0, 0.0, 0.0); + } + + if (lum < lumThreshold03) + { + if (mod(gl_FragCoord .x + gl_FragCoord .y - hatchOffsetY, 10.0) == 0.0) tc = vec3(0.0, 0.0, 0.0); + } + + if (lum < lumThreshold04) + { + if (mod(gl_FragCoord .x - gl_FragCoord .y - hatchOffsetY, 10.0) == 0.0) tc = vec3(0.0, 0.0, 0.0); + } + + gl_FragColor = vec4(tc, 1.0); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl100/cross_stitching.fs b/examples/shaders/resources/shaders/glsl100/cross_stitching.fs new file mode 100644 index 0000000..a7a348d --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/cross_stitching.fs @@ -0,0 +1,57 @@ +# version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +// NOTE: Render size values must be passed from code +const float renderWidth = 800.0; +const float renderHeight = 450.0; + +float stitchingSize = 6.0; +int invert = 0; + +vec4 PostFX(sampler2D tex, vec2 uv) +{ + vec4 c = vec4(0.0); + float size = stitchingSize; + vec2 cPos = uv * vec2(renderWidth, renderHeight); + vec2 tlPos = floor(cPos / vec2(size, size)); + tlPos *= size; + + int remX = int(mod(cPos.x, size)); + int remY = int(mod(cPos.y, size)); + + if (remX == 0 && remY == 0) tlPos = cPos; + + vec2 blPos = tlPos; + blPos.y += (size - 1.0); + + if ((remX == remY) || (((int(cPos.x) - int(blPos.x)) == (int(blPos.y) - int(cPos.y))))) + { + if (invert == 1) c = vec4(0.2, 0.15, 0.05, 1.0); + else c = texture2D(tex, tlPos * vec2(1.0/renderWidth, 1.0/renderHeight)) * 1.4; + } + else + { + if (invert == 1) c = texture2D(tex, tlPos * vec2(1.0/renderWidth, 1.0/renderHeight)) * 1.4; + else c = vec4(0.0, 0.0, 0.0, 1.0); + } + + return c; +} + +void main() +{ + vec3 tc = PostFX(texture0, fragTexCoord).rgb; + + gl_FragColor = vec4(tc, 1.0); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl100/cubes_panning.fs b/examples/shaders/resources/shaders/glsl100/cubes_panning.fs new file mode 100644 index 0000000..9e5eab0 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/cubes_panning.fs @@ -0,0 +1,60 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Custom variables +const float PI = 3.14159265358979323846; +uniform float uTime; + +float divisions = 5.0; +float angle = 0.0; + +vec2 VectorRotateTime(vec2 v, float speed) +{ + float time = uTime*speed; + float localTime = fract(time); // The time domain this works on is 1 sec. + + if ((localTime >= 0.0) && (localTime < 0.25)) angle = 0.0; + else if ((localTime >= 0.25) && (localTime < 0.50)) angle = PI/4.0*sin(2.0*PI*localTime - PI/2.0); + else if ((localTime >= 0.50) && (localTime < 0.75)) angle = PI*0.25; + else if ((localTime >= 0.75) && (localTime < 1.00)) angle = PI/4.0*sin(2.0*PI*localTime); + + // Rotate vector by angle + v -= 0.5; + v = mat2(cos(angle), -sin(angle), sin(angle), cos(angle))*v; + v += 0.5; + + return v; +} + +float Rectangle(in vec2 st, in float size, in float fill) +{ + float roundSize = 0.5 - size/2.0; + float left = step(roundSize, st.x); + float top = step(roundSize, st.y); + float bottom = step(roundSize, 1.0 - st.y); + float right = step(roundSize, 1.0 - st.x); + + return (left*bottom*right*top)*fill; +} + +void main() +{ + vec2 fragPos = fragTexCoord; + fragPos.xy += uTime/9.0; + + fragPos *= divisions; + vec2 ipos = floor(fragPos); // Get the integer coords + vec2 fpos = fract(fragPos); // Get the fractional coords + + fpos = VectorRotateTime(fpos, 0.2); + + float alpha = Rectangle(fpos, 0.216, 1.0); + vec3 color = vec3(0.3, 0.3, 0.3); + + gl_FragColor = vec4(color, alpha); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl100/depth.fs b/examples/shaders/resources/shaders/glsl100/depth.fs new file mode 100644 index 0000000..7809927 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/depth.fs @@ -0,0 +1,26 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; // Depth texture +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +void main() +{ + float zNear = 0.01; // camera z near + float zFar = 10.0; // camera z far + float z = texture2D(texture0, fragTexCoord).x; + + // Linearize depth value + float depth = (2.0*zNear)/(zFar + zNear - z*(zFar - zNear)); + + // Calculate final fragment color + gl_FragColor = vec4(depth, depth, depth, 1.0f); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl100/distortion.fs b/examples/shaders/resources/shaders/glsl100/distortion.fs new file mode 100644 index 0000000..c232be2 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/distortion.fs @@ -0,0 +1,54 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; + +// Input uniform values +uniform sampler2D texture0; + +// NOTE: Default parameters for Oculus Rift DK2 device +const vec2 LeftLensCenter = vec2(0.2863248, 0.5); +const vec2 RightLensCenter = vec2(0.7136753, 0.5); +const vec2 LeftScreenCenter = vec2(0.25, 0.5); +const vec2 RightScreenCenter = vec2(0.75, 0.5); +const vec2 Scale = vec2(0.25, 0.45); +const vec2 ScaleIn = vec2(4.0, 2.5); +const vec4 HmdWarpParam = vec4(1.0, 0.22, 0.24, 0.0); +const vec4 ChromaAbParam = vec4(0.996, -0.004, 1.014, 0.0); + +void main() +{ + // The following two variables need to be set per eye + vec2 LensCenter = fragTexCoord.x < 0.5 ? LeftLensCenter : RightLensCenter; + vec2 ScreenCenter = fragTexCoord.x < 0.5 ? LeftScreenCenter : RightScreenCenter; + + // Scales input texture coordinates for distortion: vec2 HmdWarp(vec2 fragTexCoord, vec2 LensCenter) + vec2 theta = (fragTexCoord - LensCenter)*ScaleIn; // Scales to [-1, 1] + float rSq = theta.x*theta.x + theta.y*theta.y; + vec2 theta1 = theta*(HmdWarpParam.x + HmdWarpParam.y*rSq + HmdWarpParam.z*rSq*rSq + HmdWarpParam.w*rSq*rSq*rSq); + //vec2 tc = LensCenter + Scale*theta1; + + // Detect whether blue texture coordinates are out of range since these will scaled out the furthest + vec2 thetaBlue = theta1*(ChromaAbParam.z + ChromaAbParam.w*rSq); + vec2 tcBlue = LensCenter + Scale*thetaBlue; + + if (any(bvec2(clamp(tcBlue, ScreenCenter - vec2(0.25, 0.5), ScreenCenter + vec2(0.25, 0.5)) - tcBlue))) gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0); + else + { + // Do blue texture lookup + float blue = texture2D(texture0, tcBlue).b; + + // Do green lookup (no scaling) + vec2 tcGreen = LensCenter + Scale*theta1; + float green = texture2D(texture0, tcGreen).g; + + // Do red scale and lookup + vec2 thetaRed = theta1*(ChromaAbParam.x + ChromaAbParam.y*rSq); + vec2 tcRed = LensCenter + Scale*thetaRed; + float red = texture2D(texture0, tcRed).r; + + gl_FragColor = vec4(red, green, blue, 1.0); + } +} diff --git a/examples/shaders/resources/shaders/glsl100/dream_vision.fs b/examples/shaders/resources/shaders/glsl100/dream_vision.fs new file mode 100644 index 0000000..7014b59 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/dream_vision.fs @@ -0,0 +1,37 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +void main() +{ + vec4 color = texture2D(texture0, fragTexCoord); + + color += texture2D(texture0, fragTexCoord + 0.001); + color += texture2D(texture0, fragTexCoord + 0.003); + color += texture2D(texture0, fragTexCoord + 0.005); + color += texture2D(texture0, fragTexCoord + 0.007); + color += texture2D(texture0, fragTexCoord + 0.009); + color += texture2D(texture0, fragTexCoord + 0.011); + + color += texture2D(texture0, fragTexCoord - 0.001); + color += texture2D(texture0, fragTexCoord - 0.003); + color += texture2D(texture0, fragTexCoord - 0.005); + color += texture2D(texture0, fragTexCoord - 0.007); + color += texture2D(texture0, fragTexCoord - 0.009); + color += texture2D(texture0, fragTexCoord - 0.011); + + color.rgb = vec3((color.r + color.g + color.b)/3.0); + color = color/9.5; + + gl_FragColor = color; +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl100/eratosthenes.fs b/examples/shaders/resources/shaders/glsl100/eratosthenes.fs new file mode 100644 index 0000000..0d5fcc5 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/eratosthenes.fs @@ -0,0 +1,60 @@ +#version 100 + +precision mediump float; + +/************************************************************************************* + + The Sieve of Eratosthenes -- a simple shader by ProfJski + An early prime number sieve: https://en.wikipedia.org/wiki/Sieve_of_Eratosthenes + + The screen is divided into a square grid of boxes, each representing an integer value. + Each integer is tested to see if it is a prime number. Primes are colored white. + Non-primes are colored with a color that indicates the smallest factor which evenly divdes our integer. + + You can change the scale variable to make a larger or smaller grid. + Total number of integers displayed = scale squared, so scale = 100 tests the first 10,000 integers. + + WARNING: If you make scale too large, your GPU may bog down! + +***************************************************************************************/ + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Make a nice spectrum of colors based on counter and maxSize +vec4 Colorizer(float counter, float maxSize) +{ + float red = 0.0, green = 0.0, blue = 0.0; + float normsize = counter/maxSize; + + red = smoothstep(0.3, 0.7, normsize); + green = sin(3.14159*normsize); + blue = 1.0 - smoothstep(0.0, 0.4, normsize); + + return vec4(0.8*red, 0.8*green, 0.8*blue, 1.0); +} + +void main() +{ + vec4 color = vec4(1.0); + float scale = 1000.0; // Makes 100x100 square grid. Change this variable to make a smaller or larger grid. + float value = scale*floor(fragTexCoord.y*scale) + floor(fragTexCoord.x*scale); // Group pixels into boxes representing integer values + int valuei = int(value); + + //if ((valuei == 0) || (valuei == 1) || (valuei == 2)) gl_FragColor = vec4(1.0); + //else + { + //for (int i = 2; (i < int(max(2.0, sqrt(value) + 1.0))); i++) + // NOTE: On GLSL 100 for loops are restricted and loop condition must be a constant + // Tested on RPI, it seems loops are limited around 60 iteractions + for (int i = 2; i < 48; i++) + { + if ((value - float(i)*floor(value/float(i))) <= 0.0) + { + gl_FragColor = Colorizer(float(i), scale); + //break; // Uncomment to color by the largest factor instead + } + } + } +} diff --git a/examples/shaders/resources/shaders/glsl100/fisheye.fs b/examples/shaders/resources/shaders/glsl100/fisheye.fs new file mode 100644 index 0000000..c8ca0bb --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/fisheye.fs @@ -0,0 +1,43 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +const float PI = 3.1415926535; + +void main() +{ + float aperture = 178.0; + float apertureHalf = 0.5 * aperture * (PI / 180.0); + float maxFactor = sin(apertureHalf); + + vec2 uv = vec2(0.0); + vec2 xy = 2.0 * fragTexCoord.xy - 1.0; + float d = length(xy); + + if (d < (2.0 - maxFactor)) + { + d = length(xy * maxFactor); + float z = sqrt(1.0 - d * d); + float r = atan(d, z) / PI; + float phi = atan(xy.y, xy.x); + + uv.x = r * cos(phi) + 0.5; + uv.y = r * sin(phi) + 0.5; + } + else + { + uv = fragTexCoord.xy; + } + + gl_FragColor = texture2D(texture0, uv); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl100/fog.fs b/examples/shaders/resources/shaders/glsl100/fog.fs new file mode 100644 index 0000000..c3d0e17 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/fog.fs @@ -0,0 +1,94 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec3 fragPosition; +varying vec2 fragTexCoord; +varying vec4 fragColor; +varying vec3 fragNormal; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +#define MAX_LIGHTS 4 +#define LIGHT_DIRECTIONAL 0 +#define LIGHT_POINT 1 + +struct MaterialProperty { + vec3 color; + int useSampler; + sampler2D sampler; +}; + +struct Light { + int enabled; + int type; + vec3 position; + vec3 target; + vec4 color; +}; + +// Input lighting values +uniform Light lights[MAX_LIGHTS]; +uniform vec4 ambient; +uniform vec3 viewPos; +uniform float fogDensity; + +void main() +{ + // Texel color fetching from texture sampler + vec4 texelColor = texture2D(texture0, fragTexCoord); + vec3 lightDot = vec3(0.0); + vec3 normal = normalize(fragNormal); + vec3 viewD = normalize(viewPos - fragPosition); + vec3 specular = vec3(0.0); + + // NOTE: Implement here your fragment shader code + + for (int i = 0; i < MAX_LIGHTS; i++) + { + if (lights[i].enabled == 1) + { + vec3 light = vec3(0.0); + + if (lights[i].type == LIGHT_DIRECTIONAL) light = -normalize(lights[i].target - lights[i].position); + if (lights[i].type == LIGHT_POINT) light = normalize(lights[i].position - fragPosition); + + float NdotL = max(dot(normal, light), 0.0); + lightDot += lights[i].color.rgb*NdotL; + + float specCo = 0.0; + if (NdotL > 0.0) specCo = pow(max(0.0, dot(viewD, reflect(-(light), normal))), 16.0); // Shine: 16.0 + specular += specCo; + } + } + + vec4 finalColor = (texelColor*((colDiffuse + vec4(specular,1))*vec4(lightDot, 1.0))); + finalColor += texelColor*(ambient/10.0); + + // Gamma correction + finalColor = pow(finalColor, vec4(1.0/2.2)); + + // Fog calculation + float dist = length(viewPos - fragPosition); + + // these could be parameters... + const vec4 fogColor = vec4(0.5, 0.5, 0.5, 1.0); + //const float fogDensity = 0.16; + + // Exponential fog + float fogFactor = 1.0/exp((dist*fogDensity)*(dist*fogDensity)); + + // Linear fog (less nice) + //const float fogStart = 2.0; + //const float fogEnd = 10.0; + //float fogFactor = (fogEnd - dist)/(fogEnd - fogStart); + + fogFactor = clamp(fogFactor, 0.0, 1.0); + + gl_FragColor = mix(fogColor, finalColor, fogFactor); +} diff --git a/examples/shaders/resources/shaders/glsl100/grayscale.fs b/examples/shaders/resources/shaders/glsl100/grayscale.fs new file mode 100644 index 0000000..0c01fc5 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/grayscale.fs @@ -0,0 +1,25 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +void main() +{ + // Texel color fetching from texture sampler + vec4 texelColor = texture2D(texture0, fragTexCoord)*colDiffuse*fragColor; + + // Convert texel color to grayscale using NTSC conversion weights + float gray = dot(texelColor.rgb, vec3(0.299, 0.587, 0.114)); + + // Calculate final fragment color + gl_FragColor = vec4(gray, gray, gray, texelColor.a); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl100/hybrid_raster.fs b/examples/shaders/resources/shaders/glsl100/hybrid_raster.fs new file mode 100644 index 0000000..28188a4 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/hybrid_raster.fs @@ -0,0 +1,16 @@ +#version 100 +#extension GL_EXT_frag_depth : enable // Extension required for writing depth +precision mediump float; // Precision required for OpenGL ES2 (WebGL) + +varying vec2 fragTexCoord; +varying vec4 fragColor; + +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +void main() +{ + vec4 texelColor = texture2D(texture0, fragTexCoord); + gl_FragColor = texelColor*colDiffuse*fragColor; + gl_FragDepthEXT = gl_FragCoord.z; +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl100/hybrid_raymarch.fs b/examples/shaders/resources/shaders/glsl100/hybrid_raymarch.fs new file mode 100644 index 0000000..6241186 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/hybrid_raymarch.fs @@ -0,0 +1,288 @@ +#version 100 +#extension GL_EXT_frag_depth : enable //Extension required for writing depth +#extension GL_OES_standard_derivatives : enable //Extension used for fwidth() +precision mediump float; // Precision required for OpenGL ES2 (WebGL) + + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// Custom Input Uniform +uniform vec3 camPos; +uniform vec3 camDir; +uniform vec2 screenCenter; + +#define ZERO 0 + +// https://learnopengl.com/Advanced-OpenGL/Depth-testing +float CalcDepth(in vec3 rd, in float Idist){ + float local_z = dot(normalize(camDir),rd)*Idist; + return (1.0/(local_z) - 1.0/0.01)/(1.0/1000.0 -1.0/0.01); +} + +// https://iquilezles.org/articles/distfunctions/ +float sdHorseshoe( in vec3 p, in vec2 c, in float r, in float le, vec2 w ) +{ + p.x = abs(p.x); + float l = length(p.xy); + p.xy = mat2(-c.x, c.y, + c.y, c.x)*p.xy; + p.xy = vec2((p.y>0.0 || p.x>0.0)?p.x:l*sign(-c.x), + (p.x>0.0)?p.y:l ); + p.xy = vec2(p.x,abs(p.y-r))-vec2(le,0.0); + + vec2 q = vec2(length(max(p.xy,0.0)) + min(0.0,max(p.x,p.y)),p.z); + vec2 d = abs(q) - w; + return min(max(d.x,d.y),0.0) + length(max(d,0.0)); +} + +// r = sphere's radius +// h = cutting's plane's position +// t = thickness +float sdSixWayCutHollowSphere( vec3 p, float r, float h, float t ) +{ + // Six way symetry Transformation + vec3 ap = abs(p); + if(ap.x < max(ap.y, ap.z)){ + if(ap.y < ap.z) ap.xz = ap.zx; + else ap.xy = ap.yx; + } + + vec2 q = vec2( length(ap.yz), ap.x ); + + float w = sqrt(r*r-h*h); + + return ((h*q.x0.0 ) + { + tmax = min( tmax, tp1 ); + res = vec2( tp1, 1.0 ); + } + + float t = tmin; + for( int i=0; i<70 ; i++ ) + { + if(t>tmax) break; + vec2 h = map( ro+rd*t ); + if( abs(h.x)<(0.0001*t) ) + { + res = vec2(t,h.y); + break; + } + t += h.x; + } + + return res; +} + + +// https://iquilezles.org/articles/rmshadows +float calcSoftshadow( in vec3 ro, in vec3 rd, in float mint, in float tmax ) +{ + // bounding volume + float tp = (0.8-ro.y)/rd.y; if( tp>0.0 ) tmax = min( tmax, tp ); + + float res = 1.0; + float t = mint; + for( int i=ZERO; i<24; i++ ) + { + float h = map( ro + rd*t ).x; + float s = clamp(8.0*h/t,0.0,1.0); + res = min( res, s ); + t += clamp( h, 0.01, 0.2 ); + if( res<0.004 || t>tmax ) break; + } + res = clamp( res, 0.0, 1.0 ); + return res*res*(3.0-2.0*res); +} + + +// https://iquilezles.org/articles/normalsSDF +vec3 calcNormal( in vec3 pos ) +{ + vec2 e = vec2(1.0,-1.0)*0.5773*0.0005; + return normalize( e.xyy*map( pos + e.xyy ).x + + e.yyx*map( pos + e.yyx ).x + + e.yxy*map( pos + e.yxy ).x + + e.xxx*map( pos + e.xxx ).x ); +} + +// https://iquilezles.org/articles/nvscene2008/rwwtt.pdf +float calcAO( in vec3 pos, in vec3 nor ) +{ + float occ = 0.0; + float sca = 1.0; + for( int i=ZERO; i<5; i++ ) + { + float h = 0.01 + 0.12*float(i)/4.0; + float d = map( pos + h*nor ).x; + occ += (h-d)*sca; + sca *= 0.95; + if( occ>0.35 ) break; + } + return clamp( 1.0 - 3.0*occ, 0.0, 1.0 ) * (0.5+0.5*nor.y); +} + +// https://iquilezles.org/articles/checkerfiltering +float checkersGradBox( in vec2 p ) +{ + // filter kernel + vec2 w = fwidth(p) + 0.001; + // analytical integral (box filter) + vec2 i = 2.0*(abs(fract((p-0.5*w)*0.5)-0.5)-abs(fract((p+0.5*w)*0.5)-0.5))/w; + // xor pattern + return 0.5 - 0.5*i.x*i.y; +} + +// https://www.shadertoy.com/view/tdS3DG +vec4 render( in vec3 ro, in vec3 rd) +{ + // background + vec3 col = vec3(0.7, 0.7, 0.9) - max(rd.y,0.0)*0.3; + + // raycast scene + vec2 res = raycast(ro,rd); + float t = res.x; + float m = res.y; + if( m>-0.5 ) + { + vec3 pos = ro + t*rd; + vec3 nor = (m<1.5) ? vec3(0.0,1.0,0.0) : calcNormal( pos ); + vec3 ref = reflect( rd, nor ); + + // material + col = 0.2 + 0.2*sin( m*2.0 + vec3(0.0,1.0,2.0) ); + float ks = 1.0; + + if( m<1.5 ) + { + float f = checkersGradBox( 3.0*pos.xz); + col = 0.15 + f*vec3(0.05); + ks = 0.4; + } + + // lighting + float occ = calcAO( pos, nor ); + + vec3 lin = vec3(0.0); + + // sun + { + vec3 lig = normalize( vec3(-0.5, 0.4, -0.6) ); + vec3 hal = normalize( lig-rd ); + float dif = clamp( dot( nor, lig ), 0.0, 1.0 ); + //if( dif>0.0001 ) + dif *= calcSoftshadow( pos, lig, 0.02, 2.5 ); + float spe = pow( clamp( dot( nor, hal ), 0.0, 1.0 ),16.0); + spe *= dif; + spe *= 0.04+0.96*pow(clamp(1.0-dot(hal,lig),0.0,1.0),5.0); + //spe *= 0.04+0.96*pow(clamp(1.0-sqrt(0.5*(1.0-dot(rd,lig))),0.0,1.0),5.0); + lin += col*2.20*dif*vec3(1.30,1.00,0.70); + lin += 5.00*spe*vec3(1.30,1.00,0.70)*ks; + } + // sky + { + float dif = sqrt(clamp( 0.5+0.5*nor.y, 0.0, 1.0 )); + dif *= occ; + float spe = smoothstep( -0.2, 0.2, ref.y ); + spe *= dif; + spe *= 0.04+0.96*pow(clamp(1.0+dot(nor,rd),0.0,1.0), 5.0 ); + //if( spe>0.001 ) + spe *= calcSoftshadow( pos, ref, 0.02, 2.5 ); + lin += col*0.60*dif*vec3(0.40,0.60,1.15); + lin += 2.00*spe*vec3(0.40,0.60,1.30)*ks; + } + // back + { + float dif = clamp( dot( nor, normalize(vec3(0.5,0.0,0.6))), 0.0, 1.0 )*clamp( 1.0-pos.y,0.0,1.0); + dif *= occ; + lin += col*0.55*dif*vec3(0.25,0.25,0.25); + } + // sss + { + float dif = pow(clamp(1.0+dot(nor,rd),0.0,1.0),2.0); + dif *= occ; + lin += col*0.25*dif*vec3(1.00,1.00,1.00); + } + + col = lin; + + col = mix( col, vec3(0.7,0.7,0.9), 1.0-exp( -0.0001*t*t*t ) ); + } + + return vec4(vec3( clamp(col,0.0,1.0) ),t); +} + +vec3 CalcRayDir(vec2 nCoord){ + vec3 horizontal = normalize(cross(camDir,vec3(.0 , 1.0, .0))); + vec3 vertical = normalize(cross(horizontal,camDir)); + return normalize(camDir + horizontal*nCoord.x + vertical*nCoord.y); +} + +mat3 setCamera() +{ + vec3 cw = normalize(camDir); + vec3 cp = vec3(0.0, 1.0 ,0.0); + vec3 cu = normalize( cross(cw,cp) ); + vec3 cv = ( cross(cu,cw) ); + return mat3( cu, cv, cw ); +} + +void main() +{ + vec2 nCoord = (gl_FragCoord.xy - screenCenter.xy)/screenCenter.y; + mat3 ca = setCamera(); + + // focal length + float fl = length(camDir); + vec3 rd = ca * normalize( vec3(nCoord,fl) ); + vec3 color = vec3(nCoord/2.0 + 0.5, 0.0); + float depth = gl_FragCoord.z; + { + vec4 res = render( camPos - vec3(0.0, 0.0, 0.0) , rd ); + color = res.xyz; + depth = CalcDepth(rd,res.w); + } + gl_FragColor = vec4(color , 1.0); + gl_FragDepthEXT = depth; +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl100/julia_set.fs b/examples/shaders/resources/shaders/glsl100/julia_set.fs new file mode 100644 index 0000000..44d0834 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/julia_set.fs @@ -0,0 +1,83 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +uniform vec2 screenDims; // Dimensions of the screen +uniform vec2 c; // c.x = real, c.y = imaginary component. Equation done is z^2 + c +uniform vec2 offset; // Offset of the scale. +uniform float zoom; // Zoom of the scale. + +// NOTE: Maximum number of shader for-loop iterations depend on GPU, +// for example, on RasperryPi for this examply only supports up to 60 +const int MAX_ITERATIONS = 48; // Max iterations to do + +// Square a complex number +vec2 ComplexSquare(vec2 z) +{ + return vec2( + z.x * z.x - z.y * z.y, + z.x * z.y * 2.0 + ); +} + +// Convert Hue Saturation Value (HSV) color into RGB +vec3 Hsv2rgb(vec3 c) +{ + vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); + vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); + return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); +} + +void main() +{ + /********************************************************************************************** + Julia sets use a function z^2 + c, where c is a constant. + This function is iterated until the nature of the point is determined. + + If the magnitude of the number becomes greater than 2, then from that point onward + the number will get bigger and bigger, and will never get smaller (tends towards infinity). + 2^2 = 4, 4^2 = 8 and so on. + So at 2 we stop iterating. + + If the number is below 2, we keep iterating. + But when do we stop iterating if the number is always below 2 (it converges)? + That is what MAX_ITERATIONS is for. + Then we can divide the iterations by the MAX_ITERATIONS value to get a normalized value that we can + then map to a color. + + We use dot product (z.x * z.x + z.y * z.y) to determine the magnitude (length) squared. + And once the magnitude squared is > 4, then magnitude > 2 is also true (saves computational power). + *************************************************************************************************/ + + // The pixel coordinates are scaled so they are on the mandelbrot scale + // NOTE: fragTexCoord already comes as normalized screen coordinates but offset must be normalized before scaling and zoom + vec2 z = vec2((fragTexCoord.x + offset.x/screenDims.x)*2.5/zoom, (fragTexCoord.y + offset.y/screenDims.y)*1.5/zoom); + + int iter = 0; + for (int iterations = 0; iterations < 60; iterations++) + { + z = ComplexSquare(z) + c; // Iterate function + if (dot(z, z) > 4.0) break; + + iter = iterations; + } + + // Another few iterations decreases errors in the smoothing calculation. + // See http://linas.org/art-gallery/escape/escape.html for more information. + z = ComplexSquare(z) + c; + z = ComplexSquare(z) + c; + + // This last part smooths the color (again see link above). + float smoothVal = float(iter) + 1.0 - (log(log(length(z)))/log(2.0)); + + // Normalize the value so it is between 0 and 1. + float norm = smoothVal/float(MAX_ITERATIONS); + + // If in set, color black. 0.999 allows for some float accuracy error. + if (norm > 0.999) gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0); + else gl_FragColor = vec4(Hsv2rgb(vec3(norm, 1.0, 1.0)), 1.0); +} diff --git a/examples/shaders/resources/shaders/glsl100/lighting.fs b/examples/shaders/resources/shaders/glsl100/lighting.fs new file mode 100644 index 0000000..7367161 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/lighting.fs @@ -0,0 +1,81 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec3 fragPosition; +varying vec2 fragTexCoord; +varying vec4 fragColor; +varying vec3 fragNormal; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +#define MAX_LIGHTS 4 +#define LIGHT_DIRECTIONAL 0 +#define LIGHT_POINT 1 + +struct MaterialProperty { + vec3 color; + int useSampler; + sampler2D sampler; +}; + +struct Light { + int enabled; + int type; + vec3 position; + vec3 target; + vec4 color; +}; + +// Input lighting values +uniform Light lights[MAX_LIGHTS]; +uniform vec4 ambient; +uniform vec3 viewPos; + +void main() +{ + // Texel color fetching from texture sampler + vec4 texelColor = texture2D(texture0, fragTexCoord); + vec3 lightDot = vec3(0.0); + vec3 normal = normalize(fragNormal); + vec3 viewD = normalize(viewPos - fragPosition); + vec3 specular = vec3(0.0); + + // NOTE: Implement here your fragment shader code + + for (int i = 0; i < MAX_LIGHTS; i++) + { + if (lights[i].enabled == 1) + { + vec3 light = vec3(0.0); + + if (lights[i].type == LIGHT_DIRECTIONAL) + { + light = -normalize(lights[i].target - lights[i].position); + } + + if (lights[i].type == LIGHT_POINT) + { + light = normalize(lights[i].position - fragPosition); + } + + float NdotL = max(dot(normal, light), 0.0); + lightDot += lights[i].color.rgb*NdotL; + + float specCo = 0.0; + if (NdotL > 0.0) specCo = pow(max(0.0, dot(viewD, reflect(-(light), normal))), 16.0); // 16 refers to shine + specular += specCo; + } + } + + vec4 finalColor = (texelColor*((colDiffuse + vec4(specular, 1.0))*vec4(lightDot, 1.0))); + finalColor += texelColor*(ambient/10.0); + + // Gamma correction + gl_FragColor = pow(finalColor, vec4(1.0/2.2)); +} diff --git a/examples/shaders/resources/shaders/glsl100/lighting.vs b/examples/shaders/resources/shaders/glsl100/lighting.vs new file mode 100644 index 0000000..5245c61 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/lighting.vs @@ -0,0 +1,59 @@ +#version 100 + +// Input vertex attributes +attribute vec3 vertexPosition; +attribute vec2 vertexTexCoord; +attribute vec3 vertexNormal; +attribute vec4 vertexColor; + +// Input uniform values +uniform mat4 mvp; +uniform mat4 matModel; + +// Output vertex attributes (to fragment shader) +varying vec3 fragPosition; +varying vec2 fragTexCoord; +varying vec4 fragColor; +varying vec3 fragNormal; + +// NOTE: Add here your custom variables + +// https://github.com/glslify/glsl-inverse +mat3 inverse(mat3 m) +{ + float a00 = m[0][0], a01 = m[0][1], a02 = m[0][2]; + float a10 = m[1][0], a11 = m[1][1], a12 = m[1][2]; + float a20 = m[2][0], a21 = m[2][1], a22 = m[2][2]; + + float b01 = a22*a11 - a12*a21; + float b11 = -a22*a10 + a12*a20; + float b21 = a21*a10 - a11*a20; + + float det = a00*b01 + a01*b11 + a02*b21; + + return mat3(b01, (-a22*a01 + a02*a21), (a12*a01 - a02*a11), + b11, (a22*a00 - a02*a20), (-a12*a00 + a02*a10), + b21, (-a21*a00 + a01*a20), (a11*a00 - a01*a10))/det; +} + +// https://github.com/glslify/glsl-transpose +mat3 transpose(mat3 m) +{ + return mat3(m[0][0], m[1][0], m[2][0], + m[0][1], m[1][1], m[2][1], + m[0][2], m[1][2], m[2][2]); +} + +void main() +{ + // Send vertex attributes to fragment shader + fragPosition = vec3(matModel*vec4(vertexPosition, 1.0)); + fragTexCoord = vertexTexCoord; + fragColor = vertexColor; + + mat3 normalMatrix = transpose(inverse(mat3(matModel))); + fragNormal = normalize(normalMatrix*vertexNormal); + + // Calculate final vertex position + gl_Position = mvp*vec4(vertexPosition, 1.0); +} diff --git a/examples/shaders/resources/shaders/glsl100/lighting_instancing.vs b/examples/shaders/resources/shaders/glsl100/lighting_instancing.vs new file mode 100644 index 0000000..eb47bb9 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/lighting_instancing.vs @@ -0,0 +1,36 @@ +#version 100 + +// Input vertex attributes +attribute vec3 vertexPosition; +attribute vec2 vertexTexCoord; +attribute vec3 vertexNormal; +attribute vec4 vertexColor; + +attribute mat4 instanceTransform; + +// Input uniform values +uniform mat4 mvp; +uniform mat4 matNormal; + +// Output vertex attributes (to fragment shader) +varying vec3 fragPosition; +varying vec2 fragTexCoord; +varying vec4 fragColor; +varying vec3 fragNormal; + +// NOTE: Add here your custom variables + +void main() +{ + // Compute MVP for current instance + mat4 mvpi = mvp*instanceTransform; + + // Send vertex attributes to fragment shader + fragPosition = vec3(mvpi*vec4(vertexPosition, 1.0)); + fragTexCoord = vertexTexCoord; + fragColor = vertexColor; + fragNormal = normalize(vec3(matNormal*vec4(vertexNormal, 1.0))); + + // Calculate final vertex position + gl_Position = mvpi*vec4(vertexPosition, 1.0); +} diff --git a/examples/shaders/resources/shaders/glsl100/mask.fs b/examples/shaders/resources/shaders/glsl100/mask.fs new file mode 100644 index 0000000..2071062 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/mask.fs @@ -0,0 +1,24 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform sampler2D mask; +uniform vec4 colDiffuse; +uniform int frame; + +// NOTE: Add here your custom variables + +void main() +{ + vec4 maskColour = texture2D(mask, fragTexCoord + vec2(sin(-float(frame)/150.0)/10.0, cos(-float(frame)/170.0)/10.0)); + if (maskColour.r < 0.25) discard; + vec4 texelColor = texture2D(texture0, fragTexCoord + vec2(sin(float(frame)/90.0)/8.0, cos(float(frame)/60.0)/8.0)); + + gl_FragColor = texelColor*maskColour; +} diff --git a/examples/shaders/resources/shaders/glsl100/outline.fs b/examples/shaders/resources/shaders/glsl100/outline.fs new file mode 100644 index 0000000..c64409e --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/outline.fs @@ -0,0 +1,34 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +uniform vec2 textureSize; +uniform float outlineSize; +uniform vec4 outlineColor; + +void main() +{ + vec4 texel = texture2D(texture0, fragTexCoord); // Get texel color + vec2 texelScale = vec2(0.0); + texelScale.x = outlineSize/textureSize.x; + texelScale.y = outlineSize/textureSize.y; + + // We sample four corner texels, but only for the alpha channel (this is for the outline) + vec4 corners = vec4(0.0); + corners.x = texture2D(texture0, fragTexCoord + vec2(texelScale.x, texelScale.y)).a; + corners.y = texture2D(texture0, fragTexCoord + vec2(texelScale.x, -texelScale.y)).a; + corners.z = texture2D(texture0, fragTexCoord + vec2(-texelScale.x, texelScale.y)).a; + corners.w = texture2D(texture0, fragTexCoord + vec2(-texelScale.x, -texelScale.y)).a; + + float outline = min(dot(corners, vec4(1.0)), 1.0); + vec4 color = mix(vec4(0.0), outlineColor, outline); + gl_FragColor = mix(color, texel, texel.a); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl100/palette_switch.fs b/examples/shaders/resources/shaders/glsl100/palette_switch.fs new file mode 100644 index 0000000..25b4963 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/palette_switch.fs @@ -0,0 +1,41 @@ +#version 100 + +precision mediump float; + +const int colors = 8; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform ivec3 palette[colors]; + +void main() +{ + // Texel color fetching from texture sampler + vec4 texelColor = texture2D(texture0, fragTexCoord)*fragColor; + + // Convert the (normalized) texel color RED component (GB would work, too) + // to the palette index by scaling up from [0, 1] to [0, 255]. + int index = int(texelColor.r*255.0); + + ivec3 color = ivec3(0); + + // NOTE: On GLSL 100 we are not allowed to index a uniform array by a variable value, + // a constantmust be used, so this logic... + if (index == 0) color = palette[0]; + else if (index == 1) color = palette[1]; + else if (index == 2) color = palette[2]; + else if (index == 3) color = palette[3]; + else if (index == 4) color = palette[4]; + else if (index == 5) color = palette[5]; + else if (index == 6) color = palette[6]; + else if (index == 7) color = palette[7]; + + // Calculate final fragment color. Note that the palette color components + // are defined in the range [0, 255] and need to be normalized to [0, 1] + // for OpenGL to work. + gl_FragColor = vec4(float(color.x)/255.0, float(color.y)/255.0, float(color.z)/255.0, texelColor.a); +} diff --git a/examples/shaders/resources/shaders/glsl100/pixelizer.fs b/examples/shaders/resources/shaders/glsl100/pixelizer.fs new file mode 100644 index 0000000..dae63df --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/pixelizer.fs @@ -0,0 +1,32 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +// NOTE: Render size values must be passed from code +const float renderWidth = 800.0; +const float renderHeight = 450.0; + +float pixelWidth = 5.0; +float pixelHeight = 5.0; + +void main() +{ + float dx = pixelWidth*(1.0/renderWidth); + float dy = pixelHeight*(1.0/renderHeight); + + vec2 coord = vec2(dx*floor(fragTexCoord.x/dx), dy*floor(fragTexCoord.y/dy)); + + vec3 tc = texture2D(texture0, coord).rgb; + + gl_FragColor = vec4(tc, 1.0); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl100/posterization.fs b/examples/shaders/resources/shaders/glsl100/posterization.fs new file mode 100644 index 0000000..f7060e5 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/posterization.fs @@ -0,0 +1,29 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +float gamma = 0.6; +float numColors = 8.0; + +void main() +{ + vec3 color = texture2D(texture0, fragTexCoord.xy).rgb; + + color = pow(color, vec3(gamma, gamma, gamma)); + color = color*numColors; + color = floor(color); + color = color/numColors; + color = pow(color, vec3(1.0/gamma)); + + gl_FragColor = vec4(color, 1.0); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl100/predator.fs b/examples/shaders/resources/shaders/glsl100/predator.fs new file mode 100644 index 0000000..e0c0a9d --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/predator.fs @@ -0,0 +1,31 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +void main() +{ + vec3 color = texture2D(texture0, fragTexCoord).rgb; + vec3 colors[3]; + colors[0] = vec3(0.0, 0.0, 1.0); + colors[1] = vec3(1.0, 1.0, 0.0); + colors[2] = vec3(1.0, 0.0, 0.0); + + float lum = (color.r + color.g + color.b)/3.0; + + vec3 tc = vec3(0.0, 0.0, 0.0); + + if (lum < 0.5) tc = mix(colors[0], colors[1], lum/0.5); + else tc = mix(colors[1], colors[2], (lum - 0.5)/0.5); + + gl_FragColor = vec4(tc, 1.0); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl100/raymarching.fs b/examples/shaders/resources/shaders/glsl100/raymarching.fs new file mode 100644 index 0000000..d58d9d3 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/raymarching.fs @@ -0,0 +1,431 @@ +#version 100 + +precision mediump float; + +#extension GL_OES_standard_derivatives : enable + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +uniform vec3 viewEye; +uniform vec3 viewCenter; +uniform float runTime; +uniform vec2 resolution; + +// The MIT License +// Copyright © 2013 Inigo Quilez +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: + +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. + +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +// A list of useful distance function to simple primitives, and an example on how to +// do some interesting boolean operations, repetition and displacement. +// +// More info here: http://www.iquilezles.org/www/articles/distfunctions/distfunctions.htm + +#define AA 1 // make this 1 is your machine is too slow + +//------------------------------------------------------------------ + +float sdPlane( vec3 p ) +{ + return p.y; +} + +float sdSphere( vec3 p, float s ) +{ + return length(p)-s; +} + +float sdBox( vec3 p, vec3 b ) +{ + vec3 d = abs(p) - b; + return min(max(d.x,max(d.y,d.z)),0.0) + length(max(d,0.0)); +} + +float sdEllipsoid( in vec3 p, in vec3 r ) +{ + return (length( p/r ) - 1.0) * min(min(r.x,r.y),r.z); +} + +float udRoundBox( vec3 p, vec3 b, float r ) +{ + return length(max(abs(p)-b,0.0))-r; +} + +float sdTorus( vec3 p, vec2 t ) +{ + return length( vec2(length(p.xz)-t.x,p.y) )-t.y; +} + +float sdHexPrism( vec3 p, vec2 h ) +{ + vec3 q = abs(p); +#if 0 + return max(q.z-h.y,max((q.x*0.866025+q.y*0.5),q.y)-h.x); +#else + float d1 = q.z-h.y; + float d2 = max((q.x*0.866025+q.y*0.5),q.y)-h.x; + return length(max(vec2(d1,d2),0.0)) + min(max(d1,d2), 0.); +#endif +} + +float sdCapsule( vec3 p, vec3 a, vec3 b, float r ) +{ + vec3 pa = p-a, ba = b-a; + float h = clamp( dot(pa,ba)/dot(ba,ba), 0.0, 1.0 ); + return length( pa - ba*h ) - r; +} + +float sdEquilateralTriangle( in vec2 p ) +{ + const float k = sqrt(3.0); + p.x = abs(p.x) - 1.0; + p.y = p.y + 1.0/k; + if( p.x + k*p.y > 0.0 ) p = vec2( p.x - k*p.y, -k*p.x - p.y )/2.0; + p.x += 2.0 - 2.0*clamp( (p.x+2.0)/2.0, 0.0, 1.0 ); + return -length(p)*sign(p.y); +} + +float sdTriPrism( vec3 p, vec2 h ) +{ + vec3 q = abs(p); + float d1 = q.z-h.y; +#if 1 + // distance bound + float d2 = max(q.x*0.866025+p.y*0.5,-p.y)-h.x*0.5; +#else + // correct distance + h.x *= 0.866025; + float d2 = sdEquilateralTriangle(p.xy/h.x)*h.x; +#endif + return length(max(vec2(d1,d2),0.0)) + min(max(d1,d2), 0.); +} + +float sdCylinder( vec3 p, vec2 h ) +{ + vec2 d = abs(vec2(length(p.xz),p.y)) - h; + return min(max(d.x,d.y),0.0) + length(max(d,0.0)); +} + +float sdCone( in vec3 p, in vec3 c ) +{ + vec2 q = vec2( length(p.xz), p.y ); + float d1 = -q.y-c.z; + float d2 = max( dot(q,c.xy), q.y); + return length(max(vec2(d1,d2),0.0)) + min(max(d1,d2), 0.); +} + +float sdConeSection( in vec3 p, in float h, in float r1, in float r2 ) +{ + float d1 = -p.y - h; + float q = p.y - h; + float si = 0.5*(r1-r2)/h; + float d2 = max( sqrt( dot(p.xz,p.xz)*(1.0-si*si)) + q*si - r2, q ); + return length(max(vec2(d1,d2),0.0)) + min(max(d1,d2), 0.); +} + +float sdPryamid4(vec3 p, vec3 h ) // h = { cos a, sin a, height } +{ + // Tetrahedron = Octahedron - Cube + float box = sdBox( p - vec3(0,-2.0*h.z,0), vec3(2.0*h.z) ); + + float d = 0.0; + d = max( d, abs( dot(p, vec3( -h.x, h.y, 0 )) )); + d = max( d, abs( dot(p, vec3( h.x, h.y, 0 )) )); + d = max( d, abs( dot(p, vec3( 0, h.y, h.x )) )); + d = max( d, abs( dot(p, vec3( 0, h.y,-h.x )) )); + float octa = d - h.z; + return max(-box,octa); // Subtraction + } + +float length2( vec2 p ) +{ + return sqrt( p.x*p.x + p.y*p.y ); +} + +float length6( vec2 p ) +{ + p = p*p*p; p = p*p; + return pow( p.x + p.y, 1.0/6.0 ); +} + +float length8( vec2 p ) +{ + p = p*p; p = p*p; p = p*p; + return pow( p.x + p.y, 1.0/8.0 ); +} + +float sdTorus82( vec3 p, vec2 t ) +{ + vec2 q = vec2(length2(p.xz)-t.x,p.y); + return length8(q)-t.y; +} + +float sdTorus88( vec3 p, vec2 t ) +{ + vec2 q = vec2(length8(p.xz)-t.x,p.y); + return length8(q)-t.y; +} + +float sdCylinder6( vec3 p, vec2 h ) +{ + return max( length6(p.xz)-h.x, abs(p.y)-h.y ); +} + +//------------------------------------------------------------------ + +float opS( float d1, float d2 ) +{ + return max(-d2,d1); +} + +vec2 opU( vec2 d1, vec2 d2 ) +{ + return (d1.x0.0 ) tmax = min( tmax, tp1 ); + float tp2 = (1.6-ro.y)/rd.y; if( tp2>0.0 ) { if( ro.y>1.6 ) tmin = max( tmin, tp2 ); + else tmax = min( tmax, tp2 ); } +#endif + + float t = tmin; + float m = -1.0; + for( int i=0; i<64; i++ ) + { + float precis = 0.0005*t; + vec2 res = map( ro+rd*t ); + if( res.xtmax ) break; + t += res.x; + m = res.y; + } + + if( t>tmax ) m=-1.0; + return vec2( t, m ); +} + + +float calcSoftshadow( in vec3 ro, in vec3 rd, in float mint, in float tmax ) +{ + float res = 1.0; + float t = mint; + for( int i=0; i<16; i++ ) + { + float h = map( ro + rd*t ).x; + res = min( res, 8.0*h/t ); + t += clamp( h, 0.02, 0.10 ); + if( h<0.001 || t>tmax ) break; + } + return clamp( res, 0.0, 1.0 ); +} + +vec3 calcNormal( in vec3 pos ) +{ + vec2 e = vec2(1.0,-1.0)*0.5773*0.0005; + return normalize( e.xyy*map( pos + e.xyy ).x + + e.yyx*map( pos + e.yyx ).x + + e.yxy*map( pos + e.yxy ).x + + e.xxx*map( pos + e.xxx ).x ); + /* + vec3 eps = vec3( 0.0005, 0.0, 0.0 ); + vec3 nor = vec3( + map(pos+eps.xyy).x - map(pos-eps.xyy).x, + map(pos+eps.yxy).x - map(pos-eps.yxy).x, + map(pos+eps.yyx).x - map(pos-eps.yyx).x ); + return normalize(nor); + */ +} + +float calcAO( in vec3 pos, in vec3 nor ) +{ + float occ = 0.0; + float sca = 1.0; + for( int i=0; i<5; i++ ) + { + float hr = 0.01 + 0.12*float(i)/4.0; + vec3 aopos = nor * hr + pos; + float dd = map( aopos ).x; + occ += -(dd-hr)*sca; + sca *= 0.95; + } + return clamp( 1.0 - 3.0*occ, 0.0, 1.0 ); +} + +// http://iquilezles.org/www/articles/checkerfiltering/checkerfiltering.htm +float checkersGradBox( in vec2 p ) +{ + // filter kernel + vec2 w = fwidth(p) + 0.001; + // analytical integral (box filter) + vec2 i = 2.0*(abs(fract((p-0.5*w)*0.5)-0.5)-abs(fract((p+0.5*w)*0.5)-0.5))/w; + // xor pattern + return 0.5 - 0.5*i.x*i.y; +} + +vec3 render( in vec3 ro, in vec3 rd ) +{ + vec3 col = vec3(0.7, 0.9, 1.0) +rd.y*0.8; + vec2 res = castRay(ro,rd); + float t = res.x; + float m = res.y; + if( m>-0.5 ) + { + vec3 pos = ro + t*rd; + vec3 nor = calcNormal( pos ); + vec3 ref = reflect( rd, nor ); + + // material + col = 0.45 + 0.35*sin( vec3(0.05,0.08,0.10)*(m-1.0) ); + if( m<1.5 ) + { + + float f = checkersGradBox( 5.0*pos.xz ); + col = 0.3 + f*vec3(0.1); + } + + // lighting + float occ = calcAO( pos, nor ); + vec3 lig = normalize( vec3(cos(-0.4 * runTime), sin(0.7 * runTime), -0.6) ); + vec3 hal = normalize( lig-rd ); + float amb = clamp( 0.5+0.5*nor.y, 0.0, 1.0 ); + float dif = clamp( dot( nor, lig ), 0.0, 1.0 ); + float bac = clamp( dot( nor, normalize(vec3(-lig.x,0.0,-lig.z))), 0.0, 1.0 )*clamp( 1.0-pos.y,0.0,1.0); + float dom = smoothstep( -0.1, 0.1, ref.y ); + float fre = pow( clamp(1.0+dot(nor,rd),0.0,1.0), 2.0 ); + + dif *= calcSoftshadow( pos, lig, 0.02, 2.5 ); + dom *= calcSoftshadow( pos, ref, 0.02, 2.5 ); + + float spe = pow( clamp( dot( nor, hal ), 0.0, 1.0 ),16.0)* + dif * + (0.04 + 0.96*pow( clamp(1.0+dot(hal,rd),0.0,1.0), 5.0 )); + + vec3 lin = vec3(0.0); + lin += 1.30*dif*vec3(1.00,0.80,0.55); + lin += 0.40*amb*vec3(0.40,0.60,1.00)*occ; + lin += 0.50*dom*vec3(0.40,0.60,1.00)*occ; + lin += 0.50*bac*vec3(0.25,0.25,0.25)*occ; + lin += 0.25*fre*vec3(1.00,1.00,1.00)*occ; + col = col*lin; + col += 10.00*spe*vec3(1.00,0.90,0.70); + + col = mix( col, vec3(0.8,0.9,1.0), 1.0-exp( -0.0002*t*t*t ) ); + } + + return vec3( clamp(col,0.0,1.0) ); +} + +mat3 setCamera( in vec3 ro, in vec3 ta, float cr ) +{ + vec3 cw = normalize(ta-ro); + vec3 cp = vec3(sin(cr), cos(cr),0.0); + vec3 cu = normalize( cross(cw,cp) ); + vec3 cv = normalize( cross(cu,cw) ); + return mat3( cu, cv, cw ); +} + +void main() +{ + vec3 tot = vec3(0.0); +#if AA>1 + for( int m=0; m1 + } + tot /= float(AA*AA); +#endif + + gl_FragColor = vec4( tot, 1.0 ); +} diff --git a/examples/shaders/resources/shaders/glsl100/reload.fs b/examples/shaders/resources/shaders/glsl100/reload.fs new file mode 100644 index 0000000..d8e4416 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/reload.fs @@ -0,0 +1,39 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; // Texture coordinates (sampler2D) +varying vec4 fragColor; // Tint color + +// Uniform inputs +uniform vec2 resolution; // Viewport resolution (in pixels) +uniform vec2 mouse; // Mouse pixel xy coordinates +uniform float time; // Total run time (in secods) + +// Draw circle +vec4 DrawCircle(vec2 fragCoord, vec2 position, float radius, vec3 color) +{ + float d = length(position - fragCoord) - radius; + float t = clamp(d, 0.0, 1.0); + return vec4(color, 1.0 - t); +} + +void main() +{ + vec2 fragCoord = gl_FragCoord.xy; + vec2 position = vec2(mouse.x, resolution.y - mouse.y); + float radius = 40.0; + + // Draw background layer + vec4 colorA = vec4(0.2,0.2,0.8, 1.0); + vec4 colorB = vec4(1.0,0.7,0.2, 1.0); + vec4 layer1 = mix(colorA, colorB, abs(sin(time*0.1))); + + // Draw circle layer + vec3 color = vec3(0.9, 0.16, 0.21); + vec4 layer2 = DrawCircle(fragCoord, position, radius, color); + + // Blend the two layers + gl_FragColor = mix(layer1, layer2, layer2.a); +} diff --git a/examples/shaders/resources/shaders/glsl100/scanlines.fs b/examples/shaders/resources/shaders/glsl100/scanlines.fs new file mode 100644 index 0000000..74c9c31 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/scanlines.fs @@ -0,0 +1,44 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +float offset = 0.0; +float frequency = 450.0/3.0; + +uniform float time; + +void main() +{ +/* + // Scanlines method 1 + float tval = 0; //time + vec2 uv = 0.5 + (fragTexCoord - 0.5)*(0.9 + 0.01*sin(0.5*tval)); + + vec4 color = texture2D(texture0, fragTexCoord); + + color = clamp(color*0.5 + 0.5*color*color*1.2, 0.0, 1.0); + color *= 0.5 + 0.5*16.0*uv.x*uv.y*(1.0 - uv.x)*(1.0 - uv.y); + color *= vec4(0.8, 1.0, 0.7, 1); + color *= 0.9 + 0.1*sin(10.0*tval + uv.y*1000.0); + color *= 0.97 + 0.03*sin(110.0*tval); + + fragColor = color; +*/ + // Scanlines method 2 + float globalPos = (fragTexCoord.y + offset) * frequency; + float wavePos = cos((fract(globalPos) - 0.5)*3.14); + + vec4 color = texture2D(texture0, fragTexCoord); + + gl_FragColor = mix(vec4(0.0, 0.3, 0.0, 0.0), color, wavePos); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl100/sobel.fs b/examples/shaders/resources/shaders/glsl100/sobel.fs new file mode 100644 index 0000000..6468b09 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/sobel.fs @@ -0,0 +1,40 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables +vec2 resolution = vec2(800.0, 450.0); + +void main() +{ + float x = 1.0/resolution.x; + float y = 1.0/resolution.y; + + vec4 horizEdge = vec4(0.0); + horizEdge -= texture2D(texture0, vec2(fragTexCoord.x - x, fragTexCoord.y - y))*1.0; + horizEdge -= texture2D(texture0, vec2(fragTexCoord.x - x, fragTexCoord.y ))*2.0; + horizEdge -= texture2D(texture0, vec2(fragTexCoord.x - x, fragTexCoord.y + y))*1.0; + horizEdge += texture2D(texture0, vec2(fragTexCoord.x + x, fragTexCoord.y - y))*1.0; + horizEdge += texture2D(texture0, vec2(fragTexCoord.x + x, fragTexCoord.y ))*2.0; + horizEdge += texture2D(texture0, vec2(fragTexCoord.x + x, fragTexCoord.y + y))*1.0; + + vec4 vertEdge = vec4(0.0); + vertEdge -= texture2D(texture0, vec2(fragTexCoord.x - x, fragTexCoord.y - y))*1.0; + vertEdge -= texture2D(texture0, vec2(fragTexCoord.x , fragTexCoord.y - y))*2.0; + vertEdge -= texture2D(texture0, vec2(fragTexCoord.x + x, fragTexCoord.y - y))*1.0; + vertEdge += texture2D(texture0, vec2(fragTexCoord.x - x, fragTexCoord.y + y))*1.0; + vertEdge += texture2D(texture0, vec2(fragTexCoord.x , fragTexCoord.y + y))*2.0; + vertEdge += texture2D(texture0, vec2(fragTexCoord.x + x, fragTexCoord.y + y))*1.0; + + vec3 edge = sqrt((horizEdge.rgb*horizEdge.rgb) + (vertEdge.rgb*vertEdge.rgb)); + + gl_FragColor = vec4(edge, texture2D(texture0, fragTexCoord).a); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl100/spotlight.fs b/examples/shaders/resources/shaders/glsl100/spotlight.fs new file mode 100644 index 0000000..a563421 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/spotlight.fs @@ -0,0 +1,77 @@ +#version 100 + +precision mediump float; + +#define MAX_SPOTS 3 + +struct Spot { + vec2 pos; // window coords of spot + float inner; // inner fully transparent centre radius + float radius; // alpha fades out to this radius +}; + +uniform Spot spots[MAX_SPOTS]; // Spotlight positions array +uniform float screenWidth; // Width of the screen + +void main() +{ + float alpha = 1.0; + + // Get the position of the current fragment (screen coordinates!) + vec2 pos = vec2(gl_FragCoord.x, gl_FragCoord.y); + + // Find out which spotlight is nearest + float d = 65000.0; // some high value + int fi = -1; // found index + + for (int i = 0; i < MAX_SPOTS; i++) + { + for (int j = 0; j < MAX_SPOTS; j++) + { + float dj = distance(pos, spots[j].pos) - spots[j].radius + spots[i].radius; + + if (d > dj) + { + d = dj; + fi = i; + } + } + } + + // d now equals distance to nearest spot... + // allowing for the different radii of all spotlights + if (fi == 0) + { + if (d > spots[0].radius) alpha = 1.0; + else + { + if (d < spots[0].inner) alpha = 0.0; + else alpha = (d - spots[0].inner)/(spots[0].radius - spots[0].inner); + } + } + else if (fi == 1) + { + if (d > spots[1].radius) alpha = 1.0; + else + { + if (d < spots[1].inner) alpha = 0.0; + else alpha = (d - spots[1].inner)/(spots[1].radius - spots[1].inner); + } + } + else if (fi == 2) + { + if (d > spots[2].radius) alpha = 1.0; + else + { + if (d < spots[2].inner) alpha = 0.0; + else alpha = (d - spots[2].inner)/(spots[2].radius - spots[2].inner); + } + } + + // Right hand side of screen is dimly lit, + // could make the threshold value user definable + if ((pos.x > screenWidth/2.0) && (alpha > 0.9)) alpha = 0.9; + + // could make the black out colour user definable... + gl_FragColor = vec4(0, 0, 0, alpha); +} diff --git a/examples/shaders/resources/shaders/glsl100/swirl.fs b/examples/shaders/resources/shaders/glsl100/swirl.fs new file mode 100644 index 0000000..ec6c664 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/swirl.fs @@ -0,0 +1,46 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +// NOTE: Render size values should be passed from code +const float renderWidth = 800.0; +const float renderHeight = 450.0; + +float radius = 250.0; +float angle = 0.8; + +uniform vec2 center; + +void main() +{ + vec2 texSize = vec2(renderWidth, renderHeight); + vec2 tc = fragTexCoord*texSize; + tc -= center; + + float dist = length(tc); + + if (dist < radius) + { + float percent = (radius - dist)/radius; + float theta = percent*percent*angle*8.0; + float s = sin(theta); + float c = cos(theta); + + tc = vec2(dot(tc, vec2(c, -s)), dot(tc, vec2(s, c))); + } + + tc += center; + vec4 color = texture2D(texture0, tc/texSize)*colDiffuse*fragColor;; + + gl_FragColor = vec4(color.rgb, 1.0);; +} diff --git a/examples/shaders/resources/shaders/glsl100/wave.fs b/examples/shaders/resources/shaders/glsl100/wave.fs new file mode 100644 index 0000000..50c4e02 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/wave.fs @@ -0,0 +1,36 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +uniform float secondes; + +uniform vec2 size; + +uniform float freqX; +uniform float freqY; +uniform float ampX; +uniform float ampY; +uniform float speedX; +uniform float speedY; + +void main() { + float pixelWidth = 1.0 / size.x; + float pixelHeight = 1.0 / size.y; + float aspect = pixelHeight / pixelWidth; + float boxLeft = 0.0; + float boxTop = 0.0; + + vec2 p = fragTexCoord; + p.x += cos((fragTexCoord.y - boxTop) * freqX / ( pixelWidth * 750.0) + (secondes * speedX)) * ampX * pixelWidth; + p.y += sin((fragTexCoord.x - boxLeft) * freqY * aspect / ( pixelHeight * 750.0) + (secondes * speedY)) * ampY * pixelHeight; + + gl_FragColor = texture2D(texture0, p)*colDiffuse*fragColor; +} diff --git a/examples/shaders/resources/shaders/glsl100/write_depth.fs b/examples/shaders/resources/shaders/glsl100/write_depth.fs new file mode 100644 index 0000000..341c611 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl100/write_depth.fs @@ -0,0 +1,17 @@ +#version 100 +#extension GL_EXT_frag_depth : enable +precision mediump float; // Precision required for OpenGL ES2 (WebGL) + +varying vec2 fragTexCoord; +varying vec4 fragColor; + +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +void main() +{ + vec4 texelColor = texture2D(texture0, fragTexCoord); + + gl_FragColor = texelColor*colDiffuse*fragColor; + gl_FragDepthEXT = 1.0 - gl_FragCoord.z; +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl120/base.fs b/examples/shaders/resources/shaders/glsl120/base.fs new file mode 100644 index 0000000..50781ad --- /dev/null +++ b/examples/shaders/resources/shaders/glsl120/base.fs @@ -0,0 +1,22 @@ +#version 120 + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables +uniform vec2 resolution = vec2(800, 450); + +void main() +{ + // Texel color fetching from texture sampler + vec4 texelColor = texture2D(texture0, fragTexCoord); + + // NOTE: Implement here your fragment shader code + + gl_FragColor = texelColor*colDiffuse; +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl120/base.vs b/examples/shaders/resources/shaders/glsl120/base.vs new file mode 100644 index 0000000..08a61e3 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl120/base.vs @@ -0,0 +1,26 @@ +#version 120 + +// Input vertex attributes +attribute vec3 vertexPosition; +attribute vec2 vertexTexCoord; +attribute vec3 vertexNormal; +attribute vec4 vertexColor; + +// Input uniform values +uniform mat4 mvp; + +// Output vertex attributes (to fragment shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// NOTE: Add here your custom variables + +void main() +{ + // Send vertex attributes to fragment shader + fragTexCoord = vertexTexCoord; + fragColor = vertexColor; + + // Calculate final vertex position + gl_Position = mvp*vec4(vertexPosition, 1.0); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl120/bloom.fs b/examples/shaders/resources/shaders/glsl120/bloom.fs new file mode 100644 index 0000000..b8c4495 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl120/bloom.fs @@ -0,0 +1,37 @@ +#version 120 + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +const vec2 size = vec2(800, 450); // Framebuffer size +const float samples = 5.0; // Pixels per axis; higher = bigger glow, worse performance +const float quality = 2.5; // Defines size factor: Lower = smaller glow, better quality + +void main() +{ + vec4 sum = vec4(0); + vec2 sizeFactor = vec2(1)/size*quality; + + // Texel color fetching from texture sampler + vec4 source = texture2D(texture0, fragTexCoord); + + const int range = 2; // should be = (samples - 1)/2; + + for (int x = -range; x <= range; x++) + { + for (int y = -range; y <= range; y++) + { + sum += texture2D(texture0, fragTexCoord + vec2(x, y)*sizeFactor); + } + } + + // Calculate final fragment color + gl_FragColor = ((sum/(samples*samples)) + source)*colDiffuse; +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl120/blur.fs b/examples/shaders/resources/shaders/glsl120/blur.fs new file mode 100644 index 0000000..cf66d87 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl120/blur.fs @@ -0,0 +1,32 @@ +#version 120 + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +// NOTE: Render size values must be passed from code +const float renderWidth = 800.0; +const float renderHeight = 450.0; + +vec3 offset = vec3(0.0, 1.3846153846, 3.2307692308); +vec3 weight = vec3(0.2270270270, 0.3162162162, 0.0702702703); + +void main() +{ + // Texel color fetching from texture sampler + vec3 tc = texture2D(texture0, fragTexCoord).rgb*weight.x; + + tc += texture2D(texture0, fragTexCoord + vec2(offset.y)/renderWidth, 0.0).rgb*weight.y; + tc += texture2D(texture0, fragTexCoord - vec2(offset.y)/renderWidth, 0.0).rgb*weight.y; + + tc += texture2D(texture0, fragTexCoord + vec2(offset.z)/renderWidth, 0.0).rgb*weight.z; + tc += texture2D(texture0, fragTexCoord - vec2(offset.z)/renderWidth, 0.0).rgb*weight.z; + + gl_FragColor = vec4(tc, 1.0); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl120/cross_hatching.fs b/examples/shaders/resources/shaders/glsl120/cross_hatching.fs new file mode 100644 index 0000000..14b7e2e --- /dev/null +++ b/examples/shaders/resources/shaders/glsl120/cross_hatching.fs @@ -0,0 +1,45 @@ +# version 120 + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +float hatchOffsetY = 5.0; +float lumThreshold01 = 0.9; +float lumThreshold02 = 0.7; +float lumThreshold03 = 0.5; +float lumThreshold04 = 0.3; + +void main() +{ + vec3 tc = vec3(1.0, 1.0, 1.0); + float lum = length(texture2D(texture0, fragTexCoord).rgb); + + if (lum < lumThreshold01) + { + if (mod(gl_FragCoord.x + gl_FragCoord.y, 10.0) == 0.0) tc = vec3(0.0, 0.0, 0.0); + } + + if (lum < lumThreshold02) + { + if (mod(gl_FragCoord .x - gl_FragCoord .y, 10.0) == 0.0) tc = vec3(0.0, 0.0, 0.0); + } + + if (lum < lumThreshold03) + { + if (mod(gl_FragCoord .x + gl_FragCoord .y - hatchOffsetY, 10.0) == 0.0) tc = vec3(0.0, 0.0, 0.0); + } + + if (lum < lumThreshold04) + { + if (mod(gl_FragCoord .x - gl_FragCoord .y - hatchOffsetY, 10.0) == 0.0) tc = vec3(0.0, 0.0, 0.0); + } + + gl_FragColor = vec4(tc, 1.0); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl120/cross_stitching.fs b/examples/shaders/resources/shaders/glsl120/cross_stitching.fs new file mode 100644 index 0000000..0e0cb7c --- /dev/null +++ b/examples/shaders/resources/shaders/glsl120/cross_stitching.fs @@ -0,0 +1,55 @@ +# version 120 + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +// NOTE: Render size values must be passed from code +const float renderWidth = 800.0; +const float renderHeight = 450.0; + +float stitchingSize = 6.0; +int invert = 0; + +vec4 PostFX(sampler2D tex, vec2 uv) +{ + vec4 c = vec4(0.0); + float size = stitchingSize; + vec2 cPos = uv * vec2(renderWidth, renderHeight); + vec2 tlPos = floor(cPos / vec2(size, size)); + tlPos *= size; + + int remX = int(mod(cPos.x, size)); + int remY = int(mod(cPos.y, size)); + + if (remX == 0 && remY == 0) tlPos = cPos; + + vec2 blPos = tlPos; + blPos.y += (size - 1.0); + + if ((remX == remY) || (((int(cPos.x) - int(blPos.x)) == (int(blPos.y) - int(cPos.y))))) + { + if (invert == 1) c = vec4(0.2, 0.15, 0.05, 1.0); + else c = texture2D(tex, tlPos * vec2(1.0/renderWidth, 1.0/renderHeight)) * 1.4; + } + else + { + if (invert == 1) c = texture2D(tex, tlPos * vec2(1.0/renderWidth, 1.0/renderHeight)) * 1.4; + else c = vec4(0.0, 0.0, 0.0, 1.0); + } + + return c; +} + +void main() +{ + vec3 tc = PostFX(texture0, fragTexCoord).rgb; + + gl_FragColor = vec4(tc, 1.0); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl120/distortion.fs b/examples/shaders/resources/shaders/glsl120/distortion.fs new file mode 100644 index 0000000..cf73981 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl120/distortion.fs @@ -0,0 +1,52 @@ +#version 120 + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; + +// Input uniform values +uniform sampler2D texture0; + +// NOTE: Default parameters for Oculus Rift DK2 device +const vec2 LeftLensCenter = vec2(0.2863248, 0.5); +const vec2 RightLensCenter = vec2(0.7136753, 0.5); +const vec2 LeftScreenCenter = vec2(0.25, 0.5); +const vec2 RightScreenCenter = vec2(0.75, 0.5); +const vec2 Scale = vec2(0.25, 0.45); +const vec2 ScaleIn = vec2(4.0, 2.5); +const vec4 HmdWarpParam = vec4(1.0, 0.22, 0.24, 0.0); +const vec4 ChromaAbParam = vec4(0.996, -0.004, 1.014, 0.0); + +void main() +{ + // The following two variables need to be set per eye + vec2 LensCenter = fragTexCoord.x < 0.5 ? LeftLensCenter : RightLensCenter; + vec2 ScreenCenter = fragTexCoord.x < 0.5 ? LeftScreenCenter : RightScreenCenter; + + // Scales input texture coordinates for distortion: vec2 HmdWarp(vec2 fragTexCoord, vec2 LensCenter) + vec2 theta = (fragTexCoord - LensCenter)*ScaleIn; // Scales to [-1, 1] + float rSq = theta.x*theta.x + theta.y*theta.y; + vec2 theta1 = theta*(HmdWarpParam.x + HmdWarpParam.y*rSq + HmdWarpParam.z*rSq*rSq + HmdWarpParam.w*rSq*rSq*rSq); + //vec2 tc = LensCenter + Scale*theta1; + + // Detect whether blue texture coordinates are out of range since these will scaled out the furthest + vec2 thetaBlue = theta1*(ChromaAbParam.z + ChromaAbParam.w*rSq); + vec2 tcBlue = LensCenter + Scale*thetaBlue; + + if (any(bvec2(clamp(tcBlue, ScreenCenter - vec2(0.25, 0.5), ScreenCenter + vec2(0.25, 0.5)) - tcBlue))) gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0); + else + { + // Do blue texture lookup + float blue = texture2D(texture0, tcBlue).b; + + // Do green lookup (no scaling) + vec2 tcGreen = LensCenter + Scale*theta1; + float green = texture2D(texture0, tcGreen).g; + + // Do red scale and lookup + vec2 thetaRed = theta1*(ChromaAbParam.x + ChromaAbParam.y*rSq); + vec2 tcRed = LensCenter + Scale*thetaRed; + float red = texture2D(texture0, tcRed).r; + + gl_FragColor = vec4(red, green, blue, 1.0); + } +} diff --git a/examples/shaders/resources/shaders/glsl120/dream_vision.fs b/examples/shaders/resources/shaders/glsl120/dream_vision.fs new file mode 100644 index 0000000..cb97b2b --- /dev/null +++ b/examples/shaders/resources/shaders/glsl120/dream_vision.fs @@ -0,0 +1,35 @@ +#version 120 + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +void main() +{ + vec4 color = texture2D(texture0, fragTexCoord); + + color += texture2D(texture0, fragTexCoord + 0.001); + color += texture2D(texture0, fragTexCoord + 0.003); + color += texture2D(texture0, fragTexCoord + 0.005); + color += texture2D(texture0, fragTexCoord + 0.007); + color += texture2D(texture0, fragTexCoord + 0.009); + color += texture2D(texture0, fragTexCoord + 0.011); + + color += texture2D(texture0, fragTexCoord - 0.001); + color += texture2D(texture0, fragTexCoord - 0.003); + color += texture2D(texture0, fragTexCoord - 0.005); + color += texture2D(texture0, fragTexCoord - 0.007); + color += texture2D(texture0, fragTexCoord - 0.009); + color += texture2D(texture0, fragTexCoord - 0.011); + + color.rgb = vec3((color.r + color.g + color.b)/3.0); + color = color/9.5; + + gl_FragColor = color; +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl120/fisheye.fs b/examples/shaders/resources/shaders/glsl120/fisheye.fs new file mode 100644 index 0000000..5cc57f0 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl120/fisheye.fs @@ -0,0 +1,41 @@ +#version 120 + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +const float PI = 3.1415926535; + +void main() +{ + float aperture = 178.0; + float apertureHalf = 0.5 * aperture * (PI / 180.0); + float maxFactor = sin(apertureHalf); + + vec2 uv = vec2(0.0); + vec2 xy = 2.0 * fragTexCoord.xy - 1.0; + float d = length(xy); + + if (d < (2.0 - maxFactor)) + { + d = length(xy * maxFactor); + float z = sqrt(1.0 - d * d); + float r = atan(d, z) / PI; + float phi = atan(xy.y, xy.x); + + uv.x = r * cos(phi) + 0.5; + uv.y = r * sin(phi) + 0.5; + } + else + { + uv = fragTexCoord.xy; + } + + gl_FragColor = texture2D(texture0, uv); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl120/fog.fs b/examples/shaders/resources/shaders/glsl120/fog.fs new file mode 100644 index 0000000..63af6c4 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl120/fog.fs @@ -0,0 +1,92 @@ +#version 120 + +// Input vertex attributes (from vertex shader) +varying vec3 fragPosition; +varying vec2 fragTexCoord; +varying vec4 fragColor; +varying vec3 fragNormal; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +#define MAX_LIGHTS 4 +#define LIGHT_DIRECTIONAL 0 +#define LIGHT_POINT 1 + +struct MaterialProperty { + vec3 color; + int useSampler; + sampler2D sampler; +}; + +struct Light { + int enabled; + int type; + vec3 position; + vec3 target; + vec4 color; +}; + +// Input lighting values +uniform Light lights[MAX_LIGHTS]; +uniform vec4 ambient; +uniform vec3 viewPos; +uniform float fogDensity; + +void main() +{ + // Texel color fetching from texture sampler + vec4 texelColor = texture2D(texture0, fragTexCoord); + vec3 lightDot = vec3(0.0); + vec3 normal = normalize(fragNormal); + vec3 viewD = normalize(viewPos - fragPosition); + vec3 specular = vec3(0.0); + + // NOTE: Implement here your fragment shader code + + for (int i = 0; i < MAX_LIGHTS; i++) + { + if (lights[i].enabled == 1) + { + vec3 light = vec3(0.0); + + if (lights[i].type == LIGHT_DIRECTIONAL) light = -normalize(lights[i].target - lights[i].position); + if (lights[i].type == LIGHT_POINT) light = normalize(lights[i].position - fragPosition); + + float NdotL = max(dot(normal, light), 0.0); + lightDot += lights[i].color.rgb*NdotL; + + float specCo = 0.0; + if (NdotL > 0.0) specCo = pow(max(0.0, dot(viewD, reflect(-(light), normal))), 16.0); // Shine: 16.0 + specular += specCo; + } + } + + vec4 finalColor = (texelColor*((colDiffuse + vec4(specular,1))*vec4(lightDot, 1.0))); + finalColor += texelColor*(ambient/10.0); + + // Gamma correction + finalColor = pow(finalColor, vec4(1.0/2.2)); + + // Fog calculation + float dist = length(viewPos - fragPosition); + + // these could be parameters... + const vec4 fogColor = vec4(0.5, 0.5, 0.5, 1.0); + //const float fogDensity = 0.16; + + // Exponential fog + float fogFactor = 1.0/exp((dist*fogDensity)*(dist*fogDensity)); + + // Linear fog (less nice) + //const float fogStart = 2.0; + //const float fogEnd = 10.0; + //float fogFactor = (fogEnd - dist)/(fogEnd - fogStart); + + fogFactor = clamp(fogFactor, 0.0, 1.0); + + gl_FragColor = mix(fogColor, finalColor, fogFactor); +} diff --git a/examples/shaders/resources/shaders/glsl120/grayscale.fs b/examples/shaders/resources/shaders/glsl120/grayscale.fs new file mode 100644 index 0000000..de48f6b --- /dev/null +++ b/examples/shaders/resources/shaders/glsl120/grayscale.fs @@ -0,0 +1,23 @@ +#version 120 + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +void main() +{ + // Texel color fetching from texture sampler + vec4 texelColor = texture2D(texture0, fragTexCoord)*colDiffuse*fragColor; + + // Convert texel color to grayscale using NTSC conversion weights + float gray = dot(texelColor.rgb, vec3(0.299, 0.587, 0.114)); + + // Calculate final fragment color + gl_FragColor = vec4(gray, gray, gray, texelColor.a); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl120/lighting.fs b/examples/shaders/resources/shaders/glsl120/lighting.fs new file mode 100644 index 0000000..d9cfb44 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl120/lighting.fs @@ -0,0 +1,79 @@ +#version 120 + +// Input vertex attributes (from vertex shader) +varying vec3 fragPosition; +varying vec2 fragTexCoord; +varying vec4 fragColor; +varying vec3 fragNormal; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +#define MAX_LIGHTS 4 +#define LIGHT_DIRECTIONAL 0 +#define LIGHT_POINT 1 + +struct MaterialProperty { + vec3 color; + int useSampler; + sampler2D sampler; +}; + +struct Light { + int enabled; + int type; + vec3 position; + vec3 target; + vec4 color; +}; + +// Input lighting values +uniform Light lights[MAX_LIGHTS]; +uniform vec4 ambient; +uniform vec3 viewPos; + +void main() +{ + // Texel color fetching from texture sampler + vec4 texelColor = texture2D(texture0, fragTexCoord); + vec3 lightDot = vec3(0.0); + vec3 normal = normalize(fragNormal); + vec3 viewD = normalize(viewPos - fragPosition); + vec3 specular = vec3(0.0); + + // NOTE: Implement here your fragment shader code + + for (int i = 0; i < MAX_LIGHTS; i++) + { + if (lights[i].enabled == 1) + { + vec3 light = vec3(0.0); + + if (lights[i].type == LIGHT_DIRECTIONAL) + { + light = -normalize(lights[i].target - lights[i].position); + } + + if (lights[i].type == LIGHT_POINT) + { + light = normalize(lights[i].position - fragPosition); + } + + float NdotL = max(dot(normal, light), 0.0); + lightDot += lights[i].color.rgb*NdotL; + + float specCo = 0.0; + if (NdotL > 0.0) specCo = pow(max(0.0, dot(viewD, reflect(-(light), normal))), 16.0); // 16 refers to shine + specular += specCo; + } + } + + vec4 finalColor = (texelColor*((colDiffuse + vec4(specular, 1.0))*vec4(lightDot, 1.0))); + finalColor += texelColor*(ambient/10.0); + + // Gamma correction + gl_FragColor = pow(finalColor, vec4(1.0/2.2)); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl120/lighting.vs b/examples/shaders/resources/shaders/glsl120/lighting.vs new file mode 100644 index 0000000..b114093 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl120/lighting.vs @@ -0,0 +1,59 @@ +#version 120 + +// Input vertex attributes +attribute vec3 vertexPosition; +attribute vec2 vertexTexCoord; +attribute vec3 vertexNormal; +attribute vec4 vertexColor; + +// Input uniform values +uniform mat4 mvp; +uniform mat4 matModel; + +// Output vertex attributes (to fragment shader) +varying vec3 fragPosition; +varying vec2 fragTexCoord; +varying vec4 fragColor; +varying vec3 fragNormal; + +// NOTE: Add here your custom variables + +// https://github.com/glslify/glsl-inverse +mat3 inverse(mat3 m) +{ + float a00 = m[0][0], a01 = m[0][1], a02 = m[0][2]; + float a10 = m[1][0], a11 = m[1][1], a12 = m[1][2]; + float a20 = m[2][0], a21 = m[2][1], a22 = m[2][2]; + + float b01 = a22*a11 - a12*a21; + float b11 = -a22*a10 + a12*a20; + float b21 = a21*a10 - a11*a20; + + float det = a00*b01 + a01*b11 + a02*b21; + + return mat3(b01, (-a22*a01 + a02*a21), (a12*a01 - a02*a11), + b11, (a22*a00 - a02*a20), (-a12*a00 + a02*a10), + b21, (-a21*a00 + a01*a20), (a11*a00 - a01*a10))/det; +} + +// https://github.com/glslify/glsl-transpose +mat3 transpose(mat3 m) +{ + return mat3(m[0][0], m[1][0], m[2][0], + m[0][1], m[1][1], m[2][1], + m[0][2], m[1][2], m[2][2]); +} + +void main() +{ + // Send vertex attributes to fragment shader + fragPosition = vec3(matModel*vec4(vertexPosition, 1.0)); + fragTexCoord = vertexTexCoord; + fragColor = vertexColor; + + mat3 normalMatrix = transpose(inverse(mat3(matModel))); + fragNormal = normalize(normalMatrix*vertexNormal); + + // Calculate final vertex position + gl_Position = mvp*vec4(vertexPosition, 1.0); +} diff --git a/examples/shaders/resources/shaders/glsl120/palette_switch.fs b/examples/shaders/resources/shaders/glsl120/palette_switch.fs new file mode 100644 index 0000000..ab3f79c --- /dev/null +++ b/examples/shaders/resources/shaders/glsl120/palette_switch.fs @@ -0,0 +1,27 @@ +#version 120 + +const int colors = 8; + +// Input fragment attributes (from fragment shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform ivec3 palette[colors]; + +void main() +{ + // Texel color fetching from texture sampler + vec4 texelColor = texture(texture0, fragTexCoord) * fragColor; + + // Convert the (normalized) texel color RED component (GB would work, too) + // to the palette index by scaling up from [0, 1] to [0, 255]. + int index = int(texelColor.r * 255.0); + ivec3 color = palette[index]; + + // Calculate final fragment color. Note that the palette color components + // are defined in the range [0, 255] and need to be normalized to [0, 1] + // for OpenGL to work. + gl_FragColor = vec4(color / 255.0, texelColor.a); +} diff --git a/examples/shaders/resources/shaders/glsl120/pixelizer.fs b/examples/shaders/resources/shaders/glsl120/pixelizer.fs new file mode 100644 index 0000000..8f5e4f1 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl120/pixelizer.fs @@ -0,0 +1,30 @@ +#version 120 + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +// NOTE: Render size values must be passed from code +const float renderWidth = 800.0; +const float renderHeight = 450.0; + +float pixelWidth = 5.0; +float pixelHeight = 5.0; + +void main() +{ + float dx = pixelWidth*(1.0/renderWidth); + float dy = pixelHeight*(1.0/renderHeight); + + vec2 coord = vec2(dx*floor(fragTexCoord.x/dx), dy*floor(fragTexCoord.y/dy)); + + vec3 tc = texture2D(texture0, coord).rgb; + + gl_FragColor = vec4(tc, 1.0); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl120/posterization.fs b/examples/shaders/resources/shaders/glsl120/posterization.fs new file mode 100644 index 0000000..445c925 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl120/posterization.fs @@ -0,0 +1,27 @@ +#version 120 + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +float gamma = 0.6; +float numColors = 8.0; + +void main() +{ + vec3 color = texture2D(texture0, fragTexCoord.xy).rgb; + + color = pow(color, vec3(gamma, gamma, gamma)); + color = color*numColors; + color = floor(color); + color = color/numColors; + color = pow(color, vec3(1.0/gamma)); + + gl_FragColor = vec4(color, 1.0); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl120/predator.fs b/examples/shaders/resources/shaders/glsl120/predator.fs new file mode 100644 index 0000000..2198696 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl120/predator.fs @@ -0,0 +1,29 @@ +#version 120 + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +void main() +{ + vec3 color = texture2D(texture0, fragTexCoord).rgb; + vec3 colors[3]; + colors[0] = vec3(0.0, 0.0, 1.0); + colors[1] = vec3(1.0, 1.0, 0.0); + colors[2] = vec3(1.0, 0.0, 0.0); + + float lum = (color.r + color.g + color.b)/3.0; + + vec3 tc = vec3(0.0, 0.0, 0.0); + + if (lum < 0.5) tc = mix(colors[0], colors[1], lum/0.5); + else tc = mix(colors[1], colors[2], (lum - 0.5)/0.5); + + gl_FragColor = vec4(tc, 1.0); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl120/scanlines.fs b/examples/shaders/resources/shaders/glsl120/scanlines.fs new file mode 100644 index 0000000..520daa5 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl120/scanlines.fs @@ -0,0 +1,42 @@ +#version 120 + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +float offset = 0.0; +float frequency = 450.0/3.0; + +uniform float time; + +void main() +{ +/* + // Scanlines method 1 + float tval = 0; //time + vec2 uv = 0.5 + (fragTexCoord - 0.5)*(0.9 + 0.01*sin(0.5*tval)); + + vec4 color = texture2D(texture0, fragTexCoord); + + color = clamp(color*0.5 + 0.5*color*color*1.2, 0.0, 1.0); + color *= 0.5 + 0.5*16.0*uv.x*uv.y*(1.0 - uv.x)*(1.0 - uv.y); + color *= vec4(0.8, 1.0, 0.7, 1); + color *= 0.9 + 0.1*sin(10.0*tval + uv.y*1000.0); + color *= 0.97 + 0.03*sin(110.0*tval); + + fragColor = color; +*/ + // Scanlines method 2 + float globalPos = (fragTexCoord.y + offset) * frequency; + float wavePos = cos((fract(globalPos) - 0.5)*3.14); + + vec4 color = texture2D(texture0, fragTexCoord); + + gl_FragColor = mix(vec4(0.0, 0.3, 0.0, 0.0), color, wavePos); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl120/sobel.fs b/examples/shaders/resources/shaders/glsl120/sobel.fs new file mode 100644 index 0000000..8c74a6a --- /dev/null +++ b/examples/shaders/resources/shaders/glsl120/sobel.fs @@ -0,0 +1,38 @@ +#version 120 + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables +vec2 resolution = vec2(800.0, 450.0); + +void main() +{ + float x = 1.0/resolution.x; + float y = 1.0/resolution.y; + + vec4 horizEdge = vec4(0.0); + horizEdge -= texture2D(texture0, vec2(fragTexCoord.x - x, fragTexCoord.y - y))*1.0; + horizEdge -= texture2D(texture0, vec2(fragTexCoord.x - x, fragTexCoord.y ))*2.0; + horizEdge -= texture2D(texture0, vec2(fragTexCoord.x - x, fragTexCoord.y + y))*1.0; + horizEdge += texture2D(texture0, vec2(fragTexCoord.x + x, fragTexCoord.y - y))*1.0; + horizEdge += texture2D(texture0, vec2(fragTexCoord.x + x, fragTexCoord.y ))*2.0; + horizEdge += texture2D(texture0, vec2(fragTexCoord.x + x, fragTexCoord.y + y))*1.0; + + vec4 vertEdge = vec4(0.0); + vertEdge -= texture2D(texture0, vec2(fragTexCoord.x - x, fragTexCoord.y - y))*1.0; + vertEdge -= texture2D(texture0, vec2(fragTexCoord.x , fragTexCoord.y - y))*2.0; + vertEdge -= texture2D(texture0, vec2(fragTexCoord.x + x, fragTexCoord.y - y))*1.0; + vertEdge += texture2D(texture0, vec2(fragTexCoord.x - x, fragTexCoord.y + y))*1.0; + vertEdge += texture2D(texture0, vec2(fragTexCoord.x , fragTexCoord.y + y))*2.0; + vertEdge += texture2D(texture0, vec2(fragTexCoord.x + x, fragTexCoord.y + y))*1.0; + + vec3 edge = sqrt((horizEdge.rgb*horizEdge.rgb) + (vertEdge.rgb*vertEdge.rgb)); + + gl_FragColor = vec4(edge, texture2D(texture0, fragTexCoord).a); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl120/swirl.fs b/examples/shaders/resources/shaders/glsl120/swirl.fs new file mode 100644 index 0000000..7b3dd2f --- /dev/null +++ b/examples/shaders/resources/shaders/glsl120/swirl.fs @@ -0,0 +1,44 @@ +#version 120 + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +// NOTE: Render size values should be passed from code +const float renderWidth = 800; +const float renderHeight = 450; + +float radius = 250.0; +float angle = 0.8; + +uniform vec2 center; + +void main() +{ + vec2 texSize = vec2(renderWidth, renderHeight); + vec2 tc = fragTexCoord*texSize; + tc -= center; + + float dist = length(tc); + + if (dist < radius) + { + float percent = (radius - dist)/radius; + float theta = percent*percent*angle*8.0; + float s = sin(theta); + float c = cos(theta); + + tc = vec2(dot(tc, vec2(c, -s)), dot(tc, vec2(s, c))); + } + + tc += center; + vec4 color = texture2D(texture0, tc/texSize)*colDiffuse*fragColor;; + + gl_FragColor = vec4(color.rgb, 1.0);; +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl330/base.fs b/examples/shaders/resources/shaders/glsl330/base.fs new file mode 100644 index 0000000..6b50062 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/base.fs @@ -0,0 +1,25 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// Output fragment color +out vec4 finalColor; + +// NOTE: Add here your custom variables + +void main() +{ + // Texel color fetching from texture sampler + vec4 texelColor = texture(texture0, fragTexCoord); + + // NOTE: Implement here your fragment shader code + + finalColor = texelColor*colDiffuse; +} + diff --git a/examples/shaders/resources/shaders/glsl330/base.vs b/examples/shaders/resources/shaders/glsl330/base.vs new file mode 100644 index 0000000..8cc2abb --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/base.vs @@ -0,0 +1,26 @@ +#version 330 + +// Input vertex attributes +in vec3 vertexPosition; +in vec2 vertexTexCoord; +in vec3 vertexNormal; +in vec4 vertexColor; + +// Input uniform values +uniform mat4 mvp; + +// Output vertex attributes (to fragment shader) +out vec2 fragTexCoord; +out vec4 fragColor; + +// NOTE: Add here your custom variables + +void main() +{ + // Send vertex attributes to fragment shader + fragTexCoord = vertexTexCoord; + fragColor = vertexColor; + + // Calculate final vertex position + gl_Position = mvp*vec4(vertexPosition, 1.0); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl330/bloom.fs b/examples/shaders/resources/shaders/glsl330/bloom.fs new file mode 100644 index 0000000..56eadb5 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/bloom.fs @@ -0,0 +1,40 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// Output fragment color +out vec4 finalColor; + +// NOTE: Add here your custom variables + +const vec2 size = vec2(800, 450); // Framebuffer size +const float samples = 5.0; // Pixels per axis; higher = bigger glow, worse performance +const float quality = 2.5; // Defines size factor: Lower = smaller glow, better quality + +void main() +{ + vec4 sum = vec4(0); + vec2 sizeFactor = vec2(1)/size*quality; + + // Texel color fetching from texture sampler + vec4 source = texture(texture0, fragTexCoord); + + const int range = 2; // should be = (samples - 1)/2; + + for (int x = -range; x <= range; x++) + { + for (int y = -range; y <= range; y++) + { + sum += texture(texture0, fragTexCoord + vec2(x, y)*sizeFactor); + } + } + + // Calculate final fragment color + finalColor = ((sum/(samples*samples)) + source)*colDiffuse; +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl330/blur.fs b/examples/shaders/resources/shaders/glsl330/blur.fs new file mode 100644 index 0000000..8809f71 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/blur.fs @@ -0,0 +1,35 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// Output fragment color +out vec4 finalColor; + +// NOTE: Add here your custom variables + +// NOTE: Render size values must be passed from code +const float renderWidth = 800; +const float renderHeight = 450; + +float offset[3] = float[](0.0, 1.3846153846, 3.2307692308); +float weight[3] = float[](0.2270270270, 0.3162162162, 0.0702702703); + +void main() +{ + // Texel color fetching from texture sampler + vec3 texelColor = texture(texture0, fragTexCoord).rgb*weight[0]; + + for (int i = 1; i < 3; i++) + { + texelColor += texture(texture0, fragTexCoord + vec2(offset[i])/renderWidth, 0.0).rgb*weight[i]; + texelColor += texture(texture0, fragTexCoord - vec2(offset[i])/renderWidth, 0.0).rgb*weight[i]; + } + + finalColor = vec4(texelColor, 1.0); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl330/color_mix.fs b/examples/shaders/resources/shaders/glsl330/color_mix.fs new file mode 100644 index 0000000..e794d32 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/color_mix.fs @@ -0,0 +1,27 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec3 vertexPos; +in vec2 fragTexCoord; +in vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform sampler2D texture1; +uniform vec4 colDiffuse; + +uniform float divider = 0.5; + +out vec4 finalColor; + +void main() +{ + // Texel color fetching from texture sampler + vec4 texelColor0 = texture(texture0, fragTexCoord); + vec4 texelColor1 = texture(texture1, fragTexCoord); + + float x = fract(fragTexCoord.s); + float final = smoothstep(divider - 0.1, divider + 0.1, x); + + finalColor = mix(texelColor0, texelColor1, final); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl330/cross_hatching.fs b/examples/shaders/resources/shaders/glsl330/cross_hatching.fs new file mode 100644 index 0000000..276eabd --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/cross_hatching.fs @@ -0,0 +1,48 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// Output fragment color +out vec4 finalColor; + +// NOTE: Add here your custom variables + +float hatchOffsetY = 5.0; +float lumThreshold01 = 0.9; +float lumThreshold02 = 0.7; +float lumThreshold03 = 0.5; +float lumThreshold04 = 0.3; + +void main() +{ + vec3 tc = vec3(1.0, 1.0, 1.0); + float lum = length(texture(texture0, fragTexCoord).rgb); + + if (lum < lumThreshold01) + { + if (mod(gl_FragCoord.x + gl_FragCoord.y, 10.0) == 0.0) tc = vec3(0.0, 0.0, 0.0); + } + + if (lum < lumThreshold02) + { + if (mod(gl_FragCoord.x - gl_FragCoord.y, 10.0) == 0.0) tc = vec3(0.0, 0.0, 0.0); + } + + if (lum < lumThreshold03) + { + if (mod(gl_FragCoord.x + gl_FragCoord.y - hatchOffsetY, 10.0) == 0.0) tc = vec3(0.0, 0.0, 0.0); + } + + if (lum < lumThreshold04) + { + if (mod(gl_FragCoord.x - gl_FragCoord.y - hatchOffsetY, 10.0) == 0.0) tc = vec3(0.0, 0.0, 0.0); + } + + finalColor = vec4(tc, 1.0); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl330/cross_stitching.fs b/examples/shaders/resources/shaders/glsl330/cross_stitching.fs new file mode 100644 index 0000000..02be861 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/cross_stitching.fs @@ -0,0 +1,59 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// Output fragment color +out vec4 finalColor; + +// NOTE: Add here your custom variables + +// NOTE: Render size values must be passed from code +const float renderWidth = 800.0; +const float renderHeight = 450.0; + +float stitchingSize = 6.0; + +uniform int invert = 0; + +vec4 PostFX(sampler2D tex, vec2 uv) +{ + vec4 c = vec4(0.0); + float size = stitchingSize; + vec2 cPos = uv * vec2(renderWidth, renderHeight); + vec2 tlPos = floor(cPos / vec2(size, size)); + tlPos *= size; + + int remX = int(mod(cPos.x, size)); + int remY = int(mod(cPos.y, size)); + + if (remX == 0 && remY == 0) tlPos = cPos; + + vec2 blPos = tlPos; + blPos.y += (size - 1.0); + + if ((remX == remY) || (((int(cPos.x) - int(blPos.x)) == (int(blPos.y) - int(cPos.y))))) + { + if (invert == 1) c = vec4(0.2, 0.15, 0.05, 1.0); + else c = texture(tex, tlPos * vec2(1.0/renderWidth, 1.0/renderHeight)) * 1.4; + } + else + { + if (invert == 1) c = texture(tex, tlPos * vec2(1.0/renderWidth, 1.0/renderHeight)) * 1.4; + else c = vec4(0.0, 0.0, 0.0, 1.0); + } + + return c; +} + +void main() +{ + vec3 tc = PostFX(texture0, fragTexCoord).rgb; + + finalColor = vec4(tc, 1.0); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl330/cubes_panning.fs b/examples/shaders/resources/shaders/glsl330/cubes_panning.fs new file mode 100644 index 0000000..1d75e4e --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/cubes_panning.fs @@ -0,0 +1,61 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Output fragment color +out vec4 finalColor; + +// Custom variables +#define PI 3.14159265358979323846 +uniform float uTime = 0.0; + +float divisions = 5.0; +float angle = 0.0; + +vec2 VectorRotateTime(vec2 v, float speed) +{ + float time = uTime*speed; + float localTime = fract(time); // The time domain this works on is 1 sec. + + if ((localTime >= 0.0) && (localTime < 0.25)) angle = 0.0; + else if ((localTime >= 0.25) && (localTime < 0.50)) angle = PI/4*sin(2*PI*localTime - PI/2); + else if ((localTime >= 0.50) && (localTime < 0.75)) angle = PI*0.25; + else if ((localTime >= 0.75) && (localTime < 1.00)) angle = PI/4*sin(2*PI*localTime); + + // Rotate vector by angle + v -= 0.5; + v = mat2(cos(angle), -sin(angle), sin(angle), cos(angle))*v; + v += 0.5; + + return v; +} + +float Rectangle(in vec2 st, in float size, in float fill) +{ + float roundSize = 0.5 - size/2.0; + float left = step(roundSize, st.x); + float top = step(roundSize, st.y); + float bottom = step(roundSize, 1.0 - st.y); + float right = step(roundSize, 1.0 - st.x); + + return (left*bottom*right*top)*fill; +} + +void main() +{ + vec2 fragPos = fragTexCoord; + fragPos.xy += uTime/9.0; + + fragPos *= divisions; + vec2 ipos = floor(fragPos); // Get the integer coords + vec2 fpos = fract(fragPos); // Get the fractional coords + + fpos = VectorRotateTime(fpos, 0.2); + + float alpha = Rectangle(fpos, 0.216, 1.0); + vec3 color = vec3(0.3, 0.3, 0.3); + + finalColor = vec4(color, alpha); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl330/depth.fs b/examples/shaders/resources/shaders/glsl330/depth.fs new file mode 100644 index 0000000..f7546bb --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/depth.fs @@ -0,0 +1,27 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; // Depth texture +uniform vec4 colDiffuse; + +// Output fragment color +out vec4 finalColor; + +// NOTE: Add here your custom variables + +void main() +{ + float zNear = 0.01; // camera z near + float zFar = 10.0; // camera z far + float z = texture(texture0, fragTexCoord).x; + + // Linearize depth value + float depth = (2.0*zNear)/(zFar + zNear - z*(zFar - zNear)); + + // Calculate final fragment color + finalColor = vec4(depth, depth, depth, 1.0f); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl330/distortion.fs b/examples/shaders/resources/shaders/glsl330/distortion.fs new file mode 100644 index 0000000..43d540d --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/distortion.fs @@ -0,0 +1,56 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; + +// Input uniform values +uniform sampler2D texture0; + +// Output fragment color +out vec4 finalColor; + +// NOTE: Default parameters for Oculus Rift DK2 device +const vec2 LeftLensCenter = vec2(0.2863248, 0.5); +const vec2 RightLensCenter = vec2(0.7136753, 0.5); +const vec2 LeftScreenCenter = vec2(0.25, 0.5); +const vec2 RightScreenCenter = vec2(0.75, 0.5); +const vec2 Scale = vec2(0.25, 0.45); +const vec2 ScaleIn = vec2(4.0, 2.5); +const vec4 HmdWarpParam = vec4(1.0, 0.22, 0.24, 0.0); +const vec4 ChromaAbParam = vec4(0.996, -0.004, 1.014, 0.0); + +void main() +{ + // The following two variables need to be set per eye + vec2 LensCenter = fragTexCoord.x < 0.5 ? LeftLensCenter : RightLensCenter; + vec2 ScreenCenter = fragTexCoord.x < 0.5 ? LeftScreenCenter : RightScreenCenter; + + // Scales input texture coordinates for distortion: vec2 HmdWarp(vec2 fragTexCoord, vec2 LensCenter) + vec2 theta = (fragTexCoord - LensCenter)*ScaleIn; // Scales to [-1, 1] + float rSq = theta.x*theta.x + theta.y*theta.y; + vec2 theta1 = theta*(HmdWarpParam.x + HmdWarpParam.y*rSq + HmdWarpParam.z*rSq*rSq + HmdWarpParam.w*rSq*rSq*rSq); + //vec2 tc = LensCenter + Scale*theta1; + + // Detect whether blue texture coordinates are out of range since these will scaled out the furthest + vec2 thetaBlue = theta1*(ChromaAbParam.z + ChromaAbParam.w*rSq); + vec2 tcBlue = LensCenter + Scale*thetaBlue; + + if (any(bvec2(clamp(tcBlue, ScreenCenter - vec2(0.25, 0.5), ScreenCenter + vec2(0.25, 0.5)) - tcBlue))) finalColor = vec4(0.0, 0.0, 0.0, 1.0); + else + { + // Do blue texture lookup + float blue = texture(texture0, tcBlue).b; + + // Do green lookup (no scaling) + vec2 tcGreen = LensCenter + Scale*theta1; + float green = texture(texture0, tcGreen).g; + + // Do red scale and lookup + vec2 thetaRed = theta1*(ChromaAbParam.x + ChromaAbParam.y*rSq); + vec2 tcRed = LensCenter + Scale*thetaRed; + float red = texture(texture0, tcRed).r; + + finalColor = vec4(red, green, blue, 1.0); + } +} + diff --git a/examples/shaders/resources/shaders/glsl330/dream_vision.fs b/examples/shaders/resources/shaders/glsl330/dream_vision.fs new file mode 100644 index 0000000..31d3fd2 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/dream_vision.fs @@ -0,0 +1,34 @@ +#version 330 + +in vec2 fragTexCoord; + +out vec4 fragColor; + +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +void main() +{ + vec4 color = texture(texture0, fragTexCoord); + + color += texture(texture0, fragTexCoord + 0.001); + color += texture(texture0, fragTexCoord + 0.003); + color += texture(texture0, fragTexCoord + 0.005); + color += texture(texture0, fragTexCoord + 0.007); + color += texture(texture0, fragTexCoord + 0.009); + color += texture(texture0, fragTexCoord + 0.011); + + color += texture(texture0, fragTexCoord - 0.001); + color += texture(texture0, fragTexCoord - 0.003); + color += texture(texture0, fragTexCoord - 0.005); + color += texture(texture0, fragTexCoord - 0.007); + color += texture(texture0, fragTexCoord - 0.009); + color += texture(texture0, fragTexCoord - 0.011); + + color.rgb = vec3((color.r + color.g + color.b)/3.0); + color = color/9.5; + + fragColor = color; +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl330/eratosthenes.fs b/examples/shaders/resources/shaders/glsl330/eratosthenes.fs new file mode 100644 index 0000000..644e38d --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/eratosthenes.fs @@ -0,0 +1,59 @@ +#version 330 + +/************************************************************************************* + + The Sieve of Eratosthenes -- a simple shader by ProfJski + An early prime number sieve: https://en.wikipedia.org/wiki/Sieve_of_Eratosthenes + + The screen is divided into a square grid of boxes, each representing an integer value. + Each integer is tested to see if it is a prime number. Primes are colored white. + Non-primes are colored with a color that indicates the smallest factor which evenly divdes our integer. + + You can change the scale variable to make a larger or smaller grid. + Total number of integers displayed = scale squared, so scale = 100 tests the first 10,000 integers. + + WARNING: If you make scale too large, your GPU may bog down! + +***************************************************************************************/ + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Output fragment color +out vec4 finalColor; + +// Make a nice spectrum of colors based on counter and maxSize +vec4 Colorizer(float counter, float maxSize) +{ + float red = 0.0, green = 0.0, blue = 0.0; + float normsize = counter/maxSize; + + red = smoothstep(0.3, 0.7, normsize); + green = sin(3.14159*normsize); + blue = 1.0 - smoothstep(0.0, 0.4, normsize); + + return vec4(0.8*red, 0.8*green, 0.8*blue, 1.0); +} + +void main() +{ + vec4 color = vec4(1.0); + float scale = 1000.0; // Makes 100x100 square grid. Change this variable to make a smaller or larger grid. + int value = int(scale*floor(fragTexCoord.y*scale)+floor(fragTexCoord.x*scale)); // Group pixels into boxes representing integer values + + if ((value == 0) || (value == 1) || (value == 2)) finalColor = vec4(1.0); + else + { + for (int i = 2; (i < max(2, sqrt(value) + 1)); i++) + { + if ((value - i*floor(float(value)/float(i))) == 0) + { + color = Colorizer(float(i), scale); + //break; // Uncomment to color by the largest factor instead + } + } + + finalColor = color; + } +} diff --git a/examples/shaders/resources/shaders/glsl330/fisheye.fs b/examples/shaders/resources/shaders/glsl330/fisheye.fs new file mode 100644 index 0000000..bb03a61 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/fisheye.fs @@ -0,0 +1,40 @@ +#version 330 + +in vec2 fragTexCoord; + +out vec4 fragColor; + +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables + +const float PI = 3.1415926535; + +void main() +{ + float aperture = 178.0; + float apertureHalf = 0.5 * aperture * (PI / 180.0); + float maxFactor = sin(apertureHalf); + + vec2 uv = vec2(0); + vec2 xy = 2.0 * fragTexCoord.xy - 1.0; + float d = length(xy); + + if (d < (2.0 - maxFactor)) + { + d = length(xy * maxFactor); + float z = sqrt(1.0 - d * d); + float r = atan(d, z) / PI; + float phi = atan(xy.y, xy.x); + + uv.x = r * cos(phi) + 0.5; + uv.y = r * sin(phi) + 0.5; + } + else + { + uv = fragTexCoord.xy; + } + + fragColor = texture(texture0, uv); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl330/fog.fs b/examples/shaders/resources/shaders/glsl330/fog.fs new file mode 100644 index 0000000..445cca3 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/fog.fs @@ -0,0 +1,95 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; +in vec3 fragPosition; +in vec3 fragNormal; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// Output fragment color +out vec4 finalColor; + +// NOTE: Add here your custom variables + +#define MAX_LIGHTS 4 +#define LIGHT_DIRECTIONAL 0 +#define LIGHT_POINT 1 + +struct MaterialProperty { + vec3 color; + int useSampler; + sampler2D sampler; +}; + +struct Light { + int enabled; + int type; + vec3 position; + vec3 target; + vec4 color; +}; + +// Input lighting values +uniform Light lights[MAX_LIGHTS]; +uniform vec4 ambient; +uniform vec3 viewPos; +uniform float fogDensity; + +void main() +{ + // Texel color fetching from texture sampler + vec4 texelColor = texture(texture0, fragTexCoord); + vec3 lightDot = vec3(0.0); + vec3 normal = normalize(fragNormal); + vec3 viewD = normalize(viewPos - fragPosition); + vec3 specular = vec3(0.0); + + // NOTE: Implement here your fragment shader code + + for (int i = 0; i < MAX_LIGHTS; i++) + { + if (lights[i].enabled == 1) + { + vec3 light = vec3(0.0); + + if (lights[i].type == LIGHT_DIRECTIONAL) light = -normalize(lights[i].target - lights[i].position); + if (lights[i].type == LIGHT_POINT) light = normalize(lights[i].position - fragPosition); + + float NdotL = max(dot(normal, light), 0.0); + lightDot += lights[i].color.rgb*NdotL; + + float specCo = 0.0; + if (NdotL > 0.0) specCo = pow(max(0.0, dot(viewD, reflect(-(light), normal))), 16.0); // Shine: 16.0 + specular += specCo; + } + } + + finalColor = (texelColor*((colDiffuse + vec4(specular,1))*vec4(lightDot, 1.0))); + finalColor += texelColor*(ambient/10.0); + + // Gamma correction + finalColor = pow(finalColor, vec4(1.0/2.2)); + + // Fog calculation + float dist = length(viewPos - fragPosition); + + // these could be parameters... + const vec4 fogColor = vec4(0.5, 0.5, 0.5, 1.0); + //const float fogDensity = 0.16; + + // Exponential fog + float fogFactor = 1.0/exp((dist*fogDensity)*(dist*fogDensity)); + + // Linear fog (less nice) + //const float fogStart = 2.0; + //const float fogEnd = 10.0; + //float fogFactor = (fogEnd - dist)/(fogEnd - fogStart); + + fogFactor = clamp(fogFactor, 0.0, 1.0); + + finalColor = mix(fogColor, finalColor, fogFactor); +} diff --git a/examples/shaders/resources/shaders/glsl330/grayscale.fs b/examples/shaders/resources/shaders/glsl330/grayscale.fs new file mode 100644 index 0000000..dead6ec --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/grayscale.fs @@ -0,0 +1,26 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// Output fragment color +out vec4 finalColor; + +// NOTE: Add here your custom variables + +void main() +{ + // Texel color fetching from texture sampler + vec4 texelColor = texture(texture0, fragTexCoord)*colDiffuse*fragColor; + + // Convert texel color to grayscale using NTSC conversion weights + float gray = dot(texelColor.rgb, vec3(0.299, 0.587, 0.114)); + + // Calculate final fragment color + finalColor = vec4(gray, gray, gray, texelColor.a); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl330/hybrid_raster.fs b/examples/shaders/resources/shaders/glsl330/hybrid_raster.fs new file mode 100644 index 0000000..85ef492 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/hybrid_raster.fs @@ -0,0 +1,14 @@ +#version 330 + +in vec2 fragTexCoord; +in vec4 fragColor; + +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +void main() +{ + vec4 texelColor = texture2D(texture0, fragTexCoord); + gl_FragColor = texelColor*colDiffuse*fragColor; + gl_FragDepth = gl_FragCoord.z; +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl330/hybrid_raymarch.fs b/examples/shaders/resources/shaders/glsl330/hybrid_raymarch.fs new file mode 100644 index 0000000..5b66dd7 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/hybrid_raymarch.fs @@ -0,0 +1,284 @@ +# version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// Custom Input Uniform +uniform vec3 camPos; +uniform vec3 camDir; +uniform vec2 screenCenter; + +#define ZERO 0 + +// https://learnopengl.com/Advanced-OpenGL/Depth-testing +float CalcDepth(in vec3 rd, in float Idist){ + float local_z = dot(normalize(camDir),rd)*Idist; + return (1.0/(local_z) - 1.0/0.01)/(1.0/1000.0 -1.0/0.01); +} + +// https://iquilezles.org/articles/distfunctions/ +float sdHorseshoe( in vec3 p, in vec2 c, in float r, in float le, vec2 w ) +{ + p.x = abs(p.x); + float l = length(p.xy); + p.xy = mat2(-c.x, c.y, + c.y, c.x)*p.xy; + p.xy = vec2((p.y>0.0 || p.x>0.0)?p.x:l*sign(-c.x), + (p.x>0.0)?p.y:l ); + p.xy = vec2(p.x,abs(p.y-r))-vec2(le,0.0); + + vec2 q = vec2(length(max(p.xy,0.0)) + min(0.0,max(p.x,p.y)),p.z); + vec2 d = abs(q) - w; + return min(max(d.x,d.y),0.0) + length(max(d,0.0)); +} + +// r = sphere's radius +// h = cutting's plane's position +// t = thickness +float sdSixWayCutHollowSphere( vec3 p, float r, float h, float t ) +{ + // Six way symetry Transformation + vec3 ap = abs(p); + if(ap.x < max(ap.y, ap.z)){ + if(ap.y < ap.z) ap.xz = ap.zx; + else ap.xy = ap.yx; + } + + vec2 q = vec2( length(ap.yz), ap.x ); + + float w = sqrt(r*r-h*h); + + return ((h*q.x0.0 ) + { + tmax = min( tmax, tp1 ); + res = vec2( tp1, 1.0 ); + } + + float t = tmin; + for( int i=0; i<70 ; i++ ) + { + if(t>tmax) break; + vec2 h = map( ro+rd*t ); + if( abs(h.x)<(0.0001*t) ) + { + res = vec2(t,h.y); + break; + } + t += h.x; + } + + return res; +} + + +// https://iquilezles.org/articles/rmshadows +float calcSoftshadow( in vec3 ro, in vec3 rd, in float mint, in float tmax ) +{ + // bounding volume + float tp = (0.8-ro.y)/rd.y; if( tp>0.0 ) tmax = min( tmax, tp ); + + float res = 1.0; + float t = mint; + for( int i=ZERO; i<24; i++ ) + { + float h = map( ro + rd*t ).x; + float s = clamp(8.0*h/t,0.0,1.0); + res = min( res, s ); + t += clamp( h, 0.01, 0.2 ); + if( res<0.004 || t>tmax ) break; + } + res = clamp( res, 0.0, 1.0 ); + return res*res*(3.0-2.0*res); +} + + +// https://iquilezles.org/articles/normalsSDF +vec3 calcNormal( in vec3 pos ) +{ + vec2 e = vec2(1.0,-1.0)*0.5773*0.0005; + return normalize( e.xyy*map( pos + e.xyy ).x + + e.yyx*map( pos + e.yyx ).x + + e.yxy*map( pos + e.yxy ).x + + e.xxx*map( pos + e.xxx ).x ); +} + +// https://iquilezles.org/articles/nvscene2008/rwwtt.pdf +float calcAO( in vec3 pos, in vec3 nor ) +{ + float occ = 0.0; + float sca = 1.0; + for( int i=ZERO; i<5; i++ ) + { + float h = 0.01 + 0.12*float(i)/4.0; + float d = map( pos + h*nor ).x; + occ += (h-d)*sca; + sca *= 0.95; + if( occ>0.35 ) break; + } + return clamp( 1.0 - 3.0*occ, 0.0, 1.0 ) * (0.5+0.5*nor.y); +} + +// https://iquilezles.org/articles/checkerfiltering +float checkersGradBox( in vec2 p ) +{ + // filter kernel + vec2 w = fwidth(p) + 0.001; + // analytical integral (box filter) + vec2 i = 2.0*(abs(fract((p-0.5*w)*0.5)-0.5)-abs(fract((p+0.5*w)*0.5)-0.5))/w; + // xor pattern + return 0.5 - 0.5*i.x*i.y; +} + +// https://www.shadertoy.com/view/tdS3DG +vec4 render( in vec3 ro, in vec3 rd) +{ + // background + vec3 col = vec3(0.7, 0.7, 0.9) - max(rd.y,0.0)*0.3; + + // raycast scene + vec2 res = raycast(ro,rd); + float t = res.x; + float m = res.y; + if( m>-0.5 ) + { + vec3 pos = ro + t*rd; + vec3 nor = (m<1.5) ? vec3(0.0,1.0,0.0) : calcNormal( pos ); + vec3 ref = reflect( rd, nor ); + + // material + col = 0.2 + 0.2*sin( m*2.0 + vec3(0.0,1.0,2.0) ); + float ks = 1.0; + + if( m<1.5 ) + { + float f = checkersGradBox( 3.0*pos.xz); + col = 0.15 + f*vec3(0.05); + ks = 0.4; + } + + // lighting + float occ = calcAO( pos, nor ); + + vec3 lin = vec3(0.0); + + // sun + { + vec3 lig = normalize( vec3(-0.5, 0.4, -0.6) ); + vec3 hal = normalize( lig-rd ); + float dif = clamp( dot( nor, lig ), 0.0, 1.0 ); + //if( dif>0.0001 ) + dif *= calcSoftshadow( pos, lig, 0.02, 2.5 ); + float spe = pow( clamp( dot( nor, hal ), 0.0, 1.0 ),16.0); + spe *= dif; + spe *= 0.04+0.96*pow(clamp(1.0-dot(hal,lig),0.0,1.0),5.0); + //spe *= 0.04+0.96*pow(clamp(1.0-sqrt(0.5*(1.0-dot(rd,lig))),0.0,1.0),5.0); + lin += col*2.20*dif*vec3(1.30,1.00,0.70); + lin += 5.00*spe*vec3(1.30,1.00,0.70)*ks; + } + // sky + { + float dif = sqrt(clamp( 0.5+0.5*nor.y, 0.0, 1.0 )); + dif *= occ; + float spe = smoothstep( -0.2, 0.2, ref.y ); + spe *= dif; + spe *= 0.04+0.96*pow(clamp(1.0+dot(nor,rd),0.0,1.0), 5.0 ); + //if( spe>0.001 ) + spe *= calcSoftshadow( pos, ref, 0.02, 2.5 ); + lin += col*0.60*dif*vec3(0.40,0.60,1.15); + lin += 2.00*spe*vec3(0.40,0.60,1.30)*ks; + } + // back + { + float dif = clamp( dot( nor, normalize(vec3(0.5,0.0,0.6))), 0.0, 1.0 )*clamp( 1.0-pos.y,0.0,1.0); + dif *= occ; + lin += col*0.55*dif*vec3(0.25,0.25,0.25); + } + // sss + { + float dif = pow(clamp(1.0+dot(nor,rd),0.0,1.0),2.0); + dif *= occ; + lin += col*0.25*dif*vec3(1.00,1.00,1.00); + } + + col = lin; + + col = mix( col, vec3(0.7,0.7,0.9), 1.0-exp( -0.0001*t*t*t ) ); + } + + return vec4(vec3( clamp(col,0.0,1.0) ),t); +} + +vec3 CalcRayDir(vec2 nCoord){ + vec3 horizontal = normalize(cross(camDir,vec3(.0 , 1.0, .0))); + vec3 vertical = normalize(cross(horizontal,camDir)); + return normalize(camDir + horizontal*nCoord.x + vertical*nCoord.y); +} + +mat3 setCamera() +{ + vec3 cw = normalize(camDir); + vec3 cp = vec3(0.0, 1.0 ,0.0); + vec3 cu = normalize( cross(cw,cp) ); + vec3 cv = ( cross(cu,cw) ); + return mat3( cu, cv, cw ); +} + +void main() +{ + vec2 nCoord = (gl_FragCoord.xy - screenCenter.xy)/screenCenter.y; + mat3 ca = setCamera(); + + // focal length + float fl = length(camDir); + vec3 rd = ca * normalize( vec3(nCoord,fl) ); + vec3 color = vec3(nCoord/2.0 + 0.5, 0.0); + float depth = gl_FragCoord.z; + { + vec4 res = render( camPos - vec3(0.0, 0.0, 0.0) , rd ); + color = res.xyz; + depth = CalcDepth(rd,res.w); + } + gl_FragColor = vec4(color , 1.0); + gl_FragDepth = depth; +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl330/julia_set.fs b/examples/shaders/resources/shaders/glsl330/julia_set.fs new file mode 100644 index 0000000..c5ee0da --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/julia_set.fs @@ -0,0 +1,81 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Output fragment color +out vec4 finalColor; + +uniform vec2 screenDims; // Dimensions of the screen +uniform vec2 c; // c.x = real, c.y = imaginary component. Equation done is z^2 + c +uniform vec2 offset; // Offset of the scale. +uniform float zoom; // Zoom of the scale. + +const int MAX_ITERATIONS = 255; // Max iterations to do. + +// Square a complex number +vec2 ComplexSquare(vec2 z) +{ + return vec2( + z.x * z.x - z.y * z.y, + z.x * z.y * 2.0 + ); +} + +// Convert Hue Saturation Value (HSV) color into RGB +vec3 Hsv2rgb(vec3 c) +{ + vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); + vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); + return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); +} + +void main() +{ + /********************************************************************************************** + Julia sets use a function z^2 + c, where c is a constant. + This function is iterated until the nature of the point is determined. + + If the magnitude of the number becomes greater than 2, then from that point onward + the number will get bigger and bigger, and will never get smaller (tends towards infinity). + 2^2 = 4, 4^2 = 8 and so on. + So at 2 we stop iterating. + + If the number is below 2, we keep iterating. + But when do we stop iterating if the number is always below 2 (it converges)? + That is what MAX_ITERATIONS is for. + Then we can divide the iterations by the MAX_ITERATIONS value to get a normalized value that we can + then map to a color. + + We use dot product (z.x * z.x + z.y * z.y) to determine the magnitude (length) squared. + And once the magnitude squared is > 4, then magnitude > 2 is also true (saves computational power). + *************************************************************************************************/ + + // The pixel coordinates are scaled so they are on the mandelbrot scale + // NOTE: fragTexCoord already comes as normalized screen coordinates but offset must be normalized before scaling and zoom + vec2 z = vec2((fragTexCoord.x + offset.x/screenDims.x)*2.5/zoom, (fragTexCoord.y + offset.y/screenDims.y)*1.5/zoom); + + int iterations = 0; + for (iterations = 0; iterations < MAX_ITERATIONS; iterations++) + { + z = ComplexSquare(z) + c; // Iterate function + + if (dot(z, z) > 4.0) break; + } + + // Another few iterations decreases errors in the smoothing calculation. + // See http://linas.org/art-gallery/escape/escape.html for more information. + z = ComplexSquare(z) + c; + z = ComplexSquare(z) + c; + + // This last part smooths the color (again see link above). + float smoothVal = float(iterations) + 1.0 - (log(log(length(z)))/log(2.0)); + + // Normalize the value so it is between 0 and 1. + float norm = smoothVal/float(MAX_ITERATIONS); + + // If in set, color black. 0.999 allows for some float accuracy error. + if (norm > 0.999) finalColor = vec4(0.0, 0.0, 0.0, 1.0); + else finalColor = vec4(Hsv2rgb(vec3(norm, 1.0, 1.0)), 1.0); +} diff --git a/examples/shaders/resources/shaders/glsl330/lighting.fs b/examples/shaders/resources/shaders/glsl330/lighting.fs new file mode 100644 index 0000000..58845c8 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/lighting.fs @@ -0,0 +1,82 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec3 fragPosition; +in vec2 fragTexCoord; +//in vec4 fragColor; +in vec3 fragNormal; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// Output fragment color +out vec4 finalColor; + +// NOTE: Add here your custom variables + +#define MAX_LIGHTS 4 +#define LIGHT_DIRECTIONAL 0 +#define LIGHT_POINT 1 + +struct MaterialProperty { + vec3 color; + int useSampler; + sampler2D sampler; +}; + +struct Light { + int enabled; + int type; + vec3 position; + vec3 target; + vec4 color; +}; + +// Input lighting values +uniform Light lights[MAX_LIGHTS]; +uniform vec4 ambient; +uniform vec3 viewPos; + +void main() +{ + // Texel color fetching from texture sampler + vec4 texelColor = texture(texture0, fragTexCoord); + vec3 lightDot = vec3(0.0); + vec3 normal = normalize(fragNormal); + vec3 viewD = normalize(viewPos - fragPosition); + vec3 specular = vec3(0.0); + + // NOTE: Implement here your fragment shader code + + for (int i = 0; i < MAX_LIGHTS; i++) + { + if (lights[i].enabled == 1) + { + vec3 light = vec3(0.0); + + if (lights[i].type == LIGHT_DIRECTIONAL) + { + light = -normalize(lights[i].target - lights[i].position); + } + + if (lights[i].type == LIGHT_POINT) + { + light = normalize(lights[i].position - fragPosition); + } + + float NdotL = max(dot(normal, light), 0.0); + lightDot += lights[i].color.rgb*NdotL; + + float specCo = 0.0; + if (NdotL > 0.0) specCo = pow(max(0.0, dot(viewD, reflect(-(light), normal))), 16.0); // 16 refers to shine + specular += specCo; + } + } + + finalColor = (texelColor*((colDiffuse + vec4(specular, 1.0))*vec4(lightDot, 1.0))); + finalColor += texelColor*(ambient/10.0)*colDiffuse; + + // Gamma correction + finalColor = pow(finalColor, vec4(1.0/2.2)); +} diff --git a/examples/shaders/resources/shaders/glsl330/lighting.vs b/examples/shaders/resources/shaders/glsl330/lighting.vs new file mode 100644 index 0000000..f8ec45f --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/lighting.vs @@ -0,0 +1,32 @@ +#version 330 + +// Input vertex attributes +in vec3 vertexPosition; +in vec2 vertexTexCoord; +in vec3 vertexNormal; +in vec4 vertexColor; + +// Input uniform values +uniform mat4 mvp; +uniform mat4 matModel; +uniform mat4 matNormal; + +// Output vertex attributes (to fragment shader) +out vec3 fragPosition; +out vec2 fragTexCoord; +out vec4 fragColor; +out vec3 fragNormal; + +// NOTE: Add here your custom variables + +void main() +{ + // Send vertex attributes to fragment shader + fragPosition = vec3(matModel*vec4(vertexPosition, 1.0)); + fragTexCoord = vertexTexCoord; + fragColor = vertexColor; + fragNormal = normalize(vec3(matNormal*vec4(vertexNormal, 1.0))); + + // Calculate final vertex position + gl_Position = mvp*vec4(vertexPosition, 1.0); +} diff --git a/examples/shaders/resources/shaders/glsl330/lighting_instancing.vs b/examples/shaders/resources/shaders/glsl330/lighting_instancing.vs new file mode 100644 index 0000000..6775a2e --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/lighting_instancing.vs @@ -0,0 +1,36 @@ +#version 330 + +// Input vertex attributes +in vec3 vertexPosition; +in vec2 vertexTexCoord; +in vec3 vertexNormal; +//in vec4 vertexColor; // Not required + +in mat4 instanceTransform; + +// Input uniform values +uniform mat4 mvp; +uniform mat4 matNormal; + +// Output vertex attributes (to fragment shader) +out vec3 fragPosition; +out vec2 fragTexCoord; +out vec4 fragColor; +out vec3 fragNormal; + +// NOTE: Add here your custom variables + +void main() +{ + // Compute MVP for current instance + mat4 mvpi = mvp*instanceTransform; + + // Send vertex attributes to fragment shader + fragPosition = vec3(mvpi*vec4(vertexPosition, 1.0)); + fragTexCoord = vertexTexCoord; + //fragColor = vertexColor; + fragNormal = normalize(vec3(matNormal*vec4(vertexNormal, 1.0))); + + // Calculate final vertex position + gl_Position = mvpi*vec4(vertexPosition, 1.0); +} diff --git a/examples/shaders/resources/shaders/glsl330/mask.fs b/examples/shaders/resources/shaders/glsl330/mask.fs new file mode 100644 index 0000000..a93bed0 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/mask.fs @@ -0,0 +1,22 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform sampler2D mask; +uniform int frame; + +// Output fragment color +out vec4 finalColor; + +void main() +{ + vec4 maskColour = texture(mask, fragTexCoord + vec2(sin(-frame/150.0)/10.0, cos(-frame/170.0)/10.0)); + if (maskColour.r < 0.25) discard; + vec4 texelColor = texture(texture0, fragTexCoord + vec2(sin(frame/90.0)/8.0, cos(frame/60.0)/8.0)); + + finalColor = texelColor*maskColour; +} diff --git a/examples/shaders/resources/shaders/glsl330/outline.fs b/examples/shaders/resources/shaders/glsl330/outline.fs new file mode 100644 index 0000000..2584a21 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/outline.fs @@ -0,0 +1,35 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +uniform vec2 textureSize; +uniform float outlineSize; +uniform vec4 outlineColor; + +// Output fragment color +out vec4 finalColor; + +void main() +{ + vec4 texel = texture(texture0, fragTexCoord); // Get texel color + vec2 texelScale = vec2(0.0); + texelScale.x = outlineSize/textureSize.x; + texelScale.y = outlineSize/textureSize.y; + + // We sample four corner texels, but only for the alpha channel (this is for the outline) + vec4 corners = vec4(0.0); + corners.x = texture(texture0, fragTexCoord + vec2(texelScale.x, texelScale.y)).a; + corners.y = texture(texture0, fragTexCoord + vec2(texelScale.x, -texelScale.y)).a; + corners.z = texture(texture0, fragTexCoord + vec2(-texelScale.x, texelScale.y)).a; + corners.w = texture(texture0, fragTexCoord + vec2(-texelScale.x, -texelScale.y)).a; + + float outline = min(dot(corners, vec4(1.0)), 1.0); + vec4 color = mix(vec4(0.0), outlineColor, outline); + finalColor = mix(color, texel, texel.a); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl330/overdraw.fs b/examples/shaders/resources/shaders/glsl330/overdraw.fs new file mode 100644 index 0000000..d1a4b6a --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/overdraw.fs @@ -0,0 +1,26 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// Output fragment color +out vec4 finalColor; + +// NOTE: Add here your custom variables + +void main() +{ + // To show overdraw, we just render all the fragments + // with a solid color and some transparency + + // NOTE: This is not a postpro render, + // it will only render all screen texture in a plain color + + finalColor = vec4(1.0, 0.0, 0.0, 0.2); +} + diff --git a/examples/shaders/resources/shaders/glsl330/palette_switch.fs b/examples/shaders/resources/shaders/glsl330/palette_switch.fs new file mode 100644 index 0000000..7c8a488 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/palette_switch.fs @@ -0,0 +1,30 @@ +#version 330 + +const int colors = 8; + +// Input fragment attributes (from fragment shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform ivec3 palette[colors]; + +// Output fragment color +out vec4 finalColor; + +void main() +{ + // Texel color fetching from texture sampler + vec4 texelColor = texture(texture0, fragTexCoord)*fragColor; + + // Convert the (normalized) texel color RED component (GB would work, too) + // to the palette index by scaling up from [0, 1] to [0, 255]. + int index = int(texelColor.r*255.0); + ivec3 color = palette[index]; + + // Calculate final fragment color. Note that the palette color components + // are defined in the range [0, 255] and need to be normalized to [0, 1] + // for OpenGL to work. + finalColor = vec4(color/255.0, texelColor.a); +} diff --git a/examples/shaders/resources/shaders/glsl330/pixelizer.fs b/examples/shaders/resources/shaders/glsl330/pixelizer.fs new file mode 100644 index 0000000..cf8aec4 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/pixelizer.fs @@ -0,0 +1,33 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// Output fragment color +out vec4 finalColor; + +// NOTE: Add here your custom variables + +// NOTE: Render size values must be passed from code +const float renderWidth = 800; +const float renderHeight = 450; + +uniform float pixelWidth = 5.0; +uniform float pixelHeight = 5.0; + +void main() +{ + float dx = pixelWidth*(1.0/renderWidth); + float dy = pixelHeight*(1.0/renderHeight); + + vec2 coord = vec2(dx*floor(fragTexCoord.x/dx), dy*floor(fragTexCoord.y/dy)); + + vec3 tc = texture(texture0, coord).rgb; + + finalColor = vec4(tc, 1.0); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl330/posterization.fs b/examples/shaders/resources/shaders/glsl330/posterization.fs new file mode 100644 index 0000000..cf84585 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/posterization.fs @@ -0,0 +1,31 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// Output fragment color +out vec4 finalColor; + +// NOTE: Add here your custom variables + +float gamma = 0.6; +float numColors = 8.0; + +void main() +{ + // Texel color fetching from texture sampler + vec3 texelColor = texture(texture0, fragTexCoord.xy).rgb; + + texelColor = pow(texelColor, vec3(gamma, gamma, gamma)); + texelColor = texelColor*numColors; + texelColor = floor(texelColor); + texelColor = texelColor/numColors; + texelColor = pow(texelColor, vec3(1.0/gamma)); + + finalColor = vec4(texelColor, 1.0); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl330/predator.fs b/examples/shaders/resources/shaders/glsl330/predator.fs new file mode 100644 index 0000000..c0db7b3 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/predator.fs @@ -0,0 +1,32 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// Output fragment color +out vec4 finalColor; + +// NOTE: Add here your custom variables + +void main() +{ + // Texel color fetching from texture sampler + vec3 texelColor = texture(texture0, fragTexCoord).rgb; + vec3 colors[3]; + colors[0] = vec3(0.0, 0.0, 1.0); + colors[1] = vec3(1.0, 1.0, 0.0); + colors[2] = vec3(1.0, 0.0, 0.0); + + float lum = (texelColor.r + texelColor.g + texelColor.b)/3.0; + + int ix = (lum < 0.5)? 0:1; + + vec3 tc = mix(colors[ix], colors[ix + 1], (lum - float(ix)*0.5)/0.5); + + finalColor = vec4(tc, 1.0); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl330/raymarching.fs b/examples/shaders/resources/shaders/glsl330/raymarching.fs new file mode 100644 index 0000000..6a9eb45 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/raymarching.fs @@ -0,0 +1,430 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Output fragment color +out vec4 finalColor; + +uniform vec3 viewEye; +uniform vec3 viewCenter; +uniform float runTime; +uniform vec2 resolution; + +// The MIT License +// Copyright © 2013 Inigo Quilez +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: + +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. + +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +// A list of useful distance function to simple primitives, and an example on how to +// do some interesting boolean operations, repetition and displacement. +// +// More info here: http://www.iquilezles.org/www/articles/distfunctions/distfunctions.htm + +#define AA 1 // make this 1 is your machine is too slow + +//------------------------------------------------------------------ + +float sdPlane( vec3 p ) +{ + return p.y; +} + +float sdSphere( vec3 p, float s ) +{ + return length(p)-s; +} + +float sdBox( vec3 p, vec3 b ) +{ + vec3 d = abs(p) - b; + return min(max(d.x,max(d.y,d.z)),0.0) + length(max(d,0.0)); +} + +float sdEllipsoid( in vec3 p, in vec3 r ) +{ + return (length( p/r ) - 1.0) * min(min(r.x,r.y),r.z); +} + +float udRoundBox( vec3 p, vec3 b, float r ) +{ + return length(max(abs(p)-b,0.0))-r; +} + +float sdTorus( vec3 p, vec2 t ) +{ + return length( vec2(length(p.xz)-t.x,p.y) )-t.y; +} + +float sdHexPrism( vec3 p, vec2 h ) +{ + vec3 q = abs(p); +#if 0 + return max(q.z-h.y,max((q.x*0.866025+q.y*0.5),q.y)-h.x); +#else + float d1 = q.z-h.y; + float d2 = max((q.x*0.866025+q.y*0.5),q.y)-h.x; + return length(max(vec2(d1,d2),0.0)) + min(max(d1,d2), 0.); +#endif +} + +float sdCapsule( vec3 p, vec3 a, vec3 b, float r ) +{ + vec3 pa = p-a, ba = b-a; + float h = clamp( dot(pa,ba)/dot(ba,ba), 0.0, 1.0 ); + return length( pa - ba*h ) - r; +} + +float sdEquilateralTriangle( in vec2 p ) +{ + const float k = sqrt(3.0); + p.x = abs(p.x) - 1.0; + p.y = p.y + 1.0/k; + if( p.x + k*p.y > 0.0 ) p = vec2( p.x - k*p.y, -k*p.x - p.y )/2.0; + p.x += 2.0 - 2.0*clamp( (p.x+2.0)/2.0, 0.0, 1.0 ); + return -length(p)*sign(p.y); +} + +float sdTriPrism( vec3 p, vec2 h ) +{ + vec3 q = abs(p); + float d1 = q.z-h.y; +#if 1 + // distance bound + float d2 = max(q.x*0.866025+p.y*0.5,-p.y)-h.x*0.5; +#else + // correct distance + h.x *= 0.866025; + float d2 = sdEquilateralTriangle(p.xy/h.x)*h.x; +#endif + return length(max(vec2(d1,d2),0.0)) + min(max(d1,d2), 0.); +} + +float sdCylinder( vec3 p, vec2 h ) +{ + vec2 d = abs(vec2(length(p.xz),p.y)) - h; + return min(max(d.x,d.y),0.0) + length(max(d,0.0)); +} + +float sdCone( in vec3 p, in vec3 c ) +{ + vec2 q = vec2( length(p.xz), p.y ); + float d1 = -q.y-c.z; + float d2 = max( dot(q,c.xy), q.y); + return length(max(vec2(d1,d2),0.0)) + min(max(d1,d2), 0.); +} + +float sdConeSection( in vec3 p, in float h, in float r1, in float r2 ) +{ + float d1 = -p.y - h; + float q = p.y - h; + float si = 0.5*(r1-r2)/h; + float d2 = max( sqrt( dot(p.xz,p.xz)*(1.0-si*si)) + q*si - r2, q ); + return length(max(vec2(d1,d2),0.0)) + min(max(d1,d2), 0.); +} + +float sdPryamid4(vec3 p, vec3 h ) // h = { cos a, sin a, height } +{ + // Tetrahedron = Octahedron - Cube + float box = sdBox( p - vec3(0,-2.0*h.z,0), vec3(2.0*h.z) ); + + float d = 0.0; + d = max( d, abs( dot(p, vec3( -h.x, h.y, 0 )) )); + d = max( d, abs( dot(p, vec3( h.x, h.y, 0 )) )); + d = max( d, abs( dot(p, vec3( 0, h.y, h.x )) )); + d = max( d, abs( dot(p, vec3( 0, h.y,-h.x )) )); + float octa = d - h.z; + return max(-box,octa); // Subtraction + } + +float length2( vec2 p ) +{ + return sqrt( p.x*p.x + p.y*p.y ); +} + +float length6( vec2 p ) +{ + p = p*p*p; p = p*p; + return pow( p.x + p.y, 1.0/6.0 ); +} + +float length8( vec2 p ) +{ + p = p*p; p = p*p; p = p*p; + return pow( p.x + p.y, 1.0/8.0 ); +} + +float sdTorus82( vec3 p, vec2 t ) +{ + vec2 q = vec2(length2(p.xz)-t.x,p.y); + return length8(q)-t.y; +} + +float sdTorus88( vec3 p, vec2 t ) +{ + vec2 q = vec2(length8(p.xz)-t.x,p.y); + return length8(q)-t.y; +} + +float sdCylinder6( vec3 p, vec2 h ) +{ + return max( length6(p.xz)-h.x, abs(p.y)-h.y ); +} + +//------------------------------------------------------------------ + +float opS( float d1, float d2 ) +{ + return max(-d2,d1); +} + +vec2 opU( vec2 d1, vec2 d2 ) +{ + return (d1.x0.0 ) tmax = min( tmax, tp1 ); + float tp2 = (1.6-ro.y)/rd.y; if( tp2>0.0 ) { if( ro.y>1.6 ) tmin = max( tmin, tp2 ); + else tmax = min( tmax, tp2 ); } +#endif + + float t = tmin; + float m = -1.0; + for( int i=0; i<64; i++ ) + { + float precis = 0.0005*t; + vec2 res = map( ro+rd*t ); + if( res.xtmax ) break; + t += res.x; + m = res.y; + } + + if( t>tmax ) m=-1.0; + return vec2( t, m ); +} + + +float calcSoftshadow( in vec3 ro, in vec3 rd, in float mint, in float tmax ) +{ + float res = 1.0; + float t = mint; + for( int i=0; i<16; i++ ) + { + float h = map( ro + rd*t ).x; + res = min( res, 8.0*h/t ); + t += clamp( h, 0.02, 0.10 ); + if( h<0.001 || t>tmax ) break; + } + return clamp( res, 0.0, 1.0 ); +} + +vec3 calcNormal( in vec3 pos ) +{ + vec2 e = vec2(1.0,-1.0)*0.5773*0.0005; + return normalize( e.xyy*map( pos + e.xyy ).x + + e.yyx*map( pos + e.yyx ).x + + e.yxy*map( pos + e.yxy ).x + + e.xxx*map( pos + e.xxx ).x ); + /* + vec3 eps = vec3( 0.0005, 0.0, 0.0 ); + vec3 nor = vec3( + map(pos+eps.xyy).x - map(pos-eps.xyy).x, + map(pos+eps.yxy).x - map(pos-eps.yxy).x, + map(pos+eps.yyx).x - map(pos-eps.yyx).x ); + return normalize(nor); + */ +} + +float calcAO( in vec3 pos, in vec3 nor ) +{ + float occ = 0.0; + float sca = 1.0; + for( int i=0; i<5; i++ ) + { + float hr = 0.01 + 0.12*float(i)/4.0; + vec3 aopos = nor * hr + pos; + float dd = map( aopos ).x; + occ += -(dd-hr)*sca; + sca *= 0.95; + } + return clamp( 1.0 - 3.0*occ, 0.0, 1.0 ); +} + +// http://iquilezles.org/www/articles/checkerfiltering/checkerfiltering.htm +float checkersGradBox( in vec2 p ) +{ + // filter kernel + vec2 w = fwidth(p) + 0.001; + // analytical integral (box filter) + vec2 i = 2.0*(abs(fract((p-0.5*w)*0.5)-0.5)-abs(fract((p+0.5*w)*0.5)-0.5))/w; + // xor pattern + return 0.5 - 0.5*i.x*i.y; +} + +vec3 render( in vec3 ro, in vec3 rd ) +{ + vec3 col = vec3(0.7, 0.9, 1.0) +rd.y*0.8; + vec2 res = castRay(ro,rd); + float t = res.x; + float m = res.y; + if( m>-0.5 ) + { + vec3 pos = ro + t*rd; + vec3 nor = calcNormal( pos ); + vec3 ref = reflect( rd, nor ); + + // material + col = 0.45 + 0.35*sin( vec3(0.05,0.08,0.10)*(m-1.0) ); + if( m<1.5 ) + { + + float f = checkersGradBox( 5.0*pos.xz ); + col = 0.3 + f*vec3(0.1); + } + + // lighting + float occ = calcAO( pos, nor ); + vec3 lig = normalize( vec3(cos(-0.4 * runTime), sin(0.7 * runTime), -0.6) ); + vec3 hal = normalize( lig-rd ); + float amb = clamp( 0.5+0.5*nor.y, 0.0, 1.0 ); + float dif = clamp( dot( nor, lig ), 0.0, 1.0 ); + float bac = clamp( dot( nor, normalize(vec3(-lig.x,0.0,-lig.z))), 0.0, 1.0 )*clamp( 1.0-pos.y,0.0,1.0); + float dom = smoothstep( -0.1, 0.1, ref.y ); + float fre = pow( clamp(1.0+dot(nor,rd),0.0,1.0), 2.0 ); + + dif *= calcSoftshadow( pos, lig, 0.02, 2.5 ); + dom *= calcSoftshadow( pos, ref, 0.02, 2.5 ); + + float spe = pow( clamp( dot( nor, hal ), 0.0, 1.0 ),16.0)* + dif * + (0.04 + 0.96*pow( clamp(1.0+dot(hal,rd),0.0,1.0), 5.0 )); + + vec3 lin = vec3(0.0); + lin += 1.30*dif*vec3(1.00,0.80,0.55); + lin += 0.40*amb*vec3(0.40,0.60,1.00)*occ; + lin += 0.50*dom*vec3(0.40,0.60,1.00)*occ; + lin += 0.50*bac*vec3(0.25,0.25,0.25)*occ; + lin += 0.25*fre*vec3(1.00,1.00,1.00)*occ; + col = col*lin; + col += 10.00*spe*vec3(1.00,0.90,0.70); + + col = mix( col, vec3(0.8,0.9,1.0), 1.0-exp( -0.0002*t*t*t ) ); + } + + return vec3( clamp(col,0.0,1.0) ); +} + +mat3 setCamera( in vec3 ro, in vec3 ta, float cr ) +{ + vec3 cw = normalize(ta-ro); + vec3 cp = vec3(sin(cr), cos(cr),0.0); + vec3 cu = normalize( cross(cw,cp) ); + vec3 cv = normalize( cross(cu,cw) ); + return mat3( cu, cv, cw ); +} + +void main() +{ + vec3 tot = vec3(0.0); +#if AA>1 + for( int m=0; m1 + } + tot /= float(AA*AA); +#endif + + finalColor = vec4( tot, 1.0 ); +} diff --git a/examples/shaders/resources/shaders/glsl330/reload.fs b/examples/shaders/resources/shaders/glsl330/reload.fs new file mode 100644 index 0000000..59fdcba --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/reload.fs @@ -0,0 +1,40 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; // Texture coordinates (sampler2D) +in vec4 fragColor; // Tint color + +// Output fragment color +out vec4 finalColor; // Output fragment color + +// Uniform inputs +uniform vec2 resolution; // Viewport resolution (in pixels) +uniform vec2 mouse; // Mouse pixel xy coordinates +uniform float time; // Total run time (in secods) + +// Draw circle +vec4 DrawCircle(vec2 fragCoord, vec2 position, float radius, vec3 color) +{ + float d = length(position - fragCoord) - radius; + float t = clamp(d, 0.0, 1.0); + return vec4(color, 1.0 - t); +} + +void main() +{ + vec2 fragCoord = gl_FragCoord.xy; + vec2 position = vec2(mouse.x, resolution.y - mouse.y); + float radius = 40.0; + + // Draw background layer + vec4 colorA = vec4(0.2,0.2,0.8, 1.0); + vec4 colorB = vec4(1.0,0.7,0.2, 1.0); + vec4 layer1 = mix(colorA, colorB, abs(sin(time*0.1))); + + // Draw circle layer + vec3 color = vec3(0.9, 0.16, 0.21); + vec4 layer2 = DrawCircle(fragCoord, position, radius, color); + + // Blend the two layers + finalColor = mix(layer1, layer2, layer2.a); +} diff --git a/examples/shaders/resources/shaders/glsl330/scanlines.fs b/examples/shaders/resources/shaders/glsl330/scanlines.fs new file mode 100644 index 0000000..2c4c6fd --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/scanlines.fs @@ -0,0 +1,49 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// Output fragment color +out vec4 finalColor; + +// NOTE: Add here your custom variables + +// NOTE: Render size values must be passed from code +const float renderWidth = 800; +const float renderHeight = 450; +float offset = 0.0; + +uniform float time; + +void main() +{ + float frequency = renderHeight/3.0; +/* + // Scanlines method 1 + float tval = 0; //time + vec2 uv = 0.5 + (fragTexCoord - 0.5)*(0.9 + 0.01*sin(0.5*tval)); + + vec4 color = texture(texture0, fragTexCoord); + + color = clamp(color*0.5 + 0.5*color*color*1.2, 0.0, 1.0); + color *= 0.5 + 0.5*16.0*uv.x*uv.y*(1.0 - uv.x)*(1.0 - uv.y); + color *= vec4(0.8, 1.0, 0.7, 1); + color *= 0.9 + 0.1*sin(10.0*tval + uv.y*1000.0); + color *= 0.97 + 0.03*sin(110.0*tval); + + fragColor = color; +*/ + // Scanlines method 2 + float globalPos = (fragTexCoord.y + offset) * frequency; + float wavePos = cos((fract(globalPos) - 0.5)*3.14); + + // Texel color fetching from texture sampler + vec4 texelColor = texture(texture0, fragTexCoord); + + finalColor = mix(vec4(0.0, 0.3, 0.0, 0.0), texelColor, wavePos); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl330/sobel.fs b/examples/shaders/resources/shaders/glsl330/sobel.fs new file mode 100644 index 0000000..f76e9ca --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/sobel.fs @@ -0,0 +1,41 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// Output fragment color +out vec4 finalColor; + +// NOTE: Add here your custom variables +uniform vec2 resolution = vec2(800, 450); + +void main() +{ + float x = 1.0/resolution.x; + float y = 1.0/resolution.y; + + vec4 horizEdge = vec4(0.0); + horizEdge -= texture2D(texture0, vec2(fragTexCoord.x - x, fragTexCoord.y - y))*1.0; + horizEdge -= texture2D(texture0, vec2(fragTexCoord.x - x, fragTexCoord.y ))*2.0; + horizEdge -= texture2D(texture0, vec2(fragTexCoord.x - x, fragTexCoord.y + y))*1.0; + horizEdge += texture2D(texture0, vec2(fragTexCoord.x + x, fragTexCoord.y - y))*1.0; + horizEdge += texture2D(texture0, vec2(fragTexCoord.x + x, fragTexCoord.y ))*2.0; + horizEdge += texture2D(texture0, vec2(fragTexCoord.x + x, fragTexCoord.y + y))*1.0; + + vec4 vertEdge = vec4(0.0); + vertEdge -= texture2D(texture0, vec2(fragTexCoord.x - x, fragTexCoord.y - y))*1.0; + vertEdge -= texture2D(texture0, vec2(fragTexCoord.x , fragTexCoord.y - y))*2.0; + vertEdge -= texture2D(texture0, vec2(fragTexCoord.x + x, fragTexCoord.y - y))*1.0; + vertEdge += texture2D(texture0, vec2(fragTexCoord.x - x, fragTexCoord.y + y))*1.0; + vertEdge += texture2D(texture0, vec2(fragTexCoord.x , fragTexCoord.y + y))*2.0; + vertEdge += texture2D(texture0, vec2(fragTexCoord.x + x, fragTexCoord.y + y))*1.0; + + vec3 edge = sqrt((horizEdge.rgb*horizEdge.rgb) + (vertEdge.rgb*vertEdge.rgb)); + + finalColor = vec4(edge, texture2D(texture0, fragTexCoord).a); +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl330/spotlight.fs b/examples/shaders/resources/shaders/glsl330/spotlight.fs new file mode 100644 index 0000000..02cddf4 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/spotlight.fs @@ -0,0 +1,65 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Output fragment color +out vec4 finalColor; + +// NOTE: Add here your custom variables + +#define MAX_SPOTS 3 + +struct Spot { + vec2 pos; // window coords of spot + float inner; // inner fully transparent centre radius + float radius; // alpha fades out to this radius +}; + +uniform Spot spots[MAX_SPOTS]; // Spotlight positions array +uniform float screenWidth; // Width of the screen + +void main() +{ + float alpha = 1.0; + + // Get the position of the current fragment (screen coordinates!) + vec2 pos = vec2(gl_FragCoord.x, gl_FragCoord.y); + + // Find out which spotlight is nearest + float d = 65000; // some high value + int fi = -1; // found index + + for (int i = 0; i < MAX_SPOTS; i++) + { + for (int j = 0; j < MAX_SPOTS; j++) + { + float dj = distance(pos, spots[j].pos) - spots[j].radius + spots[i].radius; + + if (d > dj) + { + d = dj; + fi = i; + } + } + } + + // d now equals distance to nearest spot... + // allowing for the different radii of all spotlights + if (fi != -1) + { + if (d > spots[fi].radius) alpha = 1.0; + else + { + if (d < spots[fi].inner) alpha = 0.0; + else alpha = (d - spots[fi].inner) / (spots[fi].radius - spots[fi].inner); + } + } + + // Right hand side of screen is dimly lit, + // could make the threshold value user definable + if ((pos.x > screenWidth/2.0) && (alpha > 0.9)) alpha = 0.9; + + finalColor = vec4(0, 0, 0, alpha); +} diff --git a/examples/shaders/resources/shaders/glsl330/swirl.fs b/examples/shaders/resources/shaders/glsl330/swirl.fs new file mode 100644 index 0000000..bb0732c --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/swirl.fs @@ -0,0 +1,47 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// Output fragment color +out vec4 finalColor; + +// NOTE: Add here your custom variables + +// NOTE: Render size values should be passed from code +const float renderWidth = 800; +const float renderHeight = 450; + +float radius = 250.0; +float angle = 0.8; + +uniform vec2 center = vec2(200.0, 200.0); + +void main() +{ + vec2 texSize = vec2(renderWidth, renderHeight); + vec2 tc = fragTexCoord*texSize; + tc -= center; + + float dist = length(tc); + + if (dist < radius) + { + float percent = (radius - dist)/radius; + float theta = percent*percent*angle*8.0; + float s = sin(theta); + float c = cos(theta); + + tc = vec2(dot(tc, vec2(c, -s)), dot(tc, vec2(s, c))); + } + + tc += center; + vec4 color = texture2D(texture0, tc/texSize)*colDiffuse*fragColor;; + + finalColor = vec4(color.rgb, 1.0);; +} \ No newline at end of file diff --git a/examples/shaders/resources/shaders/glsl330/wave.fs b/examples/shaders/resources/shaders/glsl330/wave.fs new file mode 100644 index 0000000..43efee2 --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/wave.fs @@ -0,0 +1,37 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// Output fragment color +out vec4 finalColor; + +uniform float secondes; + +uniform vec2 size; + +uniform float freqX; +uniform float freqY; +uniform float ampX; +uniform float ampY; +uniform float speedX; +uniform float speedY; + +void main() { + float pixelWidth = 1.0 / size.x; + float pixelHeight = 1.0 / size.y; + float aspect = pixelHeight / pixelWidth; + float boxLeft = 0.0; + float boxTop = 0.0; + + vec2 p = fragTexCoord; + p.x += cos((fragTexCoord.y - boxTop) * freqX / ( pixelWidth * 750.0) + (secondes * speedX)) * ampX * pixelWidth; + p.y += sin((fragTexCoord.x - boxLeft) * freqY * aspect / ( pixelHeight * 750.0) + (secondes * speedY)) * ampY * pixelHeight; + + finalColor = texture(texture0, p)*colDiffuse*fragColor; +} diff --git a/examples/shaders/resources/shaders/glsl330/write_depth.fs b/examples/shaders/resources/shaders/glsl330/write_depth.fs new file mode 100644 index 0000000..f0e07be --- /dev/null +++ b/examples/shaders/resources/shaders/glsl330/write_depth.fs @@ -0,0 +1,20 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// Output fragment color +out vec4 finalColor; + +void main() +{ + vec4 texelColor = texture(texture0, fragTexCoord); + + finalColor = texelColor*colDiffuse*fragColor; + gl_FragDepth = 1.0 - finalColor.z; +} diff --git a/examples/shaders/resources/space.png b/examples/shaders/resources/space.png new file mode 100644 index 0000000..5d016e4 Binary files /dev/null and b/examples/shaders/resources/space.png differ diff --git a/examples/shaders/resources/texel_checker.png b/examples/shaders/resources/texel_checker.png new file mode 100644 index 0000000..79d3832 Binary files /dev/null and b/examples/shaders/resources/texel_checker.png differ diff --git a/examples/shaders/rlights.h b/examples/shaders/rlights.h new file mode 100644 index 0000000..d17bf7c --- /dev/null +++ b/examples/shaders/rlights.h @@ -0,0 +1,170 @@ +/********************************************************************************************** +* +* raylib.lights - Some useful functions to deal with lights data +* +* CONFIGURATION: +* +* #define RLIGHTS_IMPLEMENTATION +* Generates the implementation of the library into the included file. +* If not defined, the library is in header only mode and can be included in other headers +* or source files without problems. But only ONE file should hold the implementation. +* +* LICENSE: zlib/libpng +* +* Copyright (c) 2017-2023 Victor Fisac (@victorfisac) and Ramon Santamaria (@raysan5) +* +* This software is provided "as-is", without any express or implied warranty. In no event +* will the authors be held liable for any damages arising from the use of this software. +* +* Permission is granted to anyone to use this software for any purpose, including commercial +* applications, and to alter it and redistribute it freely, subject to the following restrictions: +* +* 1. The origin of this software must not be misrepresented; you must not claim that you +* wrote the original software. If you use this software in a product, an acknowledgment +* in the product documentation would be appreciated but is not required. +* +* 2. Altered source versions must be plainly marked as such, and must not be misrepresented +* as being the original software. +* +* 3. This notice may not be removed or altered from any source distribution. +* +**********************************************************************************************/ + +#ifndef RLIGHTS_H +#define RLIGHTS_H + +//---------------------------------------------------------------------------------- +// Defines and Macros +//---------------------------------------------------------------------------------- +#define MAX_LIGHTS 4 // Max dynamic lights supported by shader + +//---------------------------------------------------------------------------------- +// Types and Structures Definition +//---------------------------------------------------------------------------------- + +// Light data +typedef struct { + int type; + bool enabled; + Vector3 position; + Vector3 target; + Color color; + float attenuation; + + // Shader locations + int enabledLoc; + int typeLoc; + int positionLoc; + int targetLoc; + int colorLoc; + int attenuationLoc; +} Light; + +// Light type +typedef enum { + LIGHT_DIRECTIONAL = 0, + LIGHT_POINT +} LightType; + +#ifdef __cplusplus +extern "C" { // Prevents name mangling of functions +#endif + +//---------------------------------------------------------------------------------- +// Module Functions Declaration +//---------------------------------------------------------------------------------- +Light CreateLight(int type, Vector3 position, Vector3 target, Color color, Shader shader); // Create a light and get shader locations +void UpdateLightValues(Shader shader, Light light); // Send light properties to shader + +#ifdef __cplusplus +} +#endif + +#endif // RLIGHTS_H + + +/*********************************************************************************** +* +* RLIGHTS IMPLEMENTATION +* +************************************************************************************/ + +#if defined(RLIGHTS_IMPLEMENTATION) + +#include "raylib.h" + +//---------------------------------------------------------------------------------- +// Defines and Macros +//---------------------------------------------------------------------------------- +// ... + +//---------------------------------------------------------------------------------- +// Types and Structures Definition +//---------------------------------------------------------------------------------- +// ... + +//---------------------------------------------------------------------------------- +// Global Variables Definition +//---------------------------------------------------------------------------------- +static int lightsCount = 0; // Current amount of created lights + +//---------------------------------------------------------------------------------- +// Module specific Functions Declaration +//---------------------------------------------------------------------------------- +// ... + +//---------------------------------------------------------------------------------- +// Module Functions Definition +//---------------------------------------------------------------------------------- + +// Create a light and get shader locations +Light CreateLight(int type, Vector3 position, Vector3 target, Color color, Shader shader) +{ + Light light = { 0 }; + + if (lightsCount < MAX_LIGHTS) + { + light.enabled = true; + light.type = type; + light.position = position; + light.target = target; + light.color = color; + + // NOTE: Lighting shader naming must be the provided ones + light.enabledLoc = GetShaderLocation(shader, TextFormat("lights[%i].enabled", lightsCount)); + light.typeLoc = GetShaderLocation(shader, TextFormat("lights[%i].type", lightsCount)); + light.positionLoc = GetShaderLocation(shader, TextFormat("lights[%i].position", lightsCount)); + light.targetLoc = GetShaderLocation(shader, TextFormat("lights[%i].target", lightsCount)); + light.colorLoc = GetShaderLocation(shader, TextFormat("lights[%i].color", lightsCount)); + + UpdateLightValues(shader, light); + + lightsCount++; + } + + return light; +} + +// Send light properties to shader +// NOTE: Light shader locations should be available +void UpdateLightValues(Shader shader, Light light) +{ + // Send to shader light enabled state and type + SetShaderValue(shader, light.enabledLoc, &light.enabled, SHADER_UNIFORM_INT); + SetShaderValue(shader, light.typeLoc, &light.type, SHADER_UNIFORM_INT); + + // Send to shader light position values + float position[3] = { light.position.x, light.position.y, light.position.z }; + SetShaderValue(shader, light.positionLoc, position, SHADER_UNIFORM_VEC3); + + // Send to shader light target position values + float target[3] = { light.target.x, light.target.y, light.target.z }; + SetShaderValue(shader, light.targetLoc, target, SHADER_UNIFORM_VEC3); + + // Send to shader light color values + float color[4] = { (float)light.color.r/(float)255, (float)light.color.g/(float)255, + (float)light.color.b/(float)255, (float)light.color.a/(float)255 }; + SetShaderValue(shader, light.colorLoc, color, SHADER_UNIFORM_VEC4); +} + +#endif // RLIGHTS_IMPLEMENTATION \ No newline at end of file diff --git a/examples/shaders/shaders_basic_lighting.c b/examples/shaders/shaders_basic_lighting.c new file mode 100644 index 0000000..61cec2e --- /dev/null +++ b/examples/shaders/shaders_basic_lighting.c @@ -0,0 +1,148 @@ +/******************************************************************************************* +* +* raylib [shaders] example - basic lighting +* +* NOTE: This example requires raylib OpenGL 3.3 or ES2 versions for shaders support, +* OpenGL 1.1 does not support shaders, recompile raylib to OpenGL 3.3 version. +* +* NOTE: Shaders used in this example are #version 330 (OpenGL 3.3). +* +* Example originally created with raylib 3.0, last time updated with raylib 4.2 +* +* Example contributed by Chris Camacho (@codifies) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2019-2023 Chris Camacho (@codifies) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#include "raymath.h" + +#define RLIGHTS_IMPLEMENTATION +#include "rlights.h" + +#if defined(PLATFORM_DESKTOP) + #define GLSL_VERSION 330 +#else // PLATFORM_RPI, PLATFORM_ANDROID, PLATFORM_WEB + #define GLSL_VERSION 100 +#endif + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + SetConfigFlags(FLAG_MSAA_4X_HINT); // Enable Multi Sampling Anti Aliasing 4x (if available) + InitWindow(screenWidth, screenHeight, "raylib [shaders] example - basic lighting"); + + // Define the camera to look into our 3d world + Camera camera = { 0 }; + camera.position = (Vector3){ 2.0f, 4.0f, 6.0f }; // Camera position + camera.target = (Vector3){ 0.0f, 0.5f, 0.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 45.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera projection type + + // Load plane model from a generated mesh + Model model = LoadModelFromMesh(GenMeshPlane(10.0f, 10.0f, 3, 3)); + Model cube = LoadModelFromMesh(GenMeshCube(2.0f, 4.0f, 2.0f)); + + // Load basic lighting shader + Shader shader = LoadShader(TextFormat("resources/shaders/glsl%i/lighting.vs", GLSL_VERSION), + TextFormat("resources/shaders/glsl%i/lighting.fs", GLSL_VERSION)); + // Get some required shader locations + shader.locs[SHADER_LOC_VECTOR_VIEW] = GetShaderLocation(shader, "viewPos"); + // NOTE: "matModel" location name is automatically assigned on shader loading, + // no need to get the location again if using that uniform name + //shader.locs[SHADER_LOC_MATRIX_MODEL] = GetShaderLocation(shader, "matModel"); + + // Ambient light level (some basic lighting) + int ambientLoc = GetShaderLocation(shader, "ambient"); + SetShaderValue(shader, ambientLoc, (float[4]){ 0.1f, 0.1f, 0.1f, 1.0f }, SHADER_UNIFORM_VEC4); + + // Assign out lighting shader to model + model.materials[0].shader = shader; + cube.materials[0].shader = shader; + + // Create lights + Light lights[MAX_LIGHTS] = { 0 }; + lights[0] = CreateLight(LIGHT_POINT, (Vector3){ -2, 1, -2 }, Vector3Zero(), YELLOW, shader); + lights[1] = CreateLight(LIGHT_POINT, (Vector3){ 2, 1, 2 }, Vector3Zero(), RED, shader); + lights[2] = CreateLight(LIGHT_POINT, (Vector3){ -2, 1, 2 }, Vector3Zero(), GREEN, shader); + lights[3] = CreateLight(LIGHT_POINT, (Vector3){ 2, 1, -2 }, Vector3Zero(), BLUE, shader); + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + UpdateCamera(&camera, CAMERA_ORBITAL); + + // Update the shader with the camera view vector (points towards { 0.0f, 0.0f, 0.0f }) + float cameraPos[3] = { camera.position.x, camera.position.y, camera.position.z }; + SetShaderValue(shader, shader.locs[SHADER_LOC_VECTOR_VIEW], cameraPos, SHADER_UNIFORM_VEC3); + + // Check key inputs to enable/disable lights + if (IsKeyPressed(KEY_Y)) { lights[0].enabled = !lights[0].enabled; } + if (IsKeyPressed(KEY_R)) { lights[1].enabled = !lights[1].enabled; } + if (IsKeyPressed(KEY_G)) { lights[2].enabled = !lights[2].enabled; } + if (IsKeyPressed(KEY_B)) { lights[3].enabled = !lights[3].enabled; } + + // Update light values (actually, only enable/disable them) + for (int i = 0; i < MAX_LIGHTS; i++) UpdateLightValues(shader, lights[i]); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + + DrawModel(model, Vector3Zero(), 1.0f, WHITE); + DrawModel(cube, Vector3Zero(), 1.0f, WHITE); + + // Draw spheres to show where the lights are + for (int i = 0; i < MAX_LIGHTS; i++) + { + if (lights[i].enabled) DrawSphereEx(lights[i].position, 0.2f, 8, 8, lights[i].color); + else DrawSphereWires(lights[i].position, 0.2f, 8, 8, ColorAlpha(lights[i].color, 0.3f)); + } + + DrawGrid(10, 1.0f); + + EndMode3D(); + + DrawFPS(10, 10); + + DrawText("Use keys [Y][R][G][B] to toggle lights", 10, 40, 20, DARKGRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadModel(model); // Unload the model + UnloadModel(cube); // Unload the model + UnloadShader(shader); // Unload shader + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} + diff --git a/examples/shaders/shaders_custom_uniform.c b/examples/shaders/shaders_custom_uniform.c new file mode 100644 index 0000000..eaeca5e --- /dev/null +++ b/examples/shaders/shaders_custom_uniform.c @@ -0,0 +1,129 @@ +/******************************************************************************************* +* +* raylib [shaders] example - Apply a postprocessing shader and connect a custom uniform variable +* +* NOTE: This example requires raylib OpenGL 3.3 or ES2 versions for shaders support, +* OpenGL 1.1 does not support shaders, recompile raylib to OpenGL 3.3 version. +* +* NOTE: Shaders used in this example are #version 330 (OpenGL 3.3), to test this example +* on OpenGL ES 2.0 platforms (Android, Raspberry Pi, HTML5), use #version 100 shaders +* raylib comes with shaders ready for both versions, check raylib/shaders install folder +* +* Example originally created with raylib 1.3, last time updated with raylib 4.0 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2015-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#if defined(PLATFORM_DESKTOP) + #define GLSL_VERSION 330 +#else // PLATFORM_RPI, PLATFORM_ANDROID, PLATFORM_WEB + #define GLSL_VERSION 100 +#endif + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + SetConfigFlags(FLAG_MSAA_4X_HINT); // Enable Multi Sampling Anti Aliasing 4x (if available) + + InitWindow(screenWidth, screenHeight, "raylib [shaders] example - custom uniform variable"); + + // Define the camera to look into our 3d world + Camera camera = { 0 }; + camera.position = (Vector3){ 8.0f, 8.0f, 8.0f }; // Camera position + camera.target = (Vector3){ 0.0f, 1.5f, 0.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 45.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera projection type + + Model model = LoadModel("resources/models/barracks.obj"); // Load OBJ model + Texture2D texture = LoadTexture("resources/models/barracks_diffuse.png"); // Load model texture (diffuse map) + model.materials[0].maps[MATERIAL_MAP_DIFFUSE].texture = texture; // Set model diffuse texture + + Vector3 position = { 0.0f, 0.0f, 0.0f }; // Set model position + + // Load postprocessing shader + // NOTE: Defining 0 (NULL) for vertex shader forces usage of internal default vertex shader + Shader shader = LoadShader(0, TextFormat("resources/shaders/glsl%i/swirl.fs", GLSL_VERSION)); + + // Get variable (uniform) location on the shader to connect with the program + // NOTE: If uniform variable could not be found in the shader, function returns -1 + int swirlCenterLoc = GetShaderLocation(shader, "center"); + + float swirlCenter[2] = { (float)screenWidth/2, (float)screenHeight/2 }; + + // Create a RenderTexture2D to be used for render to texture + RenderTexture2D target = LoadRenderTexture(screenWidth, screenHeight); + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + UpdateCamera(&camera, CAMERA_ORBITAL); + + Vector2 mousePosition = GetMousePosition(); + + swirlCenter[0] = mousePosition.x; + swirlCenter[1] = screenHeight - mousePosition.y; + + // Send new value to the shader to be used on drawing + SetShaderValue(shader, swirlCenterLoc, swirlCenter, SHADER_UNIFORM_VEC2); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginTextureMode(target); // Enable drawing to texture + ClearBackground(RAYWHITE); // Clear texture background + + BeginMode3D(camera); // Begin 3d mode drawing + DrawModel(model, position, 0.5f, WHITE); // Draw 3d model with texture + DrawGrid(10, 1.0f); // Draw a grid + EndMode3D(); // End 3d mode drawing, returns to orthographic 2d mode + + DrawText("TEXT DRAWN IN RENDER TEXTURE", 200, 10, 30, RED); + EndTextureMode(); // End drawing to texture (now we have a texture available for next passes) + + BeginDrawing(); + ClearBackground(RAYWHITE); // Clear screen background + + // Enable shader using the custom uniform + BeginShaderMode(shader); + // NOTE: Render texture must be y-flipped due to default OpenGL coordinates (left-bottom) + DrawTextureRec(target.texture, (Rectangle){ 0, 0, (float)target.texture.width, (float)-target.texture.height }, (Vector2){ 0, 0 }, WHITE); + EndShaderMode(); + + // Draw some 2d text over drawn texture + DrawText("(c) Barracks 3D model by Alberto Cano", screenWidth - 220, screenHeight - 20, 10, GRAY); + DrawFPS(10, 10); + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadShader(shader); // Unload shader + UnloadTexture(texture); // Unload texture + UnloadModel(model); // Unload model + UnloadRenderTexture(target); // Unload render texture + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/shaders/shaders_eratosthenes.c b/examples/shaders/shaders_eratosthenes.c new file mode 100644 index 0000000..a481f30 --- /dev/null +++ b/examples/shaders/shaders_eratosthenes.c @@ -0,0 +1,97 @@ +/******************************************************************************************* +* +* raylib [shaders] example - Sieve of Eratosthenes +* +* NOTE: Sieve of Eratosthenes, the earliest known (ancient Greek) prime number sieve. +* +* "Sift the twos and sift the threes, +* The Sieve of Eratosthenes. +* When the multiples sublime, +* the numbers that are left are prime." +* +* NOTE: This example requires raylib OpenGL 3.3 or ES2 versions for shaders support, +* OpenGL 1.1 does not support shaders, recompile raylib to OpenGL 3.3 version. +* +* NOTE: Shaders used in this example are #version 330 (OpenGL 3.3). +* +* Example originally created with raylib 2.5, last time updated with raylib 4.0 +* +* Example contributed by ProfJski and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2019-2023 ProfJski and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#if defined(PLATFORM_DESKTOP) + #define GLSL_VERSION 330 +#else // PLATFORM_RPI, PLATFORM_ANDROID, PLATFORM_WEB + #define GLSL_VERSION 100 +#endif + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shaders] example - Sieve of Eratosthenes"); + + RenderTexture2D target = LoadRenderTexture(screenWidth, screenHeight); + + // Load Eratosthenes shader + // NOTE: Defining 0 (NULL) for vertex shader forces usage of internal default vertex shader + Shader shader = LoadShader(0, TextFormat("resources/shaders/glsl%i/eratosthenes.fs", GLSL_VERSION)); + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // Nothing to do here, everything is happening in the shader + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginTextureMode(target); // Enable drawing to texture + ClearBackground(BLACK); // Clear the render texture + + // Draw a rectangle in shader mode to be used as shader canvas + // NOTE: Rectangle uses font white character texture coordinates, + // so shader can not be applied here directly because input vertexTexCoord + // do not represent full screen coordinates (space where want to apply shader) + DrawRectangle(0, 0, GetScreenWidth(), GetScreenHeight(), BLACK); + EndTextureMode(); // End drawing to texture (now we have a blank texture available for the shader) + + BeginDrawing(); + ClearBackground(RAYWHITE); // Clear screen background + + BeginShaderMode(shader); + // NOTE: Render texture must be y-flipped due to default OpenGL coordinates (left-bottom) + DrawTextureRec(target.texture, (Rectangle){ 0, 0, (float)target.texture.width, (float)-target.texture.height }, (Vector2){ 0.0f, 0.0f }, WHITE); + EndShaderMode(); + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadShader(shader); // Unload shader + UnloadRenderTexture(target); // Unload render texture + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/shaders/shaders_fog.c b/examples/shaders/shaders_fog.c new file mode 100644 index 0000000..24a1c10 --- /dev/null +++ b/examples/shaders/shaders_fog.c @@ -0,0 +1,155 @@ +/******************************************************************************************* +* +* raylib [shaders] example - fog +* +* NOTE: This example requires raylib OpenGL 3.3 or ES2 versions for shaders support, +* OpenGL 1.1 does not support shaders, recompile raylib to OpenGL 3.3 version. +* +* NOTE: Shaders used in this example are #version 330 (OpenGL 3.3). +* +* Example originally created with raylib 2.5, last time updated with raylib 3.7 +* +* Example contributed by Chris Camacho (@chriscamacho) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2019-2023 Chris Camacho (@chriscamacho) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#include "raymath.h" + +#define RLIGHTS_IMPLEMENTATION +#include "rlights.h" + +#if defined(PLATFORM_DESKTOP) + #define GLSL_VERSION 330 +#else // PLATFORM_RPI, PLATFORM_ANDROID, PLATFORM_WEB + #define GLSL_VERSION 100 +#endif + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + SetConfigFlags(FLAG_MSAA_4X_HINT); // Enable Multi Sampling Anti Aliasing 4x (if available) + InitWindow(screenWidth, screenHeight, "raylib [shaders] example - fog"); + + // Define the camera to look into our 3d world + Camera camera = { 0 }; + camera.position = (Vector3){ 2.0f, 2.0f, 6.0f }; // Camera position + camera.target = (Vector3){ 0.0f, 0.5f, 0.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 45.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera projection type + + // Load models and texture + Model modelA = LoadModelFromMesh(GenMeshTorus(0.4f, 1.0f, 16, 32)); + Model modelB = LoadModelFromMesh(GenMeshCube(1.0f, 1.0f, 1.0f)); + Model modelC = LoadModelFromMesh(GenMeshSphere(0.5f, 32, 32)); + Texture texture = LoadTexture("resources/texel_checker.png"); + + // Assign texture to default model material + modelA.materials[0].maps[MATERIAL_MAP_DIFFUSE].texture = texture; + modelB.materials[0].maps[MATERIAL_MAP_DIFFUSE].texture = texture; + modelC.materials[0].maps[MATERIAL_MAP_DIFFUSE].texture = texture; + + // Load shader and set up some uniforms + Shader shader = LoadShader(TextFormat("resources/shaders/glsl%i/lighting.vs", GLSL_VERSION), + TextFormat("resources/shaders/glsl%i/fog.fs", GLSL_VERSION)); + shader.locs[SHADER_LOC_MATRIX_MODEL] = GetShaderLocation(shader, "matModel"); + shader.locs[SHADER_LOC_VECTOR_VIEW] = GetShaderLocation(shader, "viewPos"); + + // Ambient light level + int ambientLoc = GetShaderLocation(shader, "ambient"); + SetShaderValue(shader, ambientLoc, (float[4]){ 0.2f, 0.2f, 0.2f, 1.0f }, SHADER_UNIFORM_VEC4); + + float fogDensity = 0.15f; + int fogDensityLoc = GetShaderLocation(shader, "fogDensity"); + SetShaderValue(shader, fogDensityLoc, &fogDensity, SHADER_UNIFORM_FLOAT); + + // NOTE: All models share the same shader + modelA.materials[0].shader = shader; + modelB.materials[0].shader = shader; + modelC.materials[0].shader = shader; + + // Using just 1 point lights + CreateLight(LIGHT_POINT, (Vector3){ 0, 2, 6 }, Vector3Zero(), WHITE, shader); + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + UpdateCamera(&camera, CAMERA_ORBITAL); + + if (IsKeyDown(KEY_UP)) + { + fogDensity += 0.001f; + if (fogDensity > 1.0f) fogDensity = 1.0f; + } + + if (IsKeyDown(KEY_DOWN)) + { + fogDensity -= 0.001f; + if (fogDensity < 0.0f) fogDensity = 0.0f; + } + + SetShaderValue(shader, fogDensityLoc, &fogDensity, SHADER_UNIFORM_FLOAT); + + // Rotate the torus + modelA.transform = MatrixMultiply(modelA.transform, MatrixRotateX(-0.025f)); + modelA.transform = MatrixMultiply(modelA.transform, MatrixRotateZ(0.012f)); + + // Update the light shader with the camera view position + SetShaderValue(shader, shader.locs[SHADER_LOC_VECTOR_VIEW], &camera.position.x, SHADER_UNIFORM_VEC3); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(GRAY); + + BeginMode3D(camera); + + // Draw the three models + DrawModel(modelA, Vector3Zero(), 1.0f, WHITE); + DrawModel(modelB, (Vector3){ -2.6f, 0, 0 }, 1.0f, WHITE); + DrawModel(modelC, (Vector3){ 2.6f, 0, 0 }, 1.0f, WHITE); + + for (int i = -20; i < 20; i += 2) DrawModel(modelA,(Vector3){ (float)i, 0, 2 }, 1.0f, WHITE); + + EndMode3D(); + + DrawText(TextFormat("Use KEY_UP/KEY_DOWN to change fog density [%.2f]", fogDensity), 10, 10, 20, RAYWHITE); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadModel(modelA); // Unload the model A + UnloadModel(modelB); // Unload the model B + UnloadModel(modelC); // Unload the model C + UnloadTexture(texture); // Unload the texture + UnloadShader(shader); // Unload shader + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/shaders/shaders_hot_reloading.c b/examples/shaders/shaders_hot_reloading.c new file mode 100644 index 0000000..395d44c --- /dev/null +++ b/examples/shaders/shaders_hot_reloading.c @@ -0,0 +1,135 @@ +/******************************************************************************************* +* +* raylib [shaders] example - Hot reloading +* +* NOTE: This example requires raylib OpenGL 3.3 for shaders support and only #version 330 +* is currently supported. OpenGL ES 2.0 platforms are not supported at the moment. +* +* Example originally created with raylib 3.0, last time updated with raylib 3.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2020-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" +#include "rlgl.h" + +#include // Required for: localtime(), asctime() + +#if defined(PLATFORM_DESKTOP) + #define GLSL_VERSION 330 +#else // PLATFORM_RPI, PLATFORM_ANDROID, PLATFORM_WEB + #define GLSL_VERSION 100 +#endif + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shaders] example - hot reloading"); + + const char *fragShaderFileName = "resources/shaders/glsl%i/reload.fs"; + time_t fragShaderFileModTime = GetFileModTime(TextFormat(fragShaderFileName, GLSL_VERSION)); + + // Load raymarching shader + // NOTE: Defining 0 (NULL) for vertex shader forces usage of internal default vertex shader + Shader shader = LoadShader(0, TextFormat(fragShaderFileName, GLSL_VERSION)); + + // Get shader locations for required uniforms + int resolutionLoc = GetShaderLocation(shader, "resolution"); + int mouseLoc = GetShaderLocation(shader, "mouse"); + int timeLoc = GetShaderLocation(shader, "time"); + + float resolution[2] = { (float)screenWidth, (float)screenHeight }; + SetShaderValue(shader, resolutionLoc, resolution, SHADER_UNIFORM_VEC2); + + float totalTime = 0.0f; + bool shaderAutoReloading = false; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + totalTime += GetFrameTime(); + Vector2 mouse = GetMousePosition(); + float mousePos[2] = { mouse.x, mouse.y }; + + // Set shader required uniform values + SetShaderValue(shader, timeLoc, &totalTime, SHADER_UNIFORM_FLOAT); + SetShaderValue(shader, mouseLoc, mousePos, SHADER_UNIFORM_VEC2); + + // Hot shader reloading + if (shaderAutoReloading || (IsMouseButtonPressed(MOUSE_BUTTON_LEFT))) + { + long currentFragShaderModTime = GetFileModTime(TextFormat(fragShaderFileName, GLSL_VERSION)); + + // Check if shader file has been modified + if (currentFragShaderModTime != fragShaderFileModTime) + { + // Try reloading updated shader + Shader updatedShader = LoadShader(0, TextFormat(fragShaderFileName, GLSL_VERSION)); + + if (updatedShader.id != rlGetShaderIdDefault()) // It was correctly loaded + { + UnloadShader(shader); + shader = updatedShader; + + // Get shader locations for required uniforms + resolutionLoc = GetShaderLocation(shader, "resolution"); + mouseLoc = GetShaderLocation(shader, "mouse"); + timeLoc = GetShaderLocation(shader, "time"); + + // Reset required uniforms + SetShaderValue(shader, resolutionLoc, resolution, SHADER_UNIFORM_VEC2); + } + + fragShaderFileModTime = currentFragShaderModTime; + } + } + + if (IsKeyPressed(KEY_A)) shaderAutoReloading = !shaderAutoReloading; + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + // We only draw a white full-screen rectangle, frame is generated in shader + BeginShaderMode(shader); + DrawRectangle(0, 0, screenWidth, screenHeight, WHITE); + EndShaderMode(); + + DrawText(TextFormat("PRESS [A] to TOGGLE SHADER AUTOLOADING: %s", + shaderAutoReloading? "AUTO" : "MANUAL"), 10, 10, 10, shaderAutoReloading? RED : BLACK); + if (!shaderAutoReloading) DrawText("MOUSE CLICK to SHADER RE-LOADING", 10, 30, 10, BLACK); + + DrawText(TextFormat("Shader last modification: %s", asctime(localtime(&fragShaderFileModTime))), 10, 430, 10, BLACK); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadShader(shader); // Unload shader + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/shaders/shaders_hybrid_render.c b/examples/shaders/shaders_hybrid_render.c new file mode 100644 index 0000000..f07917f --- /dev/null +++ b/examples/shaders/shaders_hybrid_render.c @@ -0,0 +1,208 @@ +/******************************************************************************************* +* +* raylib [shaders] example - Hybrid Rendering +* +* Example originally created with raylib 4.2, last time updated with raylib 4.2 +* +* Example contributed by Buğra Alptekin Sarı (@BugraAlptekinSari) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2022-2023 Buğra Alptekin Sarı (@BugraAlptekinSari) +* +********************************************************************************************/ + +#include "raylib.h" +#include "rlgl.h" +#include "math.h" // Used for tan() +#include "raymath.h" // Used to calculate camera Direction + +#if defined(PLATFORM_DESKTOP) +#define GLSL_VERSION 330 +#else // PLATFORM_RPI, PLATFORM_ANDROID, PLATFORM_WEB +#define GLSL_VERSION 100 +#endif + +//------------------------------------------------------------------------------------ +// Declare custom functions required for the example +//------------------------------------------------------------------------------------ +// Load custom render texture, create a writable depth texture buffer +static RenderTexture2D LoadRenderTextureDepthTex(int width, int height); +// Unload render texture from GPU memory (VRAM) +static void UnloadRenderTextureDepthTex(RenderTexture2D target); + +//------------------------------------------------------------------------------------ +// Declare custom Structs +//------------------------------------------------------------------------------------ + +typedef struct { + unsigned int camPos, camDir, screenCenter; +}RayLocs ; + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shaders] example - write depth buffer"); + + // This Shader calculates pixel depth and color using raymarch + Shader shdrRaymarch = LoadShader(0, TextFormat("resources/shaders/glsl%i/hybrid_raymarch.fs", GLSL_VERSION)); + + // This Shader is a standard rasterization fragment shader with the addition of depth writing + // You are required to write depth for all shaders if one shader does it + Shader shdrRaster = LoadShader(0, TextFormat("resources/shaders/glsl%i/hybrid_raster.fs", GLSL_VERSION)); + + // Declare Struct used to store camera locs. + RayLocs marchLocs = {0}; + + // Fill the struct with shader locs. + marchLocs.camPos = GetShaderLocation(shdrRaymarch, "camPos"); + marchLocs.camDir = GetShaderLocation(shdrRaymarch, "camDir"); + marchLocs.screenCenter = GetShaderLocation(shdrRaymarch, "screenCenter"); + + // Transfer screenCenter position to shader. Which is used to calculate ray direction. + Vector2 screenCenter = {.x = screenWidth/2.0, .y = screenHeight/2.0}; + SetShaderValue(shdrRaymarch, marchLocs.screenCenter , &screenCenter , SHADER_UNIFORM_VEC2); + + // Use Customized function to create writable depth texture buffer + RenderTexture2D target = LoadRenderTextureDepthTex(screenWidth, screenHeight); + + // Define the camera to look into our 3d world + Camera camera = { + .position = (Vector3){ 0.5f, 1.0f, 1.5f }, // Camera position + .target = (Vector3){ 0.0f, 0.5f, 0.0f }, // Camera looking at point + .up = (Vector3){ 0.0f, 1.0f, 0.0f }, // Camera up vector (rotation towards target) + .fovy = 45.0f, // Camera field-of-view Y + .projection = CAMERA_PERSPECTIVE // Camera projection type + }; + + // Camera FOV is pre-calculated in the camera Distance. + double camDist = 1.0/(tan(camera.fovy*0.5*DEG2RAD)); + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + UpdateCamera(&camera, CAMERA_ORBITAL); + + // Update Camera Postion in the ray march shader. + SetShaderValue(shdrRaymarch, marchLocs.camPos, &(camera.position), RL_SHADER_UNIFORM_VEC3); + + // Update Camera Looking Vector. Vector length determines FOV. + Vector3 camDir = Vector3Scale( Vector3Normalize( Vector3Subtract(camera.target, camera.position)) , camDist); + SetShaderValue(shdrRaymarch, marchLocs.camDir, &(camDir), RL_SHADER_UNIFORM_VEC3); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + // Draw into our custom render texture (framebuffer) + BeginTextureMode(target); + ClearBackground(WHITE); + + // Raymarch Scene + rlEnableDepthTest(); //Manually enable Depth Test to handle multiple rendering methods. + BeginShaderMode(shdrRaymarch); + DrawRectangleRec((Rectangle){0,0,screenWidth,screenHeight},WHITE); + EndShaderMode(); + + // Raserize Scene + BeginMode3D(camera); + BeginShaderMode(shdrRaster); + DrawCubeWiresV((Vector3){ 0.0f, 0.5f, 1.0f }, (Vector3){ 1.0f, 1.0f, 1.0f }, RED); + DrawCubeV((Vector3){ 0.0f, 0.5f, 1.0f }, (Vector3){ 1.0f, 1.0f, 1.0f }, PURPLE); + DrawCubeWiresV((Vector3){ 0.0f, 0.5f, -1.0f }, (Vector3){ 1.0f, 1.0f, 1.0f }, DARKGREEN); + DrawCubeV((Vector3) { 0.0f, 0.5f, -1.0f }, (Vector3){ 1.0f, 1.0f, 1.0f }, YELLOW); + DrawGrid(10, 1.0f); + EndShaderMode(); + EndMode3D(); + EndTextureMode(); + + // Draw into screen our custom render texture + BeginDrawing(); + ClearBackground(RAYWHITE); + + DrawTextureRec(target.texture, (Rectangle) { 0, 0, screenWidth, -screenHeight }, (Vector2) { 0, 0 }, WHITE); + DrawFPS(10, 10); + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadRenderTextureDepthTex(target); + UnloadShader(shdrRaymarch); + UnloadShader(shdrRaster); + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} + +//------------------------------------------------------------------------------------ +// Define custom functions required for the example +//------------------------------------------------------------------------------------ +// Load custom render texture, create a writable depth texture buffer +RenderTexture2D LoadRenderTextureDepthTex(int width, int height) +{ + RenderTexture2D target = { 0 }; + + target.id = rlLoadFramebuffer(width, height); // Load an empty framebuffer + + if (target.id > 0) + { + rlEnableFramebuffer(target.id); + + // Create color texture (default to RGBA) + target.texture.id = rlLoadTexture(0, width, height, PIXELFORMAT_UNCOMPRESSED_R8G8B8A8, 1); + target.texture.width = width; + target.texture.height = height; + target.texture.format = PIXELFORMAT_UNCOMPRESSED_R8G8B8A8; + target.texture.mipmaps = 1; + + // Create depth texture buffer (instead of raylib default renderbuffer) + target.depth.id = rlLoadTextureDepth(width, height, false); + target.depth.width = width; + target.depth.height = height; + target.depth.format = 19; //DEPTH_COMPONENT_24BIT? + target.depth.mipmaps = 1; + + // Attach color texture and depth texture to FBO + rlFramebufferAttach(target.id, target.texture.id, RL_ATTACHMENT_COLOR_CHANNEL0, RL_ATTACHMENT_TEXTURE2D, 0); + rlFramebufferAttach(target.id, target.depth.id, RL_ATTACHMENT_DEPTH, RL_ATTACHMENT_TEXTURE2D, 0); + + // Check if fbo is complete with attachments (valid) + if (rlFramebufferComplete(target.id)) TRACELOG(LOG_INFO, "FBO: [ID %i] Framebuffer object created successfully", target.id); + + rlDisableFramebuffer(); + } + else TRACELOG(LOG_WARNING, "FBO: Framebuffer object can not be created"); + + return target; +} + +// Unload render texture from GPU memory (VRAM) +void UnloadRenderTextureDepthTex(RenderTexture2D target) +{ + if (target.id > 0) + { + // Color texture attached to FBO is deleted + rlUnloadTexture(target.texture.id); + rlUnloadTexture(target.depth.id); + + // NOTE: Depth texture is automatically + // queried and deleted before deleting framebuffer + rlUnloadFramebuffer(target.id); + } +} \ No newline at end of file diff --git a/examples/shaders/shaders_julia_set.c b/examples/shaders/shaders_julia_set.c new file mode 100644 index 0000000..ee19880 --- /dev/null +++ b/examples/shaders/shaders_julia_set.c @@ -0,0 +1,196 @@ +/******************************************************************************************* +* +* raylib [shaders] example - Julia sets +* +* NOTE: This example requires raylib OpenGL 3.3 or ES2 versions for shaders support, +* OpenGL 1.1 does not support shaders, recompile raylib to OpenGL 3.3 version. +* +* NOTE: Shaders used in this example are #version 330 (OpenGL 3.3). +* +* Example originally created with raylib 2.5, last time updated with raylib 4.0 +* +* Example contributed by eggmund (@eggmund) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2019-2023 eggmund (@eggmund) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#if defined(PLATFORM_DESKTOP) + #define GLSL_VERSION 330 +#else // PLATFORM_RPI, PLATFORM_ANDROID, PLATFORM_WEB + #define GLSL_VERSION 100 +#endif + +// A few good julia sets +const float pointsOfInterest[6][2] = +{ + { -0.348827f, 0.607167f }, + { -0.786268f, 0.169728f }, + { -0.8f, 0.156f }, + { 0.285f, 0.0f }, + { -0.835f, -0.2321f }, + { -0.70176f, -0.3842f }, +}; + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + //SetConfigFlags(FLAG_WINDOW_HIGHDPI); + InitWindow(screenWidth, screenHeight, "raylib [shaders] example - julia sets"); + + // Load julia set shader + // NOTE: Defining 0 (NULL) for vertex shader forces usage of internal default vertex shader + Shader shader = LoadShader(0, TextFormat("resources/shaders/glsl%i/julia_set.fs", GLSL_VERSION)); + + // Create a RenderTexture2D to be used for render to texture + RenderTexture2D target = LoadRenderTexture(GetScreenWidth(), GetScreenHeight()); + + // c constant to use in z^2 + c + float c[2] = { pointsOfInterest[0][0], pointsOfInterest[0][1] }; + + // Offset and zoom to draw the julia set at. (centered on screen and default size) + float offset[2] = { -(float)GetScreenWidth()/2, -(float)GetScreenHeight()/2 }; + float zoom = 1.0f; + + Vector2 offsetSpeed = { 0.0f, 0.0f }; + + // Get variable (uniform) locations on the shader to connect with the program + // NOTE: If uniform variable could not be found in the shader, function returns -1 + int cLoc = GetShaderLocation(shader, "c"); + int zoomLoc = GetShaderLocation(shader, "zoom"); + int offsetLoc = GetShaderLocation(shader, "offset"); + + // Tell the shader what the screen dimensions, zoom, offset and c are + float screenDims[2] = { (float)GetScreenWidth(), (float)GetScreenHeight() }; + SetShaderValue(shader, GetShaderLocation(shader, "screenDims"), screenDims, SHADER_UNIFORM_VEC2); + + SetShaderValue(shader, cLoc, c, SHADER_UNIFORM_VEC2); + SetShaderValue(shader, zoomLoc, &zoom, SHADER_UNIFORM_FLOAT); + SetShaderValue(shader, offsetLoc, offset, SHADER_UNIFORM_VEC2); + + int incrementSpeed = 0; // Multiplier of speed to change c value + bool showControls = true; // Show controls + bool pause = false; // Pause animation + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // Press [1 - 6] to reset c to a point of interest + if (IsKeyPressed(KEY_ONE) || + IsKeyPressed(KEY_TWO) || + IsKeyPressed(KEY_THREE) || + IsKeyPressed(KEY_FOUR) || + IsKeyPressed(KEY_FIVE) || + IsKeyPressed(KEY_SIX)) + { + if (IsKeyPressed(KEY_ONE)) c[0] = pointsOfInterest[0][0], c[1] = pointsOfInterest[0][1]; + else if (IsKeyPressed(KEY_TWO)) c[0] = pointsOfInterest[1][0], c[1] = pointsOfInterest[1][1]; + else if (IsKeyPressed(KEY_THREE)) c[0] = pointsOfInterest[2][0], c[1] = pointsOfInterest[2][1]; + else if (IsKeyPressed(KEY_FOUR)) c[0] = pointsOfInterest[3][0], c[1] = pointsOfInterest[3][1]; + else if (IsKeyPressed(KEY_FIVE)) c[0] = pointsOfInterest[4][0], c[1] = pointsOfInterest[4][1]; + else if (IsKeyPressed(KEY_SIX)) c[0] = pointsOfInterest[5][0], c[1] = pointsOfInterest[5][1]; + + SetShaderValue(shader, cLoc, c, SHADER_UNIFORM_VEC2); + } + + if (IsKeyPressed(KEY_SPACE)) pause = !pause; // Pause animation (c change) + if (IsKeyPressed(KEY_F1)) showControls = !showControls; // Toggle whether or not to show controls + + if (!pause) + { + if (IsKeyPressed(KEY_RIGHT)) incrementSpeed++; + else if (IsKeyPressed(KEY_LEFT)) incrementSpeed--; + + // TODO: The idea is to zoom and move around with mouse + // Probably offset movement should be proportional to zoom level + if (IsMouseButtonDown(MOUSE_BUTTON_LEFT) || IsMouseButtonDown(MOUSE_BUTTON_RIGHT)) + { + if (IsMouseButtonDown(MOUSE_BUTTON_LEFT)) zoom += zoom*0.003f; + if (IsMouseButtonDown(MOUSE_BUTTON_RIGHT)) zoom -= zoom*0.003f; + + Vector2 mousePos = GetMousePosition(); + + offsetSpeed.x = mousePos.x -(float)screenWidth/2; + offsetSpeed.y = mousePos.y -(float)screenHeight/2; + + // Slowly move camera to targetOffset + offset[0] += GetFrameTime()*offsetSpeed.x*0.8f; + offset[1] += GetFrameTime()*offsetSpeed.y*0.8f; + } + else offsetSpeed = (Vector2){ 0.0f, 0.0f }; + + SetShaderValue(shader, zoomLoc, &zoom, SHADER_UNIFORM_FLOAT); + SetShaderValue(shader, offsetLoc, offset, SHADER_UNIFORM_VEC2); + + // Increment c value with time + float amount = GetFrameTime()*incrementSpeed*0.0005f; + c[0] += amount; + c[1] += amount; + + SetShaderValue(shader, cLoc, c, SHADER_UNIFORM_VEC2); + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + // Using a render texture to draw Julia set + BeginTextureMode(target); // Enable drawing to texture + ClearBackground(BLACK); // Clear the render texture + + // Draw a rectangle in shader mode to be used as shader canvas + // NOTE: Rectangle uses font white character texture coordinates, + // so shader can not be applied here directly because input vertexTexCoord + // do not represent full screen coordinates (space where want to apply shader) + DrawRectangle(0, 0, GetScreenWidth(), GetScreenHeight(), BLACK); + EndTextureMode(); + + BeginDrawing(); + ClearBackground(BLACK); // Clear screen background + + // Draw the saved texture and rendered julia set with shader + // NOTE: We do not invert texture on Y, already considered inside shader + BeginShaderMode(shader); + // WARNING: If FLAG_WINDOW_HIGHDPI is enabled, HighDPI monitor scaling should be considered + // when rendering the RenderTexture2D to fit in the HighDPI scaled Window + DrawTextureEx(target.texture, (Vector2){ 0.0f, 0.0f }, 0.0f, 1.0f, WHITE); + EndShaderMode(); + + if (showControls) + { + DrawText("Press Mouse buttons right/left to zoom in/out and move", 10, 15, 10, RAYWHITE); + DrawText("Press KEY_F1 to toggle these controls", 10, 30, 10, RAYWHITE); + DrawText("Press KEYS [1 - 6] to change point of interest", 10, 45, 10, RAYWHITE); + DrawText("Press KEY_LEFT | KEY_RIGHT to change speed", 10, 60, 10, RAYWHITE); + DrawText("Press KEY_SPACE to pause movement animation", 10, 75, 10, RAYWHITE); + } + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadShader(shader); // Unload shader + UnloadRenderTexture(target); // Unload render texture + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/shaders/shaders_mesh_instancing.c b/examples/shaders/shaders_mesh_instancing.c new file mode 100644 index 0000000..7789f2c --- /dev/null +++ b/examples/shaders/shaders_mesh_instancing.c @@ -0,0 +1,147 @@ +/******************************************************************************************* +* +* raylib [shaders] example - Mesh instancing +* +* Example originally created with raylib 3.7, last time updated with raylib 4.2 +* +* Example contributed by @seanpringle and reviewed by Max (@moliad) and Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2020-2023 @seanpringle, Max (@moliad) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + + +#include "raylib.h" +#include "raymath.h" + +#define RLIGHTS_IMPLEMENTATION +#include "rlights.h" + +#include // Required for: calloc(), free() + +#if defined(PLATFORM_DESKTOP) + #define GLSL_VERSION 330 +#else // PLATFORM_RPI, PLATFORM_ANDROID, PLATFORM_WEB + #define GLSL_VERSION 100 +#endif + +#define MAX_INSTANCES 10000 + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shaders] example - mesh instancing"); + + // Define the camera to look into our 3d world + Camera camera = { 0 }; + camera.position = (Vector3){ -125.0f, 125.0f, -125.0f }; // Camera position + camera.target = (Vector3){ 0.0f, 0.0f, 0.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 45.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera projection type + + // Define mesh to be instanced + Mesh cube = GenMeshCube(1.0f, 1.0f, 1.0f); + + // Define transforms to be uploaded to GPU for instances + Matrix *transforms = (Matrix *)RL_CALLOC(MAX_INSTANCES, sizeof(Matrix)); // Pre-multiplied transformations passed to rlgl + + // Translate and rotate cubes randomly + for (int i = 0; i < MAX_INSTANCES; i++) + { + Matrix translation = MatrixTranslate((float)GetRandomValue(-50, 50), (float)GetRandomValue(-50, 50), (float)GetRandomValue(-50, 50)); + Vector3 axis = Vector3Normalize((Vector3){ (float)GetRandomValue(0, 360), (float)GetRandomValue(0, 360), (float)GetRandomValue(0, 360) }); + float angle = (float)GetRandomValue(0, 10)*DEG2RAD; + Matrix rotation = MatrixRotate(axis, angle); + + transforms[i] = MatrixMultiply(rotation, translation); + } + + // Load lighting shader + Shader shader = LoadShader(TextFormat("resources/shaders/glsl%i/lighting_instancing.vs", GLSL_VERSION), + TextFormat("resources/shaders/glsl%i/lighting.fs", GLSL_VERSION)); + // Get shader locations + shader.locs[SHADER_LOC_MATRIX_MVP] = GetShaderLocation(shader, "mvp"); + shader.locs[SHADER_LOC_VECTOR_VIEW] = GetShaderLocation(shader, "viewPos"); + shader.locs[SHADER_LOC_MATRIX_MODEL] = GetShaderLocationAttrib(shader, "instanceTransform"); + + // Set shader value: ambient light level + int ambientLoc = GetShaderLocation(shader, "ambient"); + SetShaderValue(shader, ambientLoc, (float[4]){ 0.2f, 0.2f, 0.2f, 1.0f }, SHADER_UNIFORM_VEC4); + + // Create one light + CreateLight(LIGHT_DIRECTIONAL, (Vector3){ 50.0f, 50.0f, 0.0f }, Vector3Zero(), WHITE, shader); + + // NOTE: We are assigning the intancing shader to material.shader + // to be used on mesh drawing with DrawMeshInstanced() + Material matInstances = LoadMaterialDefault(); + matInstances.shader = shader; + matInstances.maps[MATERIAL_MAP_DIFFUSE].color = RED; + + // Load default material (using raylib intenral default shader) for non-instanced mesh drawing + // WARNING: Default shader enables vertex color attribute BUT GenMeshCube() does not generate vertex colors, so, + // when drawing the color attribute is disabled and a default color value is provided as input for thevertex attribute + Material matDefault = LoadMaterialDefault(); + matDefault.maps[MATERIAL_MAP_DIFFUSE].color = BLUE; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + UpdateCamera(&camera, CAMERA_ORBITAL); + + // Update the light shader with the camera view position + float cameraPos[3] = { camera.position.x, camera.position.y, camera.position.z }; + SetShaderValue(shader, shader.locs[SHADER_LOC_VECTOR_VIEW], cameraPos, SHADER_UNIFORM_VEC3); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + + // Draw cube mesh with default material (BLUE) + DrawMesh(cube, matDefault, MatrixTranslate(-10.0f, 0.0f, 0.0f)); + + // Draw meshes instanced using material containing instancing shader (RED + lighting), + // transforms[] for the instances should be provided, they are dynamically + // updated in GPU every frame, so we can animate the different mesh instances + DrawMeshInstanced(cube, matInstances, transforms, MAX_INSTANCES); + + // Draw cube mesh with default material (BLUE) + DrawMesh(cube, matDefault, MatrixTranslate(10.0f, 0.0f, 0.0f)); + + EndMode3D(); + + DrawFPS(10, 10); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + RL_FREE(transforms); // Free transforms + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/shaders/shaders_model_shader.c b/examples/shaders/shaders_model_shader.c new file mode 100644 index 0000000..e84ecbf --- /dev/null +++ b/examples/shaders/shaders_model_shader.c @@ -0,0 +1,107 @@ +/******************************************************************************************* +* +* raylib [shaders] example - Model shader +* +* NOTE: This example requires raylib OpenGL 3.3 or ES2 versions for shaders support, +* OpenGL 1.1 does not support shaders, recompile raylib to OpenGL 3.3 version. +* +* NOTE: Shaders used in this example are #version 330 (OpenGL 3.3), to test this example +* on OpenGL ES 2.0 platforms (Android, Raspberry Pi, HTML5), use #version 100 shaders +* raylib comes with shaders ready for both versions, check raylib/shaders install folder +* +* Example originally created with raylib 1.3, last time updated with raylib 3.7 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2014-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#if defined(PLATFORM_DESKTOP) + #define GLSL_VERSION 330 +#else // PLATFORM_RPI, PLATFORM_ANDROID, PLATFORM_WEB + #define GLSL_VERSION 100 +#endif + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + SetConfigFlags(FLAG_MSAA_4X_HINT); // Enable Multi Sampling Anti Aliasing 4x (if available) + + InitWindow(screenWidth, screenHeight, "raylib [shaders] example - model shader"); + + // Define the camera to look into our 3d world + Camera camera = { 0 }; + camera.position = (Vector3){ 4.0f, 4.0f, 4.0f }; // Camera position + camera.target = (Vector3){ 0.0f, 1.0f, -1.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 45.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera projection type + + Model model = LoadModel("resources/models/watermill.obj"); // Load OBJ model + Texture2D texture = LoadTexture("resources/models/watermill_diffuse.png"); // Load model texture + + // Load shader for model + // NOTE: Defining 0 (NULL) for vertex shader forces usage of internal default vertex shader + Shader shader = LoadShader(0, TextFormat("resources/shaders/glsl%i/grayscale.fs", GLSL_VERSION)); + + model.materials[0].shader = shader; // Set shader effect to 3d model + model.materials[0].maps[MATERIAL_MAP_DIFFUSE].texture = texture; // Bind texture to model + + Vector3 position = { 0.0f, 0.0f, 0.0f }; // Set model position + + DisableCursor(); // Limit cursor to relative movement inside the window + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + UpdateCamera(&camera, CAMERA_FIRST_PERSON); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + + DrawModel(model, position, 0.2f, WHITE); // Draw 3d model with texture + + DrawGrid(10, 1.0f); // Draw a grid + + EndMode3D(); + + DrawText("(c) Watermill 3D model by Alberto Cano", screenWidth - 210, screenHeight - 20, 10, GRAY); + + DrawFPS(10, 10); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadShader(shader); // Unload shader + UnloadTexture(texture); // Unload texture + UnloadModel(model); // Unload model + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/shaders/shaders_multi_sample2d.c b/examples/shaders/shaders_multi_sample2d.c new file mode 100644 index 0000000..d6f8803 --- /dev/null +++ b/examples/shaders/shaders_multi_sample2d.c @@ -0,0 +1,110 @@ +/******************************************************************************************* +* +* raylib [shaders] example - Multiple sample2D with default batch system +* +* NOTE: This example requires raylib OpenGL 3.3 or ES2 versions for shaders support, +* OpenGL 1.1 does not support shaders, recompile raylib to OpenGL 3.3 version. +* +* NOTE: Shaders used in this example are #version 330 (OpenGL 3.3), to test this example +* on OpenGL ES 2.0 platforms (Android, Raspberry Pi, HTML5), use #version 100 shaders +* raylib comes with shaders ready for both versions, check raylib/shaders install folder +* +* Example originally created with raylib 3.5, last time updated with raylib 3.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2020-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#if defined(PLATFORM_DESKTOP) + #define GLSL_VERSION 330 +#else // PLATFORM_RPI, PLATFORM_ANDROID, PLATFORM_WEB + #define GLSL_VERSION 100 +#endif + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib - multiple sample2D"); + + Image imRed = GenImageColor(800, 450, (Color){ 255, 0, 0, 255 }); + Texture texRed = LoadTextureFromImage(imRed); + UnloadImage(imRed); + + Image imBlue = GenImageColor(800, 450, (Color){ 0, 0, 255, 255 }); + Texture texBlue = LoadTextureFromImage(imBlue); + UnloadImage(imBlue); + + Shader shader = LoadShader(0, TextFormat("resources/shaders/glsl%i/color_mix.fs", GLSL_VERSION)); + + // Get an additional sampler2D location to be enabled on drawing + int texBlueLoc = GetShaderLocation(shader, "texture1"); + + // Get shader uniform for divider + int dividerLoc = GetShaderLocation(shader, "divider"); + float dividerValue = 0.5f; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + if (IsKeyDown(KEY_RIGHT)) dividerValue += 0.01f; + else if (IsKeyDown(KEY_LEFT)) dividerValue -= 0.01f; + + if (dividerValue < 0.0f) dividerValue = 0.0f; + else if (dividerValue > 1.0f) dividerValue = 1.0f; + + SetShaderValue(shader, dividerLoc, ÷rValue, SHADER_UNIFORM_FLOAT); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginShaderMode(shader); + + // WARNING: Additional samplers are enabled for all draw calls in the batch, + // EndShaderMode() forces batch drawing and consequently resets active textures + // to let other sampler2D to be activated on consequent drawings (if required) + SetShaderValueTexture(shader, texBlueLoc, texBlue); + + // We are drawing texRed using default sampler2D texture0 but + // an additional texture units is enabled for texBlue (sampler2D texture1) + DrawTexture(texRed, 0, 0, WHITE); + + EndShaderMode(); + + DrawText("Use KEY_LEFT/KEY_RIGHT to move texture mixing in shader!", 80, GetScreenHeight() - 40, 20, RAYWHITE); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadShader(shader); // Unload shader + UnloadTexture(texRed); // Unload texture + UnloadTexture(texBlue); // Unload texture + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/shaders/shaders_palette_switch.c b/examples/shaders/shaders_palette_switch.c new file mode 100644 index 0000000..bb1eda4 --- /dev/null +++ b/examples/shaders/shaders_palette_switch.c @@ -0,0 +1,152 @@ +/******************************************************************************************* +* +* raylib [shaders] example - Color palette switch +* +* NOTE: This example requires raylib OpenGL 3.3 or ES2 versions for shaders support, +* OpenGL 1.1 does not support shaders, recompile raylib to OpenGL 3.3 version. +* +* NOTE: Shaders used in this example are #version 330 (OpenGL 3.3), to test this example +* on OpenGL ES 2.0 platforms (Android, Raspberry Pi, HTML5), use #version 100 shaders +* raylib comes with shaders ready for both versions, check raylib/shaders install folder +* +* Example originally created with raylib 2.5, last time updated with raylib 3.7 +* +* Example contributed by Marco Lizza (@MarcoLizza) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2019-2023 Marco Lizza (@MarcoLizza) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#if defined(PLATFORM_DESKTOP) + #define GLSL_VERSION 330 +#else // PLATFORM_RPI, PLATFORM_ANDROID, PLATFORM_WEB + #define GLSL_VERSION 100 +#endif + +#define MAX_PALETTES 3 +#define COLORS_PER_PALETTE 8 +#define VALUES_PER_COLOR 3 + +static const int palettes[MAX_PALETTES][COLORS_PER_PALETTE*VALUES_PER_COLOR] = { + { // 3-BIT RGB + 0, 0, 0, + 255, 0, 0, + 0, 255, 0, + 0, 0, 255, + 0, 255, 255, + 255, 0, 255, + 255, 255, 0, + 255, 255, 255, + }, + { // AMMO-8 (GameBoy-like) + 4, 12, 6, + 17, 35, 24, + 30, 58, 41, + 48, 93, 66, + 77, 128, 97, + 137, 162, 87, + 190, 220, 127, + 238, 255, 204, + }, + { // RKBV (2-strip film) + 21, 25, 26, + 138, 76, 88, + 217, 98, 117, + 230, 184, 193, + 69, 107, 115, + 75, 151, 166, + 165, 189, 194, + 255, 245, 247, + } +}; + +static const char *paletteText[] = { + "3-BIT RGB", + "AMMO-8 (GameBoy-like)", + "RKBV (2-strip film)" +}; + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shaders] example - color palette switch"); + + // Load shader to be used on some parts drawing + // NOTE 1: Using GLSL 330 shader version, on OpenGL ES 2.0 use GLSL 100 shader version + // NOTE 2: Defining 0 (NULL) for vertex shader forces usage of internal default vertex shader + Shader shader = LoadShader(0, TextFormat("resources/shaders/glsl%i/palette_switch.fs", GLSL_VERSION)); + + // Get variable (uniform) location on the shader to connect with the program + // NOTE: If uniform variable could not be found in the shader, function returns -1 + int paletteLoc = GetShaderLocation(shader, "palette"); + + int currentPalette = 0; + int lineHeight = screenHeight/COLORS_PER_PALETTE; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + if (IsKeyPressed(KEY_RIGHT)) currentPalette++; + else if (IsKeyPressed(KEY_LEFT)) currentPalette--; + + if (currentPalette >= MAX_PALETTES) currentPalette = 0; + else if (currentPalette < 0) currentPalette = MAX_PALETTES - 1; + + // Send new value to the shader to be used on drawing. + // NOTE: We are sending RGB triplets w/o the alpha channel + SetShaderValueV(shader, paletteLoc, palettes[currentPalette], SHADER_UNIFORM_IVEC3, COLORS_PER_PALETTE); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginShaderMode(shader); + + for (int i = 0; i < COLORS_PER_PALETTE; i++) + { + // Draw horizontal screen-wide rectangles with increasing "palette index" + // The used palette index is encoded in the RGB components of the pixel + DrawRectangle(0, lineHeight*i, GetScreenWidth(), lineHeight, (Color){ i, i, i, 255 }); + } + + EndShaderMode(); + + DrawText("< >", 10, 10, 30, DARKBLUE); + DrawText("CURRENT PALETTE:", 60, 15, 20, RAYWHITE); + DrawText(paletteText[currentPalette], 300, 15, 20, RED); + + DrawFPS(700, 15); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadShader(shader); // Unload shader + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/shaders/shaders_postprocessing.c b/examples/shaders/shaders_postprocessing.c new file mode 100644 index 0000000..7f6bd00 --- /dev/null +++ b/examples/shaders/shaders_postprocessing.c @@ -0,0 +1,177 @@ +/******************************************************************************************* +* +* raylib [shaders] example - Apply a postprocessing shader to a scene +* +* NOTE: This example requires raylib OpenGL 3.3 or ES2 versions for shaders support, +* OpenGL 1.1 does not support shaders, recompile raylib to OpenGL 3.3 version. +* +* NOTE: Shaders used in this example are #version 330 (OpenGL 3.3), to test this example +* on OpenGL ES 2.0 platforms (Android, Raspberry Pi, HTML5), use #version 100 shaders +* raylib comes with shaders ready for both versions, check raylib/shaders install folder +* +* Example originally created with raylib 1.3, last time updated with raylib 4.0 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2015-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#if defined(PLATFORM_DESKTOP) + #define GLSL_VERSION 330 +#else // PLATFORM_RPI, PLATFORM_ANDROID, PLATFORM_WEB + #define GLSL_VERSION 100 +#endif + +#define MAX_POSTPRO_SHADERS 12 + +typedef enum { + FX_GRAYSCALE = 0, + FX_POSTERIZATION, + FX_DREAM_VISION, + FX_PIXELIZER, + FX_CROSS_HATCHING, + FX_CROSS_STITCHING, + FX_PREDATOR_VIEW, + FX_SCANLINES, + FX_FISHEYE, + FX_SOBEL, + FX_BLOOM, + FX_BLUR, + //FX_FXAA +} PostproShader; + +static const char *postproShaderText[] = { + "GRAYSCALE", + "POSTERIZATION", + "DREAM_VISION", + "PIXELIZER", + "CROSS_HATCHING", + "CROSS_STITCHING", + "PREDATOR_VIEW", + "SCANLINES", + "FISHEYE", + "SOBEL", + "BLOOM", + "BLUR", + //"FXAA" +}; + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + SetConfigFlags(FLAG_MSAA_4X_HINT); // Enable Multi Sampling Anti Aliasing 4x (if available) + + InitWindow(screenWidth, screenHeight, "raylib [shaders] example - postprocessing shader"); + + // Define the camera to look into our 3d world + Camera camera = { 0 }; + camera.position = (Vector3){ 2.0f, 3.0f, 2.0f }; // Camera position + camera.target = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 45.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera projection type + + Model model = LoadModel("resources/models/church.obj"); // Load OBJ model + Texture2D texture = LoadTexture("resources/models/church_diffuse.png"); // Load model texture (diffuse map) + model.materials[0].maps[MATERIAL_MAP_DIFFUSE].texture = texture; // Set model diffuse texture + + Vector3 position = { 0.0f, 0.0f, 0.0f }; // Set model position + + // Load all postpro shaders + // NOTE 1: All postpro shader use the base vertex shader (DEFAULT_VERTEX_SHADER) + // NOTE 2: We load the correct shader depending on GLSL version + Shader shaders[MAX_POSTPRO_SHADERS] = { 0 }; + + // NOTE: Defining 0 (NULL) for vertex shader forces usage of internal default vertex shader + shaders[FX_GRAYSCALE] = LoadShader(0, TextFormat("resources/shaders/glsl%i/grayscale.fs", GLSL_VERSION)); + shaders[FX_POSTERIZATION] = LoadShader(0, TextFormat("resources/shaders/glsl%i/posterization.fs", GLSL_VERSION)); + shaders[FX_DREAM_VISION] = LoadShader(0, TextFormat("resources/shaders/glsl%i/dream_vision.fs", GLSL_VERSION)); + shaders[FX_PIXELIZER] = LoadShader(0, TextFormat("resources/shaders/glsl%i/pixelizer.fs", GLSL_VERSION)); + shaders[FX_CROSS_HATCHING] = LoadShader(0, TextFormat("resources/shaders/glsl%i/cross_hatching.fs", GLSL_VERSION)); + shaders[FX_CROSS_STITCHING] = LoadShader(0, TextFormat("resources/shaders/glsl%i/cross_stitching.fs", GLSL_VERSION)); + shaders[FX_PREDATOR_VIEW] = LoadShader(0, TextFormat("resources/shaders/glsl%i/predator.fs", GLSL_VERSION)); + shaders[FX_SCANLINES] = LoadShader(0, TextFormat("resources/shaders/glsl%i/scanlines.fs", GLSL_VERSION)); + shaders[FX_FISHEYE] = LoadShader(0, TextFormat("resources/shaders/glsl%i/fisheye.fs", GLSL_VERSION)); + shaders[FX_SOBEL] = LoadShader(0, TextFormat("resources/shaders/glsl%i/sobel.fs", GLSL_VERSION)); + shaders[FX_BLOOM] = LoadShader(0, TextFormat("resources/shaders/glsl%i/bloom.fs", GLSL_VERSION)); + shaders[FX_BLUR] = LoadShader(0, TextFormat("resources/shaders/glsl%i/blur.fs", GLSL_VERSION)); + + int currentShader = FX_GRAYSCALE; + + // Create a RenderTexture2D to be used for render to texture + RenderTexture2D target = LoadRenderTexture(screenWidth, screenHeight); + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + UpdateCamera(&camera, CAMERA_ORBITAL); + + if (IsKeyPressed(KEY_RIGHT)) currentShader++; + else if (IsKeyPressed(KEY_LEFT)) currentShader--; + + if (currentShader >= MAX_POSTPRO_SHADERS) currentShader = 0; + else if (currentShader < 0) currentShader = MAX_POSTPRO_SHADERS - 1; + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginTextureMode(target); // Enable drawing to texture + ClearBackground(RAYWHITE); // Clear texture background + + BeginMode3D(camera); // Begin 3d mode drawing + DrawModel(model, position, 0.1f, WHITE); // Draw 3d model with texture + DrawGrid(10, 1.0f); // Draw a grid + EndMode3D(); // End 3d mode drawing, returns to orthographic 2d mode + EndTextureMode(); // End drawing to texture (now we have a texture available for next passes) + + BeginDrawing(); + ClearBackground(RAYWHITE); // Clear screen background + + // Render generated texture using selected postprocessing shader + BeginShaderMode(shaders[currentShader]); + // NOTE: Render texture must be y-flipped due to default OpenGL coordinates (left-bottom) + DrawTextureRec(target.texture, (Rectangle){ 0, 0, (float)target.texture.width, (float)-target.texture.height }, (Vector2){ 0, 0 }, WHITE); + EndShaderMode(); + + // Draw 2d shapes and text over drawn texture + DrawRectangle(0, 9, 580, 30, Fade(LIGHTGRAY, 0.7f)); + + DrawText("(c) Church 3D model by Alberto Cano", screenWidth - 200, screenHeight - 20, 10, GRAY); + DrawText("CURRENT POSTPRO SHADER:", 10, 15, 20, BLACK); + DrawText(postproShaderText[currentShader], 330, 15, 20, RED); + DrawText("< >", 540, 10, 30, DARKBLUE); + DrawFPS(700, 15); + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + // Unload all postpro shaders + for (int i = 0; i < MAX_POSTPRO_SHADERS; i++) UnloadShader(shaders[i]); + + UnloadTexture(texture); // Unload texture + UnloadModel(model); // Unload model + UnloadRenderTexture(target); // Unload render texture + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/raymarching.js b/examples/shaders/shaders_raymarching.js similarity index 94% rename from examples/raymarching.js rename to examples/shaders/shaders_raymarching.js index e9e1bc8..add93f2 100644 --- a/examples/raymarching.js +++ b/examples/shaders/shaders_raymarching.js @@ -15,7 +15,7 @@ const camera = new Camera3D(position,target, up, fovy, projection) // Load raymarching shader // NOTE: Defining 0 (NULL) for vertex shader forces usage of internal default vertex shader -const shader = loadShader(null, "../assets/shaders/glsl330/raymarching.fs"); +const shader = loadShader(null, "resources/shaders/glsl330/raymarching.fs"); // Get shader locations for required uniforms const viewEyeLoc = getShaderLocation(shader, "viewEye"); @@ -23,7 +23,8 @@ const viewCenterLoc = getShaderLocation(shader, "viewCenter"); const runTimeLoc = getShaderLocation(shader, "runTime"); const resolutionLoc = getShaderLocation(shader, "resolution"); -let resolution = new Vector2(getRenderWidth()*2, getRenderHeight()*2); +const scale = getWindowScaleDPI() +let resolution = new Vector2(getRenderWidth()*scale.x, getRenderHeight()*scale.y); setShaderValue(shader, resolutionLoc, resolution, SHADER_UNIFORM_VEC2); let runTime = 0.0; diff --git a/examples/shaders/shaders_shapes_textures.c b/examples/shaders/shaders_shapes_textures.c new file mode 100644 index 0000000..d3ec8da --- /dev/null +++ b/examples/shaders/shaders_shapes_textures.c @@ -0,0 +1,121 @@ +/******************************************************************************************* +* +* raylib [shaders] example - Apply a shader to some shape or texture +* +* NOTE: This example requires raylib OpenGL 3.3 or ES2 versions for shaders support, +* OpenGL 1.1 does not support shaders, recompile raylib to OpenGL 3.3 version. +* +* NOTE: Shaders used in this example are #version 330 (OpenGL 3.3), to test this example +* on OpenGL ES 2.0 platforms (Android, Raspberry Pi, HTML5), use #version 100 shaders +* raylib comes with shaders ready for both versions, check raylib/shaders install folder +* +* Example originally created with raylib 1.7, last time updated with raylib 3.7 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2015-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#if defined(PLATFORM_DESKTOP) + #define GLSL_VERSION 330 +#else // PLATFORM_RPI, PLATFORM_ANDROID, PLATFORM_WEB + #define GLSL_VERSION 100 +#endif + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shaders] example - shapes and texture shaders"); + + Texture2D fudesumi = LoadTexture("resources/fudesumi.png"); + + // Load shader to be used on some parts drawing + // NOTE 1: Using GLSL 330 shader version, on OpenGL ES 2.0 use GLSL 100 shader version + // NOTE 2: Defining 0 (NULL) for vertex shader forces usage of internal default vertex shader + Shader shader = LoadShader(0, TextFormat("resources/shaders/glsl%i/grayscale.fs", GLSL_VERSION)); + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // TODO: Update your variables here + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + // Start drawing with default shader + + DrawText("USING DEFAULT SHADER", 20, 40, 10, RED); + + DrawCircle(80, 120, 35, DARKBLUE); + DrawCircleGradient(80, 220, 60, GREEN, SKYBLUE); + DrawCircleLines(80, 340, 80, DARKBLUE); + + + // Activate our custom shader to be applied on next shapes/textures drawings + BeginShaderMode(shader); + + DrawText("USING CUSTOM SHADER", 190, 40, 10, RED); + + DrawRectangle(250 - 60, 90, 120, 60, RED); + DrawRectangleGradientH(250 - 90, 170, 180, 130, MAROON, GOLD); + DrawRectangleLines(250 - 40, 320, 80, 60, ORANGE); + + // Activate our default shader for next drawings + EndShaderMode(); + + DrawText("USING DEFAULT SHADER", 370, 40, 10, RED); + + DrawTriangle((Vector2){430, 80}, + (Vector2){430 - 60, 150}, + (Vector2){430 + 60, 150}, VIOLET); + + DrawTriangleLines((Vector2){430, 160}, + (Vector2){430 - 20, 230}, + (Vector2){430 + 20, 230}, DARKBLUE); + + DrawPoly((Vector2){430, 320}, 6, 80, 0, BROWN); + + // Activate our custom shader to be applied on next shapes/textures drawings + BeginShaderMode(shader); + + DrawTexture(fudesumi, 500, -30, WHITE); // Using custom shader + + // Activate our default shader for next drawings + EndShaderMode(); + + DrawText("(c) Fudesumi sprite by Eiden Marsal", 380, screenHeight - 20, 10, GRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadShader(shader); // Unload shader + UnloadTexture(fudesumi); // Unload texture + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/shaders/shaders_simple_mask.c b/examples/shaders/shaders_simple_mask.c new file mode 100644 index 0000000..6283ccb --- /dev/null +++ b/examples/shaders/shaders_simple_mask.c @@ -0,0 +1,150 @@ +/******************************************************************************************* +* +* raylib [shaders] example - Simple shader mask +* +* Example originally created with raylib 2.5, last time updated with raylib 3.7 +* +* Example contributed by Chris Camacho (@chriscamacho) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2019-2023 Chris Camacho (@chriscamacho) and Ramon Santamaria (@raysan5) +* +******************************************************************************************** +* +* After a model is loaded it has a default material, this material can be +* modified in place rather than creating one from scratch... +* While all of the maps have particular names, they can be used for any purpose +* except for three maps that are applied as cubic maps (see below) +* +********************************************************************************************/ + +#include "raylib.h" +#include "raymath.h" + +#if defined(PLATFORM_DESKTOP) + #define GLSL_VERSION 330 +#else // PLATFORM_RPI, PLATFORM_ANDROID, PLATFORM_WEB + #define GLSL_VERSION 100 +#endif + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shaders] example - simple shader mask"); + + // Define the camera to look into our 3d world + Camera camera = { 0 }; + camera.position = (Vector3){ 0.0f, 1.0f, 2.0f }; // Camera position + camera.target = (Vector3){ 0.0f, 0.0f, 0.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 45.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera projection type + + // Define our three models to show the shader on + Mesh torus = GenMeshTorus(0.3f, 1, 16, 32); + Model model1 = LoadModelFromMesh(torus); + + Mesh cube = GenMeshCube(0.8f,0.8f,0.8f); + Model model2 = LoadModelFromMesh(cube); + + // Generate model to be shaded just to see the gaps in the other two + Mesh sphere = GenMeshSphere(1, 16, 16); + Model model3 = LoadModelFromMesh(sphere); + + // Load the shader + Shader shader = LoadShader(0, TextFormat("resources/shaders/glsl%i/mask.fs", GLSL_VERSION)); + + // Load and apply the diffuse texture (colour map) + Texture texDiffuse = LoadTexture("resources/plasma.png"); + model1.materials[0].maps[MATERIAL_MAP_DIFFUSE].texture = texDiffuse; + model2.materials[0].maps[MATERIAL_MAP_DIFFUSE].texture = texDiffuse; + + // Using MATERIAL_MAP_EMISSION as a spare slot to use for 2nd texture + // NOTE: Don't use MATERIAL_MAP_IRRADIANCE, MATERIAL_MAP_PREFILTER or MATERIAL_MAP_CUBEMAP as they are bound as cube maps + Texture texMask = LoadTexture("resources/mask.png"); + model1.materials[0].maps[MATERIAL_MAP_EMISSION].texture = texMask; + model2.materials[0].maps[MATERIAL_MAP_EMISSION].texture = texMask; + shader.locs[SHADER_LOC_MAP_EMISSION] = GetShaderLocation(shader, "mask"); + + // Frame is incremented each frame to animate the shader + int shaderFrame = GetShaderLocation(shader, "frame"); + + // Apply the shader to the two models + model1.materials[0].shader = shader; + model2.materials[0].shader = shader; + + int framesCounter = 0; + Vector3 rotation = { 0 }; // Model rotation angles + + DisableCursor(); // Limit cursor to relative movement inside the window + SetTargetFPS(60); // Set to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + UpdateCamera(&camera, CAMERA_FIRST_PERSON); + + framesCounter++; + rotation.x += 0.01f; + rotation.y += 0.005f; + rotation.z -= 0.0025f; + + // Send frames counter to shader for animation + SetShaderValue(shader, shaderFrame, &framesCounter, SHADER_UNIFORM_INT); + + // Rotate one of the models + model1.transform = MatrixRotateXYZ(rotation); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(DARKBLUE); + + BeginMode3D(camera); + + DrawModel(model1, (Vector3){ 0.5f, 0.0f, 0.0f }, 1, WHITE); + DrawModelEx(model2, (Vector3){ -0.5f, 0.0f, 0.0f }, (Vector3){ 1.0f, 1.0f, 0.0f }, 50, (Vector3){ 1.0f, 1.0f, 1.0f }, WHITE); + DrawModel(model3,(Vector3){ 0.0f, 0.0f, -1.5f }, 1, WHITE); + DrawGrid(10, 1.0f); // Draw a grid + + EndMode3D(); + + DrawRectangle(16, 698, MeasureText(TextFormat("Frame: %i", framesCounter), 20) + 8, 42, BLUE); + DrawText(TextFormat("Frame: %i", framesCounter), 20, 700, 20, WHITE); + + DrawFPS(10, 10); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadModel(model1); + UnloadModel(model2); + UnloadModel(model3); + + UnloadTexture(texDiffuse); // Unload default diffuse texture + UnloadTexture(texMask); // Unload texture mask + + UnloadShader(shader); // Unload shader + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/shaders/shaders_spotlight.c b/examples/shaders/shaders_spotlight.c new file mode 100644 index 0000000..c96c983 --- /dev/null +++ b/examples/shaders/shaders_spotlight.c @@ -0,0 +1,255 @@ +/******************************************************************************************* +* +* raylib [shaders] example - Simple shader mask +* +* Example originally created with raylib 2.5, last time updated with raylib 3.7 +* +* Example contributed by Chris Camacho (@chriscamacho) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2019-2023 Chris Camacho (@chriscamacho) and Ramon Santamaria (@raysan5) +* +******************************************************************************************** +* +* The shader makes alpha holes in the forground to give the appearance of a top +* down look at a spotlight casting a pool of light... +* +* The right hand side of the screen there is just enough light to see whats +* going on without the spot light, great for a stealth type game where you +* have to avoid the spotlights. +* +* The left hand side of the screen is in pitch dark except for where the spotlights are. +* +* Although this example doesn't scale like the letterbox example, you could integrate +* the two techniques, but by scaling the actual colour of the render texture rather +* than using alpha as a mask. +* +********************************************************************************************/ + +#include "raylib.h" + +#include "raymath.h" + +#if defined(PLATFORM_DESKTOP) + #define GLSL_VERSION 330 +#else // PLATFORM_RPI, PLATFORM_ANDROID, PLATFORM_WEB + #define GLSL_VERSION 100 +#endif + +#define MAX_SPOTS 3 // NOTE: It must be the same as define in shader +#define MAX_STARS 400 + +// Spot data +typedef struct Spot { + Vector2 position; + Vector2 speed; + float inner; + float radius; + + // Shader locations + unsigned int positionLoc; + unsigned int innerLoc; + unsigned int radiusLoc; +} Spot; + +// Stars in the star field have a position and velocity +typedef struct Star { + Vector2 position; + Vector2 speed; +} Star; + +static void UpdateStar(Star *s); +static void ResetStar(Star *s); + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shaders] example - shader spotlight"); + HideCursor(); + + Texture texRay = LoadTexture("resources/raysan.png"); + + Star stars[MAX_STARS] = { 0 }; + + for (int n = 0; n < MAX_STARS; n++) ResetStar(&stars[n]); + + // Progress all the stars on, so they don't all start in the centre + for (int m = 0; m < screenWidth/2.0; m++) + { + for (int n = 0; n < MAX_STARS; n++) UpdateStar(&stars[n]); + } + + int frameCounter = 0; + + // Use default vert shader + Shader shdrSpot = LoadShader(0, TextFormat("resources/shaders/glsl%i/spotlight.fs", GLSL_VERSION)); + + // Get the locations of spots in the shader + Spot spots[MAX_SPOTS]; + + for (int i = 0; i < MAX_SPOTS; i++) + { + char posName[32] = "spots[x].pos\0"; + char innerName[32] = "spots[x].inner\0"; + char radiusName[32] = "spots[x].radius\0"; + + posName[6] = '0' + i; + innerName[6] = '0' + i; + radiusName[6] = '0' + i; + + spots[i].positionLoc = GetShaderLocation(shdrSpot, posName); + spots[i].innerLoc = GetShaderLocation(shdrSpot, innerName); + spots[i].radiusLoc = GetShaderLocation(shdrSpot, radiusName); + + } + + // Tell the shader how wide the screen is so we can have + // a pitch black half and a dimly lit half. + unsigned int wLoc = GetShaderLocation(shdrSpot, "screenWidth"); + float sw = (float)GetScreenWidth(); + SetShaderValue(shdrSpot, wLoc, &sw, SHADER_UNIFORM_FLOAT); + + // Randomize the locations and velocities of the spotlights + // and initialize the shader locations + for (int i = 0; i < MAX_SPOTS; i++) + { + spots[i].position.x = (float)GetRandomValue(64, screenWidth - 64); + spots[i].position.y = (float)GetRandomValue(64, screenHeight - 64); + spots[i].speed = (Vector2){ 0, 0 }; + + while ((fabs(spots[i].speed.x) + fabs(spots[i].speed.y)) < 2) + { + spots[i].speed.x = GetRandomValue(-400, 40) / 10.0f; + spots[i].speed.y = GetRandomValue(-400, 40) / 10.0f; + } + + spots[i].inner = 28.0f * (i + 1); + spots[i].radius = 48.0f * (i + 1); + + SetShaderValue(shdrSpot, spots[i].positionLoc, &spots[i].position.x, SHADER_UNIFORM_VEC2); + SetShaderValue(shdrSpot, spots[i].innerLoc, &spots[i].inner, SHADER_UNIFORM_FLOAT); + SetShaderValue(shdrSpot, spots[i].radiusLoc, &spots[i].radius, SHADER_UNIFORM_FLOAT); + } + + SetTargetFPS(60); // Set to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + frameCounter++; + + // Move the stars, resetting them if the go offscreen + for (int n = 0; n < MAX_STARS; n++) UpdateStar(&stars[n]); + + // Update the spots, send them to the shader + for (int i = 0; i < MAX_SPOTS; i++) + { + if (i == 0) + { + Vector2 mp = GetMousePosition(); + spots[i].position.x = mp.x; + spots[i].position.y = screenHeight - mp.y; + } + else + { + spots[i].position.x += spots[i].speed.x; + spots[i].position.y += spots[i].speed.y; + + if (spots[i].position.x < 64) spots[i].speed.x = -spots[i].speed.x; + if (spots[i].position.x > (screenWidth - 64)) spots[i].speed.x = -spots[i].speed.x; + if (spots[i].position.y < 64) spots[i].speed.y = -spots[i].speed.y; + if (spots[i].position.y > (screenHeight - 64)) spots[i].speed.y = -spots[i].speed.y; + } + + SetShaderValue(shdrSpot, spots[i].positionLoc, &spots[i].position.x, SHADER_UNIFORM_VEC2); + } + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(DARKBLUE); + + // Draw stars and bobs + for (int n = 0; n < MAX_STARS; n++) + { + // Single pixel is just too small these days! + DrawRectangle((int)stars[n].position.x, (int)stars[n].position.y, 2, 2, WHITE); + } + + for (int i = 0; i < 16; i++) + { + DrawTexture(texRay, + (int)((screenWidth/2.0f) + cos((frameCounter + i*8)/51.45f)*(screenWidth/2.2f) - 32), + (int)((screenHeight/2.0f) + sin((frameCounter + i*8)/17.87f)*(screenHeight/4.2f)), WHITE); + } + + // Draw spot lights + BeginShaderMode(shdrSpot); + // Instead of a blank rectangle you could render here + // a render texture of the full screen used to do screen + // scaling (slight adjustment to shader would be required + // to actually pay attention to the colour!) + DrawRectangle(0, 0, screenWidth, screenHeight, WHITE); + EndShaderMode(); + + DrawFPS(10, 10); + + DrawText("Move the mouse!", 10, 30, 20, GREEN); + DrawText("Pitch Black", (int)(screenWidth*0.2f), screenHeight/2, 20, GREEN); + DrawText("Dark", (int)(screenWidth*.66f), screenHeight/2, 20, GREEN); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(texRay); + UnloadShader(shdrSpot); + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} + + +static void ResetStar(Star *s) +{ + s->position = (Vector2){ GetScreenWidth()/2.0f, GetScreenHeight()/2.0f }; + + do + { + s->speed.x = (float)GetRandomValue(-1000, 1000)/100.0f; + s->speed.y = (float)GetRandomValue(-1000, 1000)/100.0f; + + } while (!(fabs(s->speed.x) + (fabs(s->speed.y) > 1))); + + s->position = Vector2Add(s->position, Vector2Multiply(s->speed, (Vector2){ 8.0f, 8.0f })); +} + +static void UpdateStar(Star *s) +{ + s->position = Vector2Add(s->position, s->speed); + + if ((s->position.x < 0) || (s->position.x > GetScreenWidth()) || + (s->position.y < 0) || (s->position.y > GetScreenHeight())) + { + ResetStar(s); + } +} + + diff --git a/examples/shaders/shaders_texture_drawing.c b/examples/shaders/shaders_texture_drawing.c new file mode 100644 index 0000000..006168d --- /dev/null +++ b/examples/shaders/shaders_texture_drawing.c @@ -0,0 +1,85 @@ +/******************************************************************************************* +* +* raylib [textures] example - Texture drawing +* +* NOTE: This example illustrates how to draw into a blank texture using a shader +* +* Example originally created with raylib 2.0, last time updated with raylib 3.7 +* +* Example contributed by Michał Ciesielski and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2019-2023 Michał Ciesielski and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#if defined(PLATFORM_DESKTOP) + #define GLSL_VERSION 330 +#else // PLATFORM_RPI, PLATFORM_ANDROID, PLATFORM_WEB + #define GLSL_VERSION 100 +#endif + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shaders] example - texture drawing"); + + Image imBlank = GenImageColor(1024, 1024, BLANK); + Texture2D texture = LoadTextureFromImage(imBlank); // Load blank texture to fill on shader + UnloadImage(imBlank); + + // NOTE: Using GLSL 330 shader version, on OpenGL ES 2.0 use GLSL 100 shader version + Shader shader = LoadShader(0, TextFormat("resources/shaders/glsl%i/cubes_panning.fs", GLSL_VERSION)); + + float time = 0.0f; + int timeLoc = GetShaderLocation(shader, "uTime"); + SetShaderValue(shader, timeLoc, &time, SHADER_UNIFORM_FLOAT); + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + // ------------------------------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + time = (float)GetTime(); + SetShaderValue(shader, timeLoc, &time, SHADER_UNIFORM_FLOAT); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginShaderMode(shader); // Enable our custom shader for next shapes/textures drawings + DrawTexture(texture, 0, 0, WHITE); // Drawing BLANK texture, all magic happens on shader + EndShaderMode(); // Disable our custom shader, return to default shader + + DrawText("BACKGROUND is PAINTED and ANIMATED on SHADER!", 10, 10, 20, MAROON); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadShader(shader); + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/shaders/shaders_texture_outline.c b/examples/shaders/shaders_texture_outline.c new file mode 100644 index 0000000..a28ab80 --- /dev/null +++ b/examples/shaders/shaders_texture_outline.c @@ -0,0 +1,102 @@ +/******************************************************************************************* +* +* raylib [shaders] example - Apply an shdrOutline to a texture +* +* NOTE: This example requires raylib OpenGL 3.3 or ES2 versions for shaders support, +* OpenGL 1.1 does not support shaders, recompile raylib to OpenGL 3.3 version. +* +* Example originally created with raylib 4.0, last time updated with raylib 4.0 +* +* Example contributed by Samuel Skiff (@GoldenThumbs) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2021-2023 Samuel SKiff (@GoldenThumbs) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#if defined(PLATFORM_DESKTOP) + #define GLSL_VERSION 330 +#else // PLATFORM_RPI, PLATFORM_ANDROID, PLATFORM_WEB + #define GLSL_VERSION 100 +#endif + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shaders] example - Apply an outline to a texture"); + + Texture2D texture = LoadTexture("resources/fudesumi.png"); + + Shader shdrOutline = LoadShader(0, TextFormat("resources/shaders/glsl%i/outline.fs", GLSL_VERSION)); + + float outlineSize = 2.0f; + float outlineColor[4] = { 1.0f, 0.0f, 0.0f, 1.0f }; // Normalized RED color + float textureSize[2] = { (float)texture.width, (float)texture.height }; + + // Get shader locations + int outlineSizeLoc = GetShaderLocation(shdrOutline, "outlineSize"); + int outlineColorLoc = GetShaderLocation(shdrOutline, "outlineColor"); + int textureSizeLoc = GetShaderLocation(shdrOutline, "textureSize"); + + // Set shader values (they can be changed later) + SetShaderValue(shdrOutline, outlineSizeLoc, &outlineSize, SHADER_UNIFORM_FLOAT); + SetShaderValue(shdrOutline, outlineColorLoc, outlineColor, SHADER_UNIFORM_VEC4); + SetShaderValue(shdrOutline, textureSizeLoc, textureSize, SHADER_UNIFORM_VEC2); + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + outlineSize += GetMouseWheelMove(); + if (outlineSize < 1.0f) outlineSize = 1.0f; + + SetShaderValue(shdrOutline, outlineSizeLoc, &outlineSize, SHADER_UNIFORM_FLOAT); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginShaderMode(shdrOutline); + + DrawTexture(texture, GetScreenWidth()/2 - texture.width/2, -30, WHITE); + + EndShaderMode(); + + DrawText("Shader-based\ntexture\noutline", 10, 10, 20, GRAY); + + DrawText(TextFormat("Outline size: %i px", (int)outlineSize), 10, 120, 20, MAROON); + + DrawFPS(710, 10); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(texture); + UnloadShader(shdrOutline); + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/shaders/shaders_texture_waves.c b/examples/shaders/shaders_texture_waves.c new file mode 100644 index 0000000..a087ec4 --- /dev/null +++ b/examples/shaders/shaders_texture_waves.c @@ -0,0 +1,115 @@ +/******************************************************************************************* +* +* raylib [shaders] example - Texture Waves +* +* NOTE: This example requires raylib OpenGL 3.3 or ES2 versions for shaders support, +* OpenGL 1.1 does not support shaders, recompile raylib to OpenGL 3.3 version. +* +* NOTE: Shaders used in this example are #version 330 (OpenGL 3.3), to test this example +* on OpenGL ES 2.0 platforms (Android, Raspberry Pi, HTML5), use #version 100 shaders +* raylib comes with shaders ready for both versions, check raylib/shaders install folder +* +* Example originally created with raylib 2.5, last time updated with raylib 3.7 +* +* Example contributed by Anata (@anatagawa) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2019-2023 Anata (@anatagawa) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#if defined(PLATFORM_DESKTOP) + #define GLSL_VERSION 330 +#else // PLATFORM_RPI, PLATFORM_ANDROID, PLATFORM_WEB + #define GLSL_VERSION 100 +#endif + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shaders] example - texture waves"); + + // Load texture texture to apply shaders + Texture2D texture = LoadTexture("resources/space.png"); + + // Load shader and setup location points and values + Shader shader = LoadShader(0, TextFormat("resources/shaders/glsl%i/wave.fs", GLSL_VERSION)); + + int secondsLoc = GetShaderLocation(shader, "secondes"); + int freqXLoc = GetShaderLocation(shader, "freqX"); + int freqYLoc = GetShaderLocation(shader, "freqY"); + int ampXLoc = GetShaderLocation(shader, "ampX"); + int ampYLoc = GetShaderLocation(shader, "ampY"); + int speedXLoc = GetShaderLocation(shader, "speedX"); + int speedYLoc = GetShaderLocation(shader, "speedY"); + + // Shader uniform values that can be updated at any time + float freqX = 25.0f; + float freqY = 25.0f; + float ampX = 5.0f; + float ampY = 5.0f; + float speedX = 8.0f; + float speedY = 8.0f; + + float screenSize[2] = { (float)GetScreenWidth(), (float)GetScreenHeight() }; + SetShaderValue(shader, GetShaderLocation(shader, "size"), &screenSize, SHADER_UNIFORM_VEC2); + SetShaderValue(shader, freqXLoc, &freqX, SHADER_UNIFORM_FLOAT); + SetShaderValue(shader, freqYLoc, &freqY, SHADER_UNIFORM_FLOAT); + SetShaderValue(shader, ampXLoc, &X, SHADER_UNIFORM_FLOAT); + SetShaderValue(shader, ampYLoc, &Y, SHADER_UNIFORM_FLOAT); + SetShaderValue(shader, speedXLoc, &speedX, SHADER_UNIFORM_FLOAT); + SetShaderValue(shader, speedYLoc, &speedY, SHADER_UNIFORM_FLOAT); + + float seconds = 0.0f; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + // ------------------------------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + seconds += GetFrameTime(); + + SetShaderValue(shader, secondsLoc, &seconds, SHADER_UNIFORM_FLOAT); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginShaderMode(shader); + + DrawTexture(texture, 0, 0, WHITE); + DrawTexture(texture, texture.width, 0, WHITE); + + EndShaderMode(); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadShader(shader); // Unload shader + UnloadTexture(texture); // Unload texture + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/shaders/shaders_write_depth.c b/examples/shaders/shaders_write_depth.c new file mode 100644 index 0000000..048e297 --- /dev/null +++ b/examples/shaders/shaders_write_depth.c @@ -0,0 +1,167 @@ +/******************************************************************************************* +* +* raylib [shaders] example - Depth buffer writing +* +* Example originally created with raylib 4.2, last time updated with raylib 4.2 +* +* Example contributed by Buğra Alptekin Sarı (@BugraAlptekinSari) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2022-2023 Buğra Alptekin Sarı (@BugraAlptekinSari) +* +********************************************************************************************/ + +#include "raylib.h" + +#include "rlgl.h" + +#if defined(PLATFORM_DESKTOP) +#define GLSL_VERSION 330 +#else // PLATFORM_RPI, PLATFORM_ANDROID, PLATFORM_WEB +#define GLSL_VERSION 100 +#endif + +//------------------------------------------------------------------------------------ +// Declare custom functions required for the example +//------------------------------------------------------------------------------------ +// Load custom render texture, create a writable depth texture buffer +static RenderTexture2D LoadRenderTextureDepthTex(int width, int height); + +// Unload render texture from GPU memory (VRAM) +static void UnloadRenderTextureDepthTex(RenderTexture2D target); + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shaders] example - write depth buffer"); + + // The shader inverts the depth buffer by writing into it by `gl_FragDepth = 1 - gl_FragCoord.z;` + Shader shader = LoadShader(0, TextFormat("resources/shaders/glsl%i/write_depth.fs", GLSL_VERSION)); + + // Use Customized function to create writable depth texture buffer + RenderTexture2D target = LoadRenderTextureDepthTex(screenWidth, screenHeight); + + // Define the camera to look into our 3d world + Camera camera = { + .position = (Vector3){ 2.0f, 2.0f, 3.0f }, // Camera position + .target = (Vector3){ 0.0f, 0.5f, 0.0f }, // Camera looking at point + .up = (Vector3){ 0.0f, 1.0f, 0.0f }, // Camera up vector (rotation towards target) + .fovy = 45.0f, // Camera field-of-view Y + .projection = CAMERA_PERSPECTIVE // Camera projection type + }; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + UpdateCamera(&camera, CAMERA_ORBITAL); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + + // Draw into our custom render texture (framebuffer) + BeginTextureMode(target); + ClearBackground(WHITE); + + BeginMode3D(camera); + BeginShaderMode(shader); + DrawCubeWiresV((Vector3){ 0.0f, 0.5f, 1.0f }, (Vector3){ 1.0f, 1.0f, 1.0f }, RED); + DrawCubeV((Vector3){ 0.0f, 0.5f, 1.0f }, (Vector3){ 1.0f, 1.0f, 1.0f }, PURPLE); + DrawCubeWiresV((Vector3){ 0.0f, 0.5f, -1.0f }, (Vector3){ 1.0f, 1.0f, 1.0f }, DARKGREEN); + DrawCubeV((Vector3) { 0.0f, 0.5f, -1.0f }, (Vector3){ 1.0f, 1.0f, 1.0f }, YELLOW); + DrawGrid(10, 1.0f); + EndShaderMode(); + EndMode3D(); + EndTextureMode(); + + // Draw into screen our custom render texture + BeginDrawing(); + ClearBackground(RAYWHITE); + + DrawTextureRec(target.texture, (Rectangle) { 0, 0, screenWidth, -screenHeight }, (Vector2) { 0, 0 }, WHITE); + DrawFPS(10, 10); + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadRenderTextureDepthTex(target); + UnloadShader(shader); + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} + +//------------------------------------------------------------------------------------ +// Define custom functions required for the example +//------------------------------------------------------------------------------------ +// Load custom render texture, create a writable depth texture buffer +RenderTexture2D LoadRenderTextureDepthTex(int width, int height) +{ + RenderTexture2D target = { 0 }; + + target.id = rlLoadFramebuffer(width, height); // Load an empty framebuffer + + if (target.id > 0) + { + rlEnableFramebuffer(target.id); + + // Create color texture (default to RGBA) + target.texture.id = rlLoadTexture(0, width, height, PIXELFORMAT_UNCOMPRESSED_R8G8B8A8, 1); + target.texture.width = width; + target.texture.height = height; + target.texture.format = PIXELFORMAT_UNCOMPRESSED_R8G8B8A8; + target.texture.mipmaps = 1; + + // Create depth texture buffer (instead of raylib default renderbuffer) + target.depth.id = rlLoadTextureDepth(width, height, false); + target.depth.width = width; + target.depth.height = height; + target.depth.format = 19; //DEPTH_COMPONENT_24BIT? + target.depth.mipmaps = 1; + + // Attach color texture and depth texture to FBO + rlFramebufferAttach(target.id, target.texture.id, RL_ATTACHMENT_COLOR_CHANNEL0, RL_ATTACHMENT_TEXTURE2D, 0); + rlFramebufferAttach(target.id, target.depth.id, RL_ATTACHMENT_DEPTH, RL_ATTACHMENT_TEXTURE2D, 0); + + // Check if fbo is complete with attachments (valid) + if (rlFramebufferComplete(target.id)) TRACELOG(LOG_INFO, "FBO: [ID %i] Framebuffer object created successfully", target.id); + + rlDisableFramebuffer(); + } + else TRACELOG(LOG_WARNING, "FBO: Framebuffer object can not be created"); + + return target; +} + +// Unload render texture from GPU memory (VRAM) +void UnloadRenderTextureDepthTex(RenderTexture2D target) +{ + if (target.id > 0) + { + // Color texture attached to FBO is deleted + rlUnloadTexture(target.texture.id); + rlUnloadTexture(target.depth.id); + + // NOTE: Depth texture is automatically + // queried and deleted before deleting framebuffer + rlUnloadFramebuffer(target.id); + } +} \ No newline at end of file diff --git a/examples/shapes/raygui.h b/examples/shapes/raygui.h new file mode 100644 index 0000000..112370a --- /dev/null +++ b/examples/shapes/raygui.h @@ -0,0 +1,4491 @@ +/******************************************************************************************* +* +* raygui v3.2 - A simple and easy-to-use immediate-mode gui library +* +* DESCRIPTION: +* +* raygui is a tools-dev-focused immediate-mode-gui library based on raylib but also +* available as a standalone library, as long as input and drawing functions are provided. +* +* Controls provided: +* +* # Container/separators Controls +* - WindowBox --> StatusBar, Panel +* - GroupBox --> Line +* - Line +* - Panel --> StatusBar +* - ScrollPanel --> StatusBar +* +* # Basic Controls +* - Label +* - Button +* - LabelButton --> Label +* - Toggle +* - ToggleGroup --> Toggle +* - CheckBox +* - ComboBox +* - DropdownBox +* - TextBox +* - TextBoxMulti +* - ValueBox --> TextBox +* - Spinner --> Button, ValueBox +* - Slider +* - SliderBar --> Slider +* - ProgressBar +* - StatusBar +* - DummyRec +* - Grid +* +* # Advance Controls +* - ListView +* - ColorPicker --> ColorPanel, ColorBarHue +* - MessageBox --> Window, Label, Button +* - TextInputBox --> Window, Label, TextBox, Button +* +* It also provides a set of functions for styling the controls based on its properties (size, color). +* +* +* RAYGUI STYLE (guiStyle): +* +* raygui uses a global data array for all gui style properties (allocated on data segment by default), +* when a new style is loaded, it is loaded over the global style... but a default gui style could always be +* recovered with GuiLoadStyleDefault() function, that overwrites the current style to the default one +* +* The global style array size is fixed and depends on the number of controls and properties: +* +* static unsigned int guiStyle[RAYGUI_MAX_CONTROLS*(RAYGUI_MAX_PROPS_BASE + RAYGUI_MAX_PROPS_EXTENDED)]; +* +* guiStyle size is by default: 16*(16 + 8) = 384*4 = 1536 bytes = 1.5 KB +* +* Note that the first set of BASE properties (by default guiStyle[0..15]) belong to the generic style +* used for all controls, when any of those base values is set, it is automatically populated to all +* controls, so, specific control values overwriting generic style should be set after base values. +* +* After the first BASE set we have the EXTENDED properties (by default guiStyle[16..23]), those +* properties are actually common to all controls and can not be overwritten individually (like BASE ones) +* Some of those properties are: TEXT_SIZE, TEXT_SPACING, LINE_COLOR, BACKGROUND_COLOR +* +* Custom control properties can be defined using the EXTENDED properties for each independent control. +* +* TOOL: rGuiStyler is a visual tool to customize raygui style. +* +* +* RAYGUI ICONS (guiIcons): +* +* raygui could use a global array containing icons data (allocated on data segment by default), +* a custom icons set could be loaded over this array using GuiLoadIcons(), but loaded icons set +* must be same RAYGUI_ICON_SIZE and no more than RAYGUI_ICON_MAX_ICONS will be loaded +* +* Every icon is codified in binary form, using 1 bit per pixel, so, every 16x16 icon +* requires 8 integers (16*16/32) to be stored in memory. +* +* When the icon is draw, actually one quad per pixel is drawn if the bit for that pixel is set. +* +* The global icons array size is fixed and depends on the number of icons and size: +* +* static unsigned int guiIcons[RAYGUI_ICON_MAX_ICONS*RAYGUI_ICON_DATA_ELEMENTS]; +* +* guiIcons size is by default: 256*(16*16/32) = 2048*4 = 8192 bytes = 8 KB +* +* TOOL: rGuiIcons is a visual tool to customize raygui icons. +* +* +* CONFIGURATION: +* +* #define RAYGUI_IMPLEMENTATION +* Generates the implementation of the library into the included file. +* If not defined, the library is in header only mode and can be included in other headers +* or source files without problems. But only ONE file should hold the implementation. +* +* #define RAYGUI_STANDALONE +* Avoid raylib.h header inclusion in this file. Data types defined on raylib are defined +* internally in the library and input management and drawing functions must be provided by +* the user (check library implementation for further details). +* +* #define RAYGUI_NO_ICONS +* Avoid including embedded ricons data (256 icons, 16x16 pixels, 1-bit per pixel, 2KB) +* +* #define RAYGUI_CUSTOM_ICONS +* Includes custom ricons.h header defining a set of custom icons, +* this file can be generated using rGuiIcons tool +* +* +* VERSIONS HISTORY: +* 3.2 (22-May-2022) RENAMED: Some enum values, for unification, avoiding prefixes +* REMOVED: GuiScrollBar(), only internal +* REDESIGNED: GuiPanel() to support text parameter +* REDESIGNED: GuiScrollPanel() to support text parameter +* REDESIGNED: GuiColorPicker() to support text parameter +* REDESIGNED: GuiColorPanel() to support text parameter +* REDESIGNED: GuiColorBarAlpha() to support text parameter +* REDESIGNED: GuiColorBarHue() to support text parameter +* REDESIGNED: GuiTextInputBox() to support password +* 3.1 (12-Jan-2022) REVIEWED: Default style for consistency (aligned with rGuiLayout v2.5 tool) +* REVIEWED: GuiLoadStyle() to support compressed font atlas image data and unload previous textures +* REVIEWED: External icons usage logic +* REVIEWED: GuiLine() for centered alignment when including text +* RENAMED: Multiple controls properties definitions to prepend RAYGUI_ +* RENAMED: RICON_ references to RAYGUI_ICON_ for library consistency +* Projects updated and multiple tweaks +* 3.0 (04-Nov-2021) Integrated ricons data to avoid external file +* REDESIGNED: GuiTextBoxMulti() +* REMOVED: GuiImageButton*() +* Multiple minor tweaks and bugs corrected +* 2.9 (17-Mar-2021) REMOVED: Tooltip API +* 2.8 (03-May-2020) Centralized rectangles drawing to GuiDrawRectangle() +* 2.7 (20-Feb-2020) ADDED: Possible tooltips API +* 2.6 (09-Sep-2019) ADDED: GuiTextInputBox() +* REDESIGNED: GuiListView*(), GuiDropdownBox(), GuiSlider*(), GuiProgressBar(), GuiMessageBox() +* REVIEWED: GuiTextBox(), GuiSpinner(), GuiValueBox(), GuiLoadStyle() +* Replaced property INNER_PADDING by TEXT_PADDING, renamed some properties +* ADDED: 8 new custom styles ready to use +* Multiple minor tweaks and bugs corrected +* 2.5 (28-May-2019) Implemented extended GuiTextBox(), GuiValueBox(), GuiSpinner() +* 2.3 (29-Apr-2019) ADDED: rIcons auxiliar library and support for it, multiple controls reviewed +* Refactor all controls drawing mechanism to use control state +* 2.2 (05-Feb-2019) ADDED: GuiScrollBar(), GuiScrollPanel(), reviewed GuiListView(), removed Gui*Ex() controls +* 2.1 (26-Dec-2018) REDESIGNED: GuiCheckBox(), GuiComboBox(), GuiDropdownBox(), GuiToggleGroup() > Use combined text string +* REDESIGNED: Style system (breaking change) +* 2.0 (08-Nov-2018) ADDED: Support controls guiLock and custom fonts +* REVIEWED: GuiComboBox(), GuiListView()... +* 1.9 (09-Oct-2018) REVIEWED: GuiGrid(), GuiTextBox(), GuiTextBoxMulti(), GuiValueBox()... +* 1.8 (01-May-2018) Lot of rework and redesign to align with rGuiStyler and rGuiLayout +* 1.5 (21-Jun-2017) Working in an improved styles system +* 1.4 (15-Jun-2017) Rewritten all GUI functions (removed useless ones) +* 1.3 (12-Jun-2017) Complete redesign of style system +* 1.1 (01-Jun-2017) Complete review of the library +* 1.0 (07-Jun-2016) Converted to header-only by Ramon Santamaria. +* 0.9 (07-Mar-2016) Reviewed and tested by Albert Martos, Ian Eito, Sergio Martinez and Ramon Santamaria. +* 0.8 (27-Aug-2015) Initial release. Implemented by Kevin Gato, Daniel Nicolás and Ramon Santamaria. +* +* +* CONTRIBUTORS: +* +* Ramon Santamaria: Supervision, review, redesign, update and maintenance +* Vlad Adrian: Complete rewrite of GuiTextBox() to support extended features (2019) +* Sergio Martinez: Review, testing (2015) and redesign of multiple controls (2018) +* Adria Arranz: Testing and Implementation of additional controls (2018) +* Jordi Jorba: Testing and Implementation of additional controls (2018) +* Albert Martos: Review and testing of the library (2015) +* Ian Eito: Review and testing of the library (2015) +* Kevin Gato: Initial implementation of basic components (2014) +* Daniel Nicolas: Initial implementation of basic components (2014) +* +* +* LICENSE: zlib/libpng +* +* Copyright (c) 2014-2022 Ramon Santamaria (@raysan5) +* +* This software is provided "as-is", without any express or implied warranty. In no event +* will the authors be held liable for any damages arising from the use of this software. +* +* Permission is granted to anyone to use this software for any purpose, including commercial +* applications, and to alter it and redistribute it freely, subject to the following restrictions: +* +* 1. The origin of this software must not be misrepresented; you must not claim that you +* wrote the original software. If you use this software in a product, an acknowledgment +* in the product documentation would be appreciated but is not required. +* +* 2. Altered source versions must be plainly marked as such, and must not be misrepresented +* as being the original software. +* +* 3. This notice may not be removed or altered from any source distribution. +* +**********************************************************************************************/ + +#ifndef RAYGUI_H +#define RAYGUI_H + +#define RAYGUI_VERSION "3.2" + +#if !defined(RAYGUI_STANDALONE) + #include "raylib.h" +#endif + +// Function specifiers in case library is build/used as a shared library (Windows) +// NOTE: Microsoft specifiers to tell compiler that symbols are imported/exported from a .dll +#if defined(_WIN32) + #if defined(BUILD_LIBTYPE_SHARED) + #define RAYGUIAPI __declspec(dllexport) // We are building the library as a Win32 shared library (.dll) + #elif defined(USE_LIBTYPE_SHARED) + #define RAYGUIAPI __declspec(dllimport) // We are using the library as a Win32 shared library (.dll) + #endif +#endif + +// Function specifiers definition +#ifndef RAYGUIAPI + #define RAYGUIAPI // Functions defined as 'extern' by default (implicit specifiers) +#endif + +//---------------------------------------------------------------------------------- +// Defines and Macros +//---------------------------------------------------------------------------------- +// Allow custom memory allocators +#ifndef RAYGUI_MALLOC + #define RAYGUI_MALLOC(sz) malloc(sz) +#endif +#ifndef RAYGUI_CALLOC + #define RAYGUI_CALLOC(n,sz) calloc(n,sz) +#endif +#ifndef RAYGUI_FREE + #define RAYGUI_FREE(p) free(p) +#endif + +// Simple log system to avoid printf() calls if required +// NOTE: Avoiding those calls, also avoids const strings memory usage +#define RAYGUI_SUPPORT_LOG_INFO +#if defined(RAYGUI_SUPPORT_LOG_INFO) + #define RAYGUI_LOG(...) printf(__VA_ARGS__) +#else + #define RAYGUI_LOG(...) +#endif + +//---------------------------------------------------------------------------------- +// Types and Structures Definition +// NOTE: Some types are required for RAYGUI_STANDALONE usage +//---------------------------------------------------------------------------------- +#if defined(RAYGUI_STANDALONE) + #ifndef __cplusplus + // Boolean type + #ifndef true + typedef enum { false, true } bool; + #endif + #endif + + // Vector2 type + typedef struct Vector2 { + float x; + float y; + } Vector2; + + // Vector3 type // -- ConvertHSVtoRGB(), ConvertRGBtoHSV() + typedef struct Vector3 { + float x; + float y; + float z; + } Vector3; + + // Color type, RGBA (32bit) + typedef struct Color { + unsigned char r; + unsigned char g; + unsigned char b; + unsigned char a; + } Color; + + // Rectangle type + typedef struct Rectangle { + float x; + float y; + float width; + float height; + } Rectangle; + + // TODO: Texture2D type is very coupled to raylib, required by Font type + // It should be redesigned to be provided by user + typedef struct Texture2D { + unsigned int id; // OpenGL texture id + int width; // Texture base width + int height; // Texture base height + int mipmaps; // Mipmap levels, 1 by default + int format; // Data format (PixelFormat type) + } Texture2D; + + // GlyphInfo, font characters glyphs info + typedef struct GlyphInfo { + int value; // Character value (Unicode) + int offsetX; // Character offset X when drawing + int offsetY; // Character offset Y when drawing + int advanceX; // Character advance position X + Image image; // Character image data + } GlyphInfo; + + // TODO: Font type is very coupled to raylib, mostly required by GuiLoadStyle() + // It should be redesigned to be provided by user + typedef struct Font { + int baseSize; // Base size (default chars height) + int glyphCount; // Number of characters + Texture2D texture; // Characters texture atlas + Rectangle *recs; // Characters rectangles in texture + GlyphInfo *chars; // Characters info data + } Font; +#endif + +// Style property +typedef struct GuiStyleProp { + unsigned short controlId; + unsigned short propertyId; + unsigned int propertyValue; +} GuiStyleProp; + +// Gui control state +typedef enum { + STATE_NORMAL = 0, + STATE_FOCUSED, + STATE_PRESSED, + STATE_DISABLED, +} GuiState; + +// Gui control text alignment +typedef enum { + TEXT_ALIGN_LEFT = 0, + TEXT_ALIGN_CENTER, + TEXT_ALIGN_RIGHT, +} GuiTextAlignment; + +// Gui controls +typedef enum { + // Default -> populates to all controls when set + DEFAULT = 0, + // Basic controls + LABEL, // Used also for: LABELBUTTON + BUTTON, + TOGGLE, // Used also for: TOGGLEGROUP + SLIDER, // Used also for: SLIDERBAR + PROGRESSBAR, + CHECKBOX, + COMBOBOX, + DROPDOWNBOX, + TEXTBOX, // Used also for: TEXTBOXMULTI + VALUEBOX, + SPINNER, // Uses: BUTTON, VALUEBOX + LISTVIEW, + COLORPICKER, + SCROLLBAR, + STATUSBAR +} GuiControl; + +// Gui base properties for every control +// NOTE: RAYGUI_MAX_PROPS_BASE properties (by default 16 properties) +typedef enum { + BORDER_COLOR_NORMAL = 0, + BASE_COLOR_NORMAL, + TEXT_COLOR_NORMAL, + BORDER_COLOR_FOCUSED, + BASE_COLOR_FOCUSED, + TEXT_COLOR_FOCUSED, + BORDER_COLOR_PRESSED, + BASE_COLOR_PRESSED, + TEXT_COLOR_PRESSED, + BORDER_COLOR_DISABLED, + BASE_COLOR_DISABLED, + TEXT_COLOR_DISABLED, + BORDER_WIDTH, + TEXT_PADDING, + TEXT_ALIGNMENT, + RESERVED +} GuiControlProperty; + +// Gui extended properties depend on control +// NOTE: RAYGUI_MAX_PROPS_EXTENDED properties (by default 8 properties) +//---------------------------------------------------------------------------------- + +// DEFAULT extended properties +// NOTE: Those properties are common to all controls or global +typedef enum { + TEXT_SIZE = 16, // Text size (glyphs max height) + TEXT_SPACING, // Text spacing between glyphs + LINE_COLOR, // Line control color + BACKGROUND_COLOR, // Background color +} GuiDefaultProperty; + +// Label +//typedef enum { } GuiLabelProperty; + +// Button/Spinner +//typedef enum { } GuiButtonProperty; + +// Toggle/ToggleGroup +typedef enum { + GROUP_PADDING = 16, // ToggleGroup separation between toggles +} GuiToggleProperty; + +// Slider/SliderBar +typedef enum { + SLIDER_WIDTH = 16, // Slider size of internal bar + SLIDER_PADDING // Slider/SliderBar internal bar padding +} GuiSliderProperty; + +// ProgressBar +typedef enum { + PROGRESS_PADDING = 16, // ProgressBar internal padding +} GuiProgressBarProperty; + +// ScrollBar +typedef enum { + ARROWS_SIZE = 16, + ARROWS_VISIBLE, + SCROLL_SLIDER_PADDING, // (SLIDERBAR, SLIDER_PADDING) + SCROLL_SLIDER_SIZE, + SCROLL_PADDING, + SCROLL_SPEED, +} GuiScrollBarProperty; + +// CheckBox +typedef enum { + CHECK_PADDING = 16 // CheckBox internal check padding +} GuiCheckBoxProperty; + +// ComboBox +typedef enum { + COMBO_BUTTON_WIDTH = 16, // ComboBox right button width + COMBO_BUTTON_SPACING // ComboBox button separation +} GuiComboBoxProperty; + +// DropdownBox +typedef enum { + ARROW_PADDING = 16, // DropdownBox arrow separation from border and items + DROPDOWN_ITEMS_SPACING // DropdownBox items separation +} GuiDropdownBoxProperty; + +// TextBox/TextBoxMulti/ValueBox/Spinner +typedef enum { + TEXT_INNER_PADDING = 16, // TextBox/TextBoxMulti/ValueBox/Spinner inner text padding + TEXT_LINES_SPACING, // TextBoxMulti lines separation +} GuiTextBoxProperty; + +// Spinner +typedef enum { + SPIN_BUTTON_WIDTH = 16, // Spinner left/right buttons width + SPIN_BUTTON_SPACING, // Spinner buttons separation +} GuiSpinnerProperty; + +// ListView +typedef enum { + LIST_ITEMS_HEIGHT = 16, // ListView items height + LIST_ITEMS_SPACING, // ListView items separation + SCROLLBAR_WIDTH, // ListView scrollbar size (usually width) + SCROLLBAR_SIDE, // ListView scrollbar side (0-left, 1-right) +} GuiListViewProperty; + +// ColorPicker +typedef enum { + COLOR_SELECTOR_SIZE = 16, + HUEBAR_WIDTH, // ColorPicker right hue bar width + HUEBAR_PADDING, // ColorPicker right hue bar separation from panel + HUEBAR_SELECTOR_HEIGHT, // ColorPicker right hue bar selector height + HUEBAR_SELECTOR_OVERFLOW // ColorPicker right hue bar selector overflow +} GuiColorPickerProperty; + +#define SCROLLBAR_LEFT_SIDE 0 +#define SCROLLBAR_RIGHT_SIDE 1 + +//---------------------------------------------------------------------------------- +// Global Variables Definition +//---------------------------------------------------------------------------------- +// ... + +//---------------------------------------------------------------------------------- +// Module Functions Declaration +//---------------------------------------------------------------------------------- + +#if defined(__cplusplus) +extern "C" { // Prevents name mangling of functions +#endif + +// Global gui state control functions +RAYGUIAPI void GuiEnable(void); // Enable gui controls (global state) +RAYGUIAPI void GuiDisable(void); // Disable gui controls (global state) +RAYGUIAPI void GuiLock(void); // Lock gui controls (global state) +RAYGUIAPI void GuiUnlock(void); // Unlock gui controls (global state) +RAYGUIAPI bool GuiIsLocked(void); // Check if gui is locked (global state) +RAYGUIAPI void GuiFade(float alpha); // Set gui controls alpha (global state), alpha goes from 0.0f to 1.0f +RAYGUIAPI void GuiSetState(int state); // Set gui state (global state) +RAYGUIAPI int GuiGetState(void); // Get gui state (global state) + +// Font set/get functions +RAYGUIAPI void GuiSetFont(Font font); // Set gui custom font (global state) +RAYGUIAPI Font GuiGetFont(void); // Get gui custom font (global state) + +// Style set/get functions +RAYGUIAPI void GuiSetStyle(int control, int property, int value); // Set one style property +RAYGUIAPI int GuiGetStyle(int control, int property); // Get one style property + +// Container/separator controls, useful for controls organization +RAYGUIAPI bool GuiWindowBox(Rectangle bounds, const char *title); // Window Box control, shows a window that can be closed +RAYGUIAPI void GuiGroupBox(Rectangle bounds, const char *text); // Group Box control with text name +RAYGUIAPI void GuiLine(Rectangle bounds, const char *text); // Line separator control, could contain text +RAYGUIAPI void GuiPanel(Rectangle bounds, const char *text); // Panel control, useful to group controls +RAYGUIAPI Rectangle GuiScrollPanel(Rectangle bounds, const char *text, Rectangle content, Vector2 *scroll); // Scroll Panel control + +// Basic controls set +RAYGUIAPI void GuiLabel(Rectangle bounds, const char *text); // Label control, shows text +RAYGUIAPI bool GuiButton(Rectangle bounds, const char *text); // Button control, returns true when clicked +RAYGUIAPI bool GuiLabelButton(Rectangle bounds, const char *text); // Label button control, show true when clicked +RAYGUIAPI bool GuiToggle(Rectangle bounds, const char *text, bool active); // Toggle Button control, returns true when active +RAYGUIAPI int GuiToggleGroup(Rectangle bounds, const char *text, int active); // Toggle Group control, returns active toggle index +RAYGUIAPI bool GuiCheckBox(Rectangle bounds, const char *text, bool checked); // Check Box control, returns true when active +RAYGUIAPI int GuiComboBox(Rectangle bounds, const char *text, int active); // Combo Box control, returns selected item index +RAYGUIAPI bool GuiDropdownBox(Rectangle bounds, const char *text, int *active, bool editMode); // Dropdown Box control, returns selected item +RAYGUIAPI bool GuiSpinner(Rectangle bounds, const char *text, int *value, int minValue, int maxValue, bool editMode); // Spinner control, returns selected value +RAYGUIAPI bool GuiValueBox(Rectangle bounds, const char *text, int *value, int minValue, int maxValue, bool editMode); // Value Box control, updates input text with numbers +RAYGUIAPI bool GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode); // Text Box control, updates input text +RAYGUIAPI bool GuiTextBoxMulti(Rectangle bounds, char *text, int textSize, bool editMode); // Text Box control with multiple lines +RAYGUIAPI float GuiSlider(Rectangle bounds, const char *textLeft, const char *textRight, float value, float minValue, float maxValue); // Slider control, returns selected value +RAYGUIAPI float GuiSliderBar(Rectangle bounds, const char *textLeft, const char *textRight, float value, float minValue, float maxValue); // Slider Bar control, returns selected value +RAYGUIAPI float GuiProgressBar(Rectangle bounds, const char *textLeft, const char *textRight, float value, float minValue, float maxValue); // Progress Bar control, shows current progress value +RAYGUIAPI void GuiStatusBar(Rectangle bounds, const char *text); // Status Bar control, shows info text +RAYGUIAPI void GuiDummyRec(Rectangle bounds, const char *text); // Dummy control for placeholders +RAYGUIAPI Vector2 GuiGrid(Rectangle bounds, const char *text, float spacing, int subdivs); // Grid control, returns mouse cell position + +// Advance controls set +RAYGUIAPI int GuiListView(Rectangle bounds, const char *text, int *scrollIndex, int active); // List View control, returns selected list item index +RAYGUIAPI int GuiListViewEx(Rectangle bounds, const char **text, int count, int *focus, int *scrollIndex, int active); // List View with extended parameters +RAYGUIAPI int GuiMessageBox(Rectangle bounds, const char *title, const char *message, const char *buttons); // Message Box control, displays a message +RAYGUIAPI int GuiTextInputBox(Rectangle bounds, const char *title, const char *message, const char *buttons, char *text, int textMaxSize, int *secretViewActive); // Text Input Box control, ask for text, supports secret +RAYGUIAPI Color GuiColorPicker(Rectangle bounds, const char *text, Color color); // Color Picker control (multiple color controls) +RAYGUIAPI Color GuiColorPanel(Rectangle bounds, const char *text, Color color); // Color Panel control +RAYGUIAPI float GuiColorBarAlpha(Rectangle bounds, const char *text, float alpha); // Color Bar Alpha control +RAYGUIAPI float GuiColorBarHue(Rectangle bounds, const char *text, float value); // Color Bar Hue control + +// Styles loading functions +RAYGUIAPI void GuiLoadStyle(const char *fileName); // Load style file over global style variable (.rgs) +RAYGUIAPI void GuiLoadStyleDefault(void); // Load style default over global style + +// Icons functionality +RAYGUIAPI const char *GuiIconText(int iconId, const char *text); // Get text with icon id prepended (if supported) + +#if !defined(RAYGUI_NO_ICONS) +RAYGUIAPI void GuiDrawIcon(int iconId, int posX, int posY, int pixelSize, Color color); + +RAYGUIAPI unsigned int *GuiGetIcons(void); // Get full icons data pointer +RAYGUIAPI unsigned int *GuiGetIconData(int iconId); // Get icon bit data +RAYGUIAPI void GuiSetIconData(int iconId, unsigned int *data); // Set icon bit data +RAYGUIAPI void GuiSetIconScale(unsigned int scale); // Set icon scale (1 by default) + +RAYGUIAPI void GuiSetIconPixel(int iconId, int x, int y); // Set icon pixel value +RAYGUIAPI void GuiClearIconPixel(int iconId, int x, int y); // Clear icon pixel value +RAYGUIAPI bool GuiCheckIconPixel(int iconId, int x, int y); // Check icon pixel value + +#if !defined(RAYGUI_CUSTOM_ICONS) +//---------------------------------------------------------------------------------- +// Icons enumeration +//---------------------------------------------------------------------------------- +typedef enum { + ICON_NONE = 0, + ICON_FOLDER_FILE_OPEN = 1, + ICON_FILE_SAVE_CLASSIC = 2, + ICON_FOLDER_OPEN = 3, + ICON_FOLDER_SAVE = 4, + ICON_FILE_OPEN = 5, + ICON_FILE_SAVE = 6, + ICON_FILE_EXPORT = 7, + ICON_FILE_ADD = 8, + ICON_FILE_DELETE = 9, + ICON_FILETYPE_TEXT = 10, + ICON_FILETYPE_AUDIO = 11, + ICON_FILETYPE_IMAGE = 12, + ICON_FILETYPE_PLAY = 13, + ICON_FILETYPE_VIDEO = 14, + ICON_FILETYPE_INFO = 15, + ICON_FILE_COPY = 16, + ICON_FILE_CUT = 17, + ICON_FILE_PASTE = 18, + ICON_CURSOR_HAND = 19, + ICON_CURSOR_POINTER = 20, + ICON_CURSOR_CLASSIC = 21, + ICON_PENCIL = 22, + ICON_PENCIL_BIG = 23, + ICON_BRUSH_CLASSIC = 24, + ICON_BRUSH_PAINTER = 25, + ICON_WATER_DROP = 26, + ICON_COLOR_PICKER = 27, + ICON_RUBBER = 28, + ICON_COLOR_BUCKET = 29, + ICON_TEXT_T = 30, + ICON_TEXT_A = 31, + ICON_SCALE = 32, + ICON_RESIZE = 33, + ICON_FILTER_POINT = 34, + ICON_FILTER_BILINEAR = 35, + ICON_CROP = 36, + ICON_CROP_ALPHA = 37, + ICON_SQUARE_TOGGLE = 38, + ICON_SYMMETRY = 39, + ICON_SYMMETRY_HORIZONTAL = 40, + ICON_SYMMETRY_VERTICAL = 41, + ICON_LENS = 42, + ICON_LENS_BIG = 43, + ICON_EYE_ON = 44, + ICON_EYE_OFF = 45, + ICON_FILTER_TOP = 46, + ICON_FILTER = 47, + ICON_TARGET_POINT = 48, + ICON_TARGET_SMALL = 49, + ICON_TARGET_BIG = 50, + ICON_TARGET_MOVE = 51, + ICON_CURSOR_MOVE = 52, + ICON_CURSOR_SCALE = 53, + ICON_CURSOR_SCALE_RIGHT = 54, + ICON_CURSOR_SCALE_LEFT = 55, + ICON_UNDO = 56, + ICON_REDO = 57, + ICON_REREDO = 58, + ICON_MUTATE = 59, + ICON_ROTATE = 60, + ICON_REPEAT = 61, + ICON_SHUFFLE = 62, + ICON_EMPTYBOX = 63, + ICON_TARGET = 64, + ICON_TARGET_SMALL_FILL = 65, + ICON_TARGET_BIG_FILL = 66, + ICON_TARGET_MOVE_FILL = 67, + ICON_CURSOR_MOVE_FILL = 68, + ICON_CURSOR_SCALE_FILL = 69, + ICON_CURSOR_SCALE_RIGHT_FILL = 70, + ICON_CURSOR_SCALE_LEFT_FILL = 71, + ICON_UNDO_FILL = 72, + ICON_REDO_FILL = 73, + ICON_REREDO_FILL = 74, + ICON_MUTATE_FILL = 75, + ICON_ROTATE_FILL = 76, + ICON_REPEAT_FILL = 77, + ICON_SHUFFLE_FILL = 78, + ICON_EMPTYBOX_SMALL = 79, + ICON_BOX = 80, + ICON_BOX_TOP = 81, + ICON_BOX_TOP_RIGHT = 82, + ICON_BOX_RIGHT = 83, + ICON_BOX_BOTTOM_RIGHT = 84, + ICON_BOX_BOTTOM = 85, + ICON_BOX_BOTTOM_LEFT = 86, + ICON_BOX_LEFT = 87, + ICON_BOX_TOP_LEFT = 88, + ICON_BOX_CENTER = 89, + ICON_BOX_CIRCLE_MASK = 90, + ICON_POT = 91, + ICON_ALPHA_MULTIPLY = 92, + ICON_ALPHA_CLEAR = 93, + ICON_DITHERING = 94, + ICON_MIPMAPS = 95, + ICON_BOX_GRID = 96, + ICON_GRID = 97, + ICON_BOX_CORNERS_SMALL = 98, + ICON_BOX_CORNERS_BIG = 99, + ICON_FOUR_BOXES = 100, + ICON_GRID_FILL = 101, + ICON_BOX_MULTISIZE = 102, + ICON_ZOOM_SMALL = 103, + ICON_ZOOM_MEDIUM = 104, + ICON_ZOOM_BIG = 105, + ICON_ZOOM_ALL = 106, + ICON_ZOOM_CENTER = 107, + ICON_BOX_DOTS_SMALL = 108, + ICON_BOX_DOTS_BIG = 109, + ICON_BOX_CONCENTRIC = 110, + ICON_BOX_GRID_BIG = 111, + ICON_OK_TICK = 112, + ICON_CROSS = 113, + ICON_ARROW_LEFT = 114, + ICON_ARROW_RIGHT = 115, + ICON_ARROW_DOWN = 116, + ICON_ARROW_UP = 117, + ICON_ARROW_LEFT_FILL = 118, + ICON_ARROW_RIGHT_FILL = 119, + ICON_ARROW_DOWN_FILL = 120, + ICON_ARROW_UP_FILL = 121, + ICON_AUDIO = 122, + ICON_FX = 123, + ICON_WAVE = 124, + ICON_WAVE_SINUS = 125, + ICON_WAVE_SQUARE = 126, + ICON_WAVE_TRIANGULAR = 127, + ICON_CROSS_SMALL = 128, + ICON_PLAYER_PREVIOUS = 129, + ICON_PLAYER_PLAY_BACK = 130, + ICON_PLAYER_PLAY = 131, + ICON_PLAYER_PAUSE = 132, + ICON_PLAYER_STOP = 133, + ICON_PLAYER_NEXT = 134, + ICON_PLAYER_RECORD = 135, + ICON_MAGNET = 136, + ICON_LOCK_CLOSE = 137, + ICON_LOCK_OPEN = 138, + ICON_CLOCK = 139, + ICON_TOOLS = 140, + ICON_GEAR = 141, + ICON_GEAR_BIG = 142, + ICON_BIN = 143, + ICON_HAND_POINTER = 144, + ICON_LASER = 145, + ICON_COIN = 146, + ICON_EXPLOSION = 147, + ICON_1UP = 148, + ICON_PLAYER = 149, + ICON_PLAYER_JUMP = 150, + ICON_KEY = 151, + ICON_DEMON = 152, + ICON_TEXT_POPUP = 153, + ICON_GEAR_EX = 154, + ICON_CRACK = 155, + ICON_CRACK_POINTS = 156, + ICON_STAR = 157, + ICON_DOOR = 158, + ICON_EXIT = 159, + ICON_MODE_2D = 160, + ICON_MODE_3D = 161, + ICON_CUBE = 162, + ICON_CUBE_FACE_TOP = 163, + ICON_CUBE_FACE_LEFT = 164, + ICON_CUBE_FACE_FRONT = 165, + ICON_CUBE_FACE_BOTTOM = 166, + ICON_CUBE_FACE_RIGHT = 167, + ICON_CUBE_FACE_BACK = 168, + ICON_CAMERA = 169, + ICON_SPECIAL = 170, + ICON_LINK_NET = 171, + ICON_LINK_BOXES = 172, + ICON_LINK_MULTI = 173, + ICON_LINK = 174, + ICON_LINK_BROKE = 175, + ICON_TEXT_NOTES = 176, + ICON_NOTEBOOK = 177, + ICON_SUITCASE = 178, + ICON_SUITCASE_ZIP = 179, + ICON_MAILBOX = 180, + ICON_MONITOR = 181, + ICON_PRINTER = 182, + ICON_PHOTO_CAMERA = 183, + ICON_PHOTO_CAMERA_FLASH = 184, + ICON_HOUSE = 185, + ICON_HEART = 186, + ICON_CORNER = 187, + ICON_VERTICAL_BARS = 188, + ICON_VERTICAL_BARS_FILL = 189, + ICON_LIFE_BARS = 190, + ICON_INFO = 191, + ICON_CROSSLINE = 192, + ICON_HELP = 193, + ICON_FILETYPE_ALPHA = 194, + ICON_FILETYPE_HOME = 195, + ICON_LAYERS_VISIBLE = 196, + ICON_LAYERS = 197, + ICON_WINDOW = 198, + ICON_HIDPI = 199, + ICON_FILETYPE_BINARY = 200, + ICON_HEX = 201, + ICON_SHIELD = 202, + ICON_FILE_NEW = 203, + ICON_FOLDER_ADD = 204, + ICON_ALARM = 205, + ICON_206 = 206, + ICON_207 = 207, + ICON_208 = 208, + ICON_209 = 209, + ICON_210 = 210, + ICON_211 = 211, + ICON_212 = 212, + ICON_213 = 213, + ICON_214 = 214, + ICON_215 = 215, + ICON_216 = 216, + ICON_217 = 217, + ICON_218 = 218, + ICON_219 = 219, + ICON_220 = 220, + ICON_221 = 221, + ICON_222 = 222, + ICON_223 = 223, + ICON_224 = 224, + ICON_225 = 225, + ICON_226 = 226, + ICON_227 = 227, + ICON_228 = 228, + ICON_229 = 229, + ICON_230 = 230, + ICON_231 = 231, + ICON_232 = 232, + ICON_233 = 233, + ICON_234 = 234, + ICON_235 = 235, + ICON_236 = 236, + ICON_237 = 237, + ICON_238 = 238, + ICON_239 = 239, + ICON_240 = 240, + ICON_241 = 241, + ICON_242 = 242, + ICON_243 = 243, + ICON_244 = 244, + ICON_245 = 245, + ICON_246 = 246, + ICON_247 = 247, + ICON_248 = 248, + ICON_249 = 249, + ICON_250 = 250, + ICON_251 = 251, + ICON_252 = 252, + ICON_253 = 253, + ICON_254 = 254, + ICON_255 = 255, +} GuiIconName; +#endif + +#endif + +#if defined(__cplusplus) +} // Prevents name mangling of functions +#endif + +#endif // RAYGUI_H + +/*********************************************************************************** +* +* RAYGUI IMPLEMENTATION +* +************************************************************************************/ + +#if defined(RAYGUI_IMPLEMENTATION) + +#include // Required for: FILE, fopen(), fclose(), fprintf(), feof(), fscanf(), vsprintf() [GuiLoadStyle(), GuiLoadIcons()] +#include // Required for: malloc(), calloc(), free() [GuiLoadStyle(), GuiLoadIcons()] +#include // Required for: strlen() [GuiTextBox(), GuiTextBoxMulti(), GuiValueBox()], memset(), memcpy() +#include // Required for: va_list, va_start(), vfprintf(), va_end() [TextFormat()] +#include // Required for: roundf() [GuiColorPicker()] + +#ifdef __cplusplus + #define RAYGUI_CLITERAL(name) name +#else + #define RAYGUI_CLITERAL(name) (name) +#endif + +#if !defined(RAYGUI_NO_ICONS) && !defined(RAYGUI_CUSTOM_ICONS) + +// Embedded icons, no external file provided +#define RAYGUI_ICON_SIZE 16 // Size of icons in pixels (squared) +#define RAYGUI_ICON_MAX_ICONS 256 // Maximum number of icons +#define RAYGUI_ICON_MAX_NAME_LENGTH 32 // Maximum length of icon name id + +// Icons data is defined by bit array (every bit represents one pixel) +// Those arrays are stored as unsigned int data arrays, so, +// every array element defines 32 pixels (bits) of information +// One icon is defined by 8 int, (8 int * 32 bit = 256 bit = 16*16 pixels) +// NOTE: Number of elemens depend on RAYGUI_ICON_SIZE (by default 16x16 pixels) +#define RAYGUI_ICON_DATA_ELEMENTS (RAYGUI_ICON_SIZE*RAYGUI_ICON_SIZE/32) + +//---------------------------------------------------------------------------------- +// Icons data for all gui possible icons (allocated on data segment by default) +// +// NOTE 1: Every icon is codified in binary form, using 1 bit per pixel, so, +// every 16x16 icon requires 8 integers (16*16/32) to be stored +// +// NOTE 2: A different icon set could be loaded over this array using GuiLoadIcons(), +// but loaded icons set must be same RAYGUI_ICON_SIZE and no more than RAYGUI_ICON_MAX_ICONS +// +// guiIcons size is by default: 256*(16*16/32) = 2048*4 = 8192 bytes = 8 KB +//---------------------------------------------------------------------------------- +static unsigned int guiIcons[RAYGUI_ICON_MAX_ICONS*RAYGUI_ICON_DATA_ELEMENTS] = { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_NONE + 0x3ff80000, 0x2f082008, 0x2042207e, 0x40027fc2, 0x40024002, 0x40024002, 0x40024002, 0x00007ffe, // ICON_FOLDER_FILE_OPEN + 0x3ffe0000, 0x44226422, 0x400247e2, 0x5ffa4002, 0x57ea500a, 0x500a500a, 0x40025ffa, 0x00007ffe, // ICON_FILE_SAVE_CLASSIC + 0x00000000, 0x0042007e, 0x40027fc2, 0x40024002, 0x41024002, 0x44424282, 0x793e4102, 0x00000100, // ICON_FOLDER_OPEN + 0x00000000, 0x0042007e, 0x40027fc2, 0x40024002, 0x41024102, 0x44424102, 0x793e4282, 0x00000000, // ICON_FOLDER_SAVE + 0x3ff00000, 0x201c2010, 0x20042004, 0x21042004, 0x24442284, 0x21042104, 0x20042104, 0x00003ffc, // ICON_FILE_OPEN + 0x3ff00000, 0x201c2010, 0x20042004, 0x21042004, 0x21042104, 0x22842444, 0x20042104, 0x00003ffc, // ICON_FILE_SAVE + 0x3ff00000, 0x201c2010, 0x00042004, 0x20041004, 0x20844784, 0x00841384, 0x20042784, 0x00003ffc, // ICON_FILE_EXPORT + 0x3ff00000, 0x201c2010, 0x20042004, 0x20042004, 0x22042204, 0x22042f84, 0x20042204, 0x00003ffc, // ICON_FILE_ADD + 0x3ff00000, 0x201c2010, 0x20042004, 0x20042004, 0x25042884, 0x25042204, 0x20042884, 0x00003ffc, // ICON_FILE_DELETE + 0x3ff00000, 0x201c2010, 0x20042004, 0x20042ff4, 0x20042ff4, 0x20042ff4, 0x20042004, 0x00003ffc, // ICON_FILETYPE_TEXT + 0x3ff00000, 0x201c2010, 0x27042004, 0x244424c4, 0x26442444, 0x20642664, 0x20042004, 0x00003ffc, // ICON_FILETYPE_AUDIO + 0x3ff00000, 0x201c2010, 0x26042604, 0x20042004, 0x35442884, 0x2414222c, 0x20042004, 0x00003ffc, // ICON_FILETYPE_IMAGE + 0x3ff00000, 0x201c2010, 0x20c42004, 0x22442144, 0x22442444, 0x20c42144, 0x20042004, 0x00003ffc, // ICON_FILETYPE_PLAY + 0x3ff00000, 0x3ffc2ff0, 0x3f3c2ff4, 0x3dbc2eb4, 0x3dbc2bb4, 0x3f3c2eb4, 0x3ffc2ff4, 0x00002ff4, // ICON_FILETYPE_VIDEO + 0x3ff00000, 0x201c2010, 0x21842184, 0x21842004, 0x21842184, 0x21842184, 0x20042184, 0x00003ffc, // ICON_FILETYPE_INFO + 0x0ff00000, 0x381c0810, 0x28042804, 0x28042804, 0x28042804, 0x28042804, 0x20102ffc, 0x00003ff0, // ICON_FILE_COPY + 0x00000000, 0x701c0000, 0x079c1e14, 0x55a000f0, 0x079c00f0, 0x701c1e14, 0x00000000, 0x00000000, // ICON_FILE_CUT + 0x01c00000, 0x13e41bec, 0x3f841004, 0x204420c4, 0x20442044, 0x20442044, 0x207c2044, 0x00003fc0, // ICON_FILE_PASTE + 0x00000000, 0x3aa00fe0, 0x2abc2aa0, 0x2aa42aa4, 0x20042aa4, 0x20042004, 0x3ffc2004, 0x00000000, // ICON_CURSOR_HAND + 0x00000000, 0x003c000c, 0x030800c8, 0x30100c10, 0x10202020, 0x04400840, 0x01800280, 0x00000000, // ICON_CURSOR_POINTER + 0x00000000, 0x00180000, 0x01f00078, 0x03e007f0, 0x07c003e0, 0x04000e40, 0x00000000, 0x00000000, // ICON_CURSOR_CLASSIC + 0x00000000, 0x04000000, 0x11000a00, 0x04400a80, 0x01100220, 0x00580088, 0x00000038, 0x00000000, // ICON_PENCIL + 0x04000000, 0x15000a00, 0x50402880, 0x14102820, 0x05040a08, 0x015c028c, 0x007c00bc, 0x00000000, // ICON_PENCIL_BIG + 0x01c00000, 0x01400140, 0x01400140, 0x0ff80140, 0x0ff80808, 0x0aa80808, 0x0aa80aa8, 0x00000ff8, // ICON_BRUSH_CLASSIC + 0x1ffc0000, 0x5ffc7ffe, 0x40004000, 0x00807f80, 0x01c001c0, 0x01c001c0, 0x01c001c0, 0x00000080, // ICON_BRUSH_PAINTER + 0x00000000, 0x00800000, 0x01c00080, 0x03e001c0, 0x07f003e0, 0x036006f0, 0x000001c0, 0x00000000, // ICON_WATER_DROP + 0x00000000, 0x3e003800, 0x1f803f80, 0x0c201e40, 0x02080c10, 0x00840104, 0x00380044, 0x00000000, // ICON_COLOR_PICKER + 0x00000000, 0x07800300, 0x1fe00fc0, 0x3f883fd0, 0x0e021f04, 0x02040402, 0x00f00108, 0x00000000, // ICON_RUBBER + 0x00c00000, 0x02800140, 0x08200440, 0x20081010, 0x2ffe3004, 0x03f807fc, 0x00e001f0, 0x00000040, // ICON_COLOR_BUCKET + 0x00000000, 0x21843ffc, 0x01800180, 0x01800180, 0x01800180, 0x01800180, 0x03c00180, 0x00000000, // ICON_TEXT_T + 0x00800000, 0x01400180, 0x06200340, 0x0c100620, 0x1ff80c10, 0x380c1808, 0x70067004, 0x0000f80f, // ICON_TEXT_A + 0x78000000, 0x50004000, 0x00004800, 0x03c003c0, 0x03c003c0, 0x00100000, 0x0002000a, 0x0000000e, // ICON_SCALE + 0x75560000, 0x5e004002, 0x54001002, 0x41001202, 0x408200fe, 0x40820082, 0x40820082, 0x00006afe, // ICON_RESIZE + 0x00000000, 0x3f003f00, 0x3f003f00, 0x3f003f00, 0x00400080, 0x001c0020, 0x001c001c, 0x00000000, // ICON_FILTER_POINT + 0x6d800000, 0x00004080, 0x40804080, 0x40800000, 0x00406d80, 0x001c0020, 0x001c001c, 0x00000000, // ICON_FILTER_BILINEAR + 0x40080000, 0x1ffe2008, 0x14081008, 0x11081208, 0x10481088, 0x10081028, 0x10047ff8, 0x00001002, // ICON_CROP + 0x00100000, 0x3ffc0010, 0x2ab03550, 0x22b02550, 0x20b02150, 0x20302050, 0x2000fff0, 0x00002000, // ICON_CROP_ALPHA + 0x40000000, 0x1ff82000, 0x04082808, 0x01082208, 0x00482088, 0x00182028, 0x35542008, 0x00000002, // ICON_SQUARE_TOGGLE + 0x00000000, 0x02800280, 0x06c006c0, 0x0ea00ee0, 0x1e901eb0, 0x3e883e98, 0x7efc7e8c, 0x00000000, // ICON_SYMMETRY + 0x01000000, 0x05600100, 0x1d480d50, 0x7d423d44, 0x3d447d42, 0x0d501d48, 0x01000560, 0x00000100, // ICON_SYMMETRY_HORIZONTAL + 0x01800000, 0x04200240, 0x10080810, 0x00001ff8, 0x00007ffe, 0x0ff01ff8, 0x03c007e0, 0x00000180, // ICON_SYMMETRY_VERTICAL + 0x00000000, 0x010800f0, 0x02040204, 0x02040204, 0x07f00308, 0x1c000e00, 0x30003800, 0x00000000, // ICON_LENS + 0x00000000, 0x061803f0, 0x08240c0c, 0x08040814, 0x0c0c0804, 0x23f01618, 0x18002400, 0x00000000, // ICON_LENS_BIG + 0x00000000, 0x00000000, 0x1c7007c0, 0x638e3398, 0x1c703398, 0x000007c0, 0x00000000, 0x00000000, // ICON_EYE_ON + 0x00000000, 0x10002000, 0x04700fc0, 0x610e3218, 0x1c703098, 0x001007a0, 0x00000008, 0x00000000, // ICON_EYE_OFF + 0x00000000, 0x00007ffc, 0x40047ffc, 0x10102008, 0x04400820, 0x02800280, 0x02800280, 0x00000100, // ICON_FILTER_TOP + 0x00000000, 0x40027ffe, 0x10082004, 0x04200810, 0x02400240, 0x02400240, 0x01400240, 0x000000c0, // ICON_FILTER + 0x00800000, 0x00800080, 0x00000080, 0x3c9e0000, 0x00000000, 0x00800080, 0x00800080, 0x00000000, // ICON_TARGET_POINT + 0x00800000, 0x00800080, 0x00800080, 0x3f7e01c0, 0x008001c0, 0x00800080, 0x00800080, 0x00000000, // ICON_TARGET_SMALL + 0x00800000, 0x00800080, 0x03e00080, 0x3e3e0220, 0x03e00220, 0x00800080, 0x00800080, 0x00000000, // ICON_TARGET_BIG + 0x01000000, 0x04400280, 0x01000100, 0x43842008, 0x43849ab2, 0x01002008, 0x04400100, 0x01000280, // ICON_TARGET_MOVE + 0x01000000, 0x04400280, 0x01000100, 0x41042108, 0x41049ff2, 0x01002108, 0x04400100, 0x01000280, // ICON_CURSOR_MOVE + 0x781e0000, 0x500a4002, 0x04204812, 0x00000240, 0x02400000, 0x48120420, 0x4002500a, 0x0000781e, // ICON_CURSOR_SCALE + 0x00000000, 0x20003c00, 0x24002800, 0x01000200, 0x00400080, 0x00140024, 0x003c0004, 0x00000000, // ICON_CURSOR_SCALE_RIGHT + 0x00000000, 0x0004003c, 0x00240014, 0x00800040, 0x02000100, 0x28002400, 0x3c002000, 0x00000000, // ICON_CURSOR_SCALE_LEFT + 0x00000000, 0x00100020, 0x10101fc8, 0x10001020, 0x10001000, 0x10001000, 0x00001fc0, 0x00000000, // ICON_UNDO + 0x00000000, 0x08000400, 0x080813f8, 0x00080408, 0x00080008, 0x00080008, 0x000003f8, 0x00000000, // ICON_REDO + 0x00000000, 0x3ffc0000, 0x20042004, 0x20002000, 0x20402000, 0x3f902020, 0x00400020, 0x00000000, // ICON_REREDO + 0x00000000, 0x3ffc0000, 0x20042004, 0x27fc2004, 0x20202000, 0x3fc82010, 0x00200010, 0x00000000, // ICON_MUTATE + 0x00000000, 0x0ff00000, 0x10081818, 0x11801008, 0x10001180, 0x18101020, 0x00100fc8, 0x00000020, // ICON_ROTATE + 0x00000000, 0x04000200, 0x240429fc, 0x20042204, 0x20442004, 0x3f942024, 0x00400020, 0x00000000, // ICON_REPEAT + 0x00000000, 0x20001000, 0x22104c0e, 0x00801120, 0x11200040, 0x4c0e2210, 0x10002000, 0x00000000, // ICON_SHUFFLE + 0x7ffe0000, 0x50024002, 0x44024802, 0x41024202, 0x40424082, 0x40124022, 0x4002400a, 0x00007ffe, // ICON_EMPTYBOX + 0x00800000, 0x03e00080, 0x08080490, 0x3c9e0808, 0x08080808, 0x03e00490, 0x00800080, 0x00000000, // ICON_TARGET + 0x00800000, 0x00800080, 0x00800080, 0x3ffe01c0, 0x008001c0, 0x00800080, 0x00800080, 0x00000000, // ICON_TARGET_SMALL_FILL + 0x00800000, 0x00800080, 0x03e00080, 0x3ffe03e0, 0x03e003e0, 0x00800080, 0x00800080, 0x00000000, // ICON_TARGET_BIG_FILL + 0x01000000, 0x07c00380, 0x01000100, 0x638c2008, 0x638cfbbe, 0x01002008, 0x07c00100, 0x01000380, // ICON_TARGET_MOVE_FILL + 0x01000000, 0x07c00380, 0x01000100, 0x610c2108, 0x610cfffe, 0x01002108, 0x07c00100, 0x01000380, // ICON_CURSOR_MOVE_FILL + 0x781e0000, 0x6006700e, 0x04204812, 0x00000240, 0x02400000, 0x48120420, 0x700e6006, 0x0000781e, // ICON_CURSOR_SCALE_FILL + 0x00000000, 0x38003c00, 0x24003000, 0x01000200, 0x00400080, 0x000c0024, 0x003c001c, 0x00000000, // ICON_CURSOR_SCALE_RIGHT_FILL + 0x00000000, 0x001c003c, 0x0024000c, 0x00800040, 0x02000100, 0x30002400, 0x3c003800, 0x00000000, // ICON_CURSOR_SCALE_LEFT_FILL + 0x00000000, 0x00300020, 0x10301ff8, 0x10001020, 0x10001000, 0x10001000, 0x00001fc0, 0x00000000, // ICON_UNDO_FILL + 0x00000000, 0x0c000400, 0x0c081ff8, 0x00080408, 0x00080008, 0x00080008, 0x000003f8, 0x00000000, // ICON_REDO_FILL + 0x00000000, 0x3ffc0000, 0x20042004, 0x20002000, 0x20402000, 0x3ff02060, 0x00400060, 0x00000000, // ICON_REREDO_FILL + 0x00000000, 0x3ffc0000, 0x20042004, 0x27fc2004, 0x20202000, 0x3ff82030, 0x00200030, 0x00000000, // ICON_MUTATE_FILL + 0x00000000, 0x0ff00000, 0x10081818, 0x11801008, 0x10001180, 0x18301020, 0x00300ff8, 0x00000020, // ICON_ROTATE_FILL + 0x00000000, 0x06000200, 0x26042ffc, 0x20042204, 0x20442004, 0x3ff42064, 0x00400060, 0x00000000, // ICON_REPEAT_FILL + 0x00000000, 0x30001000, 0x32107c0e, 0x00801120, 0x11200040, 0x7c0e3210, 0x10003000, 0x00000000, // ICON_SHUFFLE_FILL + 0x00000000, 0x30043ffc, 0x24042804, 0x21042204, 0x20442084, 0x20142024, 0x3ffc200c, 0x00000000, // ICON_EMPTYBOX_SMALL + 0x00000000, 0x20043ffc, 0x20042004, 0x20042004, 0x20042004, 0x20042004, 0x3ffc2004, 0x00000000, // ICON_BOX + 0x00000000, 0x23c43ffc, 0x23c423c4, 0x200423c4, 0x20042004, 0x20042004, 0x3ffc2004, 0x00000000, // ICON_BOX_TOP + 0x00000000, 0x3e043ffc, 0x3e043e04, 0x20043e04, 0x20042004, 0x20042004, 0x3ffc2004, 0x00000000, // ICON_BOX_TOP_RIGHT + 0x00000000, 0x20043ffc, 0x20042004, 0x3e043e04, 0x3e043e04, 0x20042004, 0x3ffc2004, 0x00000000, // ICON_BOX_RIGHT + 0x00000000, 0x20043ffc, 0x20042004, 0x20042004, 0x3e042004, 0x3e043e04, 0x3ffc3e04, 0x00000000, // ICON_BOX_BOTTOM_RIGHT + 0x00000000, 0x20043ffc, 0x20042004, 0x20042004, 0x23c42004, 0x23c423c4, 0x3ffc23c4, 0x00000000, // ICON_BOX_BOTTOM + 0x00000000, 0x20043ffc, 0x20042004, 0x20042004, 0x207c2004, 0x207c207c, 0x3ffc207c, 0x00000000, // ICON_BOX_BOTTOM_LEFT + 0x00000000, 0x20043ffc, 0x20042004, 0x207c207c, 0x207c207c, 0x20042004, 0x3ffc2004, 0x00000000, // ICON_BOX_LEFT + 0x00000000, 0x207c3ffc, 0x207c207c, 0x2004207c, 0x20042004, 0x20042004, 0x3ffc2004, 0x00000000, // ICON_BOX_TOP_LEFT + 0x00000000, 0x20043ffc, 0x20042004, 0x23c423c4, 0x23c423c4, 0x20042004, 0x3ffc2004, 0x00000000, // ICON_BOX_CENTER + 0x7ffe0000, 0x40024002, 0x47e24182, 0x4ff247e2, 0x47e24ff2, 0x418247e2, 0x40024002, 0x00007ffe, // ICON_BOX_CIRCLE_MASK + 0x7fff0000, 0x40014001, 0x40014001, 0x49555ddd, 0x4945495d, 0x400149c5, 0x40014001, 0x00007fff, // ICON_POT + 0x7ffe0000, 0x53327332, 0x44ce4cce, 0x41324332, 0x404e40ce, 0x48125432, 0x4006540e, 0x00007ffe, // ICON_ALPHA_MULTIPLY + 0x7ffe0000, 0x53327332, 0x44ce4cce, 0x41324332, 0x5c4e40ce, 0x44124432, 0x40065c0e, 0x00007ffe, // ICON_ALPHA_CLEAR + 0x7ffe0000, 0x42fe417e, 0x42fe417e, 0x42fe417e, 0x42fe417e, 0x42fe417e, 0x42fe417e, 0x00007ffe, // ICON_DITHERING + 0x07fe0000, 0x1ffa0002, 0x7fea000a, 0x402a402a, 0x5b2a512a, 0x5128552a, 0x40205128, 0x00007fe0, // ICON_MIPMAPS + 0x00000000, 0x1ff80000, 0x12481248, 0x12481ff8, 0x1ff81248, 0x12481248, 0x00001ff8, 0x00000000, // ICON_BOX_GRID + 0x12480000, 0x7ffe1248, 0x12481248, 0x12487ffe, 0x7ffe1248, 0x12481248, 0x12487ffe, 0x00001248, // ICON_GRID + 0x00000000, 0x1c380000, 0x1c3817e8, 0x08100810, 0x08100810, 0x17e81c38, 0x00001c38, 0x00000000, // ICON_BOX_CORNERS_SMALL + 0x700e0000, 0x700e5ffa, 0x20042004, 0x20042004, 0x20042004, 0x20042004, 0x5ffa700e, 0x0000700e, // ICON_BOX_CORNERS_BIG + 0x3f7e0000, 0x21422142, 0x21422142, 0x00003f7e, 0x21423f7e, 0x21422142, 0x3f7e2142, 0x00000000, // ICON_FOUR_BOXES + 0x00000000, 0x3bb80000, 0x3bb83bb8, 0x3bb80000, 0x3bb83bb8, 0x3bb80000, 0x3bb83bb8, 0x00000000, // ICON_GRID_FILL + 0x7ffe0000, 0x7ffe7ffe, 0x77fe7000, 0x77fe77fe, 0x777e7700, 0x777e777e, 0x777e777e, 0x0000777e, // ICON_BOX_MULTISIZE + 0x781e0000, 0x40024002, 0x00004002, 0x01800000, 0x00000180, 0x40020000, 0x40024002, 0x0000781e, // ICON_ZOOM_SMALL + 0x781e0000, 0x40024002, 0x00004002, 0x03c003c0, 0x03c003c0, 0x40020000, 0x40024002, 0x0000781e, // ICON_ZOOM_MEDIUM + 0x781e0000, 0x40024002, 0x07e04002, 0x07e007e0, 0x07e007e0, 0x400207e0, 0x40024002, 0x0000781e, // ICON_ZOOM_BIG + 0x781e0000, 0x5ffa4002, 0x1ff85ffa, 0x1ff81ff8, 0x1ff81ff8, 0x5ffa1ff8, 0x40025ffa, 0x0000781e, // ICON_ZOOM_ALL + 0x00000000, 0x2004381c, 0x00002004, 0x00000000, 0x00000000, 0x20040000, 0x381c2004, 0x00000000, // ICON_ZOOM_CENTER + 0x00000000, 0x1db80000, 0x10081008, 0x10080000, 0x00001008, 0x10081008, 0x00001db8, 0x00000000, // ICON_BOX_DOTS_SMALL + 0x35560000, 0x00002002, 0x00002002, 0x00002002, 0x00002002, 0x00002002, 0x35562002, 0x00000000, // ICON_BOX_DOTS_BIG + 0x7ffe0000, 0x40024002, 0x48124ff2, 0x49924812, 0x48124992, 0x4ff24812, 0x40024002, 0x00007ffe, // ICON_BOX_CONCENTRIC + 0x00000000, 0x10841ffc, 0x10841084, 0x1ffc1084, 0x10841084, 0x10841084, 0x00001ffc, 0x00000000, // ICON_BOX_GRID_BIG + 0x00000000, 0x00000000, 0x10000000, 0x04000800, 0x01040200, 0x00500088, 0x00000020, 0x00000000, // ICON_OK_TICK + 0x00000000, 0x10080000, 0x04200810, 0x01800240, 0x02400180, 0x08100420, 0x00001008, 0x00000000, // ICON_CROSS + 0x00000000, 0x02000000, 0x00800100, 0x00200040, 0x00200010, 0x00800040, 0x02000100, 0x00000000, // ICON_ARROW_LEFT + 0x00000000, 0x00400000, 0x01000080, 0x04000200, 0x04000800, 0x01000200, 0x00400080, 0x00000000, // ICON_ARROW_RIGHT + 0x00000000, 0x00000000, 0x00000000, 0x08081004, 0x02200410, 0x00800140, 0x00000000, 0x00000000, // ICON_ARROW_DOWN + 0x00000000, 0x00000000, 0x01400080, 0x04100220, 0x10040808, 0x00000000, 0x00000000, 0x00000000, // ICON_ARROW_UP + 0x00000000, 0x02000000, 0x03800300, 0x03e003c0, 0x03e003f0, 0x038003c0, 0x02000300, 0x00000000, // ICON_ARROW_LEFT_FILL + 0x00000000, 0x00400000, 0x01c000c0, 0x07c003c0, 0x07c00fc0, 0x01c003c0, 0x004000c0, 0x00000000, // ICON_ARROW_RIGHT_FILL + 0x00000000, 0x00000000, 0x00000000, 0x0ff81ffc, 0x03e007f0, 0x008001c0, 0x00000000, 0x00000000, // ICON_ARROW_DOWN_FILL + 0x00000000, 0x00000000, 0x01c00080, 0x07f003e0, 0x1ffc0ff8, 0x00000000, 0x00000000, 0x00000000, // ICON_ARROW_UP_FILL + 0x00000000, 0x18a008c0, 0x32881290, 0x24822686, 0x26862482, 0x12903288, 0x08c018a0, 0x00000000, // ICON_AUDIO + 0x00000000, 0x04800780, 0x004000c0, 0x662000f0, 0x08103c30, 0x130a0e18, 0x0000318e, 0x00000000, // ICON_FX + 0x00000000, 0x00800000, 0x08880888, 0x2aaa0a8a, 0x0a8a2aaa, 0x08880888, 0x00000080, 0x00000000, // ICON_WAVE + 0x00000000, 0x00600000, 0x01080090, 0x02040108, 0x42044204, 0x24022402, 0x00001800, 0x00000000, // ICON_WAVE_SINUS + 0x00000000, 0x07f80000, 0x04080408, 0x04080408, 0x04080408, 0x7c0e0408, 0x00000000, 0x00000000, // ICON_WAVE_SQUARE + 0x00000000, 0x00000000, 0x00a00040, 0x22084110, 0x08021404, 0x00000000, 0x00000000, 0x00000000, // ICON_WAVE_TRIANGULAR + 0x00000000, 0x00000000, 0x04200000, 0x01800240, 0x02400180, 0x00000420, 0x00000000, 0x00000000, // ICON_CROSS_SMALL + 0x00000000, 0x18380000, 0x12281428, 0x10a81128, 0x112810a8, 0x14281228, 0x00001838, 0x00000000, // ICON_PLAYER_PREVIOUS + 0x00000000, 0x18000000, 0x11801600, 0x10181060, 0x10601018, 0x16001180, 0x00001800, 0x00000000, // ICON_PLAYER_PLAY_BACK + 0x00000000, 0x00180000, 0x01880068, 0x18080608, 0x06081808, 0x00680188, 0x00000018, 0x00000000, // ICON_PLAYER_PLAY + 0x00000000, 0x1e780000, 0x12481248, 0x12481248, 0x12481248, 0x12481248, 0x00001e78, 0x00000000, // ICON_PLAYER_PAUSE + 0x00000000, 0x1ff80000, 0x10081008, 0x10081008, 0x10081008, 0x10081008, 0x00001ff8, 0x00000000, // ICON_PLAYER_STOP + 0x00000000, 0x1c180000, 0x14481428, 0x15081488, 0x14881508, 0x14281448, 0x00001c18, 0x00000000, // ICON_PLAYER_NEXT + 0x00000000, 0x03c00000, 0x08100420, 0x10081008, 0x10081008, 0x04200810, 0x000003c0, 0x00000000, // ICON_PLAYER_RECORD + 0x00000000, 0x0c3007e0, 0x13c81818, 0x14281668, 0x14281428, 0x1c381c38, 0x08102244, 0x00000000, // ICON_MAGNET + 0x07c00000, 0x08200820, 0x3ff80820, 0x23882008, 0x21082388, 0x20082108, 0x1ff02008, 0x00000000, // ICON_LOCK_CLOSE + 0x07c00000, 0x08000800, 0x3ff80800, 0x23882008, 0x21082388, 0x20082108, 0x1ff02008, 0x00000000, // ICON_LOCK_OPEN + 0x01c00000, 0x0c180770, 0x3086188c, 0x60832082, 0x60034781, 0x30062002, 0x0c18180c, 0x01c00770, // ICON_CLOCK + 0x0a200000, 0x1b201b20, 0x04200e20, 0x04200420, 0x04700420, 0x0e700e70, 0x0e700e70, 0x04200e70, // ICON_TOOLS + 0x01800000, 0x3bdc318c, 0x0ff01ff8, 0x7c3e1e78, 0x1e787c3e, 0x1ff80ff0, 0x318c3bdc, 0x00000180, // ICON_GEAR + 0x01800000, 0x3ffc318c, 0x1c381ff8, 0x781e1818, 0x1818781e, 0x1ff81c38, 0x318c3ffc, 0x00000180, // ICON_GEAR_BIG + 0x00000000, 0x08080ff8, 0x08081ffc, 0x0aa80aa8, 0x0aa80aa8, 0x0aa80aa8, 0x08080aa8, 0x00000ff8, // ICON_BIN + 0x00000000, 0x00000000, 0x20043ffc, 0x08043f84, 0x04040f84, 0x04040784, 0x000007fc, 0x00000000, // ICON_HAND_POINTER + 0x00000000, 0x24400400, 0x00001480, 0x6efe0e00, 0x00000e00, 0x24401480, 0x00000400, 0x00000000, // ICON_LASER + 0x00000000, 0x03c00000, 0x08300460, 0x11181118, 0x11181118, 0x04600830, 0x000003c0, 0x00000000, // ICON_COIN + 0x00000000, 0x10880080, 0x06c00810, 0x366c07e0, 0x07e00240, 0x00001768, 0x04200240, 0x00000000, // ICON_EXPLOSION + 0x00000000, 0x3d280000, 0x2528252c, 0x3d282528, 0x05280528, 0x05e80528, 0x00000000, 0x00000000, // ICON_1UP + 0x01800000, 0x03c003c0, 0x018003c0, 0x0ff007e0, 0x0bd00bd0, 0x0a500bd0, 0x02400240, 0x02400240, // ICON_PLAYER + 0x01800000, 0x03c003c0, 0x118013c0, 0x03c81ff8, 0x07c003c8, 0x04400440, 0x0c080478, 0x00000000, // ICON_PLAYER_JUMP + 0x3ff80000, 0x30183ff8, 0x30183018, 0x3ff83ff8, 0x03000300, 0x03c003c0, 0x03e00300, 0x000003e0, // ICON_KEY + 0x3ff80000, 0x3ff83ff8, 0x33983ff8, 0x3ff83398, 0x3ff83ff8, 0x00000540, 0x0fe00aa0, 0x00000fe0, // ICON_DEMON + 0x00000000, 0x0ff00000, 0x20041008, 0x25442004, 0x10082004, 0x06000bf0, 0x00000300, 0x00000000, // ICON_TEXT_POPUP + 0x00000000, 0x11440000, 0x07f00be8, 0x1c1c0e38, 0x1c1c0c18, 0x07f00e38, 0x11440be8, 0x00000000, // ICON_GEAR_EX + 0x00000000, 0x20080000, 0x0c601010, 0x07c00fe0, 0x07c007c0, 0x0c600fe0, 0x20081010, 0x00000000, // ICON_CRACK + 0x00000000, 0x20080000, 0x0c601010, 0x04400fe0, 0x04405554, 0x0c600fe0, 0x20081010, 0x00000000, // ICON_CRACK_POINTS + 0x00000000, 0x00800080, 0x01c001c0, 0x1ffc3ffe, 0x03e007f0, 0x07f003e0, 0x0c180770, 0x00000808, // ICON_STAR + 0x0ff00000, 0x08180810, 0x08100818, 0x0a100810, 0x08180810, 0x08100818, 0x08100810, 0x00001ff8, // ICON_DOOR + 0x0ff00000, 0x08100810, 0x08100810, 0x10100010, 0x4f902010, 0x10102010, 0x08100010, 0x00000ff0, // ICON_EXIT + 0x00040000, 0x001f000e, 0x0ef40004, 0x12f41284, 0x0ef41214, 0x10040004, 0x7ffc3004, 0x10003000, // ICON_MODE_2D + 0x78040000, 0x501f600e, 0x0ef44004, 0x12f41284, 0x0ef41284, 0x10140004, 0x7ffc300c, 0x10003000, // ICON_MODE_3D + 0x7fe00000, 0x50286030, 0x47fe4804, 0x44224402, 0x44224422, 0x241275e2, 0x0c06140a, 0x000007fe, // ICON_CUBE + 0x7fe00000, 0x5ff87ff0, 0x47fe4ffc, 0x44224402, 0x44224422, 0x241275e2, 0x0c06140a, 0x000007fe, // ICON_CUBE_FACE_TOP + 0x7fe00000, 0x50386030, 0x47fe483c, 0x443e443e, 0x443e443e, 0x241e75fe, 0x0c06140e, 0x000007fe, // ICON_CUBE_FACE_LEFT + 0x7fe00000, 0x50286030, 0x47fe4804, 0x47fe47fe, 0x47fe47fe, 0x27fe77fe, 0x0ffe17fe, 0x000007fe, // ICON_CUBE_FACE_FRONT + 0x7fe00000, 0x50286030, 0x47fe4804, 0x44224402, 0x44224422, 0x3ff27fe2, 0x0ffe1ffa, 0x000007fe, // ICON_CUBE_FACE_BOTTOM + 0x7fe00000, 0x70286030, 0x7ffe7804, 0x7c227c02, 0x7c227c22, 0x3c127de2, 0x0c061c0a, 0x000007fe, // ICON_CUBE_FACE_RIGHT + 0x7fe00000, 0x7fe87ff0, 0x7ffe7fe4, 0x7fe27fe2, 0x7fe27fe2, 0x24127fe2, 0x0c06140a, 0x000007fe, // ICON_CUBE_FACE_BACK + 0x00000000, 0x2a0233fe, 0x22022602, 0x22022202, 0x2a022602, 0x00a033fe, 0x02080110, 0x00000000, // ICON_CAMERA + 0x00000000, 0x200c3ffc, 0x000c000c, 0x3ffc000c, 0x30003000, 0x30003000, 0x3ffc3004, 0x00000000, // ICON_SPECIAL + 0x00000000, 0x0022003e, 0x012201e2, 0x0100013e, 0x01000100, 0x79000100, 0x4f004900, 0x00007800, // ICON_LINK_NET + 0x00000000, 0x44007c00, 0x45004600, 0x00627cbe, 0x00620022, 0x45007cbe, 0x44004600, 0x00007c00, // ICON_LINK_BOXES + 0x00000000, 0x0044007c, 0x0010007c, 0x3f100010, 0x3f1021f0, 0x3f100010, 0x3f0021f0, 0x00000000, // ICON_LINK_MULTI + 0x00000000, 0x0044007c, 0x00440044, 0x0010007c, 0x00100010, 0x44107c10, 0x440047f0, 0x00007c00, // ICON_LINK + 0x00000000, 0x0044007c, 0x00440044, 0x0000007c, 0x00000010, 0x44007c10, 0x44004550, 0x00007c00, // ICON_LINK_BROKE + 0x02a00000, 0x22a43ffc, 0x20042004, 0x20042ff4, 0x20042ff4, 0x20042ff4, 0x20042004, 0x00003ffc, // ICON_TEXT_NOTES + 0x3ffc0000, 0x20042004, 0x245e27c4, 0x27c42444, 0x2004201e, 0x201e2004, 0x20042004, 0x00003ffc, // ICON_NOTEBOOK + 0x00000000, 0x07e00000, 0x04200420, 0x24243ffc, 0x24242424, 0x24242424, 0x3ffc2424, 0x00000000, // ICON_SUITCASE + 0x00000000, 0x0fe00000, 0x08200820, 0x40047ffc, 0x7ffc5554, 0x40045554, 0x7ffc4004, 0x00000000, // ICON_SUITCASE_ZIP + 0x00000000, 0x20043ffc, 0x3ffc2004, 0x13c81008, 0x100813c8, 0x10081008, 0x1ff81008, 0x00000000, // ICON_MAILBOX + 0x00000000, 0x40027ffe, 0x5ffa5ffa, 0x5ffa5ffa, 0x40025ffa, 0x03c07ffe, 0x1ff81ff8, 0x00000000, // ICON_MONITOR + 0x0ff00000, 0x6bfe7ffe, 0x7ffe7ffe, 0x68167ffe, 0x08106816, 0x08100810, 0x0ff00810, 0x00000000, // ICON_PRINTER + 0x3ff80000, 0xfffe2008, 0x870a8002, 0x904a888a, 0x904a904a, 0x870a888a, 0xfffe8002, 0x00000000, // ICON_PHOTO_CAMERA + 0x0fc00000, 0xfcfe0cd8, 0x8002fffe, 0x84428382, 0x84428442, 0x80028382, 0xfffe8002, 0x00000000, // ICON_PHOTO_CAMERA_FLASH + 0x00000000, 0x02400180, 0x08100420, 0x20041008, 0x23c42004, 0x22442244, 0x3ffc2244, 0x00000000, // ICON_HOUSE + 0x00000000, 0x1c700000, 0x3ff83ef8, 0x3ff83ff8, 0x0fe01ff0, 0x038007c0, 0x00000100, 0x00000000, // ICON_HEART + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80000000, 0xe000c000, // ICON_CORNER + 0x00000000, 0x14001c00, 0x15c01400, 0x15401540, 0x155c1540, 0x15541554, 0x1ddc1554, 0x00000000, // ICON_VERTICAL_BARS + 0x00000000, 0x03000300, 0x1b001b00, 0x1b601b60, 0x1b6c1b60, 0x1b6c1b6c, 0x1b6c1b6c, 0x00000000, // ICON_VERTICAL_BARS_FILL + 0x00000000, 0x00000000, 0x403e7ffe, 0x7ffe403e, 0x7ffe0000, 0x43fe43fe, 0x00007ffe, 0x00000000, // ICON_LIFE_BARS + 0x7ffc0000, 0x43844004, 0x43844284, 0x43844004, 0x42844284, 0x42844284, 0x40044384, 0x00007ffc, // ICON_INFO + 0x40008000, 0x10002000, 0x04000800, 0x01000200, 0x00400080, 0x00100020, 0x00040008, 0x00010002, // ICON_CROSSLINE + 0x00000000, 0x1ff01ff0, 0x18301830, 0x1f001830, 0x03001f00, 0x00000300, 0x03000300, 0x00000000, // ICON_HELP + 0x3ff00000, 0x2abc3550, 0x2aac3554, 0x2aac3554, 0x2aac3554, 0x2aac3554, 0x2aac3554, 0x00003ffc, // ICON_FILETYPE_ALPHA + 0x3ff00000, 0x201c2010, 0x22442184, 0x28142424, 0x29942814, 0x2ff42994, 0x20042004, 0x00003ffc, // ICON_FILETYPE_HOME + 0x07fe0000, 0x04020402, 0x7fe20402, 0x44224422, 0x44224422, 0x402047fe, 0x40204020, 0x00007fe0, // ICON_LAYERS_VISIBLE + 0x07fe0000, 0x04020402, 0x7c020402, 0x44024402, 0x44024402, 0x402047fe, 0x40204020, 0x00007fe0, // ICON_LAYERS + 0x00000000, 0x40027ffe, 0x7ffe4002, 0x40024002, 0x40024002, 0x40024002, 0x7ffe4002, 0x00000000, // ICON_WINDOW + 0x09100000, 0x09f00910, 0x09100910, 0x00000910, 0x24a2779e, 0x27a224a2, 0x709e20a2, 0x00000000, // ICON_HIDPI + 0x3ff00000, 0x201c2010, 0x2a842e84, 0x2e842a84, 0x2ba42004, 0x2aa42aa4, 0x20042ba4, 0x00003ffc, // ICON_FILETYPE_BINARY + 0x00000000, 0x00000000, 0x00120012, 0x4a5e4bd2, 0x485233d2, 0x00004bd2, 0x00000000, 0x00000000, // ICON_HEX + 0x01800000, 0x381c0660, 0x23c42004, 0x23c42044, 0x13c82204, 0x08101008, 0x02400420, 0x00000180, // ICON_SHIELD + 0x007e0000, 0x20023fc2, 0x40227fe2, 0x400a403a, 0x400a400a, 0x400a400a, 0x4008400e, 0x00007ff8, // ICON_FILE_NEW + 0x00000000, 0x0042007e, 0x40027fc2, 0x44024002, 0x5f024402, 0x44024402, 0x7ffe4002, 0x00000000, // ICON_FOLDER_ADD + 0x44220000, 0x12482244, 0xf3cf0000, 0x14280420, 0x48122424, 0x08100810, 0x1ff81008, 0x03c00420, // ICON_ALARM + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_206 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_207 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_208 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_209 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_210 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_211 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_212 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_213 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_214 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_215 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_216 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_217 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_218 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_219 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_220 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_221 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_222 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_223 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_224 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_225 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_226 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_227 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_228 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_229 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_230 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_231 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_232 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_233 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_234 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_235 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_236 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_237 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_238 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_239 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_240 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_241 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_242 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_243 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_244 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_245 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_246 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_247 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_248 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_249 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_250 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_251 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_252 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_253 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_254 + 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, // ICON_255 +}; + +#endif // !RAYGUI_NO_ICONS && !RAYGUI_CUSTOM_ICONS + +#ifndef RAYGUI_ICON_SIZE + #define RAYGUI_ICON_SIZE 0 +#endif + +#define RAYGUI_MAX_CONTROLS 16 // Maximum number of standard controls +#define RAYGUI_MAX_PROPS_BASE 16 // Maximum number of standard properties +#define RAYGUI_MAX_PROPS_EXTENDED 8 // Maximum number of extended properties + +//---------------------------------------------------------------------------------- +// Types and Structures Definition +//---------------------------------------------------------------------------------- +// Gui control property style color element +typedef enum { BORDER = 0, BASE, TEXT, OTHER } GuiPropertyElement; + +//---------------------------------------------------------------------------------- +// Global Variables Definition +//---------------------------------------------------------------------------------- +static GuiState guiState = STATE_NORMAL; // Gui global state, if !STATE_NORMAL, forces defined state + +static Font guiFont = { 0 }; // Gui current font (WARNING: highly coupled to raylib) +static bool guiLocked = false; // Gui lock state (no inputs processed) +static float guiAlpha = 1.0f; // Gui element transpacency on drawing + +static unsigned int guiIconScale = 1; // Gui icon default scale (if icons enabled) + +//---------------------------------------------------------------------------------- +// Style data array for all gui style properties (allocated on data segment by default) +// +// NOTE 1: First set of BASE properties are generic to all controls but could be individually +// overwritten per control, first set of EXTENDED properties are generic to all controls and +// can not be overwritten individually but custom EXTENDED properties can be used by control +// +// NOTE 2: A new style set could be loaded over this array using GuiLoadStyle(), +// but default gui style could always be recovered with GuiLoadStyleDefault() +// +// guiStyle size is by default: 16*(16 + 8) = 384*4 = 1536 bytes = 1.5 KB +//---------------------------------------------------------------------------------- +static unsigned int guiStyle[RAYGUI_MAX_CONTROLS*(RAYGUI_MAX_PROPS_BASE + RAYGUI_MAX_PROPS_EXTENDED)] = { 0 }; + +static bool guiStyleLoaded = false; // Style loaded flag for lazy style initialization + +//---------------------------------------------------------------------------------- +// Standalone Mode Functions Declaration +// +// NOTE: raygui depend on some raylib input and drawing functions +// To use raygui as standalone library, below functions must be defined by the user +//---------------------------------------------------------------------------------- +#if defined(RAYGUI_STANDALONE) + +#define KEY_RIGHT 262 +#define KEY_LEFT 263 +#define KEY_DOWN 264 +#define KEY_UP 265 +#define KEY_BACKSPACE 259 +#define KEY_ENTER 257 + +#define MOUSE_LEFT_BUTTON 0 + +// Input required functions +//------------------------------------------------------------------------------- +static Vector2 GetMousePosition(void); +static float GetMouseWheelMove(void); +static bool IsMouseButtonDown(int button); +static bool IsMouseButtonPressed(int button); +static bool IsMouseButtonReleased(int button); + +static bool IsKeyDown(int key); +static bool IsKeyPressed(int key); +static int GetCharPressed(void); // -- GuiTextBox(), GuiTextBoxMulti(), GuiValueBox() +//------------------------------------------------------------------------------- + +// Drawing required functions +//------------------------------------------------------------------------------- +static void DrawRectangle(int x, int y, int width, int height, Color color); // -- GuiDrawRectangle(), GuiDrawIcon() + +static void DrawRectangleGradientEx(Rectangle rec, Color col1, Color col2, Color col3, Color col4); // -- GuiColorPicker() +//------------------------------------------------------------------------------- + +// Text required functions +//------------------------------------------------------------------------------- +static Font LoadFontEx(const char *fileName, int fontSize, int *fontChars, int glyphCount); // -- GuiLoadStyle() +static Font GetFontDefault(void); // -- GuiLoadStyleDefault() +static Texture2D LoadTextureFromImage(Image image); // -- GuiLoadStyle() +static void SetShapesTexture(Texture2D tex, Rectangle rec); // -- GuiLoadStyle() +static char *LoadFileText(const char *fileName); // -- GuiLoadStyle() +static const char *GetDirectoryPath(const char *filePath); // -- GuiLoadStyle() + +static Vector2 MeasureTextEx(Font font, const char *text, float fontSize, float spacing); // -- GetTextWidth(), GuiTextBoxMulti() +static void DrawTextEx(Font font, const char *text, Vector2 position, float fontSize, float spacing, Color tint); // -- GuiDrawText() +//------------------------------------------------------------------------------- + +// raylib functions already implemented in raygui +//------------------------------------------------------------------------------- +static Color GetColor(int hexValue); // Returns a Color struct from hexadecimal value +static int ColorToInt(Color color); // Returns hexadecimal value for a Color +static Color Fade(Color color, float alpha); // Color fade-in or fade-out, alpha goes from 0.0f to 1.0f +static bool CheckCollisionPointRec(Vector2 point, Rectangle rec); // Check if point is inside rectangle +static const char *TextFormat(const char *text, ...); // Formatting of text with variables to 'embed' +static const char **TextSplit(const char *text, char delimiter, int *count); // Split text into multiple strings +static int TextToInteger(const char *text); // Get integer value from text +static int GetCodepoint(const char *text, int *bytesProcessed); // Get next codepoint in a UTF-8 encoded text +static const char *CodepointToUTF8(int codepoint, int *byteSize); // Encode codepoint into UTF-8 text (char array size returned as parameter) + +static void DrawRectangleGradientV(int posX, int posY, int width, int height, Color color1, Color color2); // Draw rectangle vertical gradient +//------------------------------------------------------------------------------- + +#endif // RAYGUI_STANDALONE + +//---------------------------------------------------------------------------------- +// Module specific Functions Declaration +//---------------------------------------------------------------------------------- +static int GetTextWidth(const char *text); // Gui get text width using default font +static Rectangle GetTextBounds(int control, Rectangle bounds); // Get text bounds considering control bounds +static const char *GetTextIcon(const char *text, int *iconId); // Get text icon if provided and move text cursor + +static void GuiDrawText(const char *text, Rectangle bounds, int alignment, Color tint); // Gui draw text using default font +static void GuiDrawRectangle(Rectangle rec, int borderWidth, Color borderColor, Color color); // Gui draw rectangle using default raygui style + +static const char **GuiTextSplit(const char *text, int *count, int *textRow); // Split controls text into multiple strings +static Vector3 ConvertHSVtoRGB(Vector3 hsv); // Convert color data from HSV to RGB +static Vector3 ConvertRGBtoHSV(Vector3 rgb); // Convert color data from RGB to HSV + +static int GuiScrollBar(Rectangle bounds, int value, int minValue, int maxValue); // Scroll bar control, used by GuiScrollPanel() + +//---------------------------------------------------------------------------------- +// Gui Setup Functions Definition +//---------------------------------------------------------------------------------- +// Enable gui global state +// NOTE: We check for STATE_DISABLED to avoid messing custom global state setups +void GuiEnable(void) { if (guiState == STATE_DISABLED) guiState = STATE_NORMAL; } + +// Disable gui global state +// NOTE: We check for STATE_NORMAL to avoid messing custom global state setups +void GuiDisable(void) { if (guiState == STATE_NORMAL) guiState = STATE_DISABLED; } + +// Lock gui global state +void GuiLock(void) { guiLocked = true; } + +// Unlock gui global state +void GuiUnlock(void) { guiLocked = false; } + +// Check if gui is locked (global state) +bool GuiIsLocked(void) { return guiLocked; } + +// Set gui controls alpha global state +void GuiFade(float alpha) +{ + if (alpha < 0.0f) alpha = 0.0f; + else if (alpha > 1.0f) alpha = 1.0f; + + guiAlpha = alpha; +} + +// Set gui state (global state) +void GuiSetState(int state) { guiState = (GuiState)state; } + +// Get gui state (global state) +int GuiGetState(void) { return guiState; } + +// Set custom gui font +// NOTE: Font loading/unloading is external to raygui +void GuiSetFont(Font font) +{ + if (font.texture.id > 0) + { + // NOTE: If we try to setup a font but default style has not been + // lazily loaded before, it will be overwritten, so we need to force + // default style loading first + if (!guiStyleLoaded) GuiLoadStyleDefault(); + + guiFont = font; + GuiSetStyle(DEFAULT, TEXT_SIZE, font.baseSize); + } +} + +// Get custom gui font +Font GuiGetFont(void) +{ + return guiFont; +} + +// Set control style property value +void GuiSetStyle(int control, int property, int value) +{ + if (!guiStyleLoaded) GuiLoadStyleDefault(); + guiStyle[control*(RAYGUI_MAX_PROPS_BASE + RAYGUI_MAX_PROPS_EXTENDED) + property] = value; + + // Default properties are propagated to all controls + if ((control == 0) && (property < RAYGUI_MAX_PROPS_BASE)) + { + for (int i = 1; i < RAYGUI_MAX_CONTROLS; i++) guiStyle[i*(RAYGUI_MAX_PROPS_BASE + RAYGUI_MAX_PROPS_EXTENDED) + property] = value; + } +} + +// Get control style property value +int GuiGetStyle(int control, int property) +{ + if (!guiStyleLoaded) GuiLoadStyleDefault(); + return guiStyle[control*(RAYGUI_MAX_PROPS_BASE + RAYGUI_MAX_PROPS_EXTENDED) + property]; +} + +//---------------------------------------------------------------------------------- +// Gui Controls Functions Definition +//---------------------------------------------------------------------------------- + +// Window Box control +bool GuiWindowBox(Rectangle bounds, const char *title) +{ + // Window title bar height (including borders) + // NOTE: This define is also used by GuiMessageBox() and GuiTextInputBox() + #if !defined(RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT) + #define RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT 24 + #endif + + //GuiState state = guiState; + bool clicked = false; + + int statusBarHeight = RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT; + + Rectangle statusBar = { bounds.x, bounds.y, bounds.width, (float)statusBarHeight }; + if (bounds.height < statusBarHeight*2.0f) bounds.height = statusBarHeight*2.0f; + + Rectangle windowPanel = { bounds.x, bounds.y + (float)statusBarHeight - 1, bounds.width, bounds.height - (float)statusBarHeight + 1 }; + Rectangle closeButtonRec = { statusBar.x + statusBar.width - GuiGetStyle(STATUSBAR, BORDER_WIDTH) - 20, + statusBar.y + statusBarHeight/2.0f - 18.0f/2.0f, 18, 18 }; + + // Update control + //-------------------------------------------------------------------- + // NOTE: Logic is directly managed by button + //-------------------------------------------------------------------- + + // Draw control + //-------------------------------------------------------------------- + GuiStatusBar(statusBar, title); // Draw window header as status bar + GuiPanel(windowPanel, NULL); // Draw window base + + // Draw window close button + int tempBorderWidth = GuiGetStyle(BUTTON, BORDER_WIDTH); + int tempTextAlignment = GuiGetStyle(BUTTON, TEXT_ALIGNMENT); + GuiSetStyle(BUTTON, BORDER_WIDTH, 1); + GuiSetStyle(BUTTON, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER); +#if defined(RAYGUI_NO_ICONS) + clicked = GuiButton(closeButtonRec, "x"); +#else + clicked = GuiButton(closeButtonRec, GuiIconText(ICON_CROSS_SMALL, NULL)); +#endif + GuiSetStyle(BUTTON, BORDER_WIDTH, tempBorderWidth); + GuiSetStyle(BUTTON, TEXT_ALIGNMENT, tempTextAlignment); + //-------------------------------------------------------------------- + + return clicked; +} + +// Group Box control with text name +void GuiGroupBox(Rectangle bounds, const char *text) +{ + #if !defined(RAYGUI_GROUPBOX_LINE_THICK) + #define RAYGUI_GROUPBOX_LINE_THICK 1 + #endif + + GuiState state = guiState; + + // Draw control + //-------------------------------------------------------------------- + GuiDrawRectangle(RAYGUI_CLITERAL(Rectangle){ bounds.x, bounds.y, RAYGUI_GROUPBOX_LINE_THICK, bounds.height }, 0, BLANK, Fade(GetColor(GuiGetStyle(DEFAULT, (state == STATE_DISABLED)? BORDER_COLOR_DISABLED : LINE_COLOR)), guiAlpha)); + GuiDrawRectangle(RAYGUI_CLITERAL(Rectangle){ bounds.x, bounds.y + bounds.height - 1, bounds.width, RAYGUI_GROUPBOX_LINE_THICK }, 0, BLANK, Fade(GetColor(GuiGetStyle(DEFAULT, (state == STATE_DISABLED)? BORDER_COLOR_DISABLED : LINE_COLOR)), guiAlpha)); + GuiDrawRectangle(RAYGUI_CLITERAL(Rectangle){ bounds.x + bounds.width - 1, bounds.y, RAYGUI_GROUPBOX_LINE_THICK, bounds.height }, 0, BLANK, Fade(GetColor(GuiGetStyle(DEFAULT, (state == STATE_DISABLED)? BORDER_COLOR_DISABLED : LINE_COLOR)), guiAlpha)); + + GuiLine(RAYGUI_CLITERAL(Rectangle){ bounds.x, bounds.y - GuiGetStyle(DEFAULT, TEXT_SIZE)/2, bounds.width, (float)GuiGetStyle(DEFAULT, TEXT_SIZE) }, text); + //-------------------------------------------------------------------- +} + +// Line control +void GuiLine(Rectangle bounds, const char *text) +{ + #if !defined(RAYGUI_LINE_ORIGIN_SIZE) + #define RAYGUI_LINE_MARGIN_TEXT 12 + #endif + #if !defined(RAYGUI_LINE_TEXT_PADDING) + #define RAYGUI_LINE_TEXT_PADDING 4 + #endif + + GuiState state = guiState; + + Color color = Fade(GetColor(GuiGetStyle(DEFAULT, (state == STATE_DISABLED)? BORDER_COLOR_DISABLED : LINE_COLOR)), guiAlpha); + + // Draw control + //-------------------------------------------------------------------- + if (text == NULL) GuiDrawRectangle(RAYGUI_CLITERAL(Rectangle){ bounds.x, bounds.y + bounds.height/2, bounds.width, 1 }, 0, BLANK, color); + else + { + Rectangle textBounds = { 0 }; + textBounds.width = (float)GetTextWidth(text); + textBounds.height = bounds.height; + textBounds.x = bounds.x + RAYGUI_LINE_MARGIN_TEXT; + textBounds.y = bounds.y; + + // Draw line with embedded text label: "--- text --------------" + GuiDrawRectangle(RAYGUI_CLITERAL(Rectangle){ bounds.x, bounds.y + bounds.height/2, RAYGUI_LINE_MARGIN_TEXT - RAYGUI_LINE_TEXT_PADDING, 1 }, 0, BLANK, color); + GuiDrawText(text, textBounds, TEXT_ALIGN_LEFT, color); + GuiDrawRectangle(RAYGUI_CLITERAL(Rectangle){ bounds.x + 12 + textBounds.width + 4, bounds.y + bounds.height/2, bounds.width - textBounds.width - RAYGUI_LINE_MARGIN_TEXT - RAYGUI_LINE_TEXT_PADDING, 1 }, 0, BLANK, color); + } + //-------------------------------------------------------------------- +} + +// Panel control +void GuiPanel(Rectangle bounds, const char *text) +{ + #if !defined(RAYGUI_PANEL_BORDER_WIDTH) + #define RAYGUI_PANEL_BORDER_WIDTH 1 + #endif + + GuiState state = guiState; + + // Text will be drawn as a header bar (if provided) + Rectangle statusBar = { bounds.x, bounds.y, bounds.width, (float)RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT }; + if ((text != NULL) && (bounds.height < RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT*2.0f)) bounds.height = RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT*2.0f; + + if (text != NULL) + { + // Move panel bounds after the header bar + bounds.y += (float)RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT - 1; + bounds.height -= (float)RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT + 1; + } + + // Draw control + //-------------------------------------------------------------------- + if (text != NULL) GuiStatusBar(statusBar, text); // Draw panel header as status bar + + GuiDrawRectangle(bounds, RAYGUI_PANEL_BORDER_WIDTH, Fade(GetColor(GuiGetStyle(DEFAULT, (state == STATE_DISABLED)? BORDER_COLOR_DISABLED: LINE_COLOR)), guiAlpha), + Fade(GetColor(GuiGetStyle(DEFAULT, (state == STATE_DISABLED)? BASE_COLOR_DISABLED : BACKGROUND_COLOR)), guiAlpha)); + //-------------------------------------------------------------------- +} + +// Scroll Panel control +Rectangle GuiScrollPanel(Rectangle bounds, const char *text, Rectangle content, Vector2 *scroll) +{ + GuiState state = guiState; + + Vector2 scrollPos = { 0.0f, 0.0f }; + if (scroll != NULL) scrollPos = *scroll; + + // Text will be drawn as a header bar (if provided) + Rectangle statusBar = { bounds.x, bounds.y, bounds.width, (float)RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT }; + if (bounds.height < RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT*2.0f) bounds.height = RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT*2.0f; + + if (text != NULL) + { + // Move panel bounds after the header bar + bounds.y += (float)RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT - 1; + bounds.height -= (float)RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT + 1; + } + + bool hasHorizontalScrollBar = (content.width > bounds.width - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH))? true : false; + bool hasVerticalScrollBar = (content.height > bounds.height - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH))? true : false; + + // Recheck to account for the other scrollbar being visible + if (!hasHorizontalScrollBar) hasHorizontalScrollBar = (hasVerticalScrollBar && (content.width > (bounds.width - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH) - GuiGetStyle(LISTVIEW, SCROLLBAR_WIDTH))))? true : false; + if (!hasVerticalScrollBar) hasVerticalScrollBar = (hasHorizontalScrollBar && (content.height > (bounds.height - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH) - GuiGetStyle(LISTVIEW, SCROLLBAR_WIDTH))))? true : false; + + int horizontalScrollBarWidth = hasHorizontalScrollBar? GuiGetStyle(LISTVIEW, SCROLLBAR_WIDTH) : 0; + int verticalScrollBarWidth = hasVerticalScrollBar? GuiGetStyle(LISTVIEW, SCROLLBAR_WIDTH) : 0; + Rectangle horizontalScrollBar = { (float)((GuiGetStyle(LISTVIEW, SCROLLBAR_SIDE) == SCROLLBAR_LEFT_SIDE)? (float)bounds.x + verticalScrollBarWidth : (float)bounds.x) + GuiGetStyle(DEFAULT, BORDER_WIDTH), (float)bounds.y + bounds.height - horizontalScrollBarWidth - GuiGetStyle(DEFAULT, BORDER_WIDTH), (float)bounds.width - verticalScrollBarWidth - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH), (float)horizontalScrollBarWidth }; + Rectangle verticalScrollBar = { (float)((GuiGetStyle(LISTVIEW, SCROLLBAR_SIDE) == SCROLLBAR_LEFT_SIDE)? (float)bounds.x + GuiGetStyle(DEFAULT, BORDER_WIDTH) : (float)bounds.x + bounds.width - verticalScrollBarWidth - GuiGetStyle(DEFAULT, BORDER_WIDTH)), (float)bounds.y + GuiGetStyle(DEFAULT, BORDER_WIDTH), (float)verticalScrollBarWidth, (float)bounds.height - horizontalScrollBarWidth - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH) }; + + // Calculate view area (area without the scrollbars) + Rectangle view = (GuiGetStyle(LISTVIEW, SCROLLBAR_SIDE) == SCROLLBAR_LEFT_SIDE)? + RAYGUI_CLITERAL(Rectangle){ bounds.x + verticalScrollBarWidth + GuiGetStyle(DEFAULT, BORDER_WIDTH), bounds.y + GuiGetStyle(DEFAULT, BORDER_WIDTH), bounds.width - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH) - verticalScrollBarWidth, bounds.height - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH) - horizontalScrollBarWidth } : + RAYGUI_CLITERAL(Rectangle){ bounds.x + GuiGetStyle(DEFAULT, BORDER_WIDTH), bounds.y + GuiGetStyle(DEFAULT, BORDER_WIDTH), bounds.width - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH) - verticalScrollBarWidth, bounds.height - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH) - horizontalScrollBarWidth }; + + // Clip view area to the actual content size + if (view.width > content.width) view.width = content.width; + if (view.height > content.height) view.height = content.height; + + float horizontalMin = hasHorizontalScrollBar? ((GuiGetStyle(LISTVIEW, SCROLLBAR_SIDE) == SCROLLBAR_LEFT_SIDE)? (float)-verticalScrollBarWidth : 0) - (float)GuiGetStyle(DEFAULT, BORDER_WIDTH) : (((float)GuiGetStyle(LISTVIEW, SCROLLBAR_SIDE) == SCROLLBAR_LEFT_SIDE)? (float)-verticalScrollBarWidth : 0) - (float)GuiGetStyle(DEFAULT, BORDER_WIDTH); + float horizontalMax = hasHorizontalScrollBar? content.width - bounds.width + (float)verticalScrollBarWidth + GuiGetStyle(DEFAULT, BORDER_WIDTH) - (((float)GuiGetStyle(LISTVIEW, SCROLLBAR_SIDE) == SCROLLBAR_LEFT_SIDE)? (float)verticalScrollBarWidth : 0) : (float)-GuiGetStyle(DEFAULT, BORDER_WIDTH); + float verticalMin = hasVerticalScrollBar? 0 : -1.0f; + float verticalMax = hasVerticalScrollBar? content.height - bounds.height + (float)horizontalScrollBarWidth + (float)GuiGetStyle(DEFAULT, BORDER_WIDTH) : (float)-GuiGetStyle(DEFAULT, BORDER_WIDTH); + + // Update control + //-------------------------------------------------------------------- + if ((state != STATE_DISABLED) && !guiLocked) + { + Vector2 mousePoint = GetMousePosition(); + + // Check button state + if (CheckCollisionPointRec(mousePoint, bounds)) + { + if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED; + else state = STATE_FOCUSED; + +#if defined(SUPPORT_SCROLLBAR_KEY_INPUT) + if (hasHorizontalScrollBar) + { + if (IsKeyDown(KEY_RIGHT)) scrollPos.x -= GuiGetStyle(SCROLLBAR, SCROLL_SPEED); + if (IsKeyDown(KEY_LEFT)) scrollPos.x += GuiGetStyle(SCROLLBAR, SCROLL_SPEED); + } + + if (hasVerticalScrollBar) + { + if (IsKeyDown(KEY_DOWN)) scrollPos.y -= GuiGetStyle(SCROLLBAR, SCROLL_SPEED); + if (IsKeyDown(KEY_UP)) scrollPos.y += GuiGetStyle(SCROLLBAR, SCROLL_SPEED); + } +#endif + float wheelMove = GetMouseWheelMove(); + + // Horizontal scroll (Shift + Mouse wheel) + if (hasHorizontalScrollBar && (IsKeyDown(KEY_LEFT_CONTROL) || IsKeyDown(KEY_RIGHT_SHIFT))) scrollPos.x += wheelMove*20; + else scrollPos.y += wheelMove*20; // Vertical scroll + } + } + + // Normalize scroll values + if (scrollPos.x > -horizontalMin) scrollPos.x = -horizontalMin; + if (scrollPos.x < -horizontalMax) scrollPos.x = -horizontalMax; + if (scrollPos.y > -verticalMin) scrollPos.y = -verticalMin; + if (scrollPos.y < -verticalMax) scrollPos.y = -verticalMax; + //-------------------------------------------------------------------- + + // Draw control + //-------------------------------------------------------------------- + if (text != NULL) GuiStatusBar(statusBar, text); // Draw panel header as status bar + + GuiDrawRectangle(bounds, 0, BLANK, GetColor(GuiGetStyle(DEFAULT, BACKGROUND_COLOR))); // Draw background + + // Save size of the scrollbar slider + const int slider = GuiGetStyle(SCROLLBAR, SCROLL_SLIDER_SIZE); + + // Draw horizontal scrollbar if visible + if (hasHorizontalScrollBar) + { + // Change scrollbar slider size to show the diff in size between the content width and the widget width + GuiSetStyle(SCROLLBAR, SCROLL_SLIDER_SIZE, (int)(((bounds.width - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH) - verticalScrollBarWidth)/(int)content.width)*((int)bounds.width - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH) - verticalScrollBarWidth))); + scrollPos.x = (float)-GuiScrollBar(horizontalScrollBar, (int)-scrollPos.x, (int)horizontalMin, (int)horizontalMax); + } + else scrollPos.x = 0.0f; + + // Draw vertical scrollbar if visible + if (hasVerticalScrollBar) + { + // Change scrollbar slider size to show the diff in size between the content height and the widget height + GuiSetStyle(SCROLLBAR, SCROLL_SLIDER_SIZE, (int)(((bounds.height - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH) - horizontalScrollBarWidth)/(int)content.height)*((int)bounds.height - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH) - horizontalScrollBarWidth))); + scrollPos.y = (float)-GuiScrollBar(verticalScrollBar, (int)-scrollPos.y, (int)verticalMin, (int)verticalMax); + } + else scrollPos.y = 0.0f; + + // Draw detail corner rectangle if both scroll bars are visible + if (hasHorizontalScrollBar && hasVerticalScrollBar) + { + Rectangle corner = { (GuiGetStyle(LISTVIEW, SCROLLBAR_SIDE) == SCROLLBAR_LEFT_SIDE)? (bounds.x + GuiGetStyle(DEFAULT, BORDER_WIDTH) + 2) : (horizontalScrollBar.x + horizontalScrollBar.width + 2), verticalScrollBar.y + verticalScrollBar.height + 2, (float)horizontalScrollBarWidth - 4, (float)verticalScrollBarWidth - 4 }; + GuiDrawRectangle(corner, 0, BLANK, Fade(GetColor(GuiGetStyle(LISTVIEW, TEXT + (state*3))), guiAlpha)); + } + + // Draw scrollbar lines depending on current state + GuiDrawRectangle(bounds, GuiGetStyle(DEFAULT, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(LISTVIEW, BORDER + (state*3))), guiAlpha), BLANK); + + // Set scrollbar slider size back to the way it was before + GuiSetStyle(SCROLLBAR, SCROLL_SLIDER_SIZE, slider); + //-------------------------------------------------------------------- + + if (scroll != NULL) *scroll = scrollPos; + + return view; +} + +// Label control +void GuiLabel(Rectangle bounds, const char *text) +{ + GuiState state = guiState; + + // Update control + //-------------------------------------------------------------------- + // ... + //-------------------------------------------------------------------- + + // Draw control + //-------------------------------------------------------------------- + GuiDrawText(text, GetTextBounds(LABEL, bounds), GuiGetStyle(LABEL, TEXT_ALIGNMENT), Fade(GetColor(GuiGetStyle(LABEL, TEXT + (state*3))), guiAlpha)); + //-------------------------------------------------------------------- +} + +// Button control, returns true when clicked +bool GuiButton(Rectangle bounds, const char *text) +{ + GuiState state = guiState; + bool pressed = false; + + // Update control + //-------------------------------------------------------------------- + if ((state != STATE_DISABLED) && !guiLocked) + { + Vector2 mousePoint = GetMousePosition(); + + // Check button state + if (CheckCollisionPointRec(mousePoint, bounds)) + { + if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED; + else state = STATE_FOCUSED; + + if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON)) pressed = true; + } + } + //-------------------------------------------------------------------- + + // Draw control + //-------------------------------------------------------------------- + GuiDrawRectangle(bounds, GuiGetStyle(BUTTON, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(BUTTON, BORDER + (state*3))), guiAlpha), Fade(GetColor(GuiGetStyle(BUTTON, BASE + (state*3))), guiAlpha)); + GuiDrawText(text, GetTextBounds(BUTTON, bounds), GuiGetStyle(BUTTON, TEXT_ALIGNMENT), Fade(GetColor(GuiGetStyle(BUTTON, TEXT + (state*3))), guiAlpha)); + //------------------------------------------------------------------ + + return pressed; +} + +// Label button control +bool GuiLabelButton(Rectangle bounds, const char *text) +{ + GuiState state = guiState; + bool pressed = false; + + // NOTE: We force bounds.width to be all text + float textWidth = MeasureTextEx(guiFont, text, (float)GuiGetStyle(DEFAULT, TEXT_SIZE), (float)GuiGetStyle(DEFAULT, TEXT_SPACING)).x; + if (bounds.width < textWidth) bounds.width = textWidth; + + // Update control + //-------------------------------------------------------------------- + if ((state != STATE_DISABLED) && !guiLocked) + { + Vector2 mousePoint = GetMousePosition(); + + // Check checkbox state + if (CheckCollisionPointRec(mousePoint, bounds)) + { + if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED; + else state = STATE_FOCUSED; + + if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON)) pressed = true; + } + } + //-------------------------------------------------------------------- + + // Draw control + //-------------------------------------------------------------------- + GuiDrawText(text, GetTextBounds(LABEL, bounds), GuiGetStyle(LABEL, TEXT_ALIGNMENT), Fade(GetColor(GuiGetStyle(LABEL, TEXT + (state*3))), guiAlpha)); + //-------------------------------------------------------------------- + + return pressed; +} + +// Toggle Button control, returns true when active +bool GuiToggle(Rectangle bounds, const char *text, bool active) +{ + GuiState state = guiState; + + // Update control + //-------------------------------------------------------------------- + if ((state != STATE_DISABLED) && !guiLocked) + { + Vector2 mousePoint = GetMousePosition(); + + // Check toggle button state + if (CheckCollisionPointRec(mousePoint, bounds)) + { + if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED; + else if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON)) + { + state = STATE_NORMAL; + active = !active; + } + else state = STATE_FOCUSED; + } + } + //-------------------------------------------------------------------- + + // Draw control + //-------------------------------------------------------------------- + if (state == STATE_NORMAL) + { + GuiDrawRectangle(bounds, GuiGetStyle(TOGGLE, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(TOGGLE, (active? BORDER_COLOR_PRESSED : (BORDER + state*3)))), guiAlpha), Fade(GetColor(GuiGetStyle(TOGGLE, (active? BASE_COLOR_PRESSED : (BASE + state*3)))), guiAlpha)); + GuiDrawText(text, GetTextBounds(TOGGLE, bounds), GuiGetStyle(TOGGLE, TEXT_ALIGNMENT), Fade(GetColor(GuiGetStyle(TOGGLE, (active? TEXT_COLOR_PRESSED : (TEXT + state*3)))), guiAlpha)); + } + else + { + GuiDrawRectangle(bounds, GuiGetStyle(TOGGLE, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(TOGGLE, BORDER + state*3)), guiAlpha), Fade(GetColor(GuiGetStyle(TOGGLE, BASE + state*3)), guiAlpha)); + GuiDrawText(text, GetTextBounds(TOGGLE, bounds), GuiGetStyle(TOGGLE, TEXT_ALIGNMENT), Fade(GetColor(GuiGetStyle(TOGGLE, TEXT + state*3)), guiAlpha)); + } + //-------------------------------------------------------------------- + + return active; +} + +// Toggle Group control, returns toggled button index +int GuiToggleGroup(Rectangle bounds, const char *text, int active) +{ + #if !defined(RAYGUI_TOGGLEGROUP_MAX_ITEMS) + #define RAYGUI_TOGGLEGROUP_MAX_ITEMS 32 + #endif + + float initBoundsX = bounds.x; + + // Get substrings items from text (items pointers) + int rows[RAYGUI_TOGGLEGROUP_MAX_ITEMS] = { 0 }; + int itemCount = 0; + const char **items = GuiTextSplit(text, &itemCount, rows); + + int prevRow = rows[0]; + + for (int i = 0; i < itemCount; i++) + { + if (prevRow != rows[i]) + { + bounds.x = initBoundsX; + bounds.y += (bounds.height + GuiGetStyle(TOGGLE, GROUP_PADDING)); + prevRow = rows[i]; + } + + if (i == active) GuiToggle(bounds, items[i], true); + else if (GuiToggle(bounds, items[i], false) == true) active = i; + + bounds.x += (bounds.width + GuiGetStyle(TOGGLE, GROUP_PADDING)); + } + + return active; +} + +// Check Box control, returns true when active +bool GuiCheckBox(Rectangle bounds, const char *text, bool checked) +{ + GuiState state = guiState; + + Rectangle textBounds = { 0 }; + + if (text != NULL) + { + textBounds.width = (float)GetTextWidth(text); + textBounds.height = (float)GuiGetStyle(DEFAULT, TEXT_SIZE); + textBounds.x = bounds.x + bounds.width + GuiGetStyle(CHECKBOX, TEXT_PADDING); + textBounds.y = bounds.y + bounds.height/2 - GuiGetStyle(DEFAULT, TEXT_SIZE)/2; + if (GuiGetStyle(CHECKBOX, TEXT_ALIGNMENT) == TEXT_ALIGN_LEFT) textBounds.x = bounds.x - textBounds.width - GuiGetStyle(CHECKBOX, TEXT_PADDING); + } + + // Update control + //-------------------------------------------------------------------- + if ((state != STATE_DISABLED) && !guiLocked) + { + Vector2 mousePoint = GetMousePosition(); + + Rectangle totalBounds = { + (GuiGetStyle(CHECKBOX, TEXT_ALIGNMENT) == TEXT_ALIGN_LEFT)? textBounds.x : bounds.x, + bounds.y, + bounds.width + textBounds.width + GuiGetStyle(CHECKBOX, TEXT_PADDING), + bounds.height, + }; + + // Check checkbox state + if (CheckCollisionPointRec(mousePoint, totalBounds)) + { + if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED; + else state = STATE_FOCUSED; + + if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON)) checked = !checked; + } + } + //-------------------------------------------------------------------- + + // Draw control + //-------------------------------------------------------------------- + GuiDrawRectangle(bounds, GuiGetStyle(CHECKBOX, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(CHECKBOX, BORDER + (state*3))), guiAlpha), BLANK); + + if (checked) + { + Rectangle check = { bounds.x + GuiGetStyle(CHECKBOX, BORDER_WIDTH) + GuiGetStyle(CHECKBOX, CHECK_PADDING), + bounds.y + GuiGetStyle(CHECKBOX, BORDER_WIDTH) + GuiGetStyle(CHECKBOX, CHECK_PADDING), + bounds.width - 2*(GuiGetStyle(CHECKBOX, BORDER_WIDTH) + GuiGetStyle(CHECKBOX, CHECK_PADDING)), + bounds.height - 2*(GuiGetStyle(CHECKBOX, BORDER_WIDTH) + GuiGetStyle(CHECKBOX, CHECK_PADDING)) }; + GuiDrawRectangle(check, 0, BLANK, Fade(GetColor(GuiGetStyle(CHECKBOX, TEXT + state*3)), guiAlpha)); + } + + GuiDrawText(text, textBounds, (GuiGetStyle(CHECKBOX, TEXT_ALIGNMENT) == TEXT_ALIGN_RIGHT)? TEXT_ALIGN_LEFT : TEXT_ALIGN_RIGHT, Fade(GetColor(GuiGetStyle(LABEL, TEXT + (state*3))), guiAlpha)); + //-------------------------------------------------------------------- + + return checked; +} + +// Combo Box control, returns selected item index +int GuiComboBox(Rectangle bounds, const char *text, int active) +{ + GuiState state = guiState; + + bounds.width -= (GuiGetStyle(COMBOBOX, COMBO_BUTTON_WIDTH) + GuiGetStyle(COMBOBOX, COMBO_BUTTON_SPACING)); + + Rectangle selector = { (float)bounds.x + bounds.width + GuiGetStyle(COMBOBOX, COMBO_BUTTON_SPACING), + (float)bounds.y, (float)GuiGetStyle(COMBOBOX, COMBO_BUTTON_WIDTH), (float)bounds.height }; + + // Get substrings items from text (items pointers, lengths and count) + int itemCount = 0; + const char **items = GuiTextSplit(text, &itemCount, NULL); + + if (active < 0) active = 0; + else if (active > itemCount - 1) active = itemCount - 1; + + // Update control + //-------------------------------------------------------------------- + if ((state != STATE_DISABLED) && !guiLocked && (itemCount > 1)) + { + Vector2 mousePoint = GetMousePosition(); + + if (CheckCollisionPointRec(mousePoint, bounds) || + CheckCollisionPointRec(mousePoint, selector)) + { + if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON)) + { + active += 1; + if (active >= itemCount) active = 0; + } + + if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED; + else state = STATE_FOCUSED; + } + } + //-------------------------------------------------------------------- + + // Draw control + //-------------------------------------------------------------------- + // Draw combo box main + GuiDrawRectangle(bounds, GuiGetStyle(COMBOBOX, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(COMBOBOX, BORDER + (state*3))), guiAlpha), Fade(GetColor(GuiGetStyle(COMBOBOX, BASE + (state*3))), guiAlpha)); + GuiDrawText(items[active], GetTextBounds(COMBOBOX, bounds), GuiGetStyle(COMBOBOX, TEXT_ALIGNMENT), Fade(GetColor(GuiGetStyle(COMBOBOX, TEXT + (state*3))), guiAlpha)); + + // Draw selector using a custom button + // NOTE: BORDER_WIDTH and TEXT_ALIGNMENT forced values + int tempBorderWidth = GuiGetStyle(BUTTON, BORDER_WIDTH); + int tempTextAlign = GuiGetStyle(BUTTON, TEXT_ALIGNMENT); + GuiSetStyle(BUTTON, BORDER_WIDTH, 1); + GuiSetStyle(BUTTON, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER); + + GuiButton(selector, TextFormat("%i/%i", active + 1, itemCount)); + + GuiSetStyle(BUTTON, TEXT_ALIGNMENT, tempTextAlign); + GuiSetStyle(BUTTON, BORDER_WIDTH, tempBorderWidth); + //-------------------------------------------------------------------- + + return active; +} + +// Dropdown Box control +// NOTE: Returns mouse click +bool GuiDropdownBox(Rectangle bounds, const char *text, int *active, bool editMode) +{ + GuiState state = guiState; + int itemSelected = *active; + int itemFocused = -1; + + // Get substrings items from text (items pointers, lengths and count) + int itemCount = 0; + const char **items = GuiTextSplit(text, &itemCount, NULL); + + Rectangle boundsOpen = bounds; + boundsOpen.height = (itemCount + 1)*(bounds.height + GuiGetStyle(DROPDOWNBOX, DROPDOWN_ITEMS_SPACING)); + + Rectangle itemBounds = bounds; + + bool pressed = false; // Check mouse button pressed + + // Update control + //-------------------------------------------------------------------- + if ((state != STATE_DISABLED) && (editMode || !guiLocked) && (itemCount > 1)) + { + Vector2 mousePoint = GetMousePosition(); + + if (editMode) + { + state = STATE_PRESSED; + + // Check if mouse has been pressed or released outside limits + if (!CheckCollisionPointRec(mousePoint, boundsOpen)) + { + if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON) || IsMouseButtonReleased(MOUSE_LEFT_BUTTON)) pressed = true; + } + + // Check if already selected item has been pressed again + if (CheckCollisionPointRec(mousePoint, bounds) && IsMouseButtonPressed(MOUSE_LEFT_BUTTON)) pressed = true; + + // Check focused and selected item + for (int i = 0; i < itemCount; i++) + { + // Update item rectangle y position for next item + itemBounds.y += (bounds.height + GuiGetStyle(DROPDOWNBOX, DROPDOWN_ITEMS_SPACING)); + + if (CheckCollisionPointRec(mousePoint, itemBounds)) + { + itemFocused = i; + if (IsMouseButtonReleased(MOUSE_LEFT_BUTTON)) + { + itemSelected = i; + pressed = true; // Item selected, change to editMode = false + } + break; + } + } + + itemBounds = bounds; + } + else + { + if (CheckCollisionPointRec(mousePoint, bounds)) + { + if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON)) + { + pressed = true; + state = STATE_PRESSED; + } + else state = STATE_FOCUSED; + } + } + } + //-------------------------------------------------------------------- + + // Draw control + //-------------------------------------------------------------------- + if (editMode) GuiPanel(boundsOpen, NULL); + + GuiDrawRectangle(bounds, GuiGetStyle(DROPDOWNBOX, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(DROPDOWNBOX, BORDER + state*3)), guiAlpha), Fade(GetColor(GuiGetStyle(DROPDOWNBOX, BASE + state*3)), guiAlpha)); + GuiDrawText(items[itemSelected], GetTextBounds(DEFAULT, bounds), GuiGetStyle(DROPDOWNBOX, TEXT_ALIGNMENT), Fade(GetColor(GuiGetStyle(DROPDOWNBOX, TEXT + state*3)), guiAlpha)); + + if (editMode) + { + // Draw visible items + for (int i = 0; i < itemCount; i++) + { + // Update item rectangle y position for next item + itemBounds.y += (bounds.height + GuiGetStyle(DROPDOWNBOX, DROPDOWN_ITEMS_SPACING)); + + if (i == itemSelected) + { + GuiDrawRectangle(itemBounds, GuiGetStyle(DROPDOWNBOX, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(DROPDOWNBOX, BORDER_COLOR_PRESSED)), guiAlpha), Fade(GetColor(GuiGetStyle(DROPDOWNBOX, BASE_COLOR_PRESSED)), guiAlpha)); + GuiDrawText(items[i], GetTextBounds(DEFAULT, itemBounds), GuiGetStyle(DROPDOWNBOX, TEXT_ALIGNMENT), Fade(GetColor(GuiGetStyle(DROPDOWNBOX, TEXT_COLOR_PRESSED)), guiAlpha)); + } + else if (i == itemFocused) + { + GuiDrawRectangle(itemBounds, GuiGetStyle(DROPDOWNBOX, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(DROPDOWNBOX, BORDER_COLOR_FOCUSED)), guiAlpha), Fade(GetColor(GuiGetStyle(DROPDOWNBOX, BASE_COLOR_FOCUSED)), guiAlpha)); + GuiDrawText(items[i], GetTextBounds(DEFAULT, itemBounds), GuiGetStyle(DROPDOWNBOX, TEXT_ALIGNMENT), Fade(GetColor(GuiGetStyle(DROPDOWNBOX, TEXT_COLOR_FOCUSED)), guiAlpha)); + } + else GuiDrawText(items[i], GetTextBounds(DEFAULT, itemBounds), GuiGetStyle(DROPDOWNBOX, TEXT_ALIGNMENT), Fade(GetColor(GuiGetStyle(DROPDOWNBOX, TEXT_COLOR_NORMAL)), guiAlpha)); + } + } + + // Draw arrows (using icon if available) +#if defined(RAYGUI_NO_ICONS) + GuiDrawText("v", RAYGUI_CLITERAL(Rectangle){ bounds.x + bounds.width - GuiGetStyle(DROPDOWNBOX, ARROW_PADDING), bounds.y + bounds.height/2 - 2, 10, 10 }, + TEXT_ALIGN_CENTER, Fade(GetColor(GuiGetStyle(DROPDOWNBOX, TEXT + (state*3))), guiAlpha)); +#else + GuiDrawText("#120#", RAYGUI_CLITERAL(Rectangle){ bounds.x + bounds.width - GuiGetStyle(DROPDOWNBOX, ARROW_PADDING), bounds.y + bounds.height/2 - 6, 10, 10 }, + TEXT_ALIGN_CENTER, Fade(GetColor(GuiGetStyle(DROPDOWNBOX, TEXT + (state*3))), guiAlpha)); // ICON_ARROW_DOWN_FILL +#endif + //-------------------------------------------------------------------- + + *active = itemSelected; + return pressed; +} + +// Text Box control, updates input text +// NOTE 2: Returns if KEY_ENTER pressed (useful for data validation) +bool GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode) +{ + GuiState state = guiState; + bool pressed = false; + + Rectangle cursor = { + bounds.x + GuiGetStyle(TEXTBOX, TEXT_PADDING) + GetTextWidth(text) + 2, + bounds.y + bounds.height/2 - GuiGetStyle(DEFAULT, TEXT_SIZE), + 4, + (float)GuiGetStyle(DEFAULT, TEXT_SIZE)*2 + }; + + if (cursor.height >= bounds.height) cursor.height = bounds.height - GuiGetStyle(TEXTBOX, BORDER_WIDTH)*2; + if (cursor.y < (bounds.y + GuiGetStyle(TEXTBOX, BORDER_WIDTH))) cursor.y = bounds.y + GuiGetStyle(TEXTBOX, BORDER_WIDTH); + + // Update control + //-------------------------------------------------------------------- + if ((state != STATE_DISABLED) && !guiLocked) + { + Vector2 mousePoint = GetMousePosition(); + + if (editMode) + { + state = STATE_PRESSED; + + int key = GetCharPressed(); // Returns codepoint as Unicode + int keyCount = (int)strlen(text); + int byteSize = 0; + const char *textUTF8 = CodepointToUTF8(key, &byteSize); + + // Only allow keys in range [32..125] + if ((keyCount + byteSize) < textSize) + { + float maxWidth = (bounds.width - (GuiGetStyle(TEXTBOX, TEXT_INNER_PADDING)*2)); + + if ((GetTextWidth(text) < (maxWidth - GuiGetStyle(DEFAULT, TEXT_SIZE))) && (key >= 32)) + { + for (int i = 0; i < byteSize; i++) + { + text[keyCount] = textUTF8[i]; + keyCount++; + } + + text[keyCount] = '\0'; + } + } + + // Delete text + if (keyCount > 0) + { + if (IsKeyPressed(KEY_BACKSPACE)) + { + while ((keyCount > 0) && ((text[--keyCount] & 0xc0) == 0x80)); + text[keyCount] = '\0'; + } + } + + if (IsKeyPressed(KEY_ENTER) || (!CheckCollisionPointRec(mousePoint, bounds) && IsMouseButtonPressed(MOUSE_LEFT_BUTTON))) pressed = true; + + // Check text alignment to position cursor properly + int textAlignment = GuiGetStyle(TEXTBOX, TEXT_ALIGNMENT); + if (textAlignment == TEXT_ALIGN_CENTER) cursor.x = bounds.x + GetTextWidth(text)/2 + bounds.width/2 + 1; + else if (textAlignment == TEXT_ALIGN_RIGHT) cursor.x = bounds.x + bounds.width - GuiGetStyle(TEXTBOX, TEXT_INNER_PADDING); + } + else + { + if (CheckCollisionPointRec(mousePoint, bounds)) + { + state = STATE_FOCUSED; + if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON)) pressed = true; + } + } + } + //-------------------------------------------------------------------- + + // Draw control + //-------------------------------------------------------------------- + if (state == STATE_PRESSED) + { + GuiDrawRectangle(bounds, GuiGetStyle(TEXTBOX, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(TEXTBOX, BORDER + (state*3))), guiAlpha), Fade(GetColor(GuiGetStyle(TEXTBOX, BASE_COLOR_PRESSED)), guiAlpha)); + } + else if (state == STATE_DISABLED) + { + GuiDrawRectangle(bounds, GuiGetStyle(TEXTBOX, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(TEXTBOX, BORDER + (state*3))), guiAlpha), Fade(GetColor(GuiGetStyle(TEXTBOX, BASE_COLOR_DISABLED)), guiAlpha)); + } + else GuiDrawRectangle(bounds, 1, Fade(GetColor(GuiGetStyle(TEXTBOX, BORDER + (state*3))), guiAlpha), BLANK); + + GuiDrawText(text, GetTextBounds(TEXTBOX, bounds), GuiGetStyle(TEXTBOX, TEXT_ALIGNMENT), Fade(GetColor(GuiGetStyle(TEXTBOX, TEXT + (state*3))), guiAlpha)); + + // Draw cursor + if (editMode) GuiDrawRectangle(cursor, 0, BLANK, Fade(GetColor(GuiGetStyle(TEXTBOX, BORDER_COLOR_PRESSED)), guiAlpha)); + //-------------------------------------------------------------------- + + return pressed; +} + +// Spinner control, returns selected value +bool GuiSpinner(Rectangle bounds, const char *text, int *value, int minValue, int maxValue, bool editMode) +{ + GuiState state = guiState; + + bool pressed = false; + int tempValue = *value; + + Rectangle spinner = { bounds.x + GuiGetStyle(SPINNER, SPIN_BUTTON_WIDTH) + GuiGetStyle(SPINNER, SPIN_BUTTON_SPACING), bounds.y, + bounds.width - 2*(GuiGetStyle(SPINNER, SPIN_BUTTON_WIDTH) + GuiGetStyle(SPINNER, SPIN_BUTTON_SPACING)), bounds.height }; + Rectangle leftButtonBound = { (float)bounds.x, (float)bounds.y, (float)GuiGetStyle(SPINNER, SPIN_BUTTON_WIDTH), (float)bounds.height }; + Rectangle rightButtonBound = { (float)bounds.x + bounds.width - GuiGetStyle(SPINNER, SPIN_BUTTON_WIDTH), (float)bounds.y, (float)GuiGetStyle(SPINNER, SPIN_BUTTON_WIDTH), (float)bounds.height }; + + Rectangle textBounds = { 0 }; + if (text != NULL) + { + textBounds.width = (float)GetTextWidth(text); + textBounds.height = (float)GuiGetStyle(DEFAULT, TEXT_SIZE); + textBounds.x = bounds.x + bounds.width + GuiGetStyle(SPINNER, TEXT_PADDING); + textBounds.y = bounds.y + bounds.height/2 - GuiGetStyle(DEFAULT, TEXT_SIZE)/2; + if (GuiGetStyle(SPINNER, TEXT_ALIGNMENT) == TEXT_ALIGN_LEFT) textBounds.x = bounds.x - textBounds.width - GuiGetStyle(SPINNER, TEXT_PADDING); + } + + // Update control + //-------------------------------------------------------------------- + if ((state != STATE_DISABLED) && !guiLocked) + { + Vector2 mousePoint = GetMousePosition(); + + // Check spinner state + if (CheckCollisionPointRec(mousePoint, bounds)) + { + if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED; + else state = STATE_FOCUSED; + } + } + +#if defined(RAYGUI_NO_ICONS) + if (GuiButton(leftButtonBound, "<")) tempValue--; + if (GuiButton(rightButtonBound, ">")) tempValue++; +#else + if (GuiButton(leftButtonBound, GuiIconText(ICON_ARROW_LEFT_FILL, NULL))) tempValue--; + if (GuiButton(rightButtonBound, GuiIconText(ICON_ARROW_RIGHT_FILL, NULL))) tempValue++; +#endif + + if (!editMode) + { + if (tempValue < minValue) tempValue = minValue; + if (tempValue > maxValue) tempValue = maxValue; + } + //-------------------------------------------------------------------- + + // Draw control + //-------------------------------------------------------------------- + // TODO: Set Spinner properties for ValueBox + pressed = GuiValueBox(spinner, NULL, &tempValue, minValue, maxValue, editMode); + + // Draw value selector custom buttons + // NOTE: BORDER_WIDTH and TEXT_ALIGNMENT forced values + int tempBorderWidth = GuiGetStyle(BUTTON, BORDER_WIDTH); + int tempTextAlign = GuiGetStyle(BUTTON, TEXT_ALIGNMENT); + GuiSetStyle(BUTTON, BORDER_WIDTH, GuiGetStyle(SPINNER, BORDER_WIDTH)); + GuiSetStyle(BUTTON, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER); + + GuiSetStyle(BUTTON, TEXT_ALIGNMENT, tempTextAlign); + GuiSetStyle(BUTTON, BORDER_WIDTH, tempBorderWidth); + + // Draw text label if provided + GuiDrawText(text, textBounds, (GuiGetStyle(SPINNER, TEXT_ALIGNMENT) == TEXT_ALIGN_RIGHT)? TEXT_ALIGN_LEFT : TEXT_ALIGN_RIGHT, Fade(GetColor(GuiGetStyle(LABEL, TEXT + (state*3))), guiAlpha)); + //-------------------------------------------------------------------- + + *value = tempValue; + return pressed; +} + +// Value Box control, updates input text with numbers +// NOTE: Requires static variables: frameCounter +bool GuiValueBox(Rectangle bounds, const char *text, int *value, int minValue, int maxValue, bool editMode) +{ + #if !defined(RAYGUI_VALUEBOX_MAX_CHARS) + #define RAYGUI_VALUEBOX_MAX_CHARS 32 + #endif + + GuiState state = guiState; + bool pressed = false; + + char textValue[RAYGUI_VALUEBOX_MAX_CHARS + 1] = "\0"; + sprintf(textValue, "%i", *value); + + Rectangle textBounds = { 0 }; + if (text != NULL) + { + textBounds.width = (float)GetTextWidth(text); + textBounds.height = (float)GuiGetStyle(DEFAULT, TEXT_SIZE); + textBounds.x = bounds.x + bounds.width + GuiGetStyle(VALUEBOX, TEXT_PADDING); + textBounds.y = bounds.y + bounds.height/2 - GuiGetStyle(DEFAULT, TEXT_SIZE)/2; + if (GuiGetStyle(VALUEBOX, TEXT_ALIGNMENT) == TEXT_ALIGN_LEFT) textBounds.x = bounds.x - textBounds.width - GuiGetStyle(VALUEBOX, TEXT_PADDING); + } + + // Update control + //-------------------------------------------------------------------- + if ((state != STATE_DISABLED) && !guiLocked) + { + Vector2 mousePoint = GetMousePosition(); + + bool valueHasChanged = false; + + if (editMode) + { + state = STATE_PRESSED; + + int keyCount = (int)strlen(textValue); + + // Only allow keys in range [48..57] + if (keyCount < RAYGUI_VALUEBOX_MAX_CHARS) + { + if (GetTextWidth(textValue) < bounds.width) + { + int key = GetCharPressed(); + if ((key >= 48) && (key <= 57)) + { + textValue[keyCount] = (char)key; + keyCount++; + valueHasChanged = true; + } + } + } + + // Delete text + if (keyCount > 0) + { + if (IsKeyPressed(KEY_BACKSPACE)) + { + keyCount--; + textValue[keyCount] = '\0'; + valueHasChanged = true; + } + } + + if (valueHasChanged) *value = TextToInteger(textValue); + + // NOTE: We are not clamp values until user input finishes + //if (*value > maxValue) *value = maxValue; + //else if (*value < minValue) *value = minValue; + + if (IsKeyPressed(KEY_ENTER) || (!CheckCollisionPointRec(mousePoint, bounds) && IsMouseButtonPressed(MOUSE_LEFT_BUTTON))) pressed = true; + } + else + { + if (*value > maxValue) *value = maxValue; + else if (*value < minValue) *value = minValue; + + if (CheckCollisionPointRec(mousePoint, bounds)) + { + state = STATE_FOCUSED; + if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON)) pressed = true; + } + } + } + //-------------------------------------------------------------------- + + // Draw control + //-------------------------------------------------------------------- + Color baseColor = BLANK; + if (state == STATE_PRESSED) baseColor = GetColor(GuiGetStyle(VALUEBOX, BASE_COLOR_PRESSED)); + else if (state == STATE_DISABLED) baseColor = GetColor(GuiGetStyle(VALUEBOX, BASE_COLOR_DISABLED)); + + // WARNING: BLANK color does not work properly with Fade() + GuiDrawRectangle(bounds, GuiGetStyle(VALUEBOX, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(VALUEBOX, BORDER + (state*3))), guiAlpha), baseColor); + GuiDrawText(textValue, GetTextBounds(VALUEBOX, bounds), TEXT_ALIGN_CENTER, Fade(GetColor(GuiGetStyle(VALUEBOX, TEXT + (state*3))), guiAlpha)); + + // Draw cursor + if (editMode) + { + // NOTE: ValueBox internal text is always centered + Rectangle cursor = { bounds.x + GetTextWidth(textValue)/2 + bounds.width/2 + 2, bounds.y + 2*GuiGetStyle(VALUEBOX, BORDER_WIDTH), 4, bounds.height - 4*GuiGetStyle(VALUEBOX, BORDER_WIDTH) }; + GuiDrawRectangle(cursor, 0, BLANK, Fade(GetColor(GuiGetStyle(VALUEBOX, BORDER_COLOR_PRESSED)), guiAlpha)); + } + + // Draw text label if provided + GuiDrawText(text, textBounds, (GuiGetStyle(VALUEBOX, TEXT_ALIGNMENT) == TEXT_ALIGN_RIGHT)? TEXT_ALIGN_LEFT : TEXT_ALIGN_RIGHT, Fade(GetColor(GuiGetStyle(LABEL, TEXT + (state*3))), guiAlpha)); + //-------------------------------------------------------------------- + + return pressed; +} + +// Text Box control with multiple lines +bool GuiTextBoxMulti(Rectangle bounds, char *text, int textSize, bool editMode) +{ + GuiState state = guiState; + bool pressed = false; + + Rectangle textAreaBounds = { + bounds.x + GuiGetStyle(TEXTBOX, BORDER_WIDTH) + GuiGetStyle(TEXTBOX, TEXT_INNER_PADDING), + bounds.y + GuiGetStyle(TEXTBOX, BORDER_WIDTH) + GuiGetStyle(TEXTBOX, TEXT_INNER_PADDING), + bounds.width - 2*(GuiGetStyle(TEXTBOX, BORDER_WIDTH) + GuiGetStyle(TEXTBOX, TEXT_INNER_PADDING)), + bounds.height - 2*(GuiGetStyle(TEXTBOX, BORDER_WIDTH) + GuiGetStyle(TEXTBOX, TEXT_INNER_PADDING)) + }; + + // Cursor position, [x, y] values should be updated + Rectangle cursor = { 0, -1, 4, (float)GuiGetStyle(DEFAULT, TEXT_SIZE) + 2 }; + + float scaleFactor = (float)GuiGetStyle(DEFAULT, TEXT_SIZE)/(float)guiFont.baseSize; // Character rectangle scaling factor + + // Update control + //-------------------------------------------------------------------- + if ((state != STATE_DISABLED) && !guiLocked) + { + Vector2 mousePoint = GetMousePosition(); + + if (editMode) + { + state = STATE_PRESSED; + + // We get an Unicode codepoint + int codepoint = GetCharPressed(); + int textLength = (int)strlen(text); // Length in bytes (UTF-8 string) + + // Introduce characters + if (textLength < (textSize - 1)) + { + if (IsKeyPressed(KEY_ENTER)) + { + text[textLength] = '\n'; + textLength++; + } + else if (codepoint >= 32) + { + // Supports Unicode inputs -> Encoded to UTF-8 + int charUTF8Length = 0; + const char *charEncoded = CodepointToUTF8(codepoint, &charUTF8Length); + memcpy(text + textLength, charEncoded, charUTF8Length); + textLength += charUTF8Length; + } + } + + // Delete characters + if (textLength > 0) + { + if (IsKeyPressed(KEY_BACKSPACE)) + { + if ((unsigned char)text[textLength - 1] < 127) + { + // Remove ASCII equivalent character (1 byte) + textLength--; + text[textLength] = '\0'; + } + else + { + // Remove latest UTF-8 unicode character introduced (n bytes) + int charUTF8Length = 0; + while (((unsigned char)text[textLength - 1 - charUTF8Length] & 0b01000000) == 0) charUTF8Length++; + + textLength -= (charUTF8Length + 1); + text[textLength] = '\0'; + } + } + } + + // Exit edit mode + if (!CheckCollisionPointRec(mousePoint, bounds) && IsMouseButtonPressed(MOUSE_LEFT_BUTTON)) pressed = true; + } + else + { + if (CheckCollisionPointRec(mousePoint, bounds)) + { + state = STATE_FOCUSED; + if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON)) pressed = true; + } + } + } + //-------------------------------------------------------------------- + + // Draw control + //-------------------------------------------------------------------- + if (state == STATE_PRESSED) + { + GuiDrawRectangle(bounds, GuiGetStyle(TEXTBOX, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(TEXTBOX, BORDER + (state*3))), guiAlpha), Fade(GetColor(GuiGetStyle(TEXTBOX, BASE_COLOR_PRESSED)), guiAlpha)); + } + else if (state == STATE_DISABLED) + { + GuiDrawRectangle(bounds, GuiGetStyle(TEXTBOX, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(TEXTBOX, BORDER + (state*3))), guiAlpha), Fade(GetColor(GuiGetStyle(TEXTBOX, BASE_COLOR_DISABLED)), guiAlpha)); + } + else GuiDrawRectangle(bounds, 1, Fade(GetColor(GuiGetStyle(TEXTBOX, BORDER + (state*3))), guiAlpha), BLANK); + + int wrapMode = 1; // 0-No wrap, 1-Char wrap, 2-Word wrap + Vector2 cursorPos = { textAreaBounds.x, textAreaBounds.y }; + + //int lastSpacePos = 0; + //int lastSpaceWidth = 0; + //int lastSpaceCursorPos = 0; + + for (int i = 0, codepointLength = 0; text[i] != '\0'; i += codepointLength) + { + int codepoint = GetCodepoint(text + i, &codepointLength); + int index = GetGlyphIndex(guiFont, codepoint); // If requested codepoint is not found, we get '?' (0x3f) + Rectangle atlasRec = guiFont.recs[index]; + GlyphInfo glyphInfo = guiFont.glyphs[index]; // Glyph measures + + if ((codepointLength == 1) && (codepoint == '\n')) + { + cursorPos.y += (guiFont.baseSize*scaleFactor + GuiGetStyle(TEXTBOX, TEXT_LINES_SPACING)); // Line feed + cursorPos.x = textAreaBounds.x; // Carriage return + } + else + { + if (wrapMode == 1) + { + int glyphWidth = 0; + if (glyphInfo.advanceX != 0) glyphWidth += glyphInfo.advanceX; + else glyphWidth += (int)(atlasRec.width + glyphInfo.offsetX); + + // Jump line if the end of the text box area has been reached + if ((cursorPos.x + (glyphWidth*scaleFactor)) > (textAreaBounds.x + textAreaBounds.width)) + { + cursorPos.y += (guiFont.baseSize*scaleFactor + GuiGetStyle(TEXTBOX, TEXT_LINES_SPACING)); // Line feed + cursorPos.x = textAreaBounds.x; // Carriage return + } + } + else if (wrapMode == 2) + { + /* + if ((codepointLength == 1) && (codepoint == ' ')) + { + lastSpacePos = i; + lastSpaceWidth = 0; + lastSpaceCursorPos = cursorPos.x; + } + + // Jump line if last word reaches end of text box area + if ((lastSpaceCursorPos + lastSpaceWidth) > (textAreaBounds.x + textAreaBounds.width)) + { + cursorPos.y += 12; // Line feed + cursorPos.x = textAreaBounds.x; // Carriage return + } + */ + } + + // Draw current character glyph + DrawTextCodepoint(guiFont, codepoint, cursorPos, (float)GuiGetStyle(DEFAULT, TEXT_SIZE), Fade(GetColor(GuiGetStyle(TEXTBOX, TEXT + (state*3))), guiAlpha)); + + int glyphWidth = 0; + if (glyphInfo.advanceX != 0) glyphWidth += glyphInfo.advanceX; + else glyphWidth += (int)(atlasRec.width + glyphInfo.offsetX); + + cursorPos.x += (glyphWidth*scaleFactor + (float)GuiGetStyle(DEFAULT, TEXT_SPACING)); + //if (i > lastSpacePos) lastSpaceWidth += (atlasRec.width + (float)GuiGetStyle(DEFAULT, TEXT_SPACING)); + } + } + + cursor.x = cursorPos.x; + cursor.y = cursorPos.y; + + // Draw cursor position considering text glyphs + if (editMode) GuiDrawRectangle(cursor, 0, BLANK, Fade(GetColor(GuiGetStyle(TEXTBOX, BORDER_COLOR_PRESSED)), guiAlpha)); + //-------------------------------------------------------------------- + + return pressed; +} + +// Slider control with pro parameters +// NOTE: Other GuiSlider*() controls use this one +float GuiSliderPro(Rectangle bounds, const char *textLeft, const char *textRight, float value, float minValue, float maxValue, int sliderWidth) +{ + GuiState state = guiState; + + int sliderValue = (int)(((value - minValue)/(maxValue - minValue))*(bounds.width - 2*GuiGetStyle(SLIDER, BORDER_WIDTH))); + + Rectangle slider = { bounds.x, bounds.y + GuiGetStyle(SLIDER, BORDER_WIDTH) + GuiGetStyle(SLIDER, SLIDER_PADDING), + 0, bounds.height - 2*GuiGetStyle(SLIDER, BORDER_WIDTH) - 2*GuiGetStyle(SLIDER, SLIDER_PADDING) }; + + if (sliderWidth > 0) // Slider + { + slider.x += (sliderValue - sliderWidth/2); + slider.width = (float)sliderWidth; + } + else if (sliderWidth == 0) // SliderBar + { + slider.x += GuiGetStyle(SLIDER, BORDER_WIDTH); + slider.width = (float)sliderValue; + } + + // Update control + //-------------------------------------------------------------------- + if ((state != STATE_DISABLED) && !guiLocked) + { + Vector2 mousePoint = GetMousePosition(); + + if (CheckCollisionPointRec(mousePoint, bounds)) + { + if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) + { + state = STATE_PRESSED; + + // Get equivalent value and slider position from mousePoint.x + value = ((maxValue - minValue)*(mousePoint.x - (float)(bounds.x + sliderWidth/2)))/(float)(bounds.width - sliderWidth) + minValue; + + if (sliderWidth > 0) slider.x = mousePoint.x - slider.width/2; // Slider + else if (sliderWidth == 0) slider.width = (float)sliderValue; // SliderBar + } + else state = STATE_FOCUSED; + } + + if (value > maxValue) value = maxValue; + else if (value < minValue) value = minValue; + } + + // Bar limits check + if (sliderWidth > 0) // Slider + { + if (slider.x <= (bounds.x + GuiGetStyle(SLIDER, BORDER_WIDTH))) slider.x = bounds.x + GuiGetStyle(SLIDER, BORDER_WIDTH); + else if ((slider.x + slider.width) >= (bounds.x + bounds.width)) slider.x = bounds.x + bounds.width - slider.width - GuiGetStyle(SLIDER, BORDER_WIDTH); + } + else if (sliderWidth == 0) // SliderBar + { + if (slider.width > bounds.width) slider.width = bounds.width - 2*GuiGetStyle(SLIDER, BORDER_WIDTH); + } + //-------------------------------------------------------------------- + + // Draw control + //-------------------------------------------------------------------- + GuiDrawRectangle(bounds, GuiGetStyle(SLIDER, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(SLIDER, BORDER + (state*3))), guiAlpha), Fade(GetColor(GuiGetStyle(SLIDER, (state != STATE_DISABLED)? BASE_COLOR_NORMAL : BASE_COLOR_DISABLED)), guiAlpha)); + + // Draw slider internal bar (depends on state) + if ((state == STATE_NORMAL) || (state == STATE_PRESSED)) GuiDrawRectangle(slider, 0, BLANK, Fade(GetColor(GuiGetStyle(SLIDER, BASE_COLOR_PRESSED)), guiAlpha)); + else if (state == STATE_FOCUSED) GuiDrawRectangle(slider, 0, BLANK, Fade(GetColor(GuiGetStyle(SLIDER, TEXT_COLOR_FOCUSED)), guiAlpha)); + + // Draw left/right text if provided + if (textLeft != NULL) + { + Rectangle textBounds = { 0 }; + textBounds.width = (float)GetTextWidth(textLeft); + textBounds.height = (float)GuiGetStyle(DEFAULT, TEXT_SIZE); + textBounds.x = bounds.x - textBounds.width - GuiGetStyle(SLIDER, TEXT_PADDING); + textBounds.y = bounds.y + bounds.height/2 - GuiGetStyle(DEFAULT, TEXT_SIZE)/2; + + GuiDrawText(textLeft, textBounds, TEXT_ALIGN_RIGHT, Fade(GetColor(GuiGetStyle(SLIDER, TEXT + (state*3))), guiAlpha)); + } + + if (textRight != NULL) + { + Rectangle textBounds = { 0 }; + textBounds.width = (float)GetTextWidth(textRight); + textBounds.height = (float)GuiGetStyle(DEFAULT, TEXT_SIZE); + textBounds.x = bounds.x + bounds.width + GuiGetStyle(SLIDER, TEXT_PADDING); + textBounds.y = bounds.y + bounds.height/2 - GuiGetStyle(DEFAULT, TEXT_SIZE)/2; + + GuiDrawText(textRight, textBounds, TEXT_ALIGN_LEFT, Fade(GetColor(GuiGetStyle(SLIDER, TEXT + (state*3))), guiAlpha)); + } + //-------------------------------------------------------------------- + + return value; +} + +// Slider control extended, returns selected value and has text +float GuiSlider(Rectangle bounds, const char *textLeft, const char *textRight, float value, float minValue, float maxValue) +{ + return GuiSliderPro(bounds, textLeft, textRight, value, minValue, maxValue, GuiGetStyle(SLIDER, SLIDER_WIDTH)); +} + +// Slider Bar control extended, returns selected value +float GuiSliderBar(Rectangle bounds, const char *textLeft, const char *textRight, float value, float minValue, float maxValue) +{ + return GuiSliderPro(bounds, textLeft, textRight, value, minValue, maxValue, 0); +} + +// Progress Bar control extended, shows current progress value +float GuiProgressBar(Rectangle bounds, const char *textLeft, const char *textRight, float value, float minValue, float maxValue) +{ + GuiState state = guiState; + + Rectangle progress = { bounds.x + GuiGetStyle(PROGRESSBAR, BORDER_WIDTH), + bounds.y + GuiGetStyle(PROGRESSBAR, BORDER_WIDTH) + GuiGetStyle(PROGRESSBAR, PROGRESS_PADDING), 0, + bounds.height - 2*GuiGetStyle(PROGRESSBAR, BORDER_WIDTH) - 2*GuiGetStyle(PROGRESSBAR, PROGRESS_PADDING) }; + + // Update control + //-------------------------------------------------------------------- + if (value > maxValue) value = maxValue; + + if (state != STATE_DISABLED) progress.width = ((float)(value/(maxValue - minValue))*(float)(bounds.width - 2*GuiGetStyle(PROGRESSBAR, BORDER_WIDTH))); + //-------------------------------------------------------------------- + + // Draw control + //-------------------------------------------------------------------- + GuiDrawRectangle(bounds, GuiGetStyle(PROGRESSBAR, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(PROGRESSBAR, BORDER + (state*3))), guiAlpha), BLANK); + + // Draw slider internal progress bar (depends on state) + if ((state == STATE_NORMAL) || (state == STATE_PRESSED)) GuiDrawRectangle(progress, 0, BLANK, Fade(GetColor(GuiGetStyle(PROGRESSBAR, BASE_COLOR_PRESSED)), guiAlpha)); + else if (state == STATE_FOCUSED) GuiDrawRectangle(progress, 0, BLANK, Fade(GetColor(GuiGetStyle(PROGRESSBAR, TEXT_COLOR_FOCUSED)), guiAlpha)); + + // Draw left/right text if provided + if (textLeft != NULL) + { + Rectangle textBounds = { 0 }; + textBounds.width = (float)GetTextWidth(textLeft); + textBounds.height = (float)GuiGetStyle(DEFAULT, TEXT_SIZE); + textBounds.x = bounds.x - textBounds.width - GuiGetStyle(PROGRESSBAR, TEXT_PADDING); + textBounds.y = bounds.y + bounds.height/2 - GuiGetStyle(DEFAULT, TEXT_SIZE)/2; + + GuiDrawText(textLeft, textBounds, TEXT_ALIGN_RIGHT, Fade(GetColor(GuiGetStyle(PROGRESSBAR, TEXT + (state*3))), guiAlpha)); + } + + if (textRight != NULL) + { + Rectangle textBounds = { 0 }; + textBounds.width = (float)GetTextWidth(textRight); + textBounds.height = (float)GuiGetStyle(DEFAULT, TEXT_SIZE); + textBounds.x = bounds.x + bounds.width + GuiGetStyle(PROGRESSBAR, TEXT_PADDING); + textBounds.y = bounds.y + bounds.height/2 - GuiGetStyle(DEFAULT, TEXT_SIZE)/2; + + GuiDrawText(textRight, textBounds, TEXT_ALIGN_LEFT, Fade(GetColor(GuiGetStyle(PROGRESSBAR, TEXT + (state*3))), guiAlpha)); + } + //-------------------------------------------------------------------- + + return value; +} + +// Status Bar control +void GuiStatusBar(Rectangle bounds, const char *text) +{ + GuiState state = guiState; + + // Draw control + //-------------------------------------------------------------------- + GuiDrawRectangle(bounds, GuiGetStyle(STATUSBAR, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(STATUSBAR, (state != STATE_DISABLED)? BORDER_COLOR_NORMAL : BORDER_COLOR_DISABLED)), guiAlpha), + Fade(GetColor(GuiGetStyle(STATUSBAR, (state != STATE_DISABLED)? BASE_COLOR_NORMAL : BASE_COLOR_DISABLED)), guiAlpha)); + GuiDrawText(text, GetTextBounds(STATUSBAR, bounds), GuiGetStyle(STATUSBAR, TEXT_ALIGNMENT), Fade(GetColor(GuiGetStyle(STATUSBAR, (state != STATE_DISABLED)? TEXT_COLOR_NORMAL : TEXT_COLOR_DISABLED)), guiAlpha)); + //-------------------------------------------------------------------- +} + +// Dummy rectangle control, intended for placeholding +void GuiDummyRec(Rectangle bounds, const char *text) +{ + GuiState state = guiState; + + // Update control + //-------------------------------------------------------------------- + if ((state != STATE_DISABLED) && !guiLocked) + { + Vector2 mousePoint = GetMousePosition(); + + // Check button state + if (CheckCollisionPointRec(mousePoint, bounds)) + { + if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) state = STATE_PRESSED; + else state = STATE_FOCUSED; + } + } + //-------------------------------------------------------------------- + + // Draw control + //-------------------------------------------------------------------- + GuiDrawRectangle(bounds, 0, BLANK, Fade(GetColor(GuiGetStyle(DEFAULT, (state != STATE_DISABLED)? BASE_COLOR_NORMAL : BASE_COLOR_DISABLED)), guiAlpha)); + GuiDrawText(text, GetTextBounds(DEFAULT, bounds), TEXT_ALIGN_CENTER, Fade(GetColor(GuiGetStyle(BUTTON, (state != STATE_DISABLED)? TEXT_COLOR_NORMAL : TEXT_COLOR_DISABLED)), guiAlpha)); + //------------------------------------------------------------------ +} + +// List View control +int GuiListView(Rectangle bounds, const char *text, int *scrollIndex, int active) +{ + int itemCount = 0; + const char **items = NULL; + + if (text != NULL) items = GuiTextSplit(text, &itemCount, NULL); + + return GuiListViewEx(bounds, items, itemCount, NULL, scrollIndex, active); +} + +// List View control with extended parameters +int GuiListViewEx(Rectangle bounds, const char **text, int count, int *focus, int *scrollIndex, int active) +{ + GuiState state = guiState; + int itemFocused = (focus == NULL)? -1 : *focus; + int itemSelected = active; + + // Check if we need a scroll bar + bool useScrollBar = false; + if ((GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) + GuiGetStyle(LISTVIEW, LIST_ITEMS_SPACING))*count > bounds.height) useScrollBar = true; + + // Define base item rectangle [0] + Rectangle itemBounds = { 0 }; + itemBounds.x = bounds.x + GuiGetStyle(LISTVIEW, LIST_ITEMS_SPACING); + itemBounds.y = bounds.y + GuiGetStyle(LISTVIEW, LIST_ITEMS_SPACING) + GuiGetStyle(DEFAULT, BORDER_WIDTH); + itemBounds.width = bounds.width - 2*GuiGetStyle(LISTVIEW, LIST_ITEMS_SPACING) - GuiGetStyle(DEFAULT, BORDER_WIDTH); + itemBounds.height = (float)GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT); + if (useScrollBar) itemBounds.width -= GuiGetStyle(LISTVIEW, SCROLLBAR_WIDTH); + + // Get items on the list + int visibleItems = (int)bounds.height/(GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) + GuiGetStyle(LISTVIEW, LIST_ITEMS_SPACING)); + if (visibleItems > count) visibleItems = count; + + int startIndex = (scrollIndex == NULL)? 0 : *scrollIndex; + if ((startIndex < 0) || (startIndex > (count - visibleItems))) startIndex = 0; + int endIndex = startIndex + visibleItems; + + // Update control + //-------------------------------------------------------------------- + if ((state != STATE_DISABLED) && !guiLocked) + { + Vector2 mousePoint = GetMousePosition(); + + // Check mouse inside list view + if (CheckCollisionPointRec(mousePoint, bounds)) + { + state = STATE_FOCUSED; + + // Check focused and selected item + for (int i = 0; i < visibleItems; i++) + { + if (CheckCollisionPointRec(mousePoint, itemBounds)) + { + itemFocused = startIndex + i; + if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON)) + { + if (itemSelected == (startIndex + i)) itemSelected = -1; + else itemSelected = startIndex + i; + } + break; + } + + // Update item rectangle y position for next item + itemBounds.y += (GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) + GuiGetStyle(LISTVIEW, LIST_ITEMS_SPACING)); + } + + if (useScrollBar) + { + int wheelMove = (int)GetMouseWheelMove(); + startIndex -= wheelMove; + + if (startIndex < 0) startIndex = 0; + else if (startIndex > (count - visibleItems)) startIndex = count - visibleItems; + + endIndex = startIndex + visibleItems; + if (endIndex > count) endIndex = count; + } + } + else itemFocused = -1; + + // Reset item rectangle y to [0] + itemBounds.y = bounds.y + GuiGetStyle(LISTVIEW, LIST_ITEMS_SPACING) + GuiGetStyle(DEFAULT, BORDER_WIDTH); + } + //-------------------------------------------------------------------- + + // Draw control + //-------------------------------------------------------------------- + GuiDrawRectangle(bounds, GuiGetStyle(DEFAULT, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(LISTVIEW, BORDER + state*3)), guiAlpha), GetColor(GuiGetStyle(DEFAULT, BACKGROUND_COLOR))); // Draw background + + // Draw visible items + for (int i = 0; ((i < visibleItems) && (text != NULL)); i++) + { + if (state == STATE_DISABLED) + { + if ((startIndex + i) == itemSelected) GuiDrawRectangle(itemBounds, GuiGetStyle(LISTVIEW, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(LISTVIEW, BORDER_COLOR_DISABLED)), guiAlpha), Fade(GetColor(GuiGetStyle(LISTVIEW, BASE_COLOR_DISABLED)), guiAlpha)); + + GuiDrawText(text[startIndex + i], GetTextBounds(DEFAULT, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), Fade(GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_DISABLED)), guiAlpha)); + } + else + { + if ((startIndex + i) == itemSelected) + { + // Draw item selected + GuiDrawRectangle(itemBounds, GuiGetStyle(LISTVIEW, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(LISTVIEW, BORDER_COLOR_PRESSED)), guiAlpha), Fade(GetColor(GuiGetStyle(LISTVIEW, BASE_COLOR_PRESSED)), guiAlpha)); + GuiDrawText(text[startIndex + i], GetTextBounds(DEFAULT, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), Fade(GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_PRESSED)), guiAlpha)); + } + else if ((startIndex + i) == itemFocused) + { + // Draw item focused + GuiDrawRectangle(itemBounds, GuiGetStyle(LISTVIEW, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(LISTVIEW, BORDER_COLOR_FOCUSED)), guiAlpha), Fade(GetColor(GuiGetStyle(LISTVIEW, BASE_COLOR_FOCUSED)), guiAlpha)); + GuiDrawText(text[startIndex + i], GetTextBounds(DEFAULT, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), Fade(GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_FOCUSED)), guiAlpha)); + } + else + { + // Draw item normal + GuiDrawText(text[startIndex + i], GetTextBounds(DEFAULT, itemBounds), GuiGetStyle(LISTVIEW, TEXT_ALIGNMENT), Fade(GetColor(GuiGetStyle(LISTVIEW, TEXT_COLOR_NORMAL)), guiAlpha)); + } + } + + // Update item rectangle y position for next item + itemBounds.y += (GuiGetStyle(LISTVIEW, LIST_ITEMS_HEIGHT) + GuiGetStyle(LISTVIEW, LIST_ITEMS_SPACING)); + } + + if (useScrollBar) + { + Rectangle scrollBarBounds = { + bounds.x + bounds.width - GuiGetStyle(LISTVIEW, BORDER_WIDTH) - GuiGetStyle(LISTVIEW, SCROLLBAR_WIDTH), + bounds.y + GuiGetStyle(LISTVIEW, BORDER_WIDTH), (float)GuiGetStyle(LISTVIEW, SCROLLBAR_WIDTH), + bounds.height - 2*GuiGetStyle(DEFAULT, BORDER_WIDTH) + }; + + // Calculate percentage of visible items and apply same percentage to scrollbar + float percentVisible = (float)(endIndex - startIndex)/count; + float sliderSize = bounds.height*percentVisible; + + int prevSliderSize = GuiGetStyle(SCROLLBAR, SCROLL_SLIDER_SIZE); // Save default slider size + int prevScrollSpeed = GuiGetStyle(SCROLLBAR, SCROLL_SPEED); // Save default scroll speed + GuiSetStyle(SCROLLBAR, SCROLL_SLIDER_SIZE, (int)sliderSize); // Change slider size + GuiSetStyle(SCROLLBAR, SCROLL_SPEED, count - visibleItems); // Change scroll speed + + startIndex = GuiScrollBar(scrollBarBounds, startIndex, 0, count - visibleItems); + + GuiSetStyle(SCROLLBAR, SCROLL_SPEED, prevScrollSpeed); // Reset scroll speed to default + GuiSetStyle(SCROLLBAR, SCROLL_SLIDER_SIZE, prevSliderSize); // Reset slider size to default + } + //-------------------------------------------------------------------- + + if (focus != NULL) *focus = itemFocused; + if (scrollIndex != NULL) *scrollIndex = startIndex; + + return itemSelected; +} + +// Color Panel control +Color GuiColorPanel(Rectangle bounds, const char *text, Color color) +{ + const Color colWhite = { 255, 255, 255, 255 }; + const Color colBlack = { 0, 0, 0, 255 }; + + GuiState state = guiState; + Vector2 pickerSelector = { 0 }; + + Vector3 vcolor = { (float)color.r/255.0f, (float)color.g/255.0f, (float)color.b/255.0f }; + Vector3 hsv = ConvertRGBtoHSV(vcolor); + + pickerSelector.x = bounds.x + (float)hsv.y*bounds.width; // HSV: Saturation + pickerSelector.y = bounds.y + (1.0f - (float)hsv.z)*bounds.height; // HSV: Value + + float hue = -1.0f; + Vector3 maxHue = { hue >= 0.0f ? hue : hsv.x, 1.0f, 1.0f }; + Vector3 rgbHue = ConvertHSVtoRGB(maxHue); + Color maxHueCol = { (unsigned char)(255.0f*rgbHue.x), + (unsigned char)(255.0f*rgbHue.y), + (unsigned char)(255.0f*rgbHue.z), 255 }; + + // Update control + //-------------------------------------------------------------------- + if ((state != STATE_DISABLED) && !guiLocked) + { + Vector2 mousePoint = GetMousePosition(); + + if (CheckCollisionPointRec(mousePoint, bounds)) + { + if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) + { + state = STATE_PRESSED; + pickerSelector = mousePoint; + + // Calculate color from picker + Vector2 colorPick = { pickerSelector.x - bounds.x, pickerSelector.y - bounds.y }; + + colorPick.x /= (float)bounds.width; // Get normalized value on x + colorPick.y /= (float)bounds.height; // Get normalized value on y + + hsv.y = colorPick.x; + hsv.z = 1.0f - colorPick.y; + + Vector3 rgb = ConvertHSVtoRGB(hsv); + + // NOTE: Vector3ToColor() only available on raylib 1.8.1 + color = RAYGUI_CLITERAL(Color){ (unsigned char)(255.0f*rgb.x), + (unsigned char)(255.0f*rgb.y), + (unsigned char)(255.0f*rgb.z), + (unsigned char)(255.0f*(float)color.a/255.0f) }; + + } + else state = STATE_FOCUSED; + } + } + //-------------------------------------------------------------------- + + // Draw control + //-------------------------------------------------------------------- + if (state != STATE_DISABLED) + { + DrawRectangleGradientEx(bounds, Fade(colWhite, guiAlpha), Fade(colWhite, guiAlpha), Fade(maxHueCol, guiAlpha), Fade(maxHueCol, guiAlpha)); + DrawRectangleGradientEx(bounds, Fade(colBlack, 0), Fade(colBlack, guiAlpha), Fade(colBlack, guiAlpha), Fade(colBlack, 0)); + + // Draw color picker: selector + Rectangle selector = { pickerSelector.x - GuiGetStyle(COLORPICKER, COLOR_SELECTOR_SIZE)/2, pickerSelector.y - GuiGetStyle(COLORPICKER, COLOR_SELECTOR_SIZE)/2, (float)GuiGetStyle(COLORPICKER, COLOR_SELECTOR_SIZE), (float)GuiGetStyle(COLORPICKER, COLOR_SELECTOR_SIZE) }; + GuiDrawRectangle(selector, 0, BLANK, Fade(colWhite, guiAlpha)); + } + else + { + DrawRectangleGradientEx(bounds, Fade(Fade(GetColor(GuiGetStyle(COLORPICKER, BASE_COLOR_DISABLED)), 0.1f), guiAlpha), Fade(Fade(colBlack, 0.6f), guiAlpha), Fade(Fade(colBlack, 0.6f), guiAlpha), Fade(Fade(GetColor(GuiGetStyle(COLORPICKER, BORDER_COLOR_DISABLED)), 0.6f), guiAlpha)); + } + + GuiDrawRectangle(bounds, GuiGetStyle(COLORPICKER, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(COLORPICKER, BORDER + state*3)), guiAlpha), BLANK); + //-------------------------------------------------------------------- + + return color; +} + +// Color Bar Alpha control +// NOTE: Returns alpha value normalized [0..1] +float GuiColorBarAlpha(Rectangle bounds, const char *text, float alpha) +{ + #if !defined(RAYGUI_COLORBARALPHA_CHECKED_SIZE) + #define RAYGUI_COLORBARALPHA_CHECKED_SIZE 10 + #endif + + GuiState state = guiState; + Rectangle selector = { (float)bounds.x + alpha*bounds.width - GuiGetStyle(COLORPICKER, HUEBAR_SELECTOR_HEIGHT)/2, (float)bounds.y - GuiGetStyle(COLORPICKER, HUEBAR_SELECTOR_OVERFLOW), (float)GuiGetStyle(COLORPICKER, HUEBAR_SELECTOR_HEIGHT), (float)bounds.height + GuiGetStyle(COLORPICKER, HUEBAR_SELECTOR_OVERFLOW)*2 }; + + // Update control + //-------------------------------------------------------------------- + if ((state != STATE_DISABLED) && !guiLocked) + { + Vector2 mousePoint = GetMousePosition(); + + if (CheckCollisionPointRec(mousePoint, bounds) || + CheckCollisionPointRec(mousePoint, selector)) + { + if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) + { + state = STATE_PRESSED; + + alpha = (mousePoint.x - bounds.x)/bounds.width; + if (alpha <= 0.0f) alpha = 0.0f; + if (alpha >= 1.0f) alpha = 1.0f; + //selector.x = bounds.x + (int)(((alpha - 0)/(100 - 0))*(bounds.width - 2*GuiGetStyle(SLIDER, BORDER_WIDTH))) - selector.width/2; + } + else state = STATE_FOCUSED; + } + } + //-------------------------------------------------------------------- + + // Draw control + //-------------------------------------------------------------------- + + // Draw alpha bar: checked background + if (state != STATE_DISABLED) + { + int checksX = (int)bounds.width/RAYGUI_COLORBARALPHA_CHECKED_SIZE; + int checksY = (int)bounds.height/RAYGUI_COLORBARALPHA_CHECKED_SIZE; + + for (int x = 0; x < checksX; x++) + { + for (int y = 0; y < checksY; y++) + { + Rectangle check = { bounds.x + x*RAYGUI_COLORBARALPHA_CHECKED_SIZE, bounds.y + y*RAYGUI_COLORBARALPHA_CHECKED_SIZE, RAYGUI_COLORBARALPHA_CHECKED_SIZE, RAYGUI_COLORBARALPHA_CHECKED_SIZE }; + GuiDrawRectangle(check, 0, BLANK, ((x + y)%2)? Fade(Fade(GetColor(GuiGetStyle(COLORPICKER, BORDER_COLOR_DISABLED)), 0.4f), guiAlpha) : Fade(Fade(GetColor(GuiGetStyle(COLORPICKER, BASE_COLOR_DISABLED)), 0.4f), guiAlpha)); + } + } + + DrawRectangleGradientEx(bounds, RAYGUI_CLITERAL(Color){ 255, 255, 255, 0 }, RAYGUI_CLITERAL(Color){ 255, 255, 255, 0 }, Fade(RAYGUI_CLITERAL(Color){ 0, 0, 0, 255 }, guiAlpha), Fade(RAYGUI_CLITERAL(Color){ 0, 0, 0, 255 }, guiAlpha)); + } + else DrawRectangleGradientEx(bounds, Fade(GetColor(GuiGetStyle(COLORPICKER, BASE_COLOR_DISABLED)), 0.1f), Fade(GetColor(GuiGetStyle(COLORPICKER, BASE_COLOR_DISABLED)), 0.1f), Fade(GetColor(GuiGetStyle(COLORPICKER, BORDER_COLOR_DISABLED)), guiAlpha), Fade(GetColor(GuiGetStyle(COLORPICKER, BORDER_COLOR_DISABLED)), guiAlpha)); + + GuiDrawRectangle(bounds, GuiGetStyle(COLORPICKER, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(COLORPICKER, BORDER + state*3)), guiAlpha), BLANK); + + // Draw alpha bar: selector + GuiDrawRectangle(selector, 0, BLANK, Fade(GetColor(GuiGetStyle(COLORPICKER, BORDER + state*3)), guiAlpha)); + //-------------------------------------------------------------------- + + return alpha; +} + +// Color Bar Hue control +// Returns hue value normalized [0..1] +// NOTE: Other similar bars (for reference): +// Color GuiColorBarSat() [WHITE->color] +// Color GuiColorBarValue() [BLACK->color], HSV/HSL +// float GuiColorBarLuminance() [BLACK->WHITE] +float GuiColorBarHue(Rectangle bounds, const char *text, float hue) +{ + GuiState state = guiState; + Rectangle selector = { (float)bounds.x - GuiGetStyle(COLORPICKER, HUEBAR_SELECTOR_OVERFLOW), (float)bounds.y + hue/360.0f*bounds.height - GuiGetStyle(COLORPICKER, HUEBAR_SELECTOR_HEIGHT)/2, (float)bounds.width + GuiGetStyle(COLORPICKER, HUEBAR_SELECTOR_OVERFLOW)*2, (float)GuiGetStyle(COLORPICKER, HUEBAR_SELECTOR_HEIGHT) }; + + // Update control + //-------------------------------------------------------------------- + if ((state != STATE_DISABLED) && !guiLocked) + { + Vector2 mousePoint = GetMousePosition(); + + if (CheckCollisionPointRec(mousePoint, bounds) || + CheckCollisionPointRec(mousePoint, selector)) + { + if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) + { + state = STATE_PRESSED; + + hue = (mousePoint.y - bounds.y)*360/bounds.height; + if (hue <= 0.0f) hue = 0.0f; + if (hue >= 359.0f) hue = 359.0f; + + } + else state = STATE_FOCUSED; + + /*if (IsKeyDown(KEY_UP)) + { + hue -= 2.0f; + if (hue <= 0.0f) hue = 0.0f; + } + else if (IsKeyDown(KEY_DOWN)) + { + hue += 2.0f; + if (hue >= 360.0f) hue = 360.0f; + }*/ + } + } + //-------------------------------------------------------------------- + + // Draw control + //-------------------------------------------------------------------- + if (state != STATE_DISABLED) + { + // Draw hue bar:color bars + DrawRectangleGradientV((int)bounds.x, (int)(bounds.y), (int)bounds.width, (int)ceilf(bounds.height/6), Fade(RAYGUI_CLITERAL(Color) { 255, 0, 0, 255 }, guiAlpha), Fade(RAYGUI_CLITERAL(Color) { 255, 255, 0, 255 }, guiAlpha)); + DrawRectangleGradientV((int)bounds.x, (int)(bounds.y + bounds.height/6), (int)bounds.width, (int)ceilf(bounds.height/6), Fade(RAYGUI_CLITERAL(Color) { 255, 255, 0, 255 }, guiAlpha), Fade(RAYGUI_CLITERAL(Color) { 0, 255, 0, 255 }, guiAlpha)); + DrawRectangleGradientV((int)bounds.x, (int)(bounds.y + 2*(bounds.height/6)), (int)bounds.width, (int)ceilf(bounds.height/6), Fade(RAYGUI_CLITERAL(Color) { 0, 255, 0, 255 }, guiAlpha), Fade(RAYGUI_CLITERAL(Color) { 0, 255, 255, 255 }, guiAlpha)); + DrawRectangleGradientV((int)bounds.x, (int)(bounds.y + 3*(bounds.height/6)), (int)bounds.width, (int)ceilf(bounds.height/6), Fade(RAYGUI_CLITERAL(Color) { 0, 255, 255, 255 }, guiAlpha), Fade(RAYGUI_CLITERAL(Color) { 0, 0, 255, 255 }, guiAlpha)); + DrawRectangleGradientV((int)bounds.x, (int)(bounds.y + 4*(bounds.height/6)), (int)bounds.width, (int)ceilf(bounds.height/6), Fade(RAYGUI_CLITERAL(Color) { 0, 0, 255, 255 }, guiAlpha), Fade(RAYGUI_CLITERAL(Color) { 255, 0, 255, 255 }, guiAlpha)); + DrawRectangleGradientV((int)bounds.x, (int)(bounds.y + 5*(bounds.height/6)), (int)bounds.width, (int)(bounds.height/6), Fade(RAYGUI_CLITERAL(Color) { 255, 0, 255, 255 }, guiAlpha), Fade(RAYGUI_CLITERAL(Color) { 255, 0, 0, 255 }, guiAlpha)); + } + else DrawRectangleGradientV((int)bounds.x, (int)bounds.y, (int)bounds.width, (int)bounds.height, Fade(Fade(GetColor(GuiGetStyle(COLORPICKER, BASE_COLOR_DISABLED)), 0.1f), guiAlpha), Fade(GetColor(GuiGetStyle(COLORPICKER, BORDER_COLOR_DISABLED)), guiAlpha)); + + GuiDrawRectangle(bounds, GuiGetStyle(COLORPICKER, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(COLORPICKER, BORDER + state*3)), guiAlpha), BLANK); + + // Draw hue bar: selector + GuiDrawRectangle(selector, 0, BLANK, Fade(GetColor(GuiGetStyle(COLORPICKER, BORDER + state*3)), guiAlpha)); + //-------------------------------------------------------------------- + + return hue; +} + +// Color Picker control +// NOTE: It's divided in multiple controls: +// Color GuiColorPanel(Rectangle bounds, Color color) +// float GuiColorBarAlpha(Rectangle bounds, float alpha) +// float GuiColorBarHue(Rectangle bounds, float value) +// NOTE: bounds define GuiColorPanel() size +Color GuiColorPicker(Rectangle bounds, const char *text, Color color) +{ + color = GuiColorPanel(bounds, NULL, color); + + Rectangle boundsHue = { (float)bounds.x + bounds.width + GuiGetStyle(COLORPICKER, HUEBAR_PADDING), (float)bounds.y, (float)GuiGetStyle(COLORPICKER, HUEBAR_WIDTH), (float)bounds.height }; + //Rectangle boundsAlpha = { bounds.x, bounds.y + bounds.height + GuiGetStyle(COLORPICKER, BARS_PADDING), bounds.width, GuiGetStyle(COLORPICKER, BARS_THICK) }; + + Vector3 hsv = ConvertRGBtoHSV(RAYGUI_CLITERAL(Vector3){ color.r/255.0f, color.g/255.0f, color.b/255.0f }); + hsv.x = GuiColorBarHue(boundsHue, NULL, hsv.x); + //color.a = (unsigned char)(GuiColorBarAlpha(boundsAlpha, (float)color.a/255.0f)*255.0f); + Vector3 rgb = ConvertHSVtoRGB(hsv); + + color = RAYGUI_CLITERAL(Color){ (unsigned char)roundf(rgb.x*255.0f), (unsigned char)roundf(rgb.y*255.0f), (unsigned char)roundf(rgb.z*255.0f), color.a }; + + return color; +} + +// Message Box control +int GuiMessageBox(Rectangle bounds, const char *title, const char *message, const char *buttons) +{ + #if !defined(RAYGUI_MESSAGEBOX_BUTTON_HEIGHT) + #define RAYGUI_MESSAGEBOX_BUTTON_HEIGHT 24 + #endif + #if !defined(RAYGUI_MESSAGEBOX_BUTTON_PADDING) + #define RAYGUI_MESSAGEBOX_BUTTON_PADDING 12 + #endif + + int clicked = -1; // Returns clicked button from buttons list, 0 refers to closed window button + + int buttonCount = 0; + const char **buttonsText = GuiTextSplit(buttons, &buttonCount, NULL); + Rectangle buttonBounds = { 0 }; + buttonBounds.x = bounds.x + RAYGUI_MESSAGEBOX_BUTTON_PADDING; + buttonBounds.y = bounds.y + bounds.height - RAYGUI_MESSAGEBOX_BUTTON_HEIGHT - RAYGUI_MESSAGEBOX_BUTTON_PADDING; + buttonBounds.width = (bounds.width - RAYGUI_MESSAGEBOX_BUTTON_PADDING*(buttonCount + 1))/buttonCount; + buttonBounds.height = RAYGUI_MESSAGEBOX_BUTTON_HEIGHT; + + Vector2 textSize = MeasureTextEx(guiFont, message, (float)GuiGetStyle(DEFAULT, TEXT_SIZE), 1); + + Rectangle textBounds = { 0 }; + textBounds.x = bounds.x + bounds.width/2 - textSize.x/2; + textBounds.y = bounds.y + RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT + RAYGUI_MESSAGEBOX_BUTTON_PADDING; + textBounds.width = textSize.x; + textBounds.height = bounds.height - RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT - 3*RAYGUI_MESSAGEBOX_BUTTON_PADDING - RAYGUI_MESSAGEBOX_BUTTON_HEIGHT; + + // Draw control + //-------------------------------------------------------------------- + if (GuiWindowBox(bounds, title)) clicked = 0; + + int prevTextAlignment = GuiGetStyle(LABEL, TEXT_ALIGNMENT); + GuiSetStyle(LABEL, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER); + GuiLabel(textBounds, message); + GuiSetStyle(LABEL, TEXT_ALIGNMENT, prevTextAlignment); + + prevTextAlignment = GuiGetStyle(BUTTON, TEXT_ALIGNMENT); + GuiSetStyle(BUTTON, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER); + + for (int i = 0; i < buttonCount; i++) + { + if (GuiButton(buttonBounds, buttonsText[i])) clicked = i + 1; + buttonBounds.x += (buttonBounds.width + RAYGUI_MESSAGEBOX_BUTTON_PADDING); + } + + GuiSetStyle(BUTTON, TEXT_ALIGNMENT, prevTextAlignment); + //-------------------------------------------------------------------- + + return clicked; +} + +// Text Input Box control, ask for text +int GuiTextInputBox(Rectangle bounds, const char *title, const char *message, const char *buttons, char *text, int textMaxSize, int *secretViewActive) +{ + #if !defined(RAYGUI_TEXTINPUTBOX_BUTTON_HEIGHT) + #define RAYGUI_TEXTINPUTBOX_BUTTON_HEIGHT 28 + #endif + #if !defined(RAYGUI_TEXTINPUTBOX_BUTTON_PADDING) + #define RAYGUI_TEXTINPUTBOX_BUTTON_PADDING 12 + #endif + #if !defined(RAYGUI_TEXTINPUTBOX_HEIGHT) + #define RAYGUI_TEXTINPUTBOX_HEIGHT 28 + #endif + + // Used to enable text edit mode + // WARNING: No more than one GuiTextInputBox() should be open at the same time + static bool textEditMode = false; + + int btnIndex = -1; + + int buttonCount = 0; + const char **buttonsText = GuiTextSplit(buttons, &buttonCount, NULL); + Rectangle buttonBounds = { 0 }; + buttonBounds.x = bounds.x + RAYGUI_TEXTINPUTBOX_BUTTON_PADDING; + buttonBounds.y = bounds.y + bounds.height - RAYGUI_TEXTINPUTBOX_BUTTON_HEIGHT - RAYGUI_TEXTINPUTBOX_BUTTON_PADDING; + buttonBounds.width = (bounds.width - RAYGUI_TEXTINPUTBOX_BUTTON_PADDING*(buttonCount + 1))/buttonCount; + buttonBounds.height = RAYGUI_TEXTINPUTBOX_BUTTON_HEIGHT; + + int messageInputHeight = (int)bounds.height - RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT - GuiGetStyle(STATUSBAR, BORDER_WIDTH) - RAYGUI_TEXTINPUTBOX_BUTTON_HEIGHT - 2*RAYGUI_TEXTINPUTBOX_BUTTON_PADDING; + + Rectangle textBounds = { 0 }; + if (message != NULL) + { + Vector2 textSize = MeasureTextEx(guiFont, message, (float)GuiGetStyle(DEFAULT, TEXT_SIZE), 1); + + textBounds.x = bounds.x + bounds.width/2 - textSize.x/2; + textBounds.y = bounds.y + RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT + messageInputHeight/4 - textSize.y/2; + textBounds.width = textSize.x; + textBounds.height = textSize.y; + } + + Rectangle textBoxBounds = { 0 }; + textBoxBounds.x = bounds.x + RAYGUI_TEXTINPUTBOX_BUTTON_PADDING; + textBoxBounds.y = bounds.y + RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT - RAYGUI_TEXTINPUTBOX_HEIGHT/2; + if (message == NULL) textBoxBounds.y = bounds.y + 24 + RAYGUI_TEXTINPUTBOX_BUTTON_PADDING; + else textBoxBounds.y += (messageInputHeight/2 + messageInputHeight/4); + textBoxBounds.width = bounds.width - RAYGUI_TEXTINPUTBOX_BUTTON_PADDING*2; + textBoxBounds.height = RAYGUI_TEXTINPUTBOX_HEIGHT; + + // Draw control + //-------------------------------------------------------------------- + if (GuiWindowBox(bounds, title)) btnIndex = 0; + + // Draw message if available + if (message != NULL) + { + int prevTextAlignment = GuiGetStyle(LABEL, TEXT_ALIGNMENT); + GuiSetStyle(LABEL, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER); + GuiLabel(textBounds, message); + GuiSetStyle(LABEL, TEXT_ALIGNMENT, prevTextAlignment); + } + + if (secretViewActive != NULL) + { + static char stars[] = "****************"; + if (GuiTextBox(RAYGUI_CLITERAL(Rectangle){ textBoxBounds.x, textBoxBounds.y, textBoxBounds.width - 4 - RAYGUI_TEXTINPUTBOX_HEIGHT, textBoxBounds.height }, + ((*secretViewActive == 1) || textEditMode)? text : stars, textMaxSize, textEditMode)) textEditMode = !textEditMode; + + *secretViewActive = GuiToggle(RAYGUI_CLITERAL(Rectangle){ textBoxBounds.x + textBoxBounds.width - RAYGUI_TEXTINPUTBOX_HEIGHT, textBoxBounds.y, RAYGUI_TEXTINPUTBOX_HEIGHT, RAYGUI_TEXTINPUTBOX_HEIGHT }, (*secretViewActive == 1)? "#44#" : "#45#", *secretViewActive); + } + else + { + if (GuiTextBox(textBoxBounds, text, textMaxSize, textEditMode)) textEditMode = !textEditMode; + } + + int prevBtnTextAlignment = GuiGetStyle(BUTTON, TEXT_ALIGNMENT); + GuiSetStyle(BUTTON, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER); + + for (int i = 0; i < buttonCount; i++) + { + if (GuiButton(buttonBounds, buttonsText[i])) btnIndex = i + 1; + buttonBounds.x += (buttonBounds.width + RAYGUI_MESSAGEBOX_BUTTON_PADDING); + } + + GuiSetStyle(BUTTON, TEXT_ALIGNMENT, prevBtnTextAlignment); + //-------------------------------------------------------------------- + + return btnIndex; +} + +// Grid control +// NOTE: Returns grid mouse-hover selected cell +// About drawing lines at subpixel spacing, simple put, not easy solution: +// https://stackoverflow.com/questions/4435450/2d-opengl-drawing-lines-that-dont-exactly-fit-pixel-raster +Vector2 GuiGrid(Rectangle bounds, const char *text, float spacing, int subdivs) +{ + // Grid lines alpha amount + #if !defined(RAYGUI_GRID_ALPHA) + #define RAYGUI_GRID_ALPHA 0.15f + #endif + + GuiState state = guiState; + Vector2 mousePoint = GetMousePosition(); + Vector2 currentCell = { -1, -1 }; + + int linesV = ((int)(bounds.width/spacing))*subdivs + 1; + int linesH = ((int)(bounds.height/spacing))*subdivs + 1; + + // Update control + //-------------------------------------------------------------------- + if ((state != STATE_DISABLED) && !guiLocked) + { + if (CheckCollisionPointRec(mousePoint, bounds)) + { + // NOTE: Cell values must be rounded to int + currentCell.x = (float)((mousePoint.x - bounds.x)/spacing); + currentCell.y = (float)((mousePoint.y - bounds.y)/spacing); + } + } + //-------------------------------------------------------------------- + + // Draw control + //-------------------------------------------------------------------- + + // TODO: Draw background panel? + + switch (state) + { + case STATE_NORMAL: + { + if (subdivs > 0) + { + // Draw vertical grid lines + for (int i = 0; i < linesV; i++) + { + Rectangle lineV = { bounds.x + spacing*i/subdivs, bounds.y, 1, bounds.height }; + GuiDrawRectangle(lineV, 0, BLANK, ((i%subdivs) == 0) ? Fade(GetColor(GuiGetStyle(DEFAULT, LINE_COLOR)), RAYGUI_GRID_ALPHA*4) : Fade(GetColor(GuiGetStyle(DEFAULT, LINE_COLOR)), RAYGUI_GRID_ALPHA)); + } + + // Draw horizontal grid lines + for (int i = 0; i < linesH; i++) + { + Rectangle lineH = { bounds.x, bounds.y + spacing*i/subdivs, bounds.width, 1 }; + GuiDrawRectangle(lineH, 0, BLANK, ((i%subdivs) == 0) ? Fade(GetColor(GuiGetStyle(DEFAULT, LINE_COLOR)), RAYGUI_GRID_ALPHA*4) : Fade(GetColor(GuiGetStyle(DEFAULT, LINE_COLOR)), RAYGUI_GRID_ALPHA)); + } + } + } break; + default: break; + } + + return currentCell; +} + +//---------------------------------------------------------------------------------- +// Styles loading functions +//---------------------------------------------------------------------------------- + +// Load raygui style file (.rgs) +// NOTE: By default a binary file is expected, that file could contain a custom font, +// in that case, custom font image atlas is GRAY+ALPHA and pixel data can be compressed (DEFLATE) +void GuiLoadStyle(const char *fileName) +{ + #define MAX_LINE_BUFFER_SIZE 256 + + bool tryBinary = false; + + // Try reading the files as text file first + FILE *rgsFile = fopen(fileName, "rt"); + + if (rgsFile != NULL) + { + char buffer[MAX_LINE_BUFFER_SIZE] = { 0 }; + fgets(buffer, MAX_LINE_BUFFER_SIZE, rgsFile); + + if (buffer[0] == '#') + { + int controlId = 0; + int propertyId = 0; + unsigned int propertyValue = 0; + + while (!feof(rgsFile)) + { + switch (buffer[0]) + { + case 'p': + { + // Style property: p + + sscanf(buffer, "p %d %d 0x%x", &controlId, &propertyId, &propertyValue); + GuiSetStyle(controlId, propertyId, (int)propertyValue); + + } break; + case 'f': + { + // Style font: f + + int fontSize = 0; + char charmapFileName[256] = { 0 }; + char fontFileName[256] = { 0 }; + sscanf(buffer, "f %d %s %[^\r\n]s", &fontSize, charmapFileName, fontFileName); + + Font font = { 0 }; + + if (charmapFileName[0] != '0') + { + // Load characters from charmap file, + // expected '\n' separated list of integer values + char *charValues = LoadFileText(charmapFileName); + if (charValues != NULL) + { + int glyphCount = 0; + const char **chars = TextSplit(charValues, '\n', &glyphCount); + + int *values = (int *)RAYGUI_MALLOC(glyphCount*sizeof(int)); + for (int i = 0; i < glyphCount; i++) values[i] = TextToInteger(chars[i]); + + if (font.texture.id != GetFontDefault().texture.id) UnloadTexture(font.texture); + font = LoadFontEx(TextFormat("%s/%s", GetDirectoryPath(fileName), fontFileName), fontSize, values, glyphCount); + if (font.texture.id == 0) font = GetFontDefault(); + + RAYGUI_FREE(values); + } + } + else + { + if (font.texture.id != GetFontDefault().texture.id) UnloadTexture(font.texture); + font = LoadFontEx(TextFormat("%s/%s", GetDirectoryPath(fileName), fontFileName), fontSize, NULL, 0); + if (font.texture.id == 0) font = GetFontDefault(); + } + + if ((font.texture.id > 0) && (font.glyphCount > 0)) GuiSetFont(font); + + } break; + default: break; + } + + fgets(buffer, MAX_LINE_BUFFER_SIZE, rgsFile); + } + } + else tryBinary = true; + + fclose(rgsFile); + } + + if (tryBinary) + { + rgsFile = fopen(fileName, "rb"); + + if (rgsFile == NULL) return; + + char signature[5] = { 0 }; + short version = 0; + short reserved = 0; + int propertyCount = 0; + + fread(signature, 1, 4, rgsFile); + fread(&version, 1, sizeof(short), rgsFile); + fread(&reserved, 1, sizeof(short), rgsFile); + fread(&propertyCount, 1, sizeof(int), rgsFile); + + if ((signature[0] == 'r') && + (signature[1] == 'G') && + (signature[2] == 'S') && + (signature[3] == ' ')) + { + short controlId = 0; + short propertyId = 0; + unsigned int propertyValue = 0; + + for (int i = 0; i < propertyCount; i++) + { + fread(&controlId, 1, sizeof(short), rgsFile); + fread(&propertyId, 1, sizeof(short), rgsFile); + fread(&propertyValue, 1, sizeof(unsigned int), rgsFile); + + if (controlId == 0) // DEFAULT control + { + // If a DEFAULT property is loaded, it is propagated to all controls + // NOTE: All DEFAULT properties should be defined first in the file + GuiSetStyle(0, (int)propertyId, propertyValue); + + if (propertyId < RAYGUI_MAX_PROPS_BASE) for (int i = 1; i < RAYGUI_MAX_CONTROLS; i++) GuiSetStyle(i, (int)propertyId, propertyValue); + } + else GuiSetStyle((int)controlId, (int)propertyId, propertyValue); + } + + // Font loading is highly dependant on raylib API to load font data and image +#if !defined(RAYGUI_STANDALONE) + // Load custom font if available + int fontDataSize = 0; + fread(&fontDataSize, 1, sizeof(int), rgsFile); + + if (fontDataSize > 0) + { + Font font = { 0 }; + int fontType = 0; // 0-Normal, 1-SDF + Rectangle whiteRec = { 0 }; + + fread(&font.baseSize, 1, sizeof(int), rgsFile); + fread(&font.glyphCount, 1, sizeof(int), rgsFile); + fread(&fontType, 1, sizeof(int), rgsFile); + + // Load font white rectangle + fread(&whiteRec, 1, sizeof(Rectangle), rgsFile); + + // Load font image parameters + int fontImageUncompSize = 0; + int fontImageCompSize = 0; + fread(&fontImageUncompSize, 1, sizeof(int), rgsFile); + fread(&fontImageCompSize, 1, sizeof(int), rgsFile); + + Image imFont = { 0 }; + imFont.mipmaps = 1; + fread(&imFont.width, 1, sizeof(int), rgsFile); + fread(&imFont.height, 1, sizeof(int), rgsFile); + fread(&imFont.format, 1, sizeof(int), rgsFile); + + if (fontImageCompSize < fontImageUncompSize) + { + // Compressed font atlas image data (DEFLATE), it requires DecompressData() + int dataUncompSize = 0; + unsigned char *compData = (unsigned char *)RAYGUI_MALLOC(fontImageCompSize); + fread(compData, 1, fontImageCompSize, rgsFile); + imFont.data = DecompressData(compData, fontImageCompSize, &dataUncompSize); + + // Security check, dataUncompSize must match the provided fontImageUncompSize + if (dataUncompSize != fontImageUncompSize) RAYGUI_LOG("WARNING: Uncompressed font atlas image data could be corrupted"); + + RAYGUI_FREE(compData); + } + else + { + // Font atlas image data is not compressed + imFont.data = (unsigned char *)RAYGUI_MALLOC(fontImageUncompSize); + fread(imFont.data, 1, fontImageUncompSize, rgsFile); + } + + if (font.texture.id != GetFontDefault().texture.id) UnloadTexture(font.texture); + font.texture = LoadTextureFromImage(imFont); + if (font.texture.id == 0) font = GetFontDefault(); + + RAYGUI_FREE(imFont.data); + + // Load font recs data + font.recs = (Rectangle *)RAYGUI_CALLOC(font.glyphCount, sizeof(Rectangle)); + for (int i = 0; i < font.glyphCount; i++) fread(&font.recs[i], 1, sizeof(Rectangle), rgsFile); + + // Load font chars info data + font.glyphs = (GlyphInfo *)RAYGUI_CALLOC(font.glyphCount, sizeof(GlyphInfo)); + for (int i = 0; i < font.glyphCount; i++) + { + fread(&font.glyphs[i].value, 1, sizeof(int), rgsFile); + fread(&font.glyphs[i].offsetX, 1, sizeof(int), rgsFile); + fread(&font.glyphs[i].offsetY, 1, sizeof(int), rgsFile); + fread(&font.glyphs[i].advanceX, 1, sizeof(int), rgsFile); + } + + GuiSetFont(font); + + // Set font texture source rectangle to be used as white texture to draw shapes + // NOTE: This way, all gui can be draw using a single draw call + if ((whiteRec.width != 0) && (whiteRec.height != 0)) SetShapesTexture(font.texture, whiteRec); + } +#endif + } + + fclose(rgsFile); + } +} + +// Load style default over global style +void GuiLoadStyleDefault(void) +{ + // We set this variable first to avoid cyclic function calls + // when calling GuiSetStyle() and GuiGetStyle() + guiStyleLoaded = true; + + // Initialize default LIGHT style property values + GuiSetStyle(DEFAULT, BORDER_COLOR_NORMAL, 0x838383ff); + GuiSetStyle(DEFAULT, BASE_COLOR_NORMAL, 0xc9c9c9ff); + GuiSetStyle(DEFAULT, TEXT_COLOR_NORMAL, 0x686868ff); + GuiSetStyle(DEFAULT, BORDER_COLOR_FOCUSED, 0x5bb2d9ff); + GuiSetStyle(DEFAULT, BASE_COLOR_FOCUSED, 0xc9effeff); + GuiSetStyle(DEFAULT, TEXT_COLOR_FOCUSED, 0x6c9bbcff); + GuiSetStyle(DEFAULT, BORDER_COLOR_PRESSED, 0x0492c7ff); + GuiSetStyle(DEFAULT, BASE_COLOR_PRESSED, 0x97e8ffff); + GuiSetStyle(DEFAULT, TEXT_COLOR_PRESSED, 0x368bafff); + GuiSetStyle(DEFAULT, BORDER_COLOR_DISABLED, 0xb5c1c2ff); + GuiSetStyle(DEFAULT, BASE_COLOR_DISABLED, 0xe6e9e9ff); + GuiSetStyle(DEFAULT, TEXT_COLOR_DISABLED, 0xaeb7b8ff); + GuiSetStyle(DEFAULT, BORDER_WIDTH, 1); // WARNING: Some controls use other values + GuiSetStyle(DEFAULT, TEXT_PADDING, 0); // WARNING: Some controls use other values + GuiSetStyle(DEFAULT, TEXT_ALIGNMENT, TEXT_ALIGN_CENTER); // WARNING: Some controls use other values + + // Initialize control-specific property values + // NOTE: Those properties are in default list but require specific values by control type + GuiSetStyle(LABEL, TEXT_ALIGNMENT, TEXT_ALIGN_LEFT); + GuiSetStyle(BUTTON, BORDER_WIDTH, 2); + GuiSetStyle(SLIDER, TEXT_PADDING, 4); + GuiSetStyle(CHECKBOX, TEXT_PADDING, 4); + GuiSetStyle(CHECKBOX, TEXT_ALIGNMENT, TEXT_ALIGN_RIGHT); + GuiSetStyle(TEXTBOX, TEXT_PADDING, 4); + GuiSetStyle(TEXTBOX, TEXT_ALIGNMENT, TEXT_ALIGN_LEFT); + GuiSetStyle(VALUEBOX, TEXT_PADDING, 4); + GuiSetStyle(VALUEBOX, TEXT_ALIGNMENT, TEXT_ALIGN_LEFT); + GuiSetStyle(SPINNER, TEXT_PADDING, 4); + GuiSetStyle(SPINNER, TEXT_ALIGNMENT, TEXT_ALIGN_LEFT); + GuiSetStyle(STATUSBAR, TEXT_PADDING, 8); + GuiSetStyle(STATUSBAR, TEXT_ALIGNMENT, TEXT_ALIGN_LEFT); + + // Initialize extended property values + // NOTE: By default, extended property values are initialized to 0 + GuiSetStyle(DEFAULT, TEXT_SIZE, 10); // DEFAULT, shared by all controls + GuiSetStyle(DEFAULT, TEXT_SPACING, 1); // DEFAULT, shared by all controls + GuiSetStyle(DEFAULT, LINE_COLOR, 0x90abb5ff); // DEFAULT specific property + GuiSetStyle(DEFAULT, BACKGROUND_COLOR, 0xf5f5f5ff); // DEFAULT specific property + GuiSetStyle(TOGGLE, GROUP_PADDING, 2); + GuiSetStyle(SLIDER, SLIDER_WIDTH, 16); + GuiSetStyle(SLIDER, SLIDER_PADDING, 1); + GuiSetStyle(PROGRESSBAR, PROGRESS_PADDING, 1); + GuiSetStyle(CHECKBOX, CHECK_PADDING, 1); + GuiSetStyle(COMBOBOX, COMBO_BUTTON_WIDTH, 32); + GuiSetStyle(COMBOBOX, COMBO_BUTTON_SPACING, 2); + GuiSetStyle(DROPDOWNBOX, ARROW_PADDING, 16); + GuiSetStyle(DROPDOWNBOX, DROPDOWN_ITEMS_SPACING, 2); + GuiSetStyle(TEXTBOX, TEXT_LINES_SPACING, 4); + GuiSetStyle(TEXTBOX, TEXT_INNER_PADDING, 4); + GuiSetStyle(SPINNER, SPIN_BUTTON_WIDTH, 24); + GuiSetStyle(SPINNER, SPIN_BUTTON_SPACING, 2); + GuiSetStyle(SCROLLBAR, BORDER_WIDTH, 0); + GuiSetStyle(SCROLLBAR, ARROWS_VISIBLE, 0); + GuiSetStyle(SCROLLBAR, ARROWS_SIZE, 6); + GuiSetStyle(SCROLLBAR, SCROLL_SLIDER_PADDING, 0); + GuiSetStyle(SCROLLBAR, SCROLL_SLIDER_SIZE, 16); + GuiSetStyle(SCROLLBAR, SCROLL_PADDING, 0); + GuiSetStyle(SCROLLBAR, SCROLL_SPEED, 12); + GuiSetStyle(LISTVIEW, LIST_ITEMS_HEIGHT, 24); + GuiSetStyle(LISTVIEW, LIST_ITEMS_SPACING, 2); + GuiSetStyle(LISTVIEW, SCROLLBAR_WIDTH, 12); + GuiSetStyle(LISTVIEW, SCROLLBAR_SIDE, SCROLLBAR_RIGHT_SIDE); + GuiSetStyle(COLORPICKER, COLOR_SELECTOR_SIZE, 8); + GuiSetStyle(COLORPICKER, HUEBAR_WIDTH, 16); + GuiSetStyle(COLORPICKER, HUEBAR_PADDING, 8); + GuiSetStyle(COLORPICKER, HUEBAR_SELECTOR_HEIGHT, 8); + GuiSetStyle(COLORPICKER, HUEBAR_SELECTOR_OVERFLOW, 2); + + guiFont = GetFontDefault(); // Initialize default font +} + +// Get text with icon id prepended +// NOTE: Useful to add icons by name id (enum) instead of +// a number that can change between ricon versions +const char *GuiIconText(int iconId, const char *text) +{ +#if defined(RAYGUI_NO_ICONS) + return NULL; +#else + static char buffer[1024] = { 0 }; + static char iconBuffer[6] = { 0 }; + + if (text != NULL) + { + memset(buffer, 0, 1024); + sprintf(buffer, "#%03i#", iconId); + + for (int i = 5; i < 1024; i++) + { + buffer[i] = text[i - 5]; + if (text[i - 5] == '\0') break; + } + + return buffer; + } + else + { + sprintf(iconBuffer, "#%03i#", iconId & 0x1ff); + + return iconBuffer; + } +#endif +} + +#if !defined(RAYGUI_NO_ICONS) + +// Get full icons data pointer +unsigned int *GuiGetIcons(void) { return guiIcons; } + +// Load raygui icons file (.rgi) +// NOTE: In case nameIds are required, they can be requested with loadIconsName, +// they are returned as a guiIconsName[iconCount][RAYGUI_ICON_MAX_NAME_LENGTH], +// WARNING: guiIconsName[]][] memory should be manually freed! +char **GuiLoadIcons(const char *fileName, bool loadIconsName) +{ + // Style File Structure (.rgi) + // ------------------------------------------------------ + // Offset | Size | Type | Description + // ------------------------------------------------------ + // 0 | 4 | char | Signature: "rGI " + // 4 | 2 | short | Version: 100 + // 6 | 2 | short | reserved + + // 8 | 2 | short | Num icons (N) + // 10 | 2 | short | Icons size (Options: 16, 32, 64) (S) + + // Icons name id (32 bytes per name id) + // foreach (icon) + // { + // 12+32*i | 32 | char | Icon NameId + // } + + // Icons data: One bit per pixel, stored as unsigned int array (depends on icon size) + // S*S pixels/32bit per unsigned int = K unsigned int per icon + // foreach (icon) + // { + // ... | K | unsigned int | Icon Data + // } + + FILE *rgiFile = fopen(fileName, "rb"); + + char **guiIconsName = NULL; + + if (rgiFile != NULL) + { + char signature[5] = { 0 }; + short version = 0; + short reserved = 0; + short iconCount = 0; + short iconSize = 0; + + fread(signature, 1, 4, rgiFile); + fread(&version, 1, sizeof(short), rgiFile); + fread(&reserved, 1, sizeof(short), rgiFile); + fread(&iconCount, 1, sizeof(short), rgiFile); + fread(&iconSize, 1, sizeof(short), rgiFile); + + if ((signature[0] == 'r') && + (signature[1] == 'G') && + (signature[2] == 'I') && + (signature[3] == ' ')) + { + if (loadIconsName) + { + guiIconsName = (char **)RAYGUI_MALLOC(iconCount*sizeof(char **)); + for (int i = 0; i < iconCount; i++) + { + guiIconsName[i] = (char *)RAYGUI_MALLOC(RAYGUI_ICON_MAX_NAME_LENGTH); + fread(guiIconsName[i], RAYGUI_ICON_MAX_NAME_LENGTH, 1, rgiFile); + } + } + else fseek(rgiFile, iconCount*RAYGUI_ICON_MAX_NAME_LENGTH, SEEK_CUR); + + // Read icons data directly over guiIcons data array + fread(guiIcons, iconCount*(iconSize*iconSize/32), sizeof(unsigned int), rgiFile); + } + + fclose(rgiFile); + } + + return guiIconsName; +} + +// Draw selected icon using rectangles pixel-by-pixel +void GuiDrawIcon(int iconId, int posX, int posY, int pixelSize, Color color) +{ + #define BIT_CHECK(a,b) ((a) & (1u<<(b))) + + for (int i = 0, y = 0; i < RAYGUI_ICON_SIZE*RAYGUI_ICON_SIZE/32; i++) + { + for (int k = 0; k < 32; k++) + { + if (BIT_CHECK(guiIcons[iconId*RAYGUI_ICON_DATA_ELEMENTS + i], k)) + { + #if !defined(RAYGUI_STANDALONE) + DrawRectangle(posX + (k%RAYGUI_ICON_SIZE)*pixelSize, posY + y*pixelSize, pixelSize, pixelSize, color); + #endif + } + + if ((k == 15) || (k == 31)) y++; + } + } +} + +// Get icon bit data +// NOTE: Bit data array grouped as unsigned int (RAYGUI_ICON_SIZE*RAYGUI_ICON_SIZE/32 elements) +unsigned int *GuiGetIconData(int iconId) +{ + static unsigned int iconData[RAYGUI_ICON_DATA_ELEMENTS] = { 0 }; + memset(iconData, 0, RAYGUI_ICON_DATA_ELEMENTS*sizeof(unsigned int)); + + if (iconId < RAYGUI_ICON_MAX_ICONS) memcpy(iconData, &guiIcons[iconId*RAYGUI_ICON_DATA_ELEMENTS], RAYGUI_ICON_DATA_ELEMENTS*sizeof(unsigned int)); + + return iconData; +} + +// Set icon bit data +// NOTE: Data must be provided as unsigned int array (RAYGUI_ICON_SIZE*RAYGUI_ICON_SIZE/32 elements) +void GuiSetIconData(int iconId, unsigned int *data) +{ + if (iconId < RAYGUI_ICON_MAX_ICONS) memcpy(&guiIcons[iconId*RAYGUI_ICON_DATA_ELEMENTS], data, RAYGUI_ICON_DATA_ELEMENTS*sizeof(unsigned int)); +} + +// Set icon scale (1 by default) +void GuiSetIconScale(unsigned int scale) +{ + guiIconScale = (scale < 1)? 1 : scale; +} + +// Set icon pixel value +void GuiSetIconPixel(int iconId, int x, int y) +{ + #define BIT_SET(a,b) ((a) |= (1u<<(b))) + + // This logic works for any RAYGUI_ICON_SIZE pixels icons, + // For example, in case of 16x16 pixels, every 2 lines fit in one unsigned int data element + BIT_SET(guiIcons[iconId*RAYGUI_ICON_DATA_ELEMENTS + y/(sizeof(unsigned int)*8/RAYGUI_ICON_SIZE)], x + (y%(sizeof(unsigned int)*8/RAYGUI_ICON_SIZE)*RAYGUI_ICON_SIZE)); +} + +// Clear icon pixel value +void GuiClearIconPixel(int iconId, int x, int y) +{ + #define BIT_CLEAR(a,b) ((a) &= ~((1u)<<(b))) + + // This logic works for any RAYGUI_ICON_SIZE pixels icons, + // For example, in case of 16x16 pixels, every 2 lines fit in one unsigned int data element + BIT_CLEAR(guiIcons[iconId*RAYGUI_ICON_DATA_ELEMENTS + y/(sizeof(unsigned int)*8/RAYGUI_ICON_SIZE)], x + (y%(sizeof(unsigned int)*8/RAYGUI_ICON_SIZE)*RAYGUI_ICON_SIZE)); +} + +// Check icon pixel value +bool GuiCheckIconPixel(int iconId, int x, int y) +{ + #define BIT_CHECK(a,b) ((a) & (1u<<(b))) + + return (BIT_CHECK(guiIcons[iconId*8 + y/2], x + (y%2*16))); +} +#endif // !RAYGUI_NO_ICONS + +//---------------------------------------------------------------------------------- +// Module specific Functions Definition +//---------------------------------------------------------------------------------- +// Gui get text width considering icon +static int GetTextWidth(const char *text) +{ + #if !defined(ICON_TEXT_PADDING) + #define ICON_TEXT_PADDING 4 + #endif + + Vector2 size = { 0 }; + int textIconOffset = 0; + + if ((text != NULL) && (text[0] != '\0')) + { + if (text[0] == '#') + { + for (int i = 1; (text[i] != '\0') && (i < 5); i++) + { + if (text[i] == '#') + { + textIconOffset = i; + break; + } + } + } + + // Make sure guiFont is set, GuiGetStyle() initializes it lazynessly + float fontSize = (float)GuiGetStyle(DEFAULT, TEXT_SIZE); + + size = MeasureTextEx(guiFont, text + textIconOffset, fontSize, (float)GuiGetStyle(DEFAULT, TEXT_SPACING)); + if (textIconOffset > 0) size.x += (RAYGUI_ICON_SIZE - ICON_TEXT_PADDING); + } + + return (int)size.x; +} + +// Get text bounds considering control bounds +static Rectangle GetTextBounds(int control, Rectangle bounds) +{ + Rectangle textBounds = bounds; + + textBounds.x = bounds.x + GuiGetStyle(control, BORDER_WIDTH); + textBounds.y = bounds.y + GuiGetStyle(control, BORDER_WIDTH); + textBounds.width = bounds.width - 2*GuiGetStyle(control, BORDER_WIDTH); + textBounds.height = bounds.height - 2*GuiGetStyle(control, BORDER_WIDTH); + + // Consider TEXT_PADDING properly, depends on control type and TEXT_ALIGNMENT + switch (control) + { + case COMBOBOX: bounds.width -= (GuiGetStyle(control, COMBO_BUTTON_WIDTH) + GuiGetStyle(control, COMBO_BUTTON_SPACING)); break; + case VALUEBOX: break; // NOTE: ValueBox text value always centered, text padding applies to label + default: + { + if (GuiGetStyle(control, TEXT_ALIGNMENT) == TEXT_ALIGN_RIGHT) textBounds.x -= GuiGetStyle(control, TEXT_PADDING); + else textBounds.x += GuiGetStyle(control, TEXT_PADDING); + } break; + } + + // TODO: Special cases (no label): COMBOBOX, DROPDOWNBOX, LISTVIEW (scrollbar?) + // More special cases (label on side): CHECKBOX, SLIDER, VALUEBOX, SPINNER + + return textBounds; +} + +// Get text icon if provided and move text cursor +// NOTE: We support up to 999 values for iconId +static const char *GetTextIcon(const char *text, int *iconId) +{ +#if !defined(RAYGUI_NO_ICONS) + *iconId = -1; + if (text[0] == '#') // Maybe we have an icon! + { + char iconValue[4] = { 0 }; // Maximum length for icon value: 3 digits + '\0' + + int pos = 1; + while ((pos < 4) && (text[pos] >= '0') && (text[pos] <= '9')) + { + iconValue[pos - 1] = text[pos]; + pos++; + } + + if (text[pos] == '#') + { + *iconId = TextToInteger(iconValue); + + // Move text pointer after icon + // WARNING: If only icon provided, it could point to EOL character: '\0' + if (*iconId >= 0) text += (pos + 1); + } + } +#endif + + return text; +} + +// Gui draw text using default font +static void GuiDrawText(const char *text, Rectangle bounds, int alignment, Color tint) +{ + #define TEXT_VALIGN_PIXEL_OFFSET(h) ((int)h%2) // Vertical alignment for pixel perfect + + #if !defined(ICON_TEXT_PADDING) + #define ICON_TEXT_PADDING 4 + #endif + + if ((text != NULL) && (text[0] != '\0')) + { + int iconId = 0; + text = GetTextIcon(text, &iconId); // Check text for icon and move cursor + + // Get text position depending on alignment and iconId + //--------------------------------------------------------------------------------- + Vector2 position = { bounds.x, bounds.y }; + + // NOTE: We get text size after icon has been processed + // TODO: REVIEW: We consider text size in case of line breaks! -> MeasureTextEx() depends on raylib! + Vector2 textSize = MeasureTextEx(GuiGetFont(), text, (float)GuiGetStyle(DEFAULT, TEXT_SIZE), (float)GuiGetStyle(DEFAULT, TEXT_SPACING)); + //int textWidth = GetTextWidth(text); + //int textHeight = GuiGetStyle(DEFAULT, TEXT_SIZE); + + // If text requires an icon, add size to measure + if (iconId >= 0) + { + textSize.x += RAYGUI_ICON_SIZE*guiIconScale; + + // WARNING: If only icon provided, text could be pointing to EOF character: '\0' + if ((text != NULL) && (text[0] != '\0')) textSize.x += ICON_TEXT_PADDING; + } + + // Check guiTextAlign global variables + switch (alignment) + { + case TEXT_ALIGN_LEFT: + { + position.x = bounds.x; + position.y = bounds.y + bounds.height/2 - textSize.y/2 + TEXT_VALIGN_PIXEL_OFFSET(bounds.height); + } break; + case TEXT_ALIGN_CENTER: + { + position.x = bounds.x + bounds.width/2 - textSize.x/2; + position.y = bounds.y + bounds.height/2 - textSize.y/2 + TEXT_VALIGN_PIXEL_OFFSET(bounds.height); + } break; + case TEXT_ALIGN_RIGHT: + { + position.x = bounds.x + bounds.width - textSize.x; + position.y = bounds.y + bounds.height/2 - textSize.y/2 + TEXT_VALIGN_PIXEL_OFFSET(bounds.height); + } break; + default: break; + } + + // NOTE: Make sure we get pixel-perfect coordinates, + // In case of decimals we got weird text positioning + position.x = (float)((int)position.x); + position.y = (float)((int)position.y); + //--------------------------------------------------------------------------------- + + // Draw text (with icon if available) + //--------------------------------------------------------------------------------- +#if !defined(RAYGUI_NO_ICONS) + if (iconId >= 0) + { + // NOTE: We consider icon height, probably different than text size + GuiDrawIcon(iconId, (int)position.x, (int)(bounds.y + bounds.height/2 - RAYGUI_ICON_SIZE*guiIconScale/2 + TEXT_VALIGN_PIXEL_OFFSET(bounds.height)), guiIconScale, tint); + position.x += (RAYGUI_ICON_SIZE*guiIconScale + ICON_TEXT_PADDING); + } +#endif + DrawTextEx(guiFont, text, position, (float)GuiGetStyle(DEFAULT, TEXT_SIZE), (float)GuiGetStyle(DEFAULT, TEXT_SPACING), tint); + //--------------------------------------------------------------------------------- + } +} + +// Gui draw rectangle using default raygui plain style with borders +static void GuiDrawRectangle(Rectangle rec, int borderWidth, Color borderColor, Color color) +{ + if (color.a > 0) + { + // Draw rectangle filled with color + DrawRectangle((int)rec.x, (int)rec.y, (int)rec.width, (int)rec.height, color); + } + + if (borderWidth > 0) + { + // Draw rectangle border lines with color + DrawRectangle((int)rec.x, (int)rec.y, (int)rec.width, borderWidth, borderColor); + DrawRectangle((int)rec.x, (int)rec.y + borderWidth, borderWidth, (int)rec.height - 2*borderWidth, borderColor); + DrawRectangle((int)rec.x + (int)rec.width - borderWidth, (int)rec.y + borderWidth, borderWidth, (int)rec.height - 2*borderWidth, borderColor); + DrawRectangle((int)rec.x, (int)rec.y + (int)rec.height - borderWidth, (int)rec.width, borderWidth, borderColor); + } +} + +// Split controls text into multiple strings +// Also check for multiple columns (required by GuiToggleGroup()) +static const char **GuiTextSplit(const char *text, int *count, int *textRow) +{ + // NOTE: Current implementation returns a copy of the provided string with '\0' (string end delimiter) + // inserted between strings defined by "delimiter" parameter. No memory is dynamically allocated, + // all used memory is static... it has some limitations: + // 1. Maximum number of possible split strings is set by RAYGUI_TEXTSPLIT_MAX_ITEMS + // 2. Maximum size of text to split is RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE + // NOTE: Those definitions could be externally provided if required + + #if !defined(RAYGUI_TEXTSPLIT_MAX_ITEMS) + #define RAYGUI_TEXTSPLIT_MAX_ITEMS 128 + #endif + #if !defined(RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE) + #define RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE 1024 + #endif + + static const char *result[RAYGUI_TEXTSPLIT_MAX_ITEMS] = { NULL }; + static char buffer[RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE] = { 0 }; + memset(buffer, 0, RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE); + + result[0] = buffer; + int counter = 1; + + if (textRow != NULL) textRow[0] = 0; + + // Count how many substrings we have on text and point to every one + for (int i = 0; i < RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE; i++) + { + buffer[i] = text[i]; + if (buffer[i] == '\0') break; + else if ((buffer[i] == ';') || (buffer[i] == '\n')) + { + result[counter] = buffer + i + 1; + + if (textRow != NULL) + { + if (buffer[i] == '\n') textRow[counter] = textRow[counter - 1] + 1; + else textRow[counter] = textRow[counter - 1]; + } + + buffer[i] = '\0'; // Set an end of string at this point + + counter++; + if (counter == RAYGUI_TEXTSPLIT_MAX_ITEMS) break; + } + } + + *count = counter; + + return result; +} + +// Convert color data from RGB to HSV +// NOTE: Color data should be passed normalized +static Vector3 ConvertRGBtoHSV(Vector3 rgb) +{ + Vector3 hsv = { 0 }; + float min = 0.0f; + float max = 0.0f; + float delta = 0.0f; + + min = (rgb.x < rgb.y)? rgb.x : rgb.y; + min = (min < rgb.z)? min : rgb.z; + + max = (rgb.x > rgb.y)? rgb.x : rgb.y; + max = (max > rgb.z)? max : rgb.z; + + hsv.z = max; // Value + delta = max - min; + + if (delta < 0.00001f) + { + hsv.y = 0.0f; + hsv.x = 0.0f; // Undefined, maybe NAN? + return hsv; + } + + if (max > 0.0f) + { + // NOTE: If max is 0, this divide would cause a crash + hsv.y = (delta/max); // Saturation + } + else + { + // NOTE: If max is 0, then r = g = b = 0, s = 0, h is undefined + hsv.y = 0.0f; + hsv.x = 0.0f; // Undefined, maybe NAN? + return hsv; + } + + // NOTE: Comparing float values could not work properly + if (rgb.x >= max) hsv.x = (rgb.y - rgb.z)/delta; // Between yellow & magenta + else + { + if (rgb.y >= max) hsv.x = 2.0f + (rgb.z - rgb.x)/delta; // Between cyan & yellow + else hsv.x = 4.0f + (rgb.x - rgb.y)/delta; // Between magenta & cyan + } + + hsv.x *= 60.0f; // Convert to degrees + + if (hsv.x < 0.0f) hsv.x += 360.0f; + + return hsv; +} + +// Convert color data from HSV to RGB +// NOTE: Color data should be passed normalized +static Vector3 ConvertHSVtoRGB(Vector3 hsv) +{ + Vector3 rgb = { 0 }; + float hh = 0.0f, p = 0.0f, q = 0.0f, t = 0.0f, ff = 0.0f; + long i = 0; + + // NOTE: Comparing float values could not work properly + if (hsv.y <= 0.0f) + { + rgb.x = hsv.z; + rgb.y = hsv.z; + rgb.z = hsv.z; + return rgb; + } + + hh = hsv.x; + if (hh >= 360.0f) hh = 0.0f; + hh /= 60.0f; + + i = (long)hh; + ff = hh - i; + p = hsv.z*(1.0f - hsv.y); + q = hsv.z*(1.0f - (hsv.y*ff)); + t = hsv.z*(1.0f - (hsv.y*(1.0f - ff))); + + switch (i) + { + case 0: + { + rgb.x = hsv.z; + rgb.y = t; + rgb.z = p; + } break; + case 1: + { + rgb.x = q; + rgb.y = hsv.z; + rgb.z = p; + } break; + case 2: + { + rgb.x = p; + rgb.y = hsv.z; + rgb.z = t; + } break; + case 3: + { + rgb.x = p; + rgb.y = q; + rgb.z = hsv.z; + } break; + case 4: + { + rgb.x = t; + rgb.y = p; + rgb.z = hsv.z; + } break; + case 5: + default: + { + rgb.x = hsv.z; + rgb.y = p; + rgb.z = q; + } break; + } + + return rgb; +} + +// Scroll bar control (used by GuiScrollPanel()) +static int GuiScrollBar(Rectangle bounds, int value, int minValue, int maxValue) +{ + GuiState state = guiState; + + // Is the scrollbar horizontal or vertical? + bool isVertical = (bounds.width > bounds.height) ? false : true; + + // The size (width or height depending on scrollbar type) of the spinner buttons + const int spinnerSize = GuiGetStyle(SCROLLBAR, ARROWS_VISIBLE) ? (isVertical ? (int)bounds.width - 2*GuiGetStyle(SCROLLBAR, BORDER_WIDTH) : (int)bounds.height - 2*GuiGetStyle(SCROLLBAR, BORDER_WIDTH)) : 0; + + // Arrow buttons [<] [>] [∧] [∨] + Rectangle arrowUpLeft = { 0 }; + Rectangle arrowDownRight = { 0 }; + + // Actual area of the scrollbar excluding the arrow buttons + Rectangle scrollbar = { 0 }; + + // Slider bar that moves --[///]----- + Rectangle slider = { 0 }; + + // Normalize value + if (value > maxValue) value = maxValue; + if (value < minValue) value = minValue; + + const int range = maxValue - minValue; + int sliderSize = GuiGetStyle(SCROLLBAR, SCROLL_SLIDER_SIZE); + + // Calculate rectangles for all of the components + arrowUpLeft = RAYGUI_CLITERAL(Rectangle) { (float)bounds.x + GuiGetStyle(SCROLLBAR, BORDER_WIDTH), (float)bounds.y + GuiGetStyle(SCROLLBAR, BORDER_WIDTH), (float)spinnerSize, (float)spinnerSize }; + + if (isVertical) + { + arrowDownRight = RAYGUI_CLITERAL(Rectangle) { (float)bounds.x + GuiGetStyle(SCROLLBAR, BORDER_WIDTH), (float)bounds.y + bounds.height - spinnerSize - GuiGetStyle(SCROLLBAR, BORDER_WIDTH), (float)spinnerSize, (float)spinnerSize }; + scrollbar = RAYGUI_CLITERAL(Rectangle) { bounds.x + GuiGetStyle(SCROLLBAR, BORDER_WIDTH) + GuiGetStyle(SCROLLBAR, SCROLL_PADDING), arrowUpLeft.y + arrowUpLeft.height, bounds.width - 2*(GuiGetStyle(SCROLLBAR, BORDER_WIDTH) + GuiGetStyle(SCROLLBAR, SCROLL_PADDING)), bounds.height - arrowUpLeft.height - arrowDownRight.height - 2*GuiGetStyle(SCROLLBAR, BORDER_WIDTH) }; + sliderSize = (sliderSize >= scrollbar.height) ? ((int)scrollbar.height - 2) : sliderSize; // Make sure the slider won't get outside of the scrollbar + slider = RAYGUI_CLITERAL(Rectangle) { (float)bounds.x + GuiGetStyle(SCROLLBAR, BORDER_WIDTH) + GuiGetStyle(SCROLLBAR, SCROLL_SLIDER_PADDING), (float)scrollbar.y + (int)(((float)(value - minValue)/range)*(scrollbar.height - sliderSize)), (float)bounds.width - 2*(GuiGetStyle(SCROLLBAR, BORDER_WIDTH) + GuiGetStyle(SCROLLBAR, SCROLL_SLIDER_PADDING)), (float)sliderSize }; + } + else + { + arrowDownRight = RAYGUI_CLITERAL(Rectangle) { (float)bounds.x + bounds.width - spinnerSize - GuiGetStyle(SCROLLBAR, BORDER_WIDTH), (float)bounds.y + GuiGetStyle(SCROLLBAR, BORDER_WIDTH), (float)spinnerSize, (float)spinnerSize }; + scrollbar = RAYGUI_CLITERAL(Rectangle) { arrowUpLeft.x + arrowUpLeft.width, bounds.y + GuiGetStyle(SCROLLBAR, BORDER_WIDTH) + GuiGetStyle(SCROLLBAR, SCROLL_PADDING), bounds.width - arrowUpLeft.width - arrowDownRight.width - 2*GuiGetStyle(SCROLLBAR, BORDER_WIDTH), bounds.height - 2*(GuiGetStyle(SCROLLBAR, BORDER_WIDTH) + GuiGetStyle(SCROLLBAR, SCROLL_PADDING)) }; + sliderSize = (sliderSize >= scrollbar.width) ? ((int)scrollbar.width - 2) : sliderSize; // Make sure the slider won't get outside of the scrollbar + slider = RAYGUI_CLITERAL(Rectangle) { (float)scrollbar.x + (int)(((float)(value - minValue)/range)*(scrollbar.width - sliderSize)), (float)bounds.y + GuiGetStyle(SCROLLBAR, BORDER_WIDTH) + GuiGetStyle(SCROLLBAR, SCROLL_SLIDER_PADDING), (float)sliderSize, (float)bounds.height - 2*(GuiGetStyle(SCROLLBAR, BORDER_WIDTH) + GuiGetStyle(SCROLLBAR, SCROLL_SLIDER_PADDING)) }; + } + + // Update control + //-------------------------------------------------------------------- + if ((state != STATE_DISABLED) && !guiLocked) + { + Vector2 mousePoint = GetMousePosition(); + + if (CheckCollisionPointRec(mousePoint, bounds)) + { + state = STATE_FOCUSED; + + // Handle mouse wheel + int wheel = (int)GetMouseWheelMove(); + if (wheel != 0) value += wheel; + + if (IsMouseButtonPressed(MOUSE_LEFT_BUTTON)) + { + if (CheckCollisionPointRec(mousePoint, arrowUpLeft)) value -= range/GuiGetStyle(SCROLLBAR, SCROLL_SPEED); + else if (CheckCollisionPointRec(mousePoint, arrowDownRight)) value += range/GuiGetStyle(SCROLLBAR, SCROLL_SPEED); + + state = STATE_PRESSED; + } + else if (IsMouseButtonDown(MOUSE_LEFT_BUTTON)) + { + if (!isVertical) + { + Rectangle scrollArea = { arrowUpLeft.x + arrowUpLeft.width, arrowUpLeft.y, scrollbar.width, bounds.height - 2*GuiGetStyle(SCROLLBAR, BORDER_WIDTH) }; + if (CheckCollisionPointRec(mousePoint, scrollArea)) value = (int)(((float)(mousePoint.x - scrollArea.x - slider.width/2)*range)/(scrollArea.width - slider.width) + minValue); + } + else + { + Rectangle scrollArea = { arrowUpLeft.x, arrowUpLeft.y+arrowUpLeft.height, bounds.width - 2*GuiGetStyle(SCROLLBAR, BORDER_WIDTH), scrollbar.height }; + if (CheckCollisionPointRec(mousePoint, scrollArea)) value = (int)(((float)(mousePoint.y - scrollArea.y - slider.height/2)*range)/(scrollArea.height - slider.height) + minValue); + } + } + } + + // Normalize value + if (value > maxValue) value = maxValue; + if (value < minValue) value = minValue; + } + //-------------------------------------------------------------------- + + // Draw control + //-------------------------------------------------------------------- + GuiDrawRectangle(bounds, GuiGetStyle(SCROLLBAR, BORDER_WIDTH), Fade(GetColor(GuiGetStyle(LISTVIEW, BORDER + state*3)), guiAlpha), Fade(GetColor(GuiGetStyle(DEFAULT, BORDER_COLOR_DISABLED)), guiAlpha)); // Draw the background + + GuiDrawRectangle(scrollbar, 0, BLANK, Fade(GetColor(GuiGetStyle(BUTTON, BASE_COLOR_NORMAL)), guiAlpha)); // Draw the scrollbar active area background + GuiDrawRectangle(slider, 0, BLANK, Fade(GetColor(GuiGetStyle(SLIDER, BORDER + state*3)), guiAlpha)); // Draw the slider bar + + // Draw arrows (using icon if available) + if (GuiGetStyle(SCROLLBAR, ARROWS_VISIBLE)) + { +#if defined(RAYGUI_NO_ICONS) + GuiDrawText(isVertical ? "^" : "<", RAYGUI_CLITERAL(Rectangle){ arrowUpLeft.x, arrowUpLeft.y, isVertical ? bounds.width : bounds.height, isVertical ? bounds.width : bounds.height }, + TEXT_ALIGN_CENTER, Fade(GetColor(GuiGetStyle(DROPDOWNBOX, TEXT + (state*3))), guiAlpha)); + GuiDrawText(isVertical ? "v" : ">", RAYGUI_CLITERAL(Rectangle){ arrowDownRight.x, arrowDownRight.y, isVertical ? bounds.width : bounds.height, isVertical ? bounds.width : bounds.height }, + TEXT_ALIGN_CENTER, Fade(GetColor(GuiGetStyle(DROPDOWNBOX, TEXT + (state*3))), guiAlpha)); +#else + GuiDrawText(isVertical ? "#121#" : "#118#", RAYGUI_CLITERAL(Rectangle){ arrowUpLeft.x, arrowUpLeft.y, isVertical ? bounds.width : bounds.height, isVertical ? bounds.width : bounds.height }, + TEXT_ALIGN_CENTER, Fade(GetColor(GuiGetStyle(SCROLLBAR, TEXT + state*3)), guiAlpha)); // ICON_ARROW_UP_FILL / ICON_ARROW_LEFT_FILL + GuiDrawText(isVertical ? "#120#" : "#119#", RAYGUI_CLITERAL(Rectangle){ arrowDownRight.x, arrowDownRight.y, isVertical ? bounds.width : bounds.height, isVertical ? bounds.width : bounds.height }, + TEXT_ALIGN_CENTER, Fade(GetColor(GuiGetStyle(SCROLLBAR, TEXT + state*3)), guiAlpha)); // ICON_ARROW_DOWN_FILL / ICON_ARROW_RIGHT_FILL +#endif + } + //-------------------------------------------------------------------- + + return value; +} + +#if defined(RAYGUI_STANDALONE) +// Returns a Color struct from hexadecimal value +static Color GetColor(int hexValue) +{ + Color color; + + color.r = (unsigned char)(hexValue >> 24) & 0xFF; + color.g = (unsigned char)(hexValue >> 16) & 0xFF; + color.b = (unsigned char)(hexValue >> 8) & 0xFF; + color.a = (unsigned char)hexValue & 0xFF; + + return color; +} + +// Returns hexadecimal value for a Color +static int ColorToInt(Color color) +{ + return (((int)color.r << 24) | ((int)color.g << 16) | ((int)color.b << 8) | (int)color.a); +} + +// Check if point is inside rectangle +static bool CheckCollisionPointRec(Vector2 point, Rectangle rec) +{ + bool collision = false; + + if ((point.x >= rec.x) && (point.x <= (rec.x + rec.width)) && + (point.y >= rec.y) && (point.y <= (rec.y + rec.height))) collision = true; + + return collision; +} + +// Color fade-in or fade-out, alpha goes from 0.0f to 1.0f +static Color Fade(Color color, float alpha) +{ + if (alpha < 0.0f) alpha = 0.0f; + else if (alpha > 1.0f) alpha = 1.0f; + + Color result = { color.r, color.g, color.b, (unsigned char)(255.0f*alpha) }; + + return result; +} + +// Formatting of text with variables to 'embed' +static const char *TextFormat(const char *text, ...) +{ + #if !defined(RAYGUI_TEXTFORMAT_MAX_SIZE) + #define RAYGUI_TEXTFORMAT_MAX_SIZE 256 + #endif + + static char buffer[RAYGUI_TEXTFORMAT_MAX_SIZE]; + + va_list args; + va_start(args, text); + vsprintf(buffer, text, args); + va_end(args); + + return buffer; +} + +// Draw rectangle with vertical gradient fill color +// NOTE: This function is only used by GuiColorPicker() +static void DrawRectangleGradientV(int posX, int posY, int width, int height, Color color1, Color color2) +{ + Rectangle bounds = { (float)posX, (float)posY, (float)width, (float)height }; + DrawRectangleGradientEx(bounds, color1, color2, color2, color1); +} + +// Split string into multiple strings +const char **TextSplit(const char *text, char delimiter, int *count) +{ + // NOTE: Current implementation returns a copy of the provided string with '\0' (string end delimiter) + // inserted between strings defined by "delimiter" parameter. No memory is dynamically allocated, + // all used memory is static... it has some limitations: + // 1. Maximum number of possible split strings is set by RAYGUI_TEXTSPLIT_MAX_ITEMS + // 2. Maximum size of text to split is RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE + + #if !defined(RAYGUI_TEXTSPLIT_MAX_ITEMS) + #define RAYGUI_TEXTSPLIT_MAX_ITEMS 128 + #endif + #if !defined(RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE) + #define RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE 1024 + #endif + + static const char *result[RAYGUI_TEXTSPLIT_MAX_ITEMS] = { NULL }; + static char buffer[RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE] = { 0 }; + memset(buffer, 0, RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE); + + result[0] = buffer; + int counter = 0; + + if (text != NULL) + { + counter = 1; + + // Count how many substrings we have on text and point to every one + for (int i = 0; i < RAYGUI_TEXTSPLIT_MAX_TEXT_SIZE; i++) + { + buffer[i] = text[i]; + if (buffer[i] == '\0') break; + else if (buffer[i] == delimiter) + { + buffer[i] = '\0'; // Set an end of string at this point + result[counter] = buffer + i + 1; + counter++; + + if (counter == RAYGUI_TEXTSPLIT_MAX_ITEMS) break; + } + } + } + + *count = counter; + return result; +} + +// Get integer value from text +// NOTE: This function replaces atoi() [stdlib.h] +static int TextToInteger(const char *text) +{ + int value = 0; + int sign = 1; + + if ((text[0] == '+') || (text[0] == '-')) + { + if (text[0] == '-') sign = -1; + text++; + } + + for (int i = 0; ((text[i] >= '0') && (text[i] <= '9')); ++i) value = value*10 + (int)(text[i] - '0'); + + return value*sign; +} + +// Encode codepoint into UTF-8 text (char array size returned as parameter) +static const char *CodepointToUTF8(int codepoint, int *byteSize) +{ + static char utf8[6] = { 0 }; + int size = 0; + + if (codepoint <= 0x7f) + { + utf8[0] = (char)codepoint; + size = 1; + } + else if (codepoint <= 0x7ff) + { + utf8[0] = (char)(((codepoint >> 6) & 0x1f) | 0xc0); + utf8[1] = (char)((codepoint & 0x3f) | 0x80); + size = 2; + } + else if (codepoint <= 0xffff) + { + utf8[0] = (char)(((codepoint >> 12) & 0x0f) | 0xe0); + utf8[1] = (char)(((codepoint >> 6) & 0x3f) | 0x80); + utf8[2] = (char)((codepoint & 0x3f) | 0x80); + size = 3; + } + else if (codepoint <= 0x10ffff) + { + utf8[0] = (char)(((codepoint >> 18) & 0x07) | 0xf0); + utf8[1] = (char)(((codepoint >> 12) & 0x3f) | 0x80); + utf8[2] = (char)(((codepoint >> 6) & 0x3f) | 0x80); + utf8[3] = (char)((codepoint & 0x3f) | 0x80); + size = 4; + } + + *byteSize = size; + + return utf8; +} + +// Get next codepoint in a UTF-8 encoded text, scanning until '\0' is found +// When a invalid UTF-8 byte is encountered we exit as soon as possible and a '?'(0x3f) codepoint is returned +// Total number of bytes processed are returned as a parameter +// NOTE: the standard says U+FFFD should be returned in case of errors +// but that character is not supported by the default font in raylib +static int GetCodepoint(const char *text, int *bytesProcessed) +{ +/* + UTF-8 specs from https://www.ietf.org/rfc/rfc3629.txt + + Char. number range | UTF-8 octet sequence + (hexadecimal) | (binary) + --------------------+--------------------------------------------- + 0000 0000-0000 007F | 0xxxxxxx + 0000 0080-0000 07FF | 110xxxxx 10xxxxxx + 0000 0800-0000 FFFF | 1110xxxx 10xxxxxx 10xxxxxx + 0001 0000-0010 FFFF | 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx +*/ + // NOTE: on decode errors we return as soon as possible + + int code = 0x3f; // Codepoint (defaults to '?') + int octet = (unsigned char)(text[0]); // The first UTF8 octet + *bytesProcessed = 1; + + if (octet <= 0x7f) + { + // Only one octet (ASCII range x00-7F) + code = text[0]; + } + else if ((octet & 0xe0) == 0xc0) + { + // Two octets + + // [0]xC2-DF [1]UTF8-tail(x80-BF) + unsigned char octet1 = text[1]; + + if ((octet1 == '\0') || ((octet1 >> 6) != 2)) { *bytesProcessed = 2; return code; } // Unexpected sequence + + if ((octet >= 0xc2) && (octet <= 0xdf)) + { + code = ((octet & 0x1f) << 6) | (octet1 & 0x3f); + *bytesProcessed = 2; + } + } + else if ((octet & 0xf0) == 0xe0) + { + // Three octets + unsigned char octet1 = text[1]; + unsigned char octet2 = '\0'; + + if ((octet1 == '\0') || ((octet1 >> 6) != 2)) { *bytesProcessed = 2; return code; } // Unexpected sequence + + octet2 = text[2]; + + if ((octet2 == '\0') || ((octet2 >> 6) != 2)) { *bytesProcessed = 3; return code; } // Unexpected sequence + + // [0]xE0 [1]xA0-BF [2]UTF8-tail(x80-BF) + // [0]xE1-EC [1]UTF8-tail [2]UTF8-tail(x80-BF) + // [0]xED [1]x80-9F [2]UTF8-tail(x80-BF) + // [0]xEE-EF [1]UTF8-tail [2]UTF8-tail(x80-BF) + + if (((octet == 0xe0) && !((octet1 >= 0xa0) && (octet1 <= 0xbf))) || + ((octet == 0xed) && !((octet1 >= 0x80) && (octet1 <= 0x9f)))) { *bytesProcessed = 2; return code; } + + if ((octet >= 0xe0) && (0 <= 0xef)) + { + code = ((octet & 0xf) << 12) | ((octet1 & 0x3f) << 6) | (octet2 & 0x3f); + *bytesProcessed = 3; + } + } + else if ((octet & 0xf8) == 0xf0) + { + // Four octets + if (octet > 0xf4) return code; + + unsigned char octet1 = text[1]; + unsigned char octet2 = '\0'; + unsigned char octet3 = '\0'; + + if ((octet1 == '\0') || ((octet1 >> 6) != 2)) { *bytesProcessed = 2; return code; } // Unexpected sequence + + octet2 = text[2]; + + if ((octet2 == '\0') || ((octet2 >> 6) != 2)) { *bytesProcessed = 3; return code; } // Unexpected sequence + + octet3 = text[3]; + + if ((octet3 == '\0') || ((octet3 >> 6) != 2)) { *bytesProcessed = 4; return code; } // Unexpected sequence + + // [0]xF0 [1]x90-BF [2]UTF8-tail [3]UTF8-tail + // [0]xF1-F3 [1]UTF8-tail [2]UTF8-tail [3]UTF8-tail + // [0]xF4 [1]x80-8F [2]UTF8-tail [3]UTF8-tail + + if (((octet == 0xf0) && !((octet1 >= 0x90) && (octet1 <= 0xbf))) || + ((octet == 0xf4) && !((octet1 >= 0x80) && (octet1 <= 0x8f)))) { *bytesProcessed = 2; return code; } // Unexpected sequence + + if (octet >= 0xf0) + { + code = ((octet & 0x7) << 18) | ((octet1 & 0x3f) << 12) | ((octet2 & 0x3f) << 6) | (octet3 & 0x3f); + *bytesProcessed = 4; + } + } + + if (code > 0x10ffff) code = 0x3f; // Codepoints after U+10ffff are invalid + + return code; +} +#endif // RAYGUI_STANDALONE + +#endif // RAYGUI_IMPLEMENTATION diff --git a/examples/shapes/reasings.h b/examples/shapes/reasings.h new file mode 100644 index 0000000..657ea24 --- /dev/null +++ b/examples/shapes/reasings.h @@ -0,0 +1,263 @@ +/******************************************************************************************* +* +* reasings - raylib easings library, based on Robert Penner library +* +* Useful easing functions for values animation +* +* This header uses: +* #define REASINGS_STATIC_INLINE // Inlines all functions code, so it runs faster. +* // This requires lots of memory on system. +* How to use: +* The four inputs t,b,c,d are defined as follows: +* t = current time (in any unit measure, but same unit as duration) +* b = starting value to interpolate +* c = the total change in value of b that needs to occur +* d = total time it should take to complete (duration) +* +* Example: +* +* int currentTime = 0; +* int duration = 100; +* float startPositionX = 0.0f; +* float finalPositionX = 30.0f; +* float currentPositionX = startPositionX; +* +* while (currentPositionX < finalPositionX) +* { +* currentPositionX = EaseSineIn(currentTime, startPositionX, finalPositionX - startPositionX, duration); +* currentTime++; +* } +* +* A port of Robert Penner's easing equations to C (http://robertpenner.com/easing/) +* +* Robert Penner License +* --------------------------------------------------------------------------------- +* Open source under the BSD License. +* +* Copyright (c) 2001 Robert Penner. All rights reserved. +* +* Redistribution and use in source and binary forms, with or without modification, +* are permitted provided that the following conditions are met: +* +* - Redistributions of source code must retain the above copyright notice, +* this list of conditions and the following disclaimer. +* - Redistributions in binary form must reproduce the above copyright notice, +* this list of conditions and the following disclaimer in the documentation +* and/or other materials provided with the distribution. +* - Neither the name of the author nor the names of contributors may be used +* to endorse or promote products derived from this software without specific +* prior written permission. +* +* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +* IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE +* OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +* OF THE POSSIBILITY OF SUCH DAMAGE. +* --------------------------------------------------------------------------------- +* +* Copyright (c) 2015-2023 Ramon Santamaria (@raysan5) +* +* This software is provided "as-is", without any express or implied warranty. In no event +* will the authors be held liable for any damages arising from the use of this software. +* +* Permission is granted to anyone to use this software for any purpose, including commercial +* applications, and to alter it and redistribute it freely, subject to the following restrictions: +* +* 1. The origin of this software must not be misrepresented; you must not claim that you +* wrote the original software. If you use this software in a product, an acknowledgment +* in the product documentation would be appreciated but is not required. +* +* 2. Altered source versions must be plainly marked as such, and must not be misrepresented +* as being the original software. +* +* 3. This notice may not be removed or altered from any source distribution. +* +**********************************************************************************************/ + +#ifndef REASINGS_H +#define REASINGS_H + +#define REASINGS_STATIC_INLINE // NOTE: By default, compile functions as static inline + +#if defined(REASINGS_STATIC_INLINE) + #define EASEDEF static inline +#else + #define EASEDEF extern +#endif + +#include // Required for: sinf(), cosf(), sqrtf(), powf() + +#ifndef PI + #define PI 3.14159265358979323846f //Required as PI is not always defined in math.h +#endif + +#if defined(__cplusplus) +extern "C" { // Prevents name mangling of functions +#endif + +// Linear Easing functions +EASEDEF float EaseLinearNone(float t, float b, float c, float d) { return (c*t/d + b); } // Ease: Linear +EASEDEF float EaseLinearIn(float t, float b, float c, float d) { return (c*t/d + b); } // Ease: Linear In +EASEDEF float EaseLinearOut(float t, float b, float c, float d) { return (c*t/d + b); } // Ease: Linear Out +EASEDEF float EaseLinearInOut(float t, float b, float c, float d) { return (c*t/d + b); } // Ease: Linear In Out + +// Sine Easing functions +EASEDEF float EaseSineIn(float t, float b, float c, float d) { return (-c*cosf(t/d*(PI/2.0f)) + c + b); } // Ease: Sine In +EASEDEF float EaseSineOut(float t, float b, float c, float d) { return (c*sinf(t/d*(PI/2.0f)) + b); } // Ease: Sine Out +EASEDEF float EaseSineInOut(float t, float b, float c, float d) { return (-c/2.0f*(cosf(PI*t/d) - 1.0f) + b); } // Ease: Sine In Out + +// Circular Easing functions +EASEDEF float EaseCircIn(float t, float b, float c, float d) { t /= d; return (-c*(sqrtf(1.0f - t*t) - 1.0f) + b); } // Ease: Circular In +EASEDEF float EaseCircOut(float t, float b, float c, float d) { t = t/d - 1.0f; return (c*sqrtf(1.0f - t*t) + b); } // Ease: Circular Out +EASEDEF float EaseCircInOut(float t, float b, float c, float d) // Ease: Circular In Out +{ + if ((t/=d/2.0f) < 1.0f) return (-c/2.0f*(sqrtf(1.0f - t*t) - 1.0f) + b); + t -= 2.0f; return (c/2.0f*(sqrtf(1.0f - t*t) + 1.0f) + b); +} + +// Cubic Easing functions +EASEDEF float EaseCubicIn(float t, float b, float c, float d) { t /= d; return (c*t*t*t + b); } // Ease: Cubic In +EASEDEF float EaseCubicOut(float t, float b, float c, float d) { t = t/d - 1.0f; return (c*(t*t*t + 1.0f) + b); } // Ease: Cubic Out +EASEDEF float EaseCubicInOut(float t, float b, float c, float d) // Ease: Cubic In Out +{ + if ((t/=d/2.0f) < 1.0f) return (c/2.0f*t*t*t + b); + t -= 2.0f; return (c/2.0f*(t*t*t + 2.0f) + b); +} + +// Quadratic Easing functions +EASEDEF float EaseQuadIn(float t, float b, float c, float d) { t /= d; return (c*t*t + b); } // Ease: Quadratic In +EASEDEF float EaseQuadOut(float t, float b, float c, float d) { t /= d; return (-c*t*(t - 2.0f) + b); } // Ease: Quadratic Out +EASEDEF float EaseQuadInOut(float t, float b, float c, float d) // Ease: Quadratic In Out +{ + if ((t/=d/2) < 1) return (((c/2)*(t*t)) + b); + return (-c/2.0f*(((t - 1.0f)*(t - 3.0f)) - 1.0f) + b); +} + +// Exponential Easing functions +EASEDEF float EaseExpoIn(float t, float b, float c, float d) { return (t == 0.0f) ? b : (c*powf(2.0f, 10.0f*(t/d - 1.0f)) + b); } // Ease: Exponential In +EASEDEF float EaseExpoOut(float t, float b, float c, float d) { return (t == d) ? (b + c) : (c*(-powf(2.0f, -10.0f*t/d) + 1.0f) + b); } // Ease: Exponential Out +EASEDEF float EaseExpoInOut(float t, float b, float c, float d) // Ease: Exponential In Out +{ + if (t == 0.0f) return b; + if (t == d) return (b + c); + if ((t/=d/2.0f) < 1.0f) return (c/2.0f*powf(2.0f, 10.0f*(t - 1.0f)) + b); + + return (c/2.0f*(-powf(2.0f, -10.0f*(t - 1.0f)) + 2.0f) + b); +} + +// Back Easing functions +EASEDEF float EaseBackIn(float t, float b, float c, float d) // Ease: Back In +{ + float s = 1.70158f; + float postFix = t/=d; + return (c*(postFix)*t*((s + 1.0f)*t - s) + b); +} + +EASEDEF float EaseBackOut(float t, float b, float c, float d) // Ease: Back Out +{ + float s = 1.70158f; + t = t/d - 1.0f; + return (c*(t*t*((s + 1.0f)*t + s) + 1.0f) + b); +} + +EASEDEF float EaseBackInOut(float t, float b, float c, float d) // Ease: Back In Out +{ + float s = 1.70158f; + if ((t/=d/2.0f) < 1.0f) + { + s *= 1.525f; + return (c/2.0f*(t*t*((s + 1.0f)*t - s)) + b); + } + + float postFix = t-=2.0f; + s *= 1.525f; + return (c/2.0f*((postFix)*t*((s + 1.0f)*t + s) + 2.0f) + b); +} + +// Bounce Easing functions +EASEDEF float EaseBounceOut(float t, float b, float c, float d) // Ease: Bounce Out +{ + if ((t/=d) < (1.0f/2.75f)) + { + return (c*(7.5625f*t*t) + b); + } + else if (t < (2.0f/2.75f)) + { + float postFix = t-=(1.5f/2.75f); + return (c*(7.5625f*(postFix)*t + 0.75f) + b); + } + else if (t < (2.5/2.75)) + { + float postFix = t-=(2.25f/2.75f); + return (c*(7.5625f*(postFix)*t + 0.9375f) + b); + } + else + { + float postFix = t-=(2.625f/2.75f); + return (c*(7.5625f*(postFix)*t + 0.984375f) + b); + } +} + +EASEDEF float EaseBounceIn(float t, float b, float c, float d) { return (c - EaseBounceOut(d - t, 0.0f, c, d) + b); } // Ease: Bounce In +EASEDEF float EaseBounceInOut(float t, float b, float c, float d) // Ease: Bounce In Out +{ + if (t < d/2.0f) return (EaseBounceIn(t*2.0f, 0.0f, c, d)*0.5f + b); + else return (EaseBounceOut(t*2.0f - d, 0.0f, c, d)*0.5f + c*0.5f + b); +} + +// Elastic Easing functions +EASEDEF float EaseElasticIn(float t, float b, float c, float d) // Ease: Elastic In +{ + if (t == 0.0f) return b; + if ((t/=d) == 1.0f) return (b + c); + + float p = d*0.3f; + float a = c; + float s = p/4.0f; + float postFix = a*powf(2.0f, 10.0f*(t-=1.0f)); + + return (-(postFix*sinf((t*d-s)*(2.0f*PI)/p )) + b); +} + +EASEDEF float EaseElasticOut(float t, float b, float c, float d) // Ease: Elastic Out +{ + if (t == 0.0f) return b; + if ((t/=d) == 1.0f) return (b + c); + + float p = d*0.3f; + float a = c; + float s = p/4.0f; + + return (a*powf(2.0f,-10.0f*t)*sinf((t*d-s)*(2.0f*PI)/p) + c + b); +} + +EASEDEF float EaseElasticInOut(float t, float b, float c, float d) // Ease: Elastic In Out +{ + if (t == 0.0f) return b; + if ((t/=d/2.0f) == 2.0f) return (b + c); + + float p = d*(0.3f*1.5f); + float a = c; + float s = p/4.0f; + + if (t < 1.0f) + { + float postFix = a*powf(2.0f, 10.0f*(t-=1.0f)); + return -0.5f*(postFix*sinf((t*d-s)*(2.0f*PI)/p)) + b; + } + + float postFix = a*powf(2.0f, -10.0f*(t-=1.0f)); + + return (postFix*sinf((t*d-s)*(2.0f*PI)/p)*0.5f + c + b); +} + +#if defined(__cplusplus) +} +#endif + +#endif // REASINGS_H diff --git a/examples/shapes/resources/.gitkeep b/examples/shapes/resources/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/examples/shapes/shapes_basic_shapes.c b/examples/shapes/shapes_basic_shapes.c new file mode 100644 index 0000000..40056b4 --- /dev/null +++ b/examples/shapes/shapes_basic_shapes.c @@ -0,0 +1,86 @@ +/******************************************************************************************* +* +* raylib [shapes] example - Draw basic shapes 2d (rectangle, circle, line...) +* +* Example originally created with raylib 1.0, last time updated with raylib 4.2 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2014-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shapes] example - basic shapes drawing"); + + float rotation = 0.0f; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + rotation += 0.2f; + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawText("some basic shapes available on raylib", 20, 20, 20, DARKGRAY); + + // Circle shapes and lines + DrawCircle(screenWidth/5, 120, 35, DARKBLUE); + DrawCircleGradient(screenWidth/5, 220, 60, GREEN, SKYBLUE); + DrawCircleLines(screenWidth/5, 340, 80, DARKBLUE); + + // Rectangle shapes and lines + DrawRectangle(screenWidth/4*2 - 60, 100, 120, 60, RED); + DrawRectangleGradientH(screenWidth/4*2 - 90, 170, 180, 130, MAROON, GOLD); + DrawRectangleLines(screenWidth/4*2 - 40, 320, 80, 60, ORANGE); // NOTE: Uses QUADS internally, not lines + + // Triangle shapes and lines + DrawTriangle((Vector2){ screenWidth/4.0f *3.0f, 80.0f }, + (Vector2){ screenWidth/4.0f *3.0f - 60.0f, 150.0f }, + (Vector2){ screenWidth/4.0f *3.0f + 60.0f, 150.0f }, VIOLET); + + DrawTriangleLines((Vector2){ screenWidth/4.0f*3.0f, 160.0f }, + (Vector2){ screenWidth/4.0f*3.0f - 20.0f, 230.0f }, + (Vector2){ screenWidth/4.0f*3.0f + 20.0f, 230.0f }, DARKBLUE); + + // Polygon shapes and lines + DrawPoly((Vector2){ screenWidth/4.0f*3, 330 }, 6, 80, rotation, BROWN); + DrawPolyLines((Vector2){ screenWidth/4.0f*3, 330 }, 6, 90, rotation, BROWN); + DrawPolyLinesEx((Vector2){ screenWidth/4.0f*3, 330 }, 6, 85, rotation, 6, BEIGE); + + // NOTE: We draw all LINES based shapes together to optimize internal drawing, + // this way, all LINES are rendered in a single draw pass + DrawLine(18, 42, screenWidth - 18, 42, BLACK); + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/shapes/shapes_bouncing_ball.c b/examples/shapes/shapes_bouncing_ball.c new file mode 100644 index 0000000..5e43b80 --- /dev/null +++ b/examples/shapes/shapes_bouncing_ball.c @@ -0,0 +1,81 @@ +/******************************************************************************************* +* +* raylib [shapes] example - bouncing ball +* +* Example originally created with raylib 2.5, last time updated with raylib 2.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2013-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //--------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shapes] example - bouncing ball"); + + Vector2 ballPosition = { GetScreenWidth()/2.0f, GetScreenHeight()/2.0f }; + Vector2 ballSpeed = { 5.0f, 4.0f }; + int ballRadius = 20; + + bool pause = 0; + int framesCounter = 0; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //---------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //----------------------------------------------------- + if (IsKeyPressed(KEY_SPACE)) pause = !pause; + + if (!pause) + { + ballPosition.x += ballSpeed.x; + ballPosition.y += ballSpeed.y; + + // Check walls collision for bouncing + if ((ballPosition.x >= (GetScreenWidth() - ballRadius)) || (ballPosition.x <= ballRadius)) ballSpeed.x *= -1.0f; + if ((ballPosition.y >= (GetScreenHeight() - ballRadius)) || (ballPosition.y <= ballRadius)) ballSpeed.y *= -1.0f; + } + else framesCounter++; + //----------------------------------------------------- + + // Draw + //----------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawCircleV(ballPosition, (float)ballRadius, MAROON); + DrawText("PRESS SPACE to PAUSE BALL MOVEMENT", 10, GetScreenHeight() - 25, 20, LIGHTGRAY); + + // On pause, we draw a blinking message + if (pause && ((framesCounter/30)%2)) DrawText("PAUSED", 350, 200, 30, GRAY); + + DrawFPS(10, 10); + + EndDrawing(); + //----------------------------------------------------- + } + + // De-Initialization + //--------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //---------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/shapes/shapes_collision_area.c b/examples/shapes/shapes_collision_area.c new file mode 100644 index 0000000..34d0481 --- /dev/null +++ b/examples/shapes/shapes_collision_area.c @@ -0,0 +1,114 @@ +/******************************************************************************************* +* +* raylib [shapes] example - collision area +* +* Example originally created with raylib 2.5, last time updated with raylib 2.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2013-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#include // Required for: abs() + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //--------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shapes] example - collision area"); + + // Box A: Moving box + Rectangle boxA = { 10, GetScreenHeight()/2.0f - 50, 200, 100 }; + int boxASpeedX = 4; + + // Box B: Mouse moved box + Rectangle boxB = { GetScreenWidth()/2.0f - 30, GetScreenHeight()/2.0f - 30, 60, 60 }; + + Rectangle boxCollision = { 0 }; // Collision rectangle + + int screenUpperLimit = 40; // Top menu limits + + bool pause = false; // Movement pause + bool collision = false; // Collision detection + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //---------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //----------------------------------------------------- + // Move box if not paused + if (!pause) boxA.x += boxASpeedX; + + // Bounce box on x screen limits + if (((boxA.x + boxA.width) >= GetScreenWidth()) || (boxA.x <= 0)) boxASpeedX *= -1; + + // Update player-controlled-box (box02) + boxB.x = GetMouseX() - boxB.width/2; + boxB.y = GetMouseY() - boxB.height/2; + + // Make sure Box B does not go out of move area limits + if ((boxB.x + boxB.width) >= GetScreenWidth()) boxB.x = GetScreenWidth() - boxB.width; + else if (boxB.x <= 0) boxB.x = 0; + + if ((boxB.y + boxB.height) >= GetScreenHeight()) boxB.y = GetScreenHeight() - boxB.height; + else if (boxB.y <= screenUpperLimit) boxB.y = (float)screenUpperLimit; + + // Check boxes collision + collision = CheckCollisionRecs(boxA, boxB); + + // Get collision rectangle (only on collision) + if (collision) boxCollision = GetCollisionRec(boxA, boxB); + + // Pause Box A movement + if (IsKeyPressed(KEY_SPACE)) pause = !pause; + //----------------------------------------------------- + + // Draw + //----------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawRectangle(0, 0, screenWidth, screenUpperLimit, collision? RED : BLACK); + + DrawRectangleRec(boxA, GOLD); + DrawRectangleRec(boxB, BLUE); + + if (collision) + { + // Draw collision area + DrawRectangleRec(boxCollision, LIME); + + // Draw collision message + DrawText("COLLISION!", GetScreenWidth()/2 - MeasureText("COLLISION!", 20)/2, screenUpperLimit/2 - 10, 20, BLACK); + + // Draw collision area + DrawText(TextFormat("Collision Area: %i", (int)boxCollision.width*(int)boxCollision.height), GetScreenWidth()/2 - 100, screenUpperLimit + 10, 20, BLACK); + } + + DrawFPS(10, 10); + + EndDrawing(); + //----------------------------------------------------- + } + + // De-Initialization + //--------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //---------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/shapes/shapes_colors_palette.c b/examples/shapes/shapes_colors_palette.c new file mode 100644 index 0000000..d557825 --- /dev/null +++ b/examples/shapes/shapes_colors_palette.c @@ -0,0 +1,104 @@ +/******************************************************************************************* +* +* raylib [shapes] example - Colors palette +* +* Example originally created with raylib 1.0, last time updated with raylib 2.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2014-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#define MAX_COLORS_COUNT 21 // Number of colors available + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shapes] example - colors palette"); + + Color colors[MAX_COLORS_COUNT] = { + DARKGRAY, MAROON, ORANGE, DARKGREEN, DARKBLUE, DARKPURPLE, DARKBROWN, + GRAY, RED, GOLD, LIME, BLUE, VIOLET, BROWN, LIGHTGRAY, PINK, YELLOW, + GREEN, SKYBLUE, PURPLE, BEIGE }; + + const char *colorNames[MAX_COLORS_COUNT] = { + "DARKGRAY", "MAROON", "ORANGE", "DARKGREEN", "DARKBLUE", "DARKPURPLE", + "DARKBROWN", "GRAY", "RED", "GOLD", "LIME", "BLUE", "VIOLET", "BROWN", + "LIGHTGRAY", "PINK", "YELLOW", "GREEN", "SKYBLUE", "PURPLE", "BEIGE" }; + + Rectangle colorsRecs[MAX_COLORS_COUNT] = { 0 }; // Rectangles array + + // Fills colorsRecs data (for every rectangle) + for (int i = 0; i < MAX_COLORS_COUNT; i++) + { + colorsRecs[i].x = 20.0f + 100.0f *(i%7) + 10.0f *(i%7); + colorsRecs[i].y = 80.0f + 100.0f *(i/7) + 10.0f *(i/7); + colorsRecs[i].width = 100.0f; + colorsRecs[i].height = 100.0f; + } + + int colorState[MAX_COLORS_COUNT] = { 0 }; // Color state: 0-DEFAULT, 1-MOUSE_HOVER + + Vector2 mousePoint = { 0.0f, 0.0f }; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + mousePoint = GetMousePosition(); + + for (int i = 0; i < MAX_COLORS_COUNT; i++) + { + if (CheckCollisionPointRec(mousePoint, colorsRecs[i])) colorState[i] = 1; + else colorState[i] = 0; + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawText("raylib colors palette", 28, 42, 20, BLACK); + DrawText("press SPACE to see all colors", GetScreenWidth() - 180, GetScreenHeight() - 40, 10, GRAY); + + for (int i = 0; i < MAX_COLORS_COUNT; i++) // Draw all rectangles + { + DrawRectangleRec(colorsRecs[i], Fade(colors[i], colorState[i]? 0.6f : 1.0f)); + + if (IsKeyDown(KEY_SPACE) || colorState[i]) + { + DrawRectangle((int)colorsRecs[i].x, (int)(colorsRecs[i].y + colorsRecs[i].height - 26), (int)colorsRecs[i].width, 20, BLACK); + DrawRectangleLinesEx(colorsRecs[i], 6, Fade(BLACK, 0.3f)); + DrawText(colorNames[i], (int)(colorsRecs[i].x + colorsRecs[i].width - MeasureText(colorNames[i], 10) - 12), + (int)(colorsRecs[i].y + colorsRecs[i].height - 20), 10, colors[i]); + } + } + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/shapes/shapes_draw_circle_sector.c b/examples/shapes/shapes_draw_circle_sector.c new file mode 100644 index 0000000..c95f436 --- /dev/null +++ b/examples/shapes/shapes_draw_circle_sector.c @@ -0,0 +1,88 @@ +/******************************************************************************************* +* +* raylib [shapes] example - draw circle sector (with gui options) +* +* Example originally created with raylib 2.5, last time updated with raylib 2.5 +* +* Example contributed by Vlad Adrian (@demizdor) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2018-2023 Vlad Adrian (@demizdor) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include + +#define RAYGUI_IMPLEMENTATION +#include "raygui.h" // Required for GUI controls + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shapes] example - draw circle sector"); + + Vector2 center = {(GetScreenWidth() - 300)/2.0f, GetScreenHeight()/2.0f }; + + float outerRadius = 180.0f; + float startAngle = 0.0f; + float endAngle = 180.0f; + int segments = 0; + int minSegments = 4; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // NOTE: All variables update happens inside GUI control functions + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawLine(500, 0, 500, GetScreenHeight(), Fade(LIGHTGRAY, 0.6f)); + DrawRectangle(500, 0, GetScreenWidth() - 500, GetScreenHeight(), Fade(LIGHTGRAY, 0.3f)); + + DrawCircleSector(center, outerRadius, startAngle, endAngle, segments, Fade(MAROON, 0.3f)); + DrawCircleSectorLines(center, outerRadius, startAngle, endAngle, segments, Fade(MAROON, 0.6f)); + + // Draw GUI controls + //------------------------------------------------------------------------------ + startAngle = GuiSliderBar((Rectangle){ 600, 40, 120, 20}, "StartAngle", NULL, startAngle, 0, 720); + endAngle = GuiSliderBar((Rectangle){ 600, 70, 120, 20}, "EndAngle", NULL, endAngle, 0, 720); + + outerRadius = GuiSliderBar((Rectangle){ 600, 140, 120, 20}, "Radius", NULL, outerRadius, 0, 200); + segments = (int)GuiSliderBar((Rectangle){ 600, 170, 120, 20}, "Segments", NULL, (float)segments, 0, 100); + //------------------------------------------------------------------------------ + + minSegments = (int)ceilf((endAngle - startAngle) / 90); + DrawText(TextFormat("MODE: %s", (segments >= minSegments)? "MANUAL" : "AUTO"), 600, 200, 10, (segments >= minSegments)? MAROON : DARKGRAY); + + DrawFPS(10, 10); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/shapes/shapes_draw_rectangle_rounded.c b/examples/shapes/shapes_draw_rectangle_rounded.c new file mode 100644 index 0000000..8150e09 --- /dev/null +++ b/examples/shapes/shapes_draw_rectangle_rounded.c @@ -0,0 +1,94 @@ +/******************************************************************************************* +* +* raylib [shapes] example - draw rectangle rounded (with gui options) +* +* Example originally created with raylib 2.5, last time updated with raylib 2.5 +* +* Example contributed by Vlad Adrian (@demizdor) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2018-2023 Vlad Adrian (@demizdor) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include + +#define RAYGUI_IMPLEMENTATION +#include "raygui.h" // Required for GUI controls + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shapes] example - draw rectangle rounded"); + + float roundness = 0.2f; + int width = 200; + int height = 100; + int segments = 0; + int lineThick = 1; + + bool drawRect = false; + bool drawRoundedRect = true; + bool drawRoundedLines = false; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + Rectangle rec = { ((float)GetScreenWidth() - width - 250)/2, (GetScreenHeight() - height)/2.0f, (float)width, (float)height }; + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawLine(560, 0, 560, GetScreenHeight(), Fade(LIGHTGRAY, 0.6f)); + DrawRectangle(560, 0, GetScreenWidth() - 500, GetScreenHeight(), Fade(LIGHTGRAY, 0.3f)); + + if (drawRect) DrawRectangleRec(rec, Fade(GOLD, 0.6f)); + if (drawRoundedRect) DrawRectangleRounded(rec, roundness, segments, Fade(MAROON, 0.2f)); + if (drawRoundedLines) DrawRectangleRoundedLines(rec,roundness, segments, (float)lineThick, Fade(MAROON, 0.4f)); + + // Draw GUI controls + //------------------------------------------------------------------------------ + width = (int)GuiSliderBar((Rectangle){ 640, 40, 105, 20 }, "Width", NULL, (float)width, 0, (float)GetScreenWidth() - 300); + height = (int)GuiSliderBar((Rectangle){ 640, 70, 105, 20 }, "Height", NULL, (float)height, 0, (float)GetScreenHeight() - 50); + roundness = GuiSliderBar((Rectangle){ 640, 140, 105, 20 }, "Roundness", NULL, roundness, 0.0f, 1.0f); + lineThick = (int)GuiSliderBar((Rectangle){ 640, 170, 105, 20 }, "Thickness", NULL, (float)lineThick, 0, 20); + segments = (int)GuiSliderBar((Rectangle){ 640, 240, 105, 20}, "Segments", NULL, (float)segments, 0, 60); + + drawRoundedRect = GuiCheckBox((Rectangle){ 640, 320, 20, 20 }, "DrawRoundedRect", drawRoundedRect); + drawRoundedLines = GuiCheckBox((Rectangle){ 640, 350, 20, 20 }, "DrawRoundedLines", drawRoundedLines); + drawRect = GuiCheckBox((Rectangle){ 640, 380, 20, 20}, "DrawRect", drawRect); + //------------------------------------------------------------------------------ + + DrawText(TextFormat("MODE: %s", (segments >= 4)? "MANUAL" : "AUTO"), 640, 280, 10, (segments >= 4)? MAROON : DARKGRAY); + + DrawFPS(10, 10); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/shapes/shapes_draw_ring.c b/examples/shapes/shapes_draw_ring.c new file mode 100644 index 0000000..b001b92 --- /dev/null +++ b/examples/shapes/shapes_draw_ring.c @@ -0,0 +1,100 @@ +/******************************************************************************************* +* +* raylib [shapes] example - draw ring (with gui options) +* +* Example originally created with raylib 2.5, last time updated with raylib 2.5 +* +* Example contributed by Vlad Adrian (@demizdor) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2018-2023 Vlad Adrian (@demizdor) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include + +#define RAYGUI_IMPLEMENTATION +#include "raygui.h" // Required for GUI controls + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shapes] example - draw ring"); + + Vector2 center = {(GetScreenWidth() - 300)/2.0f, GetScreenHeight()/2.0f }; + + float innerRadius = 80.0f; + float outerRadius = 190.0f; + + float startAngle = 0.0f; + float endAngle = 360.0f; + int segments = 0; + + bool drawRing = true; + bool drawRingLines = false; + bool drawCircleLines = false; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // NOTE: All variables update happens inside GUI control functions + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawLine(500, 0, 500, GetScreenHeight(), Fade(LIGHTGRAY, 0.6f)); + DrawRectangle(500, 0, GetScreenWidth() - 500, GetScreenHeight(), Fade(LIGHTGRAY, 0.3f)); + + if (drawRing) DrawRing(center, innerRadius, outerRadius, startAngle, endAngle, segments, Fade(MAROON, 0.3f)); + if (drawRingLines) DrawRingLines(center, innerRadius, outerRadius, startAngle, endAngle, segments, Fade(BLACK, 0.4f)); + if (drawCircleLines) DrawCircleSectorLines(center, outerRadius, startAngle, endAngle, segments, Fade(BLACK, 0.4f)); + + // Draw GUI controls + //------------------------------------------------------------------------------ + startAngle = GuiSliderBar((Rectangle){ 600, 40, 120, 20 }, "StartAngle", NULL, startAngle, -450, 450); + endAngle = GuiSliderBar((Rectangle){ 600, 70, 120, 20 }, "EndAngle", NULL, endAngle, -450, 450); + + innerRadius = GuiSliderBar((Rectangle){ 600, 140, 120, 20 }, "InnerRadius", NULL, innerRadius, 0, 100); + outerRadius = GuiSliderBar((Rectangle){ 600, 170, 120, 20 }, "OuterRadius", NULL, outerRadius, 0, 200); + + segments = (int)GuiSliderBar((Rectangle){ 600, 240, 120, 20 }, "Segments", NULL, (float)segments, 0, 100); + + drawRing = GuiCheckBox((Rectangle){ 600, 320, 20, 20 }, "Draw Ring", drawRing); + drawRingLines = GuiCheckBox((Rectangle){ 600, 350, 20, 20 }, "Draw RingLines", drawRingLines); + drawCircleLines = GuiCheckBox((Rectangle){ 600, 380, 20, 20 }, "Draw CircleLines", drawCircleLines); + //------------------------------------------------------------------------------ + + int minSegments = (int)ceilf((endAngle - startAngle)/90); + DrawText(TextFormat("MODE: %s", (segments >= minSegments)? "MANUAL" : "AUTO"), 600, 270, 10, (segments >= minSegments)? MAROON : DARKGRAY); + + DrawFPS(10, 10); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/shapes/shapes_easings_ball_anim.c b/examples/shapes/shapes_easings_ball_anim.c new file mode 100644 index 0000000..866ec09 --- /dev/null +++ b/examples/shapes/shapes_easings_ball_anim.c @@ -0,0 +1,115 @@ +/******************************************************************************************* +* +* raylib [shapes] example - easings ball anim +* +* Example originally created with raylib 2.5, last time updated with raylib 2.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2014-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#include "reasings.h" // Required for easing functions + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shapes] example - easings ball anim"); + + // Ball variable value to be animated with easings + int ballPositionX = -100; + int ballRadius = 20; + float ballAlpha = 0.0f; + + int state = 0; + int framesCounter = 0; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + if (state == 0) // Move ball position X with easing + { + framesCounter++; + ballPositionX = (int)EaseElasticOut((float)framesCounter, -100, screenWidth/2.0f + 100, 120); + + if (framesCounter >= 120) + { + framesCounter = 0; + state = 1; + } + } + else if (state == 1) // Increase ball radius with easing + { + framesCounter++; + ballRadius = (int)EaseElasticIn((float)framesCounter, 20, 500, 200); + + if (framesCounter >= 200) + { + framesCounter = 0; + state = 2; + } + } + else if (state == 2) // Change ball alpha with easing (background color blending) + { + framesCounter++; + ballAlpha = EaseCubicOut((float)framesCounter, 0.0f, 1.0f, 200); + + if (framesCounter >= 200) + { + framesCounter = 0; + state = 3; + } + } + else if (state == 3) // Reset state to play again + { + if (IsKeyPressed(KEY_ENTER)) + { + // Reset required variables to play again + ballPositionX = -100; + ballRadius = 20; + ballAlpha = 0.0f; + state = 0; + } + } + + if (IsKeyPressed(KEY_R)) framesCounter = 0; + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + if (state >= 2) DrawRectangle(0, 0, screenWidth, screenHeight, GREEN); + DrawCircle(ballPositionX, 200, (float)ballRadius, Fade(RED, 1.0f - ballAlpha)); + + if (state == 3) DrawText("PRESS [ENTER] TO PLAY AGAIN!", 240, 200, 20, BLACK); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/shapes/shapes_easings_box_anim.c b/examples/shapes/shapes_easings_box_anim.c new file mode 100644 index 0000000..a854bf6 --- /dev/null +++ b/examples/shapes/shapes_easings_box_anim.c @@ -0,0 +1,141 @@ +/******************************************************************************************* +* +* raylib [shapes] example - easings box anim +* +* Example originally created with raylib 2.5, last time updated with raylib 2.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2014-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#include "reasings.h" // Required for easing functions + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shapes] example - easings box anim"); + + // Box variables to be animated with easings + Rectangle rec = { GetScreenWidth()/2.0f, -100, 100, 100 }; + float rotation = 0.0f; + float alpha = 1.0f; + + int state = 0; + int framesCounter = 0; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + switch (state) + { + case 0: // Move box down to center of screen + { + framesCounter++; + + // NOTE: Remember that 3rd parameter of easing function refers to + // desired value variation, do not confuse it with expected final value! + rec.y = EaseElasticOut((float)framesCounter, -100, GetScreenHeight()/2.0f + 100, 120); + + if (framesCounter >= 120) + { + framesCounter = 0; + state = 1; + } + } break; + case 1: // Scale box to an horizontal bar + { + framesCounter++; + rec.height = EaseBounceOut((float)framesCounter, 100, -90, 120); + rec.width = EaseBounceOut((float)framesCounter, 100, (float)GetScreenWidth(), 120); + + if (framesCounter >= 120) + { + framesCounter = 0; + state = 2; + } + } break; + case 2: // Rotate horizontal bar rectangle + { + framesCounter++; + rotation = EaseQuadOut((float)framesCounter, 0.0f, 270.0f, 240); + + if (framesCounter >= 240) + { + framesCounter = 0; + state = 3; + } + } break; + case 3: // Increase bar size to fill all screen + { + framesCounter++; + rec.height = EaseCircOut((float)framesCounter, 10, (float)GetScreenWidth(), 120); + + if (framesCounter >= 120) + { + framesCounter = 0; + state = 4; + } + } break; + case 4: // Fade out animation + { + framesCounter++; + alpha = EaseSineOut((float)framesCounter, 1.0f, -1.0f, 160); + + if (framesCounter >= 160) + { + framesCounter = 0; + state = 5; + } + } break; + default: break; + } + + // Reset animation at any moment + if (IsKeyPressed(KEY_SPACE)) + { + rec = (Rectangle){ GetScreenWidth()/2.0f, -100, 100, 100 }; + rotation = 0.0f; + alpha = 1.0f; + state = 0; + framesCounter = 0; + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawRectanglePro(rec, (Vector2){ rec.width/2, rec.height/2 }, rotation, Fade(BLACK, alpha)); + + DrawText("PRESS [SPACE] TO RESET BOX ANIMATION!", 10, GetScreenHeight() - 25, 20, LIGHTGRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/shapes/shapes_easings_rectangle_array.c b/examples/shapes/shapes_easings_rectangle_array.c new file mode 100644 index 0000000..03916f5 --- /dev/null +++ b/examples/shapes/shapes_easings_rectangle_array.c @@ -0,0 +1,123 @@ +/******************************************************************************************* +* +* raylib [shapes] example - easings rectangle array +* +* NOTE: This example requires 'easings.h' library, provided on raylib/src. Just copy +* the library to same directory as example or make sure it's available on include path. +* +* Example originally created with raylib 2.0, last time updated with raylib 2.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2014-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#include "reasings.h" // Required for easing functions + +#define RECS_WIDTH 50 +#define RECS_HEIGHT 50 + +#define MAX_RECS_X 800/RECS_WIDTH +#define MAX_RECS_Y 450/RECS_HEIGHT + +#define PLAY_TIME_IN_FRAMES 240 // At 60 fps = 4 seconds + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shapes] example - easings rectangle array"); + + Rectangle recs[MAX_RECS_X*MAX_RECS_Y] = { 0 }; + + for (int y = 0; y < MAX_RECS_Y; y++) + { + for (int x = 0; x < MAX_RECS_X; x++) + { + recs[y*MAX_RECS_X + x].x = RECS_WIDTH/2.0f + RECS_WIDTH*x; + recs[y*MAX_RECS_X + x].y = RECS_HEIGHT/2.0f + RECS_HEIGHT*y; + recs[y*MAX_RECS_X + x].width = RECS_WIDTH; + recs[y*MAX_RECS_X + x].height = RECS_HEIGHT; + } + } + + float rotation = 0.0f; + int framesCounter = 0; + int state = 0; // Rectangles animation state: 0-Playing, 1-Finished + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + if (state == 0) + { + framesCounter++; + + for (int i = 0; i < MAX_RECS_X*MAX_RECS_Y; i++) + { + recs[i].height = EaseCircOut((float)framesCounter, RECS_HEIGHT, -RECS_HEIGHT, PLAY_TIME_IN_FRAMES); + recs[i].width = EaseCircOut((float)framesCounter, RECS_WIDTH, -RECS_WIDTH, PLAY_TIME_IN_FRAMES); + + if (recs[i].height < 0) recs[i].height = 0; + if (recs[i].width < 0) recs[i].width = 0; + + if ((recs[i].height == 0) && (recs[i].width == 0)) state = 1; // Finish playing + + rotation = EaseLinearIn((float)framesCounter, 0.0f, 360.0f, PLAY_TIME_IN_FRAMES); + } + } + else if ((state == 1) && IsKeyPressed(KEY_SPACE)) + { + // When animation has finished, press space to restart + framesCounter = 0; + + for (int i = 0; i < MAX_RECS_X*MAX_RECS_Y; i++) + { + recs[i].height = RECS_HEIGHT; + recs[i].width = RECS_WIDTH; + } + + state = 0; + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + if (state == 0) + { + for (int i = 0; i < MAX_RECS_X*MAX_RECS_Y; i++) + { + DrawRectanglePro(recs[i], (Vector2){ recs[i].width/2, recs[i].height/2 }, rotation, RED); + } + } + else if (state == 1) DrawText("PRESS [SPACE] TO PLAY AGAIN!", 240, 200, 20, GRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/shapes/shapes_following_eyes.c b/examples/shapes/shapes_following_eyes.c new file mode 100644 index 0000000..2137d79 --- /dev/null +++ b/examples/shapes/shapes_following_eyes.c @@ -0,0 +1,109 @@ +/******************************************************************************************* +* +* raylib [shapes] example - following eyes +* +* Example originally created with raylib 2.5, last time updated with raylib 2.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2013-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#include // Required for: atan2f() + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shapes] example - following eyes"); + + Vector2 scleraLeftPosition = { GetScreenWidth()/2.0f - 100.0f, GetScreenHeight()/2.0f }; + Vector2 scleraRightPosition = { GetScreenWidth()/2.0f + 100.0f, GetScreenHeight()/2.0f }; + float scleraRadius = 80; + + Vector2 irisLeftPosition = { GetScreenWidth()/2.0f - 100.0f, GetScreenHeight()/2.0f }; + Vector2 irisRightPosition = { GetScreenWidth()/2.0f + 100.0f, GetScreenHeight()/2.0f }; + float irisRadius = 24; + + float angle = 0.0f; + float dx = 0.0f, dy = 0.0f, dxx = 0.0f, dyy = 0.0f; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + irisLeftPosition = GetMousePosition(); + irisRightPosition = GetMousePosition(); + + // Check not inside the left eye sclera + if (!CheckCollisionPointCircle(irisLeftPosition, scleraLeftPosition, scleraRadius - 20)) + { + dx = irisLeftPosition.x - scleraLeftPosition.x; + dy = irisLeftPosition.y - scleraLeftPosition.y; + + angle = atan2f(dy, dx); + + dxx = (scleraRadius - irisRadius)*cosf(angle); + dyy = (scleraRadius - irisRadius)*sinf(angle); + + irisLeftPosition.x = scleraLeftPosition.x + dxx; + irisLeftPosition.y = scleraLeftPosition.y + dyy; + } + + // Check not inside the right eye sclera + if (!CheckCollisionPointCircle(irisRightPosition, scleraRightPosition, scleraRadius - 20)) + { + dx = irisRightPosition.x - scleraRightPosition.x; + dy = irisRightPosition.y - scleraRightPosition.y; + + angle = atan2f(dy, dx); + + dxx = (scleraRadius - irisRadius)*cosf(angle); + dyy = (scleraRadius - irisRadius)*sinf(angle); + + irisRightPosition.x = scleraRightPosition.x + dxx; + irisRightPosition.y = scleraRightPosition.y + dyy; + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawCircleV(scleraLeftPosition, scleraRadius, LIGHTGRAY); + DrawCircleV(irisLeftPosition, irisRadius, BROWN); + DrawCircleV(irisLeftPosition, 10, BLACK); + + DrawCircleV(scleraRightPosition, scleraRadius, LIGHTGRAY); + DrawCircleV(irisRightPosition, irisRadius, DARKGREEN); + DrawCircleV(irisRightPosition, 10, BLACK); + + DrawFPS(10, 10); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/shapes/shapes_lines_bezier.c b/examples/shapes/shapes_lines_bezier.c new file mode 100644 index 0000000..195281b --- /dev/null +++ b/examples/shapes/shapes_lines_bezier.c @@ -0,0 +1,64 @@ +/******************************************************************************************* +* +* raylib [shapes] example - Cubic-bezier lines +* +* Example originally created with raylib 1.7, last time updated with raylib 1.7 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2017-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + SetConfigFlags(FLAG_MSAA_4X_HINT); + InitWindow(screenWidth, screenHeight, "raylib [shapes] example - cubic-bezier lines"); + + Vector2 start = { 0, 0 }; + Vector2 end = { (float)screenWidth, (float)screenHeight }; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + if (IsMouseButtonDown(MOUSE_BUTTON_LEFT)) start = GetMousePosition(); + else if (IsMouseButtonDown(MOUSE_BUTTON_RIGHT)) end = GetMousePosition(); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawText("USE MOUSE LEFT-RIGHT CLICK to DEFINE LINE START and END POINTS", 15, 20, 20, GRAY); + + DrawLineBezier(start, end, 2.0f, RED); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/shapes/shapes_logo_raylib.c b/examples/shapes/shapes_logo_raylib.c new file mode 100644 index 0000000..4f625c2 --- /dev/null +++ b/examples/shapes/shapes_logo_raylib.c @@ -0,0 +1,61 @@ +/******************************************************************************************* +* +* raylib [shapes] example - Draw raylib logo using basic shapes +* +* Example originally created with raylib 1.0, last time updated with raylib 1.0 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2014-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shapes] example - raylib logo using shapes"); + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // TODO: Update your variables here + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawRectangle(screenWidth/2 - 128, screenHeight/2 - 128, 256, 256, BLACK); + DrawRectangle(screenWidth/2 - 112, screenHeight/2 - 112, 224, 224, RAYWHITE); + DrawText("raylib", screenWidth/2 - 44, screenHeight/2 + 48, 50, BLACK); + + DrawText("this is NOT a texture!", 350, 370, 10, GRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/shapes/shapes_logo_raylib_anim.c b/examples/shapes/shapes_logo_raylib_anim.c new file mode 100644 index 0000000..5d6dd35 --- /dev/null +++ b/examples/shapes/shapes_logo_raylib_anim.c @@ -0,0 +1,165 @@ +/******************************************************************************************* +* +* raylib [shapes] example - raylib logo animation +* +* Example originally created with raylib 2.5, last time updated with raylib 4.0 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2014-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shapes] example - raylib logo animation"); + + int logoPositionX = screenWidth/2 - 128; + int logoPositionY = screenHeight/2 - 128; + + int framesCounter = 0; + int lettersCount = 0; + + int topSideRecWidth = 16; + int leftSideRecHeight = 16; + + int bottomSideRecWidth = 16; + int rightSideRecHeight = 16; + + int state = 0; // Tracking animation states (State Machine) + float alpha = 1.0f; // Useful for fading + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + if (state == 0) // State 0: Small box blinking + { + framesCounter++; + + if (framesCounter == 120) + { + state = 1; + framesCounter = 0; // Reset counter... will be used later... + } + } + else if (state == 1) // State 1: Top and left bars growing + { + topSideRecWidth += 4; + leftSideRecHeight += 4; + + if (topSideRecWidth == 256) state = 2; + } + else if (state == 2) // State 2: Bottom and right bars growing + { + bottomSideRecWidth += 4; + rightSideRecHeight += 4; + + if (bottomSideRecWidth == 256) state = 3; + } + else if (state == 3) // State 3: Letters appearing (one by one) + { + framesCounter++; + + if (framesCounter/12) // Every 12 frames, one more letter! + { + lettersCount++; + framesCounter = 0; + } + + if (lettersCount >= 10) // When all letters have appeared, just fade out everything + { + alpha -= 0.02f; + + if (alpha <= 0.0f) + { + alpha = 0.0f; + state = 4; + } + } + } + else if (state == 4) // State 4: Reset and Replay + { + if (IsKeyPressed(KEY_R)) + { + framesCounter = 0; + lettersCount = 0; + + topSideRecWidth = 16; + leftSideRecHeight = 16; + + bottomSideRecWidth = 16; + rightSideRecHeight = 16; + + alpha = 1.0f; + state = 0; // Return to State 0 + } + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + if (state == 0) + { + if ((framesCounter/15)%2) DrawRectangle(logoPositionX, logoPositionY, 16, 16, BLACK); + } + else if (state == 1) + { + DrawRectangle(logoPositionX, logoPositionY, topSideRecWidth, 16, BLACK); + DrawRectangle(logoPositionX, logoPositionY, 16, leftSideRecHeight, BLACK); + } + else if (state == 2) + { + DrawRectangle(logoPositionX, logoPositionY, topSideRecWidth, 16, BLACK); + DrawRectangle(logoPositionX, logoPositionY, 16, leftSideRecHeight, BLACK); + + DrawRectangle(logoPositionX + 240, logoPositionY, 16, rightSideRecHeight, BLACK); + DrawRectangle(logoPositionX, logoPositionY + 240, bottomSideRecWidth, 16, BLACK); + } + else if (state == 3) + { + DrawRectangle(logoPositionX, logoPositionY, topSideRecWidth, 16, Fade(BLACK, alpha)); + DrawRectangle(logoPositionX, logoPositionY + 16, 16, leftSideRecHeight - 32, Fade(BLACK, alpha)); + + DrawRectangle(logoPositionX + 240, logoPositionY + 16, 16, rightSideRecHeight - 32, Fade(BLACK, alpha)); + DrawRectangle(logoPositionX, logoPositionY + 240, bottomSideRecWidth, 16, Fade(BLACK, alpha)); + + DrawRectangle(GetScreenWidth()/2 - 112, GetScreenHeight()/2 - 112, 224, 224, Fade(RAYWHITE, alpha)); + + DrawText(TextSubtext("raylib", 0, lettersCount), GetScreenWidth()/2 - 44, GetScreenHeight()/2 + 48, 50, Fade(BLACK, alpha)); + } + else if (state == 4) + { + DrawText("[R] REPLAY", 340, 200, 20, GRAY); + } + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/shapes/shapes_rectangle_scaling.c b/examples/shapes/shapes_rectangle_scaling.c new file mode 100644 index 0000000..18104b1 --- /dev/null +++ b/examples/shapes/shapes_rectangle_scaling.c @@ -0,0 +1,103 @@ +/******************************************************************************************* +* +* raylib [shapes] example - rectangle scaling by mouse +* +* Example originally created with raylib 2.5, last time updated with raylib 2.5 +* +* Example contributed by Vlad Adrian (@demizdor) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2018-2023 Vlad Adrian (@demizdor) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#define MOUSE_SCALE_MARK_SIZE 12 + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shapes] example - rectangle scaling mouse"); + + Rectangle rec = { 100, 100, 200, 80 }; + + Vector2 mousePosition = { 0 }; + + bool mouseScaleReady = false; + bool mouseScaleMode = false; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + mousePosition = GetMousePosition(); + + if (CheckCollisionPointRec(mousePosition, (Rectangle){ rec.x + rec.width - MOUSE_SCALE_MARK_SIZE, rec.y + rec.height - MOUSE_SCALE_MARK_SIZE, MOUSE_SCALE_MARK_SIZE, MOUSE_SCALE_MARK_SIZE })) + { + mouseScaleReady = true; + if (IsMouseButtonPressed(MOUSE_BUTTON_LEFT)) mouseScaleMode = true; + } + else mouseScaleReady = false; + + if (mouseScaleMode) + { + mouseScaleReady = true; + + rec.width = (mousePosition.x - rec.x); + rec.height = (mousePosition.y - rec.y); + + // Check minimum rec size + if (rec.width < MOUSE_SCALE_MARK_SIZE) rec.width = MOUSE_SCALE_MARK_SIZE; + if (rec.height < MOUSE_SCALE_MARK_SIZE) rec.height = MOUSE_SCALE_MARK_SIZE; + + // Check maximum rec size + if (rec.width > (GetScreenWidth() - rec.x)) rec.width = GetScreenWidth() - rec.x; + if (rec.height > (GetScreenHeight() - rec.y)) rec.height = GetScreenHeight() - rec.y; + + if (IsMouseButtonReleased(MOUSE_BUTTON_LEFT)) mouseScaleMode = false; + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawText("Scale rectangle dragging from bottom-right corner!", 10, 10, 20, GRAY); + + DrawRectangleRec(rec, Fade(GREEN, 0.5f)); + + if (mouseScaleReady) + { + DrawRectangleLinesEx(rec, 1, RED); + DrawTriangle((Vector2){ rec.x + rec.width - MOUSE_SCALE_MARK_SIZE, rec.y + rec.height }, + (Vector2){ rec.x + rec.width, rec.y + rec.height }, + (Vector2){ rec.x + rec.width, rec.y + rec.height - MOUSE_SCALE_MARK_SIZE }, RED); + } + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/shapes/shapes_top_down_lights.c b/examples/shapes/shapes_top_down_lights.c new file mode 100644 index 0000000..b09137c --- /dev/null +++ b/examples/shapes/shapes_top_down_lights.c @@ -0,0 +1,355 @@ +/******************************************************************************************* +* +* raylib [shapes] example - top down lights +* +* Example originally created with raylib 4.2, last time updated with raylib 4.2 +* +* Example contributed by Vlad Adrian (@demizdor) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2022-2023 Jeffery Myers (@JeffM2501) +* +********************************************************************************************/ + +#include "raylib.h" +#include "raymath.h" +#include "rlgl.h" + +// Custom Blend Modes +#define RLGL_SRC_ALPHA 0x0302 +#define RLGL_MIN 0x8007 +#define RLGL_MAX 0x8008 + +#define MAX_BOXES 20 +#define MAX_SHADOWS MAX_BOXES*3 // MAX_BOXES *3. Each box can cast up to two shadow volumes for the edges it is away from, and one for the box itself +#define MAX_LIGHTS 16 + +// Shadow geometry type +typedef struct ShadowGeometry { + Vector2 vertices[4]; +} ShadowGeometry; + +// Light info type +typedef struct LightInfo { + bool active; // Is this light slot active? + bool dirty; // Does this light need to be updated? + bool valid; // Is this light in a valid position? + + Vector2 position; // Light position + RenderTexture mask; // Alpha mask for the light + float outerRadius; // The distance the light touches + Rectangle bounds; // A cached rectangle of the light bounds to help with culling + + ShadowGeometry shadows[MAX_SHADOWS]; + int shadowCount; +} LightInfo; + + +LightInfo lights[MAX_LIGHTS] = { 0 }; + +// Move a light and mark it as dirty so that we update it's mask next frame +void MoveLight(int slot, float x, float y) +{ + lights[slot].dirty = true; + lights[slot].position.x = x; + lights[slot].position.y = y; + + // update the cached bounds + lights[slot].bounds.x = x - lights[slot].outerRadius; + lights[slot].bounds.y = y - lights[slot].outerRadius; +} + +// Compute a shadow volume for the edge +// It takes the edge and projects it back by the light radius and turns it into a quad +void ComputeShadowVolumeForEdge(int slot, Vector2 sp, Vector2 ep) +{ + if (lights[slot].shadowCount >= MAX_SHADOWS) return; + + float extension = lights[slot].outerRadius*2; + + Vector2 spVector = Vector2Normalize(Vector2Subtract(sp, lights[slot].position)); + Vector2 spProjection = Vector2Add(sp, Vector2Scale(spVector, extension)); + + Vector2 epVector = Vector2Normalize(Vector2Subtract(ep, lights[slot].position)); + Vector2 epProjection = Vector2Add(ep, Vector2Scale(epVector, extension)); + + lights[slot].shadows[lights[slot].shadowCount].vertices[0] = sp; + lights[slot].shadows[lights[slot].shadowCount].vertices[1] = ep; + lights[slot].shadows[lights[slot].shadowCount].vertices[2] = epProjection; + lights[slot].shadows[lights[slot].shadowCount].vertices[3] = spProjection; + + lights[slot].shadowCount++; +} + +// Draw the light and shadows to the mask for a light +void DrawLightMask(int slot) +{ + // Use the light mask + BeginTextureMode(lights[slot].mask); + + ClearBackground(WHITE); + + // Force the blend mode to only set the alpha of the destination + rlSetBlendFactors(RLGL_SRC_ALPHA, RLGL_SRC_ALPHA, RLGL_MIN); + rlSetBlendMode(BLEND_CUSTOM); + + // If we are valid, then draw the light radius to the alpha mask + if (lights[slot].valid) DrawCircleGradient((int)lights[slot].position.x, (int)lights[slot].position.y, lights[slot].outerRadius, ColorAlpha(WHITE, 0), WHITE); + + rlDrawRenderBatchActive(); + + // Cut out the shadows from the light radius by forcing the alpha to maximum + rlSetBlendMode(BLEND_ALPHA); + rlSetBlendFactors(RLGL_SRC_ALPHA, RLGL_SRC_ALPHA, RLGL_MAX); + rlSetBlendMode(BLEND_CUSTOM); + + // Draw the shadows to the alpha mask + for (int i = 0; i < lights[slot].shadowCount; i++) + { + DrawTriangleFan(lights[slot].shadows[i].vertices, 4, WHITE); + } + + rlDrawRenderBatchActive(); + + // Go back to normal blend mode + rlSetBlendMode(BLEND_ALPHA); + + EndTextureMode(); +} + +// Setup a light +void SetupLight(int slot, float x, float y, float radius) +{ + lights[slot].active = true; + lights[slot].valid = false; // The light must prove it is valid + lights[slot].mask = LoadRenderTexture(GetScreenWidth(), GetScreenHeight()); + lights[slot].outerRadius = radius; + + lights[slot].bounds.width = radius * 2; + lights[slot].bounds.height = radius * 2; + + MoveLight(slot, x, y); + + // Force the render texture to have something in it + DrawLightMask(slot); +} + +// See if a light needs to update it's mask +bool UpdateLight(int slot, Rectangle* boxes, int count) +{ + if (!lights[slot].active || !lights[slot].dirty) return false; + + lights[slot].dirty = false; + lights[slot].shadowCount = 0; + lights[slot].valid = false; + + for (int i = 0; i < count; i++) + { + // Are we in a box? if so we are not valid + if (CheckCollisionPointRec(lights[slot].position, boxes[i])) return false; + + // If this box is outside our bounds, we can skip it + if (!CheckCollisionRecs(lights[slot].bounds, boxes[i])) continue; + + // Check the edges that are on the same side we are, and cast shadow volumes out from them + + // Top + Vector2 sp = (Vector2){ boxes[i].x, boxes[i].y }; + Vector2 ep = (Vector2){ boxes[i].x + boxes[i].width, boxes[i].y }; + + if (lights[slot].position.y > ep.y) ComputeShadowVolumeForEdge(slot, sp, ep); + + // Right + sp = ep; + ep.y += boxes[i].height; + if (lights[slot].position.x < ep.x) ComputeShadowVolumeForEdge(slot, sp, ep); + + // Bottom + sp = ep; + ep.x -= boxes[i].width; + if (lights[slot].position.y < ep.y) ComputeShadowVolumeForEdge(slot, sp, ep); + + // Left + sp = ep; + ep.y -= boxes[i].height; + if (lights[slot].position.x > ep.x) ComputeShadowVolumeForEdge(slot, sp, ep); + + // The box itself + lights[slot].shadows[lights[slot].shadowCount].vertices[0] = (Vector2){ boxes[i].x, boxes[i].y }; + lights[slot].shadows[lights[slot].shadowCount].vertices[1] = (Vector2){ boxes[i].x, boxes[i].y + boxes[i].height }; + lights[slot].shadows[lights[slot].shadowCount].vertices[2] = (Vector2){ boxes[i].x + boxes[i].width, boxes[i].y + boxes[i].height }; + lights[slot].shadows[lights[slot].shadowCount].vertices[3] = (Vector2){ boxes[i].x + boxes[i].width, boxes[i].y }; + lights[slot].shadowCount++; + } + + lights[slot].valid = true; + + DrawLightMask(slot); + + return true; +} + +// Set up some boxes +void SetupBoxes(Rectangle *boxes, int *count) +{ + boxes[0] = (Rectangle){ 150,80, 40, 40 }; + boxes[1] = (Rectangle){ 1200, 700, 40, 40 }; + boxes[2] = (Rectangle){ 200, 600, 40, 40 }; + boxes[3] = (Rectangle){ 1000, 50, 40, 40 }; + boxes[4] = (Rectangle){ 500, 350, 40, 40 }; + + for (int i = 5; i < MAX_BOXES; i++) + { + boxes[i] = (Rectangle){(float)GetRandomValue(0,GetScreenWidth()), (float)GetRandomValue(0,GetScreenHeight()), (float)GetRandomValue(10,100), (float)GetRandomValue(10,100) }; + } + + *count = MAX_BOXES; +} + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [shapes] example - top down lights"); + + // Initialize our 'world' of boxes + int boxCount = 0; + Rectangle boxes[MAX_BOXES] = { 0 }; + SetupBoxes(boxes, &boxCount); + + // Create a checkerboard ground texture + Image img = GenImageChecked(64, 64, 32, 32, DARKBROWN, DARKGRAY); + Texture2D backgroundTexture = LoadTextureFromImage(img); + UnloadImage(img); + + // Create a global light mask to hold all the blended lights + RenderTexture lightMask = LoadRenderTexture(GetScreenWidth(), GetScreenHeight()); + + // Setup initial light + SetupLight(0, 600, 400, 300); + int nextLight = 1; + + bool showLines = false; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // Drag light 0 + if (IsMouseButtonDown(MOUSE_BUTTON_LEFT)) MoveLight(0, GetMousePosition().x, GetMousePosition().y); + + // Make a new light + if (IsMouseButtonPressed(MOUSE_BUTTON_RIGHT) && (nextLight < MAX_LIGHTS)) + { + SetupLight(nextLight, GetMousePosition().x, GetMousePosition().y, 200); + nextLight++; + } + + // Toggle debug info + if (IsKeyPressed(KEY_F1)) showLines = !showLines; + + // Update the lights and keep track if any were dirty so we know if we need to update the master light mask + bool dirtyLights = false; + for (int i = 0; i < MAX_LIGHTS; i++) + { + if (UpdateLight(i, boxes, boxCount)) dirtyLights = true; + } + + // Update the light mask + if (dirtyLights) + { + // Build up the light mask + BeginTextureMode(lightMask); + + ClearBackground(BLACK); + + // Force the blend mode to only set the alpha of the destination + rlSetBlendFactors(RLGL_SRC_ALPHA, RLGL_SRC_ALPHA, RLGL_MIN); + rlSetBlendMode(BLEND_CUSTOM); + + // Merge in all the light masks + for (int i = 0; i < MAX_LIGHTS; i++) + { + if (lights[i].active) DrawTextureRec(lights[i].mask.texture, (Rectangle){ 0, 0, (float)GetScreenWidth(), -(float)GetScreenHeight() }, Vector2Zero(), WHITE); + } + + rlDrawRenderBatchActive(); + + // Go back to normal blend + rlSetBlendMode(BLEND_ALPHA); + EndTextureMode(); + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(BLACK); + + // Draw the tile background + DrawTextureRec(backgroundTexture, (Rectangle){ 0, 0, (float)GetScreenWidth(), (float)GetScreenHeight() }, Vector2Zero(), WHITE); + + // Overlay the shadows from all the lights + DrawTextureRec(lightMask.texture, (Rectangle){ 0, 0, (float)GetScreenWidth(), -(float)GetScreenHeight() }, Vector2Zero(), ColorAlpha(WHITE, showLines? 0.75f : 1.0f)); + + // Draw the lights + for (int i = 0; i < MAX_LIGHTS; i++) + { + if (lights[i].active) DrawCircle((int)lights[i].position.x, (int)lights[i].position.y, 10, (i == 0)? YELLOW : WHITE); + } + + if (showLines) + { + for (int s = 0; s < lights[0].shadowCount; s++) + { + DrawTriangleFan(lights[0].shadows[s].vertices, 4, DARKPURPLE); + } + + for (int b = 0; b < boxCount; b++) + { + if (CheckCollisionRecs(boxes[b],lights[0].bounds)) DrawRectangleRec(boxes[b], PURPLE); + + DrawRectangleLines((int)boxes[b].x, (int)boxes[b].y, (int)boxes[b].width, (int)boxes[b].height, DARKBLUE); + } + + DrawText("(F1) Hide Shadow Volumes", 10, 50, 10, GREEN); + } + else + { + DrawText("(F1) Show Shadow Volumes", 10, 50, 10, GREEN); + } + + DrawFPS(screenWidth - 80, 10); + DrawText("Drag to move light #1", 10, 10, 10, DARKGREEN); + DrawText("Right click to add new light", 10, 30, 10, DARKGREEN); + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(backgroundTexture); + UnloadRenderTexture(lightMask); + for (int i = 0; i < MAX_LIGHTS; i++) + { + if (lights[i].active) UnloadRenderTexture(lights[i].mask); + } + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/text/resources/DotGothic16-Regular.ttf b/examples/text/resources/DotGothic16-Regular.ttf new file mode 100644 index 0000000..18b0c1e Binary files /dev/null and b/examples/text/resources/DotGothic16-Regular.ttf differ diff --git a/examples/text/resources/DotGothic16-Regular_OFL.txt b/examples/text/resources/DotGothic16-Regular_OFL.txt new file mode 100644 index 0000000..118ae3a --- /dev/null +++ b/examples/text/resources/DotGothic16-Regular_OFL.txt @@ -0,0 +1,93 @@ +Copyright 2020 The DotGothic16 Project Authors (https://github.com/fontworks-fonts/DotGothic16) + +This Font Software is licensed under the SIL Open Font License, Version 1.1. +This license is copied below, and is also available with a FAQ at: +http://scripts.sil.org/OFL + + +----------------------------------------------------------- +SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 +----------------------------------------------------------- + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Reserved Font Name" refers to any names specified as such after the +copyright statement(s). + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting -- in part or in whole -- any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, +in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, +redistributed and/or sold with any software, provided that each copy +contains the above copyright notice and this license. These can be +included either as stand-alone text files, human-readable headers or +in the appropriate machine-readable metadata fields within text or +binary files as long as those fields can be easily viewed by the user. + +3) No Modified Version of the Font Software may use the Reserved Font +Name(s) unless explicit written permission is granted by the corresponding +Copyright Holder. This restriction only applies to the primary font name as +presented to the users. + +4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font +Software shall not be used to promote, endorse or advertise any +Modified Version, except to acknowledge the contribution(s) of the +Copyright Holder(s) and the Author(s) or with their explicit written +permission. + +5) The Font Software, modified or unmodified, in part or in whole, +must be distributed entirely under this license, and must not be +distributed under any other license. The requirement for fonts to +remain under this license does not apply to any document created +using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/examples/text/resources/KAISG.ttf b/examples/text/resources/KAISG.ttf new file mode 100644 index 0000000..04478b2 Binary files /dev/null and b/examples/text/resources/KAISG.ttf differ diff --git a/examples/text/resources/LICENSE.md b/examples/text/resources/LICENSE.md new file mode 100644 index 0000000..506a4aa --- /dev/null +++ b/examples/text/resources/LICENSE.md @@ -0,0 +1,20 @@ +| resource | author | licence | notes | +| :----------------------------- | :---------: | :------ | :---- | +| fonts/alagard.png | Hewett Tsoi | [Freeware](https://www.dafont.com/es/alagard.font) | Atlas created by [@raysan5](https://github.com/raysan5) | +| fonts/romulus.png | Hewett Tsoi | [Freeware](https://www.dafont.com/es/romulus.font) | Atlas created by [@raysan5](https://github.com/raysan5) | +| fonts/alpha_beta.png | [Brian Kent (AEnigma)](https://www.dafont.com/es/aenigma.d188) | [Freeware](https://www.dafont.com/es/alpha-beta.font) | Atlas created by [@raysan5](https://github.com/raysan5) | +| fonts/setback.png | [Brian Kent (AEnigma)](https://www.dafont.com/es/aenigma.d188) | [Freeware](https://www.dafont.com/es/setback.font) | Atlas created by [@raysan5](https://github.com/raysan5) | +| fonts/jupiter_crash.png | [Brian Kent (AEnigma)](https://www.dafont.com/es/aenigma.d188) | [Freeware](https://www.dafont.com/es/jupiter-crash.font) | Atlas created by [@raysan5](https://github.com/raysan5) | +| fonts/mecha.png | Captain Falcon | [Freeware](https://www.dafont.com/es/mecha-cf.font) | Atlas created by [@raysan5](https://github.com/raysan5) | +| fonts/pixelplay.png | Aleksander Shevchuk | [Freeware](https://www.dafont.com/es/pixelplay.font) | Atlas created by [@raysan5](https://github.com/raysan5) | +| fonts/pixantiqua.ttf | Gerhard Großmann | [Freeware](https://www.dafont.com/es/pixantiqua.font) | Atlas created by [@raysan5](https://github.com/raysan5) | +| anonymous_pro_bold.ttf | [Mark Simonson](https://fonts.google.com/specimen/Anonymous+Pro) | [Open Font License](https://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=OFL) | - | +| custom_alagard.png | [Brian Kent (AEnigma)](https://www.dafont.com/es/aenigma.d188) | [Freeware](https://www.dafont.com/es/jupiter-crash.font) | Atlas created by [@raysan5](https://github.com/raysan5) | +| custom_jupiter_crash.png | [Brian Kent (AEnigma)](https://www.dafont.com/es/aenigma.d188) | [Freeware](https://www.dafont.com/es/jupiter-crash.font) | Atlas created by [@raysan5](https://github.com/raysan5) | +| custom_mecha.png | [Brian Kent (AEnigma)](https://www.dafont.com/es/aenigma.d188) | [Freeware](https://www.dafont.com/es/jupiter-crash.font) | Atlas created by [@raysan5](https://github.com/raysan5) | +| dejavu.fnt, dejavu.png | [DejaVu Fonts](https://dejavu-fonts.github.io/) | [Free](https://dejavu-fonts.github.io/License.html) | Atlas made with [BMFont](https://www.angelcode.com/products/bmfont/) by [@raysan5](https://github.com/raysan5) | +| KAISG.ttf | [Dieter Steffmann](http://www.steffmann.de/wordpress/) | [Freeware](https://www.1001fonts.com/users/steffmann/) | [Kaiserzeit Gotisch](https://www.dafont.com/es/kaiserzeit-gotisch.font) font | +| noto_cjk.fnt, noto_cjk.png | [Google Fonts](https://www.google.com/get/noto/help/cjk/) | [Open Font License](https://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=OFL) | Atlas made with [BMFont](https://www.angelcode.com/products/bmfont/) by [@raysan5](https://github.com/raysan5) | +| pixantiqua.fnt, pixantiqua.png | Gerhard Großmann | [Freeware](https://www.dafont.com/es/pixantiqua.font) | Atlas made with [BMFont](https://www.angelcode.com/products/bmfont/) by [@raysan5](https://github.com/raysan5) | +| pixantiqua.ttf | Gerhard Großmann | [Freeware](https://www.dafont.com/es/pixantiqua.font) | - | +| symbola.fnt, symbola.png | George Douros | [Freeware](https://fontlibrary.org/en/font/symbola) | Atlas made with [BMFont](https://www.angelcode.com/products/bmfont/) by [@raysan5](https://github.com/raysan5) | diff --git a/examples/text/resources/anonymous_pro_bold.ttf b/examples/text/resources/anonymous_pro_bold.ttf new file mode 100644 index 0000000..badb0aa Binary files /dev/null and b/examples/text/resources/anonymous_pro_bold.ttf differ diff --git a/examples/text/resources/custom_alagard.png b/examples/text/resources/custom_alagard.png new file mode 100644 index 0000000..bbe688e Binary files /dev/null and b/examples/text/resources/custom_alagard.png differ diff --git a/examples/text/resources/custom_jupiter_crash.png b/examples/text/resources/custom_jupiter_crash.png new file mode 100644 index 0000000..c89572e Binary files /dev/null and b/examples/text/resources/custom_jupiter_crash.png differ diff --git a/examples/text/resources/custom_mecha.png b/examples/text/resources/custom_mecha.png new file mode 100644 index 0000000..5e20313 Binary files /dev/null and b/examples/text/resources/custom_mecha.png differ diff --git a/examples/text/resources/dejavu.fnt b/examples/text/resources/dejavu.fnt new file mode 100644 index 0000000..6503b35 --- /dev/null +++ b/examples/text/resources/dejavu.fnt @@ -0,0 +1,1115 @@ +info face="DejaVu Sans" size=-16 bold=0 italic=0 charset="" unicode=1 stretchH=100 smooth=1 aa=1 padding=0,0,0,0 spacing=2,2 outline=1 +common lineHeight=19 base=15 scaleW=512 scaleH=512 pages=1 packed=0 alphaChnl=0 redChnl=4 greenChnl=4 blueChnl=4 +page id=0 file="dejavu.png" +chars count=1111 +char id=32 x=259 y=464 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=5 page=0 chnl=15 +char id=33 x=464 y=382 width=4 height=14 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=34 x=112 y=461 width=7 height=7 xoffset=0 yoffset=2 xadvance=7 page=0 chnl=15 +char id=35 x=33 y=407 width=14 height=13 xoffset=0 yoffset=3 xadvance=13 page=0 chnl=15 +char id=36 x=381 y=153 width=10 height=16 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=37 x=493 y=222 width=17 height=14 xoffset=-1 yoffset=2 xadvance=15 page=0 chnl=15 +char id=38 x=275 y=257 width=14 height=14 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=39 x=506 y=395 width=4 height=7 xoffset=0 yoffset=2 xadvance=4 page=0 chnl=15 +char id=40 x=18 y=178 width=6 height=16 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=41 x=10 y=178 width=6 height=16 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=42 x=192 y=444 width=10 height=11 xoffset=-1 yoffset=2 xadvance=8 page=0 chnl=15 +char id=43 x=369 y=415 width=13 height=11 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=44 x=474 y=450 width=5 height=6 xoffset=0 yoffset=12 xadvance=5 page=0 chnl=15 +char id=45 x=191 y=468 width=7 height=4 xoffset=-1 yoffset=9 xadvance=6 page=0 chnl=15 +char id=46 x=207 y=465 width=5 height=4 xoffset=0 yoffset=12 xadvance=5 page=0 chnl=15 +char id=47 x=331 y=224 width=8 height=15 xoffset=-1 yoffset=2 xadvance=5 page=0 chnl=15 +char id=48 x=396 y=304 width=12 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=49 x=290 y=369 width=10 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=50 x=386 y=369 width=10 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=51 x=374 y=369 width=10 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=52 x=466 y=302 width=12 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=53 x=338 y=369 width=10 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=54 x=273 y=353 width=11 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=55 x=326 y=369 width=10 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=56 x=286 y=353 width=11 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=57 x=42 y=327 width=12 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=58 x=428 y=441 width=5 height=10 xoffset=0 yoffset=6 xadvance=5 page=0 chnl=15 +char id=59 x=472 y=398 width=5 height=12 xoffset=0 yoffset=6 xadvance=5 page=0 chnl=15 +char id=60 x=339 y=415 width=13 height=11 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=61 x=42 y=461 width=13 height=7 xoffset=0 yoffset=7 xadvance=13 page=0 chnl=15 +char id=62 x=324 y=415 width=13 height=11 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=63 x=501 y=238 width=9 height=14 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=15 +char id=64 x=368 y=135 width=17 height=16 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=65 x=60 y=295 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=66 x=299 y=353 width=11 height=14 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=67 x=90 y=295 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=68 x=105 y=294 width=13 height=14 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=69 x=325 y=353 width=11 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=70 x=194 y=371 width=10 height=14 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=15 +char id=71 x=208 y=273 width=14 height=14 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=72 x=420 y=320 width=12 height=14 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=73 x=423 y=384 width=5 height=14 xoffset=0 yoffset=2 xadvance=5 page=0 chnl=15 +char id=74 x=237 y=136 width=7 height=17 xoffset=-2 yoffset=2 xadvance=5 page=0 chnl=15 +char id=75 x=60 y=311 width=12 height=14 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=76 x=72 y=391 width=10 height=14 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=15 +char id=77 x=288 y=273 width=14 height=14 xoffset=0 yoffset=2 xadvance=14 page=0 chnl=15 +char id=78 x=74 y=311 width=12 height=14 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=79 x=320 y=273 width=14 height=14 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=80 x=351 y=353 width=11 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=81 x=467 y=135 width=14 height=16 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=82 x=102 y=311 width=12 height=14 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=83 x=116 y=310 width=12 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=84 x=130 y=310 width=12 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=85 x=144 y=307 width=12 height=14 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=86 x=496 y=270 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=87 x=164 y=242 width=18 height=14 xoffset=-1 yoffset=2 xadvance=16 page=0 chnl=15 +char id=88 x=150 y=291 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=89 x=158 y=307 width=12 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=90 x=210 y=289 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=91 x=34 y=178 width=6 height=16 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=92 x=321 y=224 width=8 height=15 xoffset=-1 yoffset=2 xadvance=5 page=0 chnl=15 +char id=93 x=26 y=178 width=6 height=16 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=94 x=27 y=461 width=13 height=7 xoffset=0 yoffset=2 xadvance=13 page=0 chnl=15 +char id=95 x=107 y=470 width=12 height=4 xoffset=-2 yoffset=16 xadvance=8 page=0 chnl=15 +char id=96 x=398 y=453 width=7 height=6 xoffset=0 yoffset=1 xadvance=8 page=0 chnl=15 +char id=97 x=312 y=428 width=11 height=11 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=98 x=455 y=350 width=11 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=99 x=36 y=448 width=10 height=11 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=100 x=468 y=350 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=101 x=286 y=428 width=11 height=11 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=102 x=311 y=385 width=8 height=14 xoffset=-1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=103 x=65 y=375 width=11 height=14 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=104 x=410 y=369 width=10 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=105 x=476 y=382 width=4 height=14 xoffset=0 yoffset=2 xadvance=4 page=0 chnl=15 +char id=106 x=289 y=136 width=6 height=17 xoffset=-2 yoffset=2 xadvance=4 page=0 chnl=15 +char id=107 x=130 y=374 width=11 height=14 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=15 +char id=108 x=482 y=382 width=4 height=14 xoffset=0 yoffset=2 xadvance=4 page=0 chnl=15 +char id=109 x=93 y=422 width=16 height=11 xoffset=0 yoffset=5 xadvance=16 page=0 chnl=15 +char id=110 x=495 y=424 width=10 height=11 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=111 x=260 y=430 width=11 height=11 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=112 x=143 y=374 width=11 height=14 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=113 x=156 y=371 width=11 height=14 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=114 x=292 y=441 width=8 height=11 xoffset=0 yoffset=5 xadvance=7 page=0 chnl=15 +char id=115 x=435 y=428 width=10 height=11 xoffset=-1 yoffset=5 xadvance=8 page=0 chnl=15 +char id=116 x=229 y=402 width=8 height=13 xoffset=-1 yoffset=3 xadvance=6 page=0 chnl=15 +char id=117 x=411 y=428 width=10 height=11 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=118 x=143 y=435 width=11 height=11 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=119 x=213 y=418 width=15 height=11 xoffset=-1 yoffset=5 xadvance=13 page=0 chnl=15 +char id=120 x=130 y=435 width=11 height=11 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=121 x=476 y=318 width=11 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=122 x=363 y=428 width=10 height=11 xoffset=-1 yoffset=5 xadvance=8 page=0 chnl=15 +char id=123 x=60 y=141 width=10 height=17 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=124 x=469 y=20 width=5 height=18 xoffset=0 yoffset=2 xadvance=5 page=0 chnl=15 +char id=125 x=48 y=141 width=10 height=17 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=126 x=266 y=456 width=13 height=6 xoffset=0 yoffset=7 xadvance=13 page=0 chnl=15 +char id=160 x=284 y=463 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=5 page=0 chnl=15 +char id=161 x=506 y=153 width=4 height=14 xoffset=1 yoffset=5 xadvance=6 page=0 chnl=15 +char id=162 x=492 y=205 width=10 height=15 xoffset=0 yoffset=3 xadvance=10 page=0 chnl=15 +char id=163 x=0 y=343 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=164 x=440 y=414 width=12 height=11 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=165 x=0 y=327 width=12 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=166 x=42 y=178 width=5 height=16 xoffset=0 yoffset=3 xadvance=5 page=0 chnl=15 +char id=167 x=345 y=154 width=10 height=16 xoffset=-1 yoffset=2 xadvance=8 page=0 chnl=15 +char id=168 x=502 y=447 width=8 height=5 xoffset=0 yoffset=2 xadvance=8 page=0 chnl=15 +char id=169 x=352 y=273 width=14 height=14 xoffset=1 yoffset=2 xadvance=16 page=0 chnl=15 +char id=170 x=237 y=443 width=9 height=11 xoffset=-1 yoffset=2 xadvance=8 page=0 chnl=15 +char id=171 x=337 y=441 width=10 height=10 xoffset=0 yoffset=6 xadvance=10 page=0 chnl=15 +char id=172 x=462 y=440 width=13 height=8 xoffset=0 yoffset=7 xadvance=13 page=0 chnl=15 +char id=173 x=155 y=470 width=7 height=4 xoffset=-1 yoffset=9 xadvance=6 page=0 chnl=15 +char id=174 x=400 y=272 width=14 height=14 xoffset=1 yoffset=2 xadvance=16 page=0 chnl=15 +char id=175 x=145 y=470 width=8 height=4 xoffset=0 yoffset=2 xadvance=8 page=0 chnl=15 +char id=176 x=0 y=461 width=8 height=8 xoffset=0 yoffset=2 xadvance=8 page=0 chnl=15 +char id=177 x=337 y=401 width=13 height=12 xoffset=0 yoffset=4 xadvance=13 page=0 chnl=15 +char id=178 x=392 y=441 width=8 height=10 xoffset=-1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=179 x=382 y=441 width=8 height=10 xoffset=-1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=180 x=380 y=453 width=7 height=6 xoffset=1 yoffset=1 xadvance=8 page=0 chnl=15 +char id=181 x=169 y=371 width=11 height=14 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=182 x=393 y=153 width=10 height=16 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=183 x=14 y=471 width=5 height=5 xoffset=0 yoffset=7 xadvance=5 page=0 chnl=15 +char id=184 x=423 y=453 width=6 height=6 xoffset=1 yoffset=13 xadvance=8 page=0 chnl=15 +char id=185 x=411 y=441 width=7 height=10 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=186 x=259 y=443 width=9 height=11 xoffset=-1 yoffset=2 xadvance=8 page=0 chnl=15 +char id=187 x=349 y=441 width=10 height=10 xoffset=0 yoffset=6 xadvance=10 page=0 chnl=15 +char id=188 x=411 y=238 width=16 height=14 xoffset=0 yoffset=2 xadvance=16 page=0 chnl=15 +char id=189 x=447 y=238 width=16 height=14 xoffset=0 yoffset=2 xadvance=16 page=0 chnl=15 +char id=190 x=356 y=240 width=17 height=14 xoffset=-1 yoffset=2 xadvance=16 page=0 chnl=15 +char id=191 x=228 y=386 width=9 height=14 xoffset=0 yoffset=5 xadvance=9 page=0 chnl=15 +char id=192 x=135 y=79 width=13 height=17 xoffset=-1 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=193 x=150 y=79 width=13 height=17 xoffset=-1 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=194 x=165 y=79 width=13 height=17 xoffset=-1 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=195 x=180 y=79 width=13 height=17 xoffset=-1 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=196 x=195 y=79 width=13 height=17 xoffset=-1 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=197 x=210 y=79 width=13 height=17 xoffset=-1 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=198 x=299 y=241 width=17 height=14 xoffset=-1 yoffset=2 xadvance=16 page=0 chnl=15 +char id=199 x=225 y=79 width=13 height=17 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=200 x=119 y=118 width=11 height=17 xoffset=0 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=201 x=106 y=119 width=11 height=17 xoffset=0 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=202 x=80 y=119 width=11 height=17 xoffset=0 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=203 x=353 y=116 width=11 height=17 xoffset=0 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=204 x=504 y=97 width=6 height=17 xoffset=-1 yoffset=-1 xadvance=5 page=0 chnl=15 +char id=205 x=321 y=136 width=6 height=17 xoffset=-1 yoffset=-1 xadvance=5 page=0 chnl=15 +char id=206 x=187 y=136 width=8 height=17 xoffset=-2 yoffset=-1 xadvance=5 page=0 chnl=15 +char id=207 x=147 y=136 width=8 height=17 xoffset=-2 yoffset=-1 xadvance=5 page=0 chnl=15 +char id=208 x=448 y=270 width=14 height=14 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=209 x=420 y=97 width=12 height=17 xoffset=0 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=210 x=112 y=61 width=14 height=17 xoffset=-1 yoffset=-1 xadvance=13 page=0 chnl=15 +char id=211 x=32 y=65 width=14 height=17 xoffset=-1 yoffset=-1 xadvance=13 page=0 chnl=15 +char id=212 x=128 y=60 width=14 height=17 xoffset=-1 yoffset=-1 xadvance=13 page=0 chnl=15 +char id=213 x=457 y=40 width=14 height=17 xoffset=-1 yoffset=-1 xadvance=13 page=0 chnl=15 +char id=214 x=473 y=40 width=14 height=17 xoffset=-1 yoffset=-1 xadvance=13 page=0 chnl=15 +char id=215 x=380 y=401 width=12 height=12 xoffset=1 yoffset=4 xadvance=13 page=0 chnl=15 +char id=216 x=451 y=135 width=14 height=16 xoffset=-1 yoffset=1 xadvance=13 page=0 chnl=15 +char id=217 x=329 y=79 width=12 height=17 xoffset=0 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=218 x=476 y=97 width=12 height=17 xoffset=0 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=219 x=308 y=98 width=12 height=17 xoffset=0 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=220 x=70 y=100 width=12 height=17 xoffset=0 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=221 x=56 y=103 width=12 height=17 xoffset=-1 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=222 x=26 y=375 width=11 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=223 x=0 y=375 width=11 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=224 x=52 y=213 width=11 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=225 x=39 y=213 width=11 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=226 x=26 y=213 width=11 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=227 x=494 y=350 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=228 x=481 y=350 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=229 x=293 y=155 width=11 height=16 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=15 +char id=230 x=0 y=422 width=17 height=11 xoffset=-1 yoffset=5 xadvance=16 page=0 chnl=15 +char id=231 x=192 y=387 width=10 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=232 x=478 y=188 width=11 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=233 x=452 y=188 width=11 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=234 x=426 y=188 width=11 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=235 x=429 y=352 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=236 x=380 y=223 width=7 height=15 xoffset=-2 yoffset=1 xadvance=4 page=0 chnl=15 +char id=237 x=371 y=223 width=7 height=15 xoffset=-1 yoffset=1 xadvance=4 page=0 chnl=15 +char id=238 x=351 y=223 width=8 height=15 xoffset=-2 yoffset=1 xadvance=4 page=0 chnl=15 +char id=239 x=321 y=385 width=8 height=14 xoffset=-2 yoffset=2 xadvance=4 page=0 chnl=15 +char id=240 x=403 y=353 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=241 x=422 y=368 width=10 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=242 x=286 y=207 width=11 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=243 x=260 y=207 width=11 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=244 x=234 y=207 width=11 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=245 x=364 y=353 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=246 x=338 y=353 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=247 x=310 y=441 width=13 height=10 xoffset=0 yoffset=6 xadvance=13 page=0 chnl=15 +char id=248 x=64 y=407 width=12 height=13 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=15 +char id=249 x=96 y=229 width=10 height=15 xoffset=0 yoffset=1 xadvance=10 page=0 chnl=15 +char id=250 x=84 y=229 width=10 height=15 xoffset=0 yoffset=1 xadvance=10 page=0 chnl=15 +char id=251 x=24 y=230 width=10 height=15 xoffset=0 yoffset=1 xadvance=10 page=0 chnl=15 +char id=252 x=60 y=391 width=10 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=253 x=315 y=20 width=11 height=18 xoffset=-1 yoffset=1 xadvance=9 page=0 chnl=15 +char id=254 x=158 y=117 width=11 height=17 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=255 x=171 y=117 width=11 height=17 xoffset=-1 yoffset=2 xadvance=9 page=0 chnl=15 +char id=256 x=45 y=160 width=13 height=16 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=15 +char id=257 x=312 y=353 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=258 x=0 y=26 width=13 height=18 xoffset=-1 yoffset=-2 xadvance=11 page=0 chnl=15 +char id=259 x=195 y=207 width=11 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=260 x=80 y=62 width=14 height=17 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=261 x=322 y=321 width=12 height=14 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=262 x=255 y=79 width=13 height=17 xoffset=-1 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=263 x=312 y=207 width=10 height=15 xoffset=-1 yoffset=1 xadvance=9 page=0 chnl=15 +char id=264 x=270 y=79 width=13 height=17 xoffset=-1 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=265 x=384 y=206 width=10 height=15 xoffset=-1 yoffset=1 xadvance=9 page=0 chnl=15 +char id=266 x=285 y=79 width=13 height=17 xoffset=-1 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=267 x=24 y=391 width=10 height=14 xoffset=-1 yoffset=2 xadvance=9 page=0 chnl=15 +char id=268 x=300 y=79 width=13 height=17 xoffset=-1 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=269 x=456 y=205 width=10 height=15 xoffset=-1 yoffset=1 xadvance=9 page=0 chnl=15 +char id=270 x=288 y=60 width=13 height=17 xoffset=0 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=271 x=432 y=270 width=14 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=272 x=368 y=273 width=14 height=14 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=273 x=266 y=321 width=12 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=274 x=254 y=155 width=11 height=16 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=15 +char id=275 x=234 y=353 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=276 x=197 y=117 width=11 height=17 xoffset=0 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=277 x=169 y=207 width=11 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=278 x=210 y=117 width=11 height=17 xoffset=0 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=279 x=247 y=353 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=280 x=223 y=117 width=11 height=17 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=281 x=260 y=353 width=11 height=14 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=282 x=236 y=117 width=11 height=17 xoffset=0 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=283 x=156 y=208 width=11 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=284 x=425 y=40 width=14 height=17 xoffset=-1 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=285 x=172 y=21 width=11 height=18 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=286 x=377 y=40 width=14 height=17 xoffset=-1 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=287 x=328 y=20 width=11 height=18 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=288 x=48 y=62 width=14 height=17 xoffset=-1 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=289 x=444 y=116 width=11 height=17 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=290 x=394 y=0 width=14 height=18 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=291 x=185 y=21 width=11 height=18 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=292 x=42 y=103 width=12 height=17 xoffset=0 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=293 x=322 y=98 width=12 height=17 xoffset=-2 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=294 x=108 y=262 width=15 height=14 xoffset=0 yoffset=2 xadvance=15 page=0 chnl=15 +char id=295 x=298 y=305 width=12 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=296 x=157 y=136 width=8 height=17 xoffset=-2 yoffset=-1 xadvance=5 page=0 chnl=15 +char id=297 x=281 y=385 width=8 height=14 xoffset=-2 yoffset=2 xadvance=4 page=0 chnl=15 +char id=298 x=486 y=153 width=8 height=16 xoffset=-2 yoffset=0 xadvance=5 page=0 chnl=15 +char id=299 x=271 y=385 width=8 height=14 xoffset=-2 yoffset=2 xadvance=4 page=0 chnl=15 +char id=300 x=107 y=138 width=8 height=17 xoffset=-2 yoffset=-1 xadvance=5 page=0 chnl=15 +char id=301 x=311 y=224 width=8 height=15 xoffset=-2 yoffset=1 xadvance=4 page=0 chnl=15 +char id=302 x=305 y=136 width=6 height=17 xoffset=0 yoffset=2 xadvance=5 page=0 chnl=15 +char id=303 x=313 y=136 width=6 height=17 xoffset=0 yoffset=2 xadvance=4 page=0 chnl=15 +char id=304 x=505 y=116 width=5 height=17 xoffset=0 yoffset=-1 xadvance=5 page=0 chnl=15 +char id=305 x=506 y=382 width=4 height=11 xoffset=0 yoffset=5 xadvance=4 page=0 chnl=15 +char id=306 x=84 y=138 width=10 height=17 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=15 +char id=307 x=137 y=137 width=8 height=17 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=15 +char id=308 x=101 y=0 width=8 height=20 xoffset=-2 yoffset=-1 xadvance=5 page=0 chnl=15 +char id=309 x=443 y=20 width=8 height=18 xoffset=-2 yoffset=1 xadvance=4 page=0 chnl=15 +char id=310 x=88 y=22 width=12 height=18 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=311 x=302 y=21 width=11 height=18 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=15 +char id=312 x=0 y=435 width=11 height=11 xoffset=0 yoffset=5 xadvance=9 page=0 chnl=15 +char id=313 x=493 y=116 width=10 height=17 xoffset=0 yoffset=-1 xadvance=9 page=0 chnl=15 +char id=314 x=297 y=136 width=6 height=17 xoffset=0 yoffset=-1 xadvance=4 page=0 chnl=15 +char id=315 x=401 y=20 width=10 height=18 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=15 +char id=316 x=461 y=20 width=6 height=18 xoffset=-1 yoffset=2 xadvance=4 page=0 chnl=15 +char id=317 x=48 y=391 width=10 height=14 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=15 +char id=318 x=406 y=385 width=7 height=14 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=319 x=302 y=369 width=10 height=14 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=15 +char id=320 x=379 y=385 width=7 height=14 xoffset=0 yoffset=2 xadvance=5 page=0 chnl=15 +char id=321 x=340 y=305 width=12 height=14 xoffset=-2 yoffset=2 xadvance=9 page=0 chnl=15 +char id=322 x=397 y=385 width=7 height=14 xoffset=-1 yoffset=2 xadvance=5 page=0 chnl=15 +char id=323 x=238 y=98 width=12 height=17 xoffset=0 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=324 x=108 y=229 width=10 height=15 xoffset=0 yoffset=1 xadvance=10 page=0 chnl=15 +char id=325 x=60 y=23 width=12 height=18 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=326 x=144 y=226 width=10 height=15 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=327 x=210 y=98 width=12 height=17 xoffset=0 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=328 x=336 y=207 width=10 height=15 xoffset=0 yoffset=1 xadvance=10 page=0 chnl=15 +char id=329 x=315 y=289 width=13 height=14 xoffset=0 yoffset=2 xadvance=13 page=0 chnl=15 +char id=330 x=168 y=98 width=12 height=17 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=331 x=216 y=387 width=10 height=14 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=332 x=483 y=135 width=14 height=16 xoffset=-1 yoffset=0 xadvance=13 page=0 chnl=15 +char id=333 x=13 y=343 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=334 x=64 y=62 width=14 height=17 xoffset=-1 yoffset=-1 xadvance=13 page=0 chnl=15 +char id=335 x=374 y=189 width=11 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=336 x=176 y=60 width=14 height=17 xoffset=-1 yoffset=-1 xadvance=13 page=0 chnl=15 +char id=337 x=400 y=188 width=11 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=338 x=63 y=247 width=19 height=14 xoffset=-1 yoffset=2 xadvance=17 page=0 chnl=15 +char id=339 x=486 y=398 width=18 height=11 xoffset=-1 yoffset=5 xadvance=16 page=0 chnl=15 +char id=340 x=14 y=103 width=12 height=17 xoffset=0 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=341 x=236 y=224 width=9 height=15 xoffset=0 yoffset=1 xadvance=7 page=0 chnl=15 +char id=342 x=116 y=21 width=12 height=18 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=343 x=192 y=224 width=9 height=15 xoffset=-1 yoffset=5 xadvance=7 page=0 chnl=15 +char id=344 x=455 y=78 width=12 height=17 xoffset=0 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=345 x=291 y=224 width=8 height=15 xoffset=0 yoffset=1 xadvance=7 page=0 chnl=15 +char id=346 x=182 y=98 width=12 height=17 xoffset=-1 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=347 x=360 y=206 width=10 height=15 xoffset=-1 yoffset=1 xadvance=8 page=0 chnl=15 +char id=348 x=462 y=97 width=12 height=17 xoffset=-1 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=349 x=396 y=205 width=10 height=15 xoffset=-1 yoffset=1 xadvance=8 page=0 chnl=15 +char id=350 x=497 y=78 width=12 height=17 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=351 x=180 y=387 width=10 height=14 xoffset=-1 yoffset=5 xadvance=8 page=0 chnl=15 +char id=352 x=84 y=100 width=12 height=17 xoffset=-1 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=353 x=444 y=205 width=10 height=15 xoffset=-1 yoffset=1 xadvance=8 page=0 chnl=15 +char id=354 x=98 y=100 width=12 height=17 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=355 x=0 y=178 width=8 height=16 xoffset=-1 yoffset=3 xadvance=6 page=0 chnl=15 +char id=356 x=126 y=99 width=12 height=17 xoffset=-1 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=357 x=361 y=223 width=8 height=15 xoffset=-1 yoffset=1 xadvance=6 page=0 chnl=15 +char id=358 x=294 y=321 width=12 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=359 x=239 y=402 width=8 height=13 xoffset=-1 yoffset=3 xadvance=6 page=0 chnl=15 +char id=360 x=196 y=98 width=12 height=17 xoffset=0 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=361 x=84 y=391 width=10 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=362 x=173 y=155 width=12 height=16 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=15 +char id=363 x=230 y=370 width=10 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=364 x=280 y=98 width=12 height=17 xoffset=0 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=365 x=132 y=226 width=10 height=15 xoffset=0 yoffset=1 xadvance=10 page=0 chnl=15 +char id=366 x=294 y=98 width=12 height=17 xoffset=0 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=367 x=453 y=153 width=10 height=16 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=15 +char id=368 x=350 y=97 width=12 height=17 xoffset=0 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=369 x=12 y=230 width=10 height=15 xoffset=0 yoffset=1 xadvance=10 page=0 chnl=15 +char id=370 x=364 y=97 width=12 height=17 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=371 x=104 y=343 width=11 height=14 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=372 x=126 y=41 width=18 height=17 xoffset=-1 yoffset=-1 xadvance=16 page=0 chnl=15 +char id=373 x=343 y=172 width=15 height=15 xoffset=-1 yoffset=1 xadvance=13 page=0 chnl=15 +char id=374 x=434 y=97 width=12 height=17 xoffset=-1 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=375 x=289 y=21 width=11 height=18 xoffset=-1 yoffset=1 xadvance=9 page=0 chnl=15 +char id=376 x=14 y=122 width=12 height=17 xoffset=-1 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=377 x=105 y=80 width=13 height=17 xoffset=-1 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=378 x=348 y=206 width=10 height=15 xoffset=-1 yoffset=1 xadvance=8 page=0 chnl=15 +char id=379 x=90 y=81 width=13 height=17 xoffset=-1 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=380 x=156 y=387 width=10 height=14 xoffset=-1 yoffset=2 xadvance=8 page=0 chnl=15 +char id=381 x=60 y=81 width=13 height=17 xoffset=-1 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=382 x=156 y=225 width=10 height=15 xoffset=-1 yoffset=1 xadvance=8 page=0 chnl=15 +char id=383 x=331 y=385 width=8 height=14 xoffset=-1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=384 x=434 y=320 width=12 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=385 x=243 y=257 width=14 height=14 xoffset=-2 yoffset=2 xadvance=12 page=0 chnl=15 +char id=386 x=78 y=375 width=11 height=14 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=387 x=416 y=352 width=11 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=388 x=364 y=321 width=12 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=389 x=480 y=302 width=12 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=390 x=225 y=289 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=391 x=310 y=41 width=15 height=17 xoffset=-1 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=392 x=270 y=305 width=12 height=14 xoffset=-1 yoffset=2 xadvance=9 page=0 chnl=15 +char id=393 x=259 y=257 width=14 height=14 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=394 x=483 y=238 width=16 height=14 xoffset=-2 yoffset=2 xadvance=13 page=0 chnl=15 +char id=395 x=130 y=358 width=11 height=14 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=396 x=377 y=337 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=397 x=52 y=359 width=11 height=14 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=398 x=325 y=337 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=399 x=419 y=254 width=14 height=14 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=400 x=12 y=391 width=10 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=401 x=336 y=98 width=12 height=17 xoffset=-2 yoffset=2 xadvance=9 page=0 chnl=15 +char id=402 x=96 y=138 width=9 height=17 xoffset=-2 yoffset=2 xadvance=6 page=0 chnl=15 +char id=403 x=239 y=41 width=16 height=17 xoffset=-1 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=404 x=363 y=59 width=13 height=17 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=405 x=36 y=263 width=16 height=14 xoffset=0 yoffset=2 xadvance=16 page=0 chnl=15 +char id=406 x=361 y=385 width=7 height=14 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=407 x=388 y=385 width=7 height=14 xoffset=-1 yoffset=2 xadvance=5 page=0 chnl=15 +char id=408 x=165 y=291 width=13 height=14 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=409 x=442 y=336 width=11 height=14 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=15 +char id=410 x=370 y=385 width=7 height=14 xoffset=-1 yoffset=2 xadvance=4 page=0 chnl=15 +char id=411 x=468 y=334 width=11 height=14 xoffset=-1 yoffset=2 xadvance=9 page=0 chnl=15 +char id=412 x=429 y=238 width=16 height=14 xoffset=0 yoffset=2 xadvance=16 page=0 chnl=15 +char id=413 x=409 y=40 width=14 height=17 xoffset=-2 yoffset=2 xadvance=12 page=0 chnl=15 +char id=414 x=218 y=370 width=10 height=14 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=415 x=96 y=278 width=14 height=14 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=416 x=112 y=278 width=14 height=14 xoffset=-1 yoffset=2 xadvance=15 page=0 chnl=15 +char id=417 x=352 y=401 width=12 height=12 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=15 +char id=418 x=18 y=263 width=16 height=14 xoffset=-1 yoffset=2 xadvance=15 page=0 chnl=15 +char id=419 x=450 y=286 width=13 height=14 xoffset=-1 yoffset=5 xadvance=12 page=0 chnl=15 +char id=420 x=405 y=288 width=13 height=14 xoffset=-2 yoffset=2 xadvance=10 page=0 chnl=15 +char id=421 x=288 y=117 width=11 height=17 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=422 x=159 y=155 width=12 height=16 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=423 x=14 y=327 width=12 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=424 x=132 y=448 width=10 height=11 xoffset=-1 yoffset=5 xadvance=8 page=0 chnl=15 +char id=425 x=143 y=358 width=11 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=426 x=327 y=117 width=11 height=17 xoffset=-4 yoffset=2 xadvance=5 page=0 chnl=15 +char id=427 x=476 y=153 width=8 height=16 xoffset=-1 yoffset=3 xadvance=6 page=0 chnl=15 +char id=428 x=326 y=305 width=12 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=429 x=341 y=385 width=8 height=14 xoffset=-1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=430 x=112 y=99 width=12 height=17 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=431 x=192 y=274 width=14 height=14 xoffset=0 yoffset=2 xadvance=14 page=0 chnl=15 +char id=432 x=366 y=401 width=12 height=12 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=15 +char id=433 x=240 y=273 width=14 height=14 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=434 x=70 y=327 width=12 height=14 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=435 x=128 y=275 width=14 height=14 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=436 x=176 y=274 width=14 height=14 xoffset=-1 yoffset=5 xadvance=12 page=0 chnl=15 +char id=437 x=330 y=289 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=438 x=423 y=428 width=10 height=11 xoffset=-1 yoffset=5 xadvance=8 page=0 chnl=15 +char id=439 x=489 y=318 width=11 height=14 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=440 x=242 y=305 width=12 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=441 x=104 y=375 width=11 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=442 x=0 y=230 width=10 height=15 xoffset=-1 yoffset=5 xadvance=8 page=0 chnl=15 +char id=443 x=350 y=369 width=10 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=444 x=126 y=326 width=12 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=445 x=208 y=354 width=11 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=446 x=372 y=206 width=10 height=15 xoffset=-1 yoffset=2 xadvance=8 page=0 chnl=15 +char id=447 x=195 y=355 width=11 height=14 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=448 x=505 y=39 width=5 height=17 xoffset=0 yoffset=2 xadvance=5 page=0 chnl=15 +char id=449 x=117 y=138 width=8 height=17 xoffset=0 yoffset=2 xadvance=8 page=0 chnl=15 +char id=450 x=36 y=141 width=10 height=17 xoffset=-1 yoffset=2 xadvance=7 page=0 chnl=15 +char id=451 x=458 y=382 width=4 height=14 xoffset=0 yoffset=2 xadvance=5 page=0 chnl=15 +char id=452 x=476 y=20 width=23 height=17 xoffset=0 yoffset=-1 xadvance=23 page=0 chnl=15 +char id=453 x=80 y=178 width=21 height=15 xoffset=0 yoffset=1 xadvance=21 page=0 chnl=15 +char id=454 x=103 y=175 width=19 height=15 xoffset=-1 yoffset=1 xadvance=18 page=0 chnl=15 +char id=455 x=441 y=40 width=14 height=17 xoffset=0 yoffset=2 xadvance=13 page=0 chnl=15 +char id=456 x=393 y=59 width=13 height=17 xoffset=0 yoffset=2 xadvance=13 page=0 chnl=15 +char id=457 x=264 y=136 width=7 height=17 xoffset=0 yoffset=2 xadvance=7 page=0 chnl=15 +char id=458 x=257 y=41 width=16 height=17 xoffset=0 yoffset=2 xadvance=15 page=0 chnl=15 +char id=459 x=160 y=60 width=14 height=17 xoffset=0 yoffset=2 xadvance=15 page=0 chnl=15 +char id=460 x=0 y=84 width=13 height=17 xoffset=0 yoffset=2 xadvance=13 page=0 chnl=15 +char id=461 x=408 y=59 width=13 height=17 xoffset=-1 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=462 x=221 y=207 width=11 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=463 x=217 y=136 width=8 height=17 xoffset=-2 yoffset=-1 xadvance=5 page=0 chnl=15 +char id=464 x=301 y=224 width=8 height=15 xoffset=-2 yoffset=1 xadvance=4 page=0 chnl=15 +char id=465 x=272 y=60 width=14 height=17 xoffset=-1 yoffset=-1 xadvance=13 page=0 chnl=15 +char id=466 x=247 y=207 width=11 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=467 x=483 y=78 width=12 height=17 xoffset=0 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=468 x=432 y=205 width=10 height=15 xoffset=0 yoffset=1 xadvance=10 page=0 chnl=15 +char id=469 x=158 y=21 width=12 height=18 xoffset=0 yoffset=-2 xadvance=12 page=0 chnl=15 +char id=470 x=369 y=153 width=10 height=16 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=15 +char id=471 x=242 y=0 width=12 height=19 xoffset=0 yoffset=-3 xadvance=12 page=0 chnl=15 +char id=472 x=72 y=141 width=10 height=17 xoffset=0 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=473 x=256 y=0 width=12 height=19 xoffset=0 yoffset=-3 xadvance=12 page=0 chnl=15 +char id=474 x=457 y=116 width=10 height=17 xoffset=0 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=475 x=270 y=0 width=12 height=19 xoffset=0 yoffset=-3 xadvance=12 page=0 chnl=15 +char id=476 x=0 y=141 width=10 height=17 xoffset=0 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=477 x=91 y=435 width=11 height=11 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=478 x=488 y=0 width=13 height=18 xoffset=-1 yoffset=-2 xadvance=11 page=0 chnl=15 +char id=479 x=332 y=154 width=11 height=16 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=15 +char id=480 x=458 y=0 width=13 height=18 xoffset=-1 yoffset=-2 xadvance=11 page=0 chnl=15 +char id=481 x=306 y=155 width=11 height=16 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=15 +char id=482 x=349 y=136 width=17 height=16 xoffset=-1 yoffset=0 xadvance=16 page=0 chnl=15 +char id=483 x=318 y=241 width=17 height=14 xoffset=-1 yoffset=2 xadvance=16 page=0 chnl=15 +char id=484 x=144 y=275 width=14 height=14 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=485 x=238 y=321 width=12 height=14 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=486 x=16 y=65 width=14 height=17 xoffset=-1 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=487 x=224 y=21 width=11 height=18 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=488 x=490 y=97 width=12 height=17 xoffset=0 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=489 x=423 y=59 width=13 height=17 xoffset=-2 yoffset=-1 xadvance=9 page=0 chnl=15 +char id=490 x=96 y=61 width=14 height=17 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=491 x=78 y=359 width=11 height=14 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=492 x=182 y=0 width=14 height=19 xoffset=-1 yoffset=0 xadvance=13 page=0 chnl=15 +char id=493 x=262 y=117 width=11 height=17 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=494 x=54 y=122 width=11 height=17 xoffset=0 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=495 x=211 y=21 width=11 height=18 xoffset=-1 yoffset=1 xadvance=9 page=0 chnl=15 +char id=496 x=433 y=20 width=8 height=18 xoffset=-2 yoffset=1 xadvance=4 page=0 chnl=15 +char id=497 x=398 y=222 width=23 height=14 xoffset=0 yoffset=2 xadvance=23 page=0 chnl=15 +char id=498 x=448 y=222 width=21 height=14 xoffset=0 yoffset=2 xadvance=21 page=0 chnl=15 +char id=499 x=0 y=247 width=19 height=14 xoffset=-1 yoffset=2 xadvance=18 page=0 chnl=15 +char id=500 x=208 y=60 width=14 height=17 xoffset=-1 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=501 x=263 y=21 width=11 height=18 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=502 x=124 y=243 width=18 height=14 xoffset=0 yoffset=2 xadvance=18 page=0 chnl=15 +char id=503 x=67 y=122 width=11 height=17 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=504 x=224 y=98 width=12 height=17 xoffset=0 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=505 x=48 y=230 width=10 height=15 xoffset=0 yoffset=1 xadvance=10 page=0 chnl=15 +char id=506 x=438 y=59 width=13 height=17 xoffset=-1 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=507 x=154 y=98 width=12 height=17 xoffset=-1 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=508 x=146 y=41 width=17 height=17 xoffset=-1 yoffset=-1 xadvance=16 page=0 chnl=15 +char id=509 x=181 y=173 width=17 height=15 xoffset=-1 yoffset=1 xadvance=16 page=0 chnl=15 +char id=510 x=410 y=0 width=14 height=18 xoffset=-1 yoffset=-1 xadvance=13 page=0 chnl=15 +char id=511 x=145 y=156 width=12 height=16 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=512 x=453 y=59 width=13 height=17 xoffset=-1 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=513 x=273 y=207 width=11 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=514 x=60 y=160 width=13 height=16 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=15 +char id=515 x=338 y=337 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=516 x=132 y=118 width=11 height=17 xoffset=0 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=517 x=143 y=209 width=11 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=518 x=267 y=155 width=11 height=16 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=15 +char id=519 x=273 y=337 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=520 x=501 y=20 width=9 height=17 xoffset=-2 yoffset=-1 xadvance=5 page=0 chnl=15 +char id=521 x=203 y=224 width=9 height=15 xoffset=-2 yoffset=1 xadvance=4 page=0 chnl=15 +char id=522 x=496 y=153 width=8 height=16 xoffset=-2 yoffset=0 xadvance=5 page=0 chnl=15 +char id=523 x=502 y=318 width=8 height=14 xoffset=-2 yoffset=2 xadvance=4 page=0 chnl=15 +char id=524 x=144 y=60 width=14 height=17 xoffset=-1 yoffset=-1 xadvance=13 page=0 chnl=15 +char id=525 x=104 y=212 width=11 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=526 x=387 y=135 width=14 height=16 xoffset=-1 yoffset=0 xadvance=13 page=0 chnl=15 +char id=527 x=208 y=338 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=528 x=385 y=78 width=12 height=17 xoffset=0 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=529 x=214 y=224 width=9 height=15 xoffset=-1 yoffset=1 xadvance=7 page=0 chnl=15 +char id=530 x=201 y=155 width=12 height=16 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=15 +char id=531 x=261 y=385 width=8 height=14 xoffset=0 yoffset=2 xadvance=7 page=0 chnl=15 +char id=532 x=427 y=78 width=12 height=17 xoffset=0 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=533 x=36 y=230 width=10 height=15 xoffset=0 yoffset=1 xadvance=10 page=0 chnl=15 +char id=534 x=75 y=160 width=12 height=16 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=15 +char id=535 x=446 y=368 width=10 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=536 x=144 y=21 width=12 height=18 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=537 x=60 y=230 width=10 height=15 xoffset=-1 yoffset=5 xadvance=8 page=0 chnl=15 +char id=538 x=102 y=22 width=12 height=18 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=539 x=177 y=136 width=8 height=17 xoffset=-1 yoffset=3 xadvance=6 page=0 chnl=15 +char id=540 x=341 y=20 width=10 height=18 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=541 x=120 y=226 width=10 height=15 xoffset=-1 yoffset=5 xadvance=8 page=0 chnl=15 +char id=542 x=378 y=97 width=12 height=17 xoffset=0 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=543 x=392 y=97 width=12 height=17 xoffset=-2 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=544 x=406 y=97 width=12 height=17 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=545 x=327 y=40 width=15 height=17 xoffset=-1 yoffset=1 xadvance=13 page=0 chnl=15 +char id=546 x=375 y=289 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=547 x=422 y=401 width=11 height=12 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=15 +char id=548 x=240 y=79 width=13 height=17 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=549 x=458 y=366 width=10 height=14 xoffset=-1 yoffset=5 xadvance=8 page=0 chnl=15 +char id=550 x=483 y=59 width=13 height=17 xoffset=-1 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=551 x=221 y=354 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=552 x=41 y=122 width=11 height=17 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=553 x=182 y=355 width=11 height=14 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=554 x=362 y=0 width=14 height=18 xoffset=-1 yoffset=-2 xadvance=13 page=0 chnl=15 +char id=555 x=215 y=155 width=11 height=16 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=15 +char id=556 x=378 y=0 width=14 height=18 xoffset=-1 yoffset=-2 xadvance=13 page=0 chnl=15 +char id=557 x=78 y=212 width=11 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=558 x=489 y=39 width=14 height=17 xoffset=-1 yoffset=-1 xadvance=13 page=0 chnl=15 +char id=559 x=169 y=355 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=560 x=426 y=0 width=14 height=18 xoffset=-1 yoffset=-2 xadvance=13 page=0 chnl=15 +char id=561 x=319 y=155 width=11 height=16 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=15 +char id=562 x=89 y=157 width=12 height=16 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=15 +char id=563 x=431 y=116 width=11 height=17 xoffset=-1 yoffset=2 xadvance=9 page=0 chnl=15 +char id=564 x=227 y=136 width=8 height=17 xoffset=0 yoffset=1 xadvance=8 page=0 chnl=15 +char id=565 x=17 y=407 width=14 height=13 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=566 x=465 y=153 width=9 height=16 xoffset=-1 yoffset=2 xadvance=8 page=0 chnl=15 +char id=567 x=415 y=385 width=6 height=14 xoffset=-2 yoffset=5 xadvance=4 page=0 chnl=15 +char id=568 x=104 y=246 width=18 height=14 xoffset=-1 yoffset=2 xadvance=16 page=0 chnl=15 +char id=569 x=144 y=243 width=18 height=14 xoffset=-1 yoffset=5 xadvance=16 page=0 chnl=15 +char id=570 x=15 y=160 width=13 height=16 xoffset=-1 yoffset=1 xadvance=11 page=0 chnl=15 +char id=571 x=419 y=135 width=14 height=16 xoffset=-1 yoffset=1 xadvance=11 page=0 chnl=15 +char id=572 x=146 y=406 width=11 height=13 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=15 +char id=573 x=39 y=375 width=11 height=14 xoffset=-1 yoffset=2 xadvance=9 page=0 chnl=15 +char id=574 x=435 y=135 width=14 height=16 xoffset=-2 yoffset=1 xadvance=10 page=0 chnl=15 +char id=575 x=13 y=213 width=11 height=15 xoffset=-1 yoffset=5 xadvance=8 page=0 chnl=15 +char id=576 x=0 y=213 width=11 height=15 xoffset=-1 yoffset=5 xadvance=8 page=0 chnl=15 +char id=577 x=200 y=306 width=12 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=578 x=399 y=428 width=10 height=11 xoffset=-1 yoffset=5 xadvance=8 page=0 chnl=15 +char id=579 x=336 y=321 width=12 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=580 x=355 y=257 width=14 height=14 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=581 x=390 y=288 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=582 x=250 y=21 width=11 height=18 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=15 +char id=583 x=387 y=188 width=11 height=15 xoffset=-1 yoffset=3 xadvance=10 page=0 chnl=15 +char id=584 x=207 y=136 width=8 height=17 xoffset=-2 yoffset=2 xadvance=5 page=0 chnl=15 +char id=585 x=197 y=136 width=8 height=17 xoffset=-2 yoffset=2 xadvance=4 page=0 chnl=15 +char id=586 x=203 y=41 width=16 height=17 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=587 x=270 y=289 width=13 height=14 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=588 x=255 y=289 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=589 x=215 y=444 width=9 height=11 xoffset=-1 yoffset=5 xadvance=7 page=0 chnl=15 +char id=590 x=480 y=286 width=13 height=14 xoffset=-2 yoffset=2 xadvance=10 page=0 chnl=15 +char id=591 x=234 y=190 width=12 height=15 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=880 x=108 y=391 width=10 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=881 x=226 y=444 width=9 height=11 xoffset=0 yoffset=5 xadvance=9 page=0 chnl=15 +char id=882 x=291 y=257 width=14 height=14 xoffset=0 yoffset=2 xadvance=14 page=0 chnl=15 +char id=883 x=266 y=369 width=10 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=884 x=121 y=461 width=5 height=7 xoffset=0 yoffset=1 xadvance=4 page=0 chnl=15 +char id=885 x=439 y=452 width=5 height=6 xoffset=0 yoffset=13 xadvance=4 page=0 chnl=15 +char id=886 x=350 y=321 width=12 height=14 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=887 x=471 y=425 width=10 height=11 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=890 x=446 y=452 width=5 height=6 xoffset=2 yoffset=14 xadvance=8 page=0 chnl=15 +char id=891 x=351 y=428 width=10 height=11 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=892 x=12 y=448 width=10 height=11 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=893 x=48 y=448 width=10 height=11 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=894 x=479 y=398 width=5 height=12 xoffset=0 yoffset=6 xadvance=5 page=0 chnl=15 +char id=895 x=255 y=136 width=7 height=17 xoffset=-2 yoffset=2 xadvance=5 page=0 chnl=15 +char id=900 x=389 y=453 width=7 height=6 xoffset=1 yoffset=1 xadvance=8 page=0 chnl=15 +char id=901 x=435 y=441 width=8 height=9 xoffset=0 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=902 x=90 y=195 width=13 height=15 xoffset=-1 yoffset=1 xadvance=11 page=0 chnl=15 +char id=903 x=0 y=471 width=5 height=5 xoffset=0 yoffset=7 xadvance=5 page=0 chnl=15 +char id=904 x=428 y=171 width=15 height=15 xoffset=-2 yoffset=1 xadvance=12 page=0 chnl=15 +char id=905 x=308 y=173 width=16 height=15 xoffset=-2 yoffset=1 xadvance=14 page=0 chnl=15 +char id=906 x=225 y=224 width=9 height=15 xoffset=-2 yoffset=1 xadvance=7 page=0 chnl=15 +char id=908 x=411 y=171 width=15 height=15 xoffset=-2 yoffset=1 xadvance=13 page=0 chnl=15 +char id=910 x=236 y=173 width=16 height=15 xoffset=-2 yoffset=1 xadvance=13 page=0 chnl=15 +char id=911 x=326 y=173 width=15 height=15 xoffset=-2 yoffset=1 xadvance=13 page=0 chnl=15 +char id=912 x=423 y=20 width=8 height=18 xoffset=-2 yoffset=-2 xadvance=5 page=0 chnl=15 +char id=913 x=30 y=295 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=914 x=91 y=343 width=11 height=14 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=915 x=434 y=368 width=10 height=14 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=15 +char id=916 x=30 y=311 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=917 x=117 y=359 width=11 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=918 x=15 y=311 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=919 x=378 y=321 width=12 height=14 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=920 x=480 y=270 width=14 height=14 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=921 x=437 y=384 width=5 height=14 xoffset=0 yoffset=2 xadvance=5 page=0 chnl=15 +char id=922 x=112 y=327 width=12 height=14 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=923 x=465 y=286 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=924 x=307 y=257 width=14 height=14 xoffset=0 yoffset=2 xadvance=14 page=0 chnl=15 +char id=925 x=140 y=326 width=12 height=14 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=926 x=482 y=366 width=10 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=927 x=403 y=256 width=14 height=14 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=928 x=168 y=323 width=12 height=14 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=929 x=65 y=343 width=11 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=931 x=78 y=343 width=11 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=932 x=210 y=322 width=12 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=933 x=224 y=321 width=12 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=934 x=16 y=279 width=14 height=14 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=935 x=495 y=286 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=936 x=48 y=279 width=14 height=14 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=937 x=64 y=279 width=14 height=14 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=938 x=167 y=136 width=8 height=17 xoffset=-2 yoffset=-1 xadvance=5 page=0 chnl=15 +char id=939 x=399 y=78 width=12 height=17 xoffset=-1 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=940 x=192 y=190 width=12 height=15 xoffset=-1 yoffset=1 xadvance=11 page=0 chnl=15 +char id=941 x=180 y=224 width=10 height=15 xoffset=-1 yoffset=1 xadvance=9 page=0 chnl=15 +char id=942 x=377 y=20 width=10 height=18 xoffset=0 yoffset=1 xadvance=10 page=0 chnl=15 +char id=943 x=389 y=223 width=7 height=15 xoffset=0 yoffset=1 xadvance=5 page=0 chnl=15 +char id=944 x=365 y=20 width=10 height=18 xoffset=0 yoffset=-2 xadvance=9 page=0 chnl=15 +char id=945 x=426 y=415 width=12 height=11 xoffset=-1 yoffset=5 xadvance=11 page=0 chnl=15 +char id=946 x=237 y=21 width=11 height=18 xoffset=0 yoffset=1 xadvance=10 page=0 chnl=15 +char id=947 x=130 y=342 width=11 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=948 x=143 y=342 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=949 x=60 y=448 width=10 height=11 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=950 x=24 y=141 width=10 height=17 xoffset=-1 yoffset=2 xadvance=9 page=0 chnl=15 +char id=951 x=362 y=369 width=10 height=14 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=952 x=364 y=337 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=953 x=302 y=441 width=6 height=11 xoffset=0 yoffset=5 xadvance=5 page=0 chnl=15 +char id=954 x=24 y=448 width=10 height=11 xoffset=0 yoffset=5 xadvance=9 page=0 chnl=15 +char id=955 x=169 y=339 width=11 height=14 xoffset=-1 yoffset=2 xadvance=9 page=0 chnl=15 +char id=956 x=182 y=339 width=11 height=14 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=957 x=221 y=431 width=11 height=11 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=958 x=12 y=141 width=10 height=17 xoffset=-1 yoffset=2 xadvance=9 page=0 chnl=15 +char id=959 x=195 y=431 width=11 height=11 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=960 x=384 y=415 width=12 height=11 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=961 x=91 y=375 width=11 height=14 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=962 x=314 y=369 width=10 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=963 x=398 y=415 width=12 height=11 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=964 x=169 y=431 width=11 height=11 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=965 x=0 y=448 width=10 height=11 xoffset=0 yoffset=5 xadvance=9 page=0 chnl=15 +char id=966 x=406 y=320 width=12 height=14 xoffset=-1 yoffset=5 xadvance=11 page=0 chnl=15 +char id=967 x=52 y=375 width=11 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=968 x=392 y=321 width=12 height=14 xoffset=-1 yoffset=5 xadvance=11 page=0 chnl=15 +char id=969 x=128 y=422 width=15 height=11 xoffset=-1 yoffset=5 xadvance=13 page=0 chnl=15 +char id=970 x=301 y=385 width=8 height=14 xoffset=-2 yoffset=2 xadvance=5 page=0 chnl=15 +char id=971 x=168 y=387 width=10 height=14 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=15 +char id=972 x=299 y=207 width=11 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=973 x=480 y=205 width=10 height=15 xoffset=0 yoffset=1 xadvance=9 page=0 chnl=15 +char id=974 x=394 y=171 width=15 height=15 xoffset=-1 yoffset=1 xadvance=13 page=0 chnl=15 +char id=975 x=130 y=21 width=12 height=18 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=976 x=278 y=369 width=10 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=977 x=390 y=353 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=978 x=195 y=290 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=979 x=143 y=174 width=17 height=15 xoffset=-2 yoffset=1 xadvance=13 page=0 chnl=15 +char id=980 x=75 y=81 width=13 height=17 xoffset=-1 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=981 x=357 y=78 width=12 height=17 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=982 x=145 y=421 width=15 height=11 xoffset=-1 yoffset=5 xadvance=13 page=0 chnl=15 +char id=983 x=346 y=189 width=12 height=15 xoffset=-1 yoffset=5 xadvance=11 page=0 chnl=15 +char id=984 x=192 y=60 width=14 height=17 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=985 x=26 y=343 width=11 height=14 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=986 x=301 y=117 width=11 height=17 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=987 x=104 y=359 width=11 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=988 x=494 y=366 width=10 height=14 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=15 +char id=989 x=340 y=117 width=11 height=17 xoffset=-3 yoffset=2 xadvance=7 page=0 chnl=15 +char id=990 x=39 y=359 width=11 height=14 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=991 x=26 y=359 width=11 height=14 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=992 x=328 y=0 width=15 height=18 xoffset=-1 yoffset=2 xadvance=14 page=0 chnl=15 +char id=993 x=494 y=302 width=12 height=14 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=994 x=221 y=41 width=16 height=17 xoffset=-1 yoffset=2 xadvance=15 page=0 chnl=15 +char id=995 x=159 y=259 width=15 height=14 xoffset=-1 yoffset=5 xadvance=13 page=0 chnl=15 +char id=996 x=45 y=84 width=13 height=17 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=997 x=410 y=304 width=12 height=14 xoffset=-1 yoffset=5 xadvance=11 page=0 chnl=15 +char id=998 x=30 y=84 width=13 height=17 xoffset=0 yoffset=2 xadvance=13 page=0 chnl=15 +char id=999 x=106 y=407 width=12 height=13 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=15 +char id=1000 x=15 y=26 width=13 height=18 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1001 x=439 y=188 width=11 height=15 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1002 x=387 y=256 width=14 height=14 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1003 x=454 y=414 width=12 height=11 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1004 x=30 y=160 width=13 height=16 xoffset=-1 yoffset=1 xadvance=11 page=0 chnl=15 +char id=1005 x=499 y=135 width=11 height=16 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=1006 x=0 y=103 width=12 height=17 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1007 x=379 y=116 width=11 height=17 xoffset=-1 yoffset=2 xadvance=9 page=0 chnl=15 +char id=1008 x=394 y=401 width=12 height=12 xoffset=-1 yoffset=5 xadvance=11 page=0 chnl=15 +char id=1009 x=299 y=337 width=11 height=14 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1010 x=387 y=428 width=10 height=11 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1011 x=273 y=136 width=6 height=17 xoffset=-2 yoffset=2 xadvance=4 page=0 chnl=15 +char id=1012 x=416 y=272 width=14 height=14 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=1013 x=448 y=400 width=10 height=12 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1014 x=460 y=398 width=10 height=12 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1015 x=286 y=337 width=11 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1016 x=405 y=116 width=11 height=17 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1017 x=15 y=295 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1018 x=451 y=254 width=14 height=14 xoffset=0 yoffset=2 xadvance=14 page=0 chnl=15 +char id=1019 x=252 y=321 width=12 height=14 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1020 x=332 y=190 width=12 height=15 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1021 x=345 y=289 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1022 x=0 y=295 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1023 x=135 y=291 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1024 x=418 y=116 width=11 height=17 xoffset=0 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=1025 x=28 y=122 width=11 height=17 xoffset=0 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=1026 x=0 y=65 width=14 height=17 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=1027 x=481 y=116 width=10 height=17 xoffset=0 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=1028 x=120 y=294 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1029 x=438 y=302 width=12 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1030 x=430 y=384 width=5 height=14 xoffset=0 yoffset=2 xadvance=5 page=0 chnl=15 +char id=1031 x=127 y=137 width=8 height=17 xoffset=-2 yoffset=-1 xadvance=5 page=0 chnl=15 +char id=1032 x=246 y=136 width=7 height=17 xoffset=-2 yoffset=2 xadvance=5 page=0 chnl=15 +char id=1033 x=42 y=247 width=19 height=14 xoffset=-1 yoffset=2 xadvance=18 page=0 chnl=15 +char id=1034 x=261 y=241 width=17 height=14 xoffset=0 yoffset=2 xadvance=17 page=0 chnl=15 +char id=1035 x=467 y=254 width=14 height=14 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=1036 x=448 y=97 width=12 height=17 xoffset=0 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=1037 x=441 y=78 width=12 height=17 xoffset=0 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=1038 x=413 y=78 width=12 height=17 xoffset=-1 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=1039 x=371 y=78 width=12 height=17 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1040 x=435 y=286 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1041 x=221 y=338 width=11 height=14 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1042 x=234 y=337 width=11 height=14 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1043 x=36 y=391 width=10 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1044 x=361 y=40 width=14 height=17 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=1045 x=247 y=337 width=11 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1046 x=21 y=247 width=19 height=14 xoffset=-1 yoffset=2 xadvance=17 page=0 chnl=15 +char id=1047 x=260 y=337 width=11 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1048 x=214 y=305 width=12 height=14 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1049 x=315 y=79 width=12 height=17 xoffset=0 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=1050 x=354 y=305 width=12 height=14 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1051 x=360 y=289 width=13 height=14 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1052 x=0 y=279 width=14 height=14 xoffset=0 yoffset=2 xadvance=14 page=0 chnl=15 +char id=1053 x=182 y=323 width=12 height=14 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1054 x=32 y=279 width=14 height=14 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=1055 x=88 y=311 width=12 height=14 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1056 x=312 y=337 width=11 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1057 x=285 y=289 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1058 x=56 y=327 width=12 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1059 x=196 y=322 width=12 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1060 x=125 y=259 width=15 height=14 xoffset=-1 yoffset=2 xadvance=14 page=0 chnl=15 +char id=1061 x=75 y=295 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1062 x=468 y=59 width=13 height=17 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1063 x=351 y=337 width=11 height=14 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1064 x=204 y=241 width=17 height=14 xoffset=0 yoffset=2 xadvance=17 page=0 chnl=15 +char id=1065 x=86 y=42 width=18 height=17 xoffset=0 yoffset=2 xadvance=18 page=0 chnl=15 +char id=1066 x=142 y=259 width=15 height=14 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=1067 x=80 y=279 width=14 height=14 xoffset=0 yoffset=2 xadvance=14 page=0 chnl=15 +char id=1068 x=390 y=337 width=11 height=14 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1069 x=420 y=288 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1070 x=184 y=241 width=18 height=14 xoffset=0 yoffset=2 xadvance=17 page=0 chnl=15 +char id=1071 x=403 y=337 width=11 height=14 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1072 x=13 y=435 width=11 height=11 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1073 x=117 y=209 width=11 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=1074 x=375 y=428 width=10 height=11 xoffset=0 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1075 x=204 y=444 width=9 height=11 xoffset=0 yoffset=5 xadvance=8 page=0 chnl=15 +char id=1076 x=49 y=407 width=13 height=13 xoffset=-1 yoffset=5 xadvance=11 page=0 chnl=15 +char id=1077 x=52 y=435 width=11 height=11 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1078 x=57 y=422 width=16 height=11 xoffset=-1 yoffset=5 xadvance=14 page=0 chnl=15 +char id=1079 x=84 y=448 width=10 height=11 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1080 x=96 y=448 width=10 height=11 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1081 x=468 y=205 width=10 height=15 xoffset=0 yoffset=1 xadvance=10 page=0 chnl=15 +char id=1082 x=495 y=411 width=11 height=11 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1083 x=338 y=428 width=11 height=11 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1084 x=412 y=415 width=12 height=11 xoffset=0 yoffset=5 xadvance=12 page=0 chnl=15 +char id=1085 x=459 y=427 width=10 height=11 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1086 x=325 y=428 width=11 height=11 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1087 x=144 y=448 width=10 height=11 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1088 x=494 y=334 width=11 height=14 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1089 x=180 y=444 width=10 height=11 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1090 x=299 y=428 width=11 height=11 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1091 x=0 y=359 width=11 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1092 x=344 y=40 width=15 height=17 xoffset=-1 yoffset=2 xadvance=14 page=0 chnl=15 +char id=1093 x=273 y=429 width=11 height=11 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1094 x=92 y=407 width=12 height=13 xoffset=0 yoffset=5 xadvance=11 page=0 chnl=15 +char id=1095 x=270 y=443 width=9 height=11 xoffset=0 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1096 x=111 y=422 width=15 height=11 xoffset=0 yoffset=5 xadvance=15 page=0 chnl=15 +char id=1097 x=488 y=382 width=16 height=13 xoffset=0 yoffset=5 xadvance=15 page=0 chnl=15 +char id=1098 x=309 y=415 width=13 height=11 xoffset=-1 yoffset=5 xadvance=11 page=0 chnl=15 +char id=1099 x=468 y=412 width=12 height=11 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=1100 x=447 y=427 width=10 height=11 xoffset=0 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1101 x=120 y=448 width=10 height=11 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1102 x=247 y=417 width=14 height=11 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=1103 x=117 y=435 width=11 height=11 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1104 x=65 y=212 width=11 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=1105 x=91 y=359 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1106 x=0 y=122 width=12 height=17 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1107 x=247 y=224 width=9 height=15 xoffset=0 yoffset=1 xadvance=8 page=0 chnl=15 +char id=1108 x=168 y=447 width=10 height=11 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1109 x=483 y=425 width=10 height=11 xoffset=-1 yoffset=5 xadvance=8 page=0 chnl=15 +char id=1110 x=506 y=366 width=4 height=14 xoffset=0 yoffset=2 xadvance=4 page=0 chnl=15 +char id=1111 x=291 y=385 width=8 height=14 xoffset=-2 yoffset=2 xadvance=4 page=0 chnl=15 +char id=1112 x=281 y=136 width=6 height=17 xoffset=-2 yoffset=2 xadvance=4 page=0 chnl=15 +char id=1113 x=75 y=422 width=16 height=11 xoffset=-1 yoffset=5 xadvance=14 page=0 chnl=15 +char id=1114 x=196 y=418 width=15 height=11 xoffset=0 yoffset=5 xadvance=14 page=0 chnl=15 +char id=1115 x=368 y=305 width=12 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1116 x=491 y=188 width=11 height=15 xoffset=0 yoffset=1 xadvance=10 page=0 chnl=15 +char id=1117 x=72 y=229 width=10 height=15 xoffset=0 yoffset=1 xadvance=10 page=0 chnl=15 +char id=1118 x=276 y=21 width=11 height=18 xoffset=-1 yoffset=1 xadvance=9 page=0 chnl=15 +char id=1119 x=184 y=403 width=10 height=13 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1120 x=375 y=240 width=16 height=14 xoffset=-1 yoffset=2 xadvance=15 page=0 chnl=15 +char id=1121 x=162 y=418 width=15 height=11 xoffset=-1 yoffset=5 xadvance=13 page=0 chnl=15 +char id=1122 x=160 y=275 width=14 height=14 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1123 x=228 y=305 width=12 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1124 x=290 y=173 width=16 height=15 xoffset=0 yoffset=2 xadvance=15 page=0 chnl=15 +char id=1125 x=408 y=401 width=12 height=12 xoffset=0 yoffset=5 xadvance=12 page=0 chnl=15 +char id=1126 x=54 y=263 width=16 height=14 xoffset=-1 yoffset=2 xadvance=14 page=0 chnl=15 +char id=1127 x=179 y=418 width=15 height=11 xoffset=-1 yoffset=5 xadvance=13 page=0 chnl=15 +char id=1128 x=471 y=222 width=20 height=14 xoffset=0 yoffset=2 xadvance=19 page=0 chnl=15 +char id=1129 x=19 y=422 width=17 height=11 xoffset=0 yoffset=5 xadvance=16 page=0 chnl=15 +char id=1130 x=224 y=273 width=14 height=14 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=1131 x=78 y=435 width=11 height=11 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1132 x=337 y=241 width=17 height=14 xoffset=0 yoffset=2 xadvance=16 page=0 chnl=15 +char id=1133 x=263 y=416 width=14 height=11 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=1134 x=60 y=0 width=11 height=21 xoffset=-1 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=1135 x=353 y=20 width=10 height=18 xoffset=-1 yoffset=2 xadvance=9 page=0 chnl=15 +char id=1136 x=90 y=262 width=16 height=14 xoffset=-1 yoffset=2 xadvance=14 page=0 chnl=15 +char id=1137 x=129 y=0 width=16 height=19 xoffset=-1 yoffset=1 xadvance=14 page=0 chnl=15 +char id=1138 x=256 y=273 width=14 height=14 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=1139 x=65 y=435 width=11 height=11 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1140 x=210 y=257 width=15 height=14 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=1141 x=294 y=415 width=13 height=11 xoffset=-1 yoffset=5 xadvance=11 page=0 chnl=15 +char id=1142 x=293 y=41 width=15 height=17 xoffset=-1 yoffset=-1 xadvance=13 page=0 chnl=15 +char id=1143 x=135 y=192 width=13 height=15 xoffset=-1 yoffset=1 xadvance=11 page=0 chnl=15 +char id=1144 x=308 y=0 width=18 height=18 xoffset=-1 yoffset=2 xadvance=16 page=0 chnl=15 +char id=1145 x=218 y=173 width=16 height=15 xoffset=-1 yoffset=5 xadvance=14 page=0 chnl=15 +char id=1146 x=124 y=175 width=17 height=15 xoffset=-1 yoffset=2 xadvance=15 page=0 chnl=15 +char id=1147 x=306 y=401 width=14 height=12 xoffset=-1 yoffset=5 xadvance=12 page=0 chnl=15 +char id=1148 x=22 y=46 width=20 height=17 xoffset=-1 yoffset=-1 xadvance=19 page=0 chnl=15 +char id=1149 x=162 y=173 width=17 height=15 xoffset=0 yoffset=1 xadvance=16 page=0 chnl=15 +char id=1150 x=275 y=41 width=16 height=17 xoffset=-1 yoffset=-1 xadvance=15 page=0 chnl=15 +char id=1151 x=193 y=257 width=15 height=14 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=1152 x=378 y=59 width=13 height=17 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1153 x=242 y=369 width=10 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1154 x=72 y=448 width=10 height=11 xoffset=-1 yoffset=6 xadvance=8 page=0 chnl=15 +char id=1155 x=319 y=453 width=10 height=6 xoffset=-10 yoffset=1 xadvance=0 page=0 chnl=15 +char id=1156 x=481 y=448 width=9 height=5 xoffset=-7 yoffset=1 xadvance=0 page=0 chnl=15 +char id=1157 x=453 y=452 width=5 height=6 xoffset=-6 yoffset=1 xadvance=0 page=0 chnl=15 +char id=1158 x=467 y=450 width=5 height=6 xoffset=-6 yoffset=1 xadvance=0 page=0 chnl=15 +char id=1159 x=233 y=457 width=16 height=6 xoffset=-14 yoffset=1 xadvance=0 page=0 chnl=15 +char id=1160 x=73 y=0 width=26 height=20 xoffset=-18 yoffset=-1 xadvance=7 page=0 chnl=15 +char id=1161 x=0 y=0 width=24 height=24 xoffset=-17 yoffset=-3 xadvance=7 page=0 chnl=15 +char id=1162 x=45 y=0 width=13 height=21 xoffset=0 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=1163 x=228 y=0 width=12 height=19 xoffset=0 yoffset=1 xadvance=11 page=0 chnl=15 +char id=1164 x=172 y=307 width=12 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1165 x=133 y=406 width=11 height=13 xoffset=-1 yoffset=3 xadvance=9 page=0 chnl=15 +char id=1166 x=156 y=355 width=11 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1167 x=182 y=207 width=11 height=15 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1168 x=357 y=154 width=10 height=16 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=15 +char id=1169 x=207 y=403 width=9 height=13 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=15 +char id=1170 x=424 y=304 width=12 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1171 x=104 y=435 width=11 height=11 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1172 x=314 y=117 width=11 height=17 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1173 x=204 y=387 width=10 height=14 xoffset=0 yoffset=5 xadvance=8 page=0 chnl=15 +char id=1174 x=0 y=46 width=20 height=17 xoffset=-1 yoffset=2 xadvance=17 page=0 chnl=15 +char id=1175 x=72 y=263 width=16 height=14 xoffset=-1 yoffset=5 xadvance=14 page=0 chnl=15 +char id=1176 x=275 y=117 width=11 height=17 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1177 x=96 y=391 width=10 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1178 x=348 y=59 width=13 height=17 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1179 x=65 y=359 width=11 height=14 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1180 x=98 y=327 width=12 height=14 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1181 x=156 y=434 width=11 height=11 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1182 x=240 y=289 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1183 x=276 y=190 width=12 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=1184 x=0 y=263 width=16 height=14 xoffset=-1 yoffset=2 xadvance=14 page=0 chnl=15 +char id=1185 x=279 y=415 width=13 height=11 xoffset=-1 yoffset=5 xadvance=13 page=0 chnl=15 +char id=1186 x=333 y=59 width=13 height=17 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1187 x=78 y=407 width=12 height=13 xoffset=0 yoffset=5 xadvance=11 page=0 chnl=15 +char id=1188 x=84 y=246 width=18 height=14 xoffset=0 yoffset=2 xadvance=16 page=0 chnl=15 +char id=1189 x=230 y=417 width=15 height=11 xoffset=0 yoffset=5 xadvance=14 page=0 chnl=15 +char id=1190 x=106 y=42 width=18 height=17 xoffset=0 yoffset=2 xadvance=17 page=0 chnl=15 +char id=1191 x=465 y=238 width=16 height=14 xoffset=0 yoffset=5 xadvance=15 page=0 chnl=15 +char id=1192 x=272 y=173 width=16 height=15 xoffset=-1 yoffset=2 xadvance=14 page=0 chnl=15 +char id=1193 x=322 y=401 width=13 height=12 xoffset=-1 yoffset=5 xadvance=11 page=0 chnl=15 +char id=1194 x=303 y=60 width=13 height=17 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1195 x=398 y=369 width=10 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1196 x=498 y=58 width=12 height=17 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1197 x=159 y=403 width=11 height=13 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1198 x=28 y=327 width=12 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1199 x=481 y=334 width=11 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1200 x=308 y=321 width=12 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1201 x=130 y=209 width=11 height=15 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1202 x=318 y=60 width=13 height=17 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1203 x=455 y=334 width=11 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1204 x=184 y=41 width=17 height=17 xoffset=-1 yoffset=2 xadvance=15 page=0 chnl=15 +char id=1205 x=0 y=407 width=15 height=13 xoffset=-1 yoffset=5 xadvance=13 page=0 chnl=15 +char id=1206 x=343 y=78 width=12 height=17 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1207 x=120 y=407 width=11 height=13 xoffset=0 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1208 x=429 y=336 width=11 height=14 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1209 x=248 y=443 width=9 height=11 xoffset=0 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1210 x=416 y=336 width=11 height=14 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1211 x=206 y=371 width=10 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1212 x=242 y=241 width=17 height=14 xoffset=-1 yoffset=2 xadvance=15 page=0 chnl=15 +char id=1213 x=354 y=415 width=13 height=11 xoffset=-1 yoffset=5 xadvance=12 page=0 chnl=15 +char id=1214 x=165 y=41 width=17 height=17 xoffset=-1 yoffset=2 xadvance=15 page=0 chnl=15 +char id=1215 x=180 y=290 width=13 height=14 xoffset=-1 yoffset=5 xadvance=12 page=0 chnl=15 +char id=1216 x=444 y=384 width=5 height=14 xoffset=0 yoffset=2 xadvance=5 page=0 chnl=15 +char id=1217 x=44 y=43 width=19 height=17 xoffset=-1 yoffset=-1 xadvance=17 page=0 chnl=15 +char id=1218 x=200 y=173 width=16 height=15 xoffset=-1 yoffset=1 xadvance=14 page=0 chnl=15 +char id=1219 x=74 y=22 width=12 height=18 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1220 x=91 y=212 width=11 height=15 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1221 x=442 y=0 width=14 height=18 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1222 x=60 y=195 width=13 height=15 xoffset=-1 yoffset=5 xadvance=11 page=0 chnl=15 +char id=1223 x=469 y=78 width=12 height=17 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1224 x=13 y=359 width=11 height=14 xoffset=0 yoffset=5 xadvance=11 page=0 chnl=15 +char id=1225 x=473 y=0 width=13 height=18 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1226 x=150 y=191 width=12 height=15 xoffset=0 yoffset=5 xadvance=11 page=0 chnl=15 +char id=1227 x=392 y=116 width=11 height=17 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1228 x=196 y=403 width=9 height=13 xoffset=0 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1229 x=345 y=0 width=15 height=18 xoffset=0 yoffset=2 xadvance=14 page=0 chnl=15 +char id=1230 x=45 y=196 width=13 height=15 xoffset=0 yoffset=5 xadvance=12 page=0 chnl=15 +char id=1231 x=470 y=382 width=4 height=14 xoffset=0 yoffset=2 xadvance=4 page=0 chnl=15 +char id=1232 x=30 y=23 width=13 height=18 xoffset=-1 yoffset=-2 xadvance=11 page=0 chnl=15 +char id=1233 x=465 y=188 width=11 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=1234 x=15 y=84 width=13 height=17 xoffset=-1 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=1235 x=442 y=352 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1236 x=280 y=241 width=17 height=14 xoffset=-1 yoffset=2 xadvance=16 page=0 chnl=15 +char id=1237 x=38 y=422 width=17 height=11 xoffset=-1 yoffset=5 xadvance=16 page=0 chnl=15 +char id=1238 x=366 y=116 width=11 height=17 xoffset=0 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=1239 x=413 y=188 width=11 height=15 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=1240 x=227 y=257 width=14 height=14 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=1241 x=182 y=431 width=11 height=11 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1242 x=256 y=60 width=14 height=17 xoffset=-1 yoffset=-1 xadvance=13 page=0 chnl=15 +char id=1243 x=195 y=339 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1244 x=65 y=43 width=19 height=17 xoffset=-1 yoffset=-1 xadvance=17 page=0 chnl=15 +char id=1245 x=393 y=240 width=16 height=14 xoffset=-1 yoffset=2 xadvance=14 page=0 chnl=15 +char id=1246 x=249 y=117 width=11 height=17 xoffset=0 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=1247 x=120 y=391 width=10 height=14 xoffset=-1 yoffset=2 xadvance=9 page=0 chnl=15 +char id=1248 x=156 y=339 width=11 height=14 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1249 x=117 y=343 width=11 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1250 x=187 y=155 width=12 height=16 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=15 +char id=1251 x=132 y=390 width=10 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1252 x=266 y=98 width=12 height=17 xoffset=0 yoffset=-1 xadvance=12 page=0 chnl=15 +char id=1253 x=254 y=369 width=10 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1254 x=224 y=60 width=14 height=17 xoffset=-1 yoffset=-1 xadvance=13 page=0 chnl=15 +char id=1255 x=52 y=343 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1256 x=464 y=270 width=14 height=14 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=1257 x=482 y=412 width=11 height=11 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1258 x=393 y=40 width=14 height=17 xoffset=-1 yoffset=-1 xadvance=13 page=0 chnl=15 +char id=1259 x=39 y=343 width=11 height=14 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1260 x=120 y=80 width=13 height=17 xoffset=-1 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=1261 x=0 y=391 width=10 height=14 xoffset=-1 yoffset=2 xadvance=9 page=0 chnl=15 +char id=1262 x=131 y=156 width=12 height=16 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=15 +char id=1263 x=184 y=117 width=11 height=17 xoffset=-1 yoffset=2 xadvance=9 page=0 chnl=15 +char id=1264 x=140 y=98 width=12 height=17 xoffset=-1 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=1265 x=93 y=119 width=11 height=17 xoffset=-1 yoffset=2 xadvance=9 page=0 chnl=15 +char id=1266 x=28 y=103 width=12 height=17 xoffset=-1 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=1267 x=198 y=21 width=11 height=18 xoffset=-1 yoffset=1 xadvance=9 page=0 chnl=15 +char id=1268 x=145 y=117 width=11 height=17 xoffset=0 yoffset=-1 xadvance=11 page=0 chnl=15 +char id=1269 x=239 y=386 width=9 height=14 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=15 +char id=1270 x=469 y=116 width=10 height=17 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1271 x=218 y=403 width=9 height=13 xoffset=0 yoffset=5 xadvance=8 page=0 chnl=15 +char id=1272 x=240 y=60 width=14 height=17 xoffset=0 yoffset=-1 xadvance=14 page=0 chnl=15 +char id=1273 x=382 y=305 width=12 height=14 xoffset=0 yoffset=2 xadvance=13 page=0 chnl=15 +char id=1274 x=252 y=98 width=12 height=17 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1275 x=499 y=254 width=11 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1276 x=45 y=23 width=13 height=18 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1277 x=208 y=207 width=11 height=15 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1278 x=300 y=289 width=13 height=14 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1279 x=247 y=430 width=11 height=11 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1329 x=248 y=190 width=12 height=15 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1330 x=256 y=305 width=12 height=14 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1331 x=483 y=254 width=14 height=14 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1332 x=371 y=256 width=14 height=14 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1333 x=206 y=190 width=12 height=15 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1334 x=45 y=295 width=13 height=14 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1335 x=377 y=353 width=11 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1336 x=186 y=306 width=12 height=14 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1337 x=377 y=171 width=15 height=15 xoffset=0 yoffset=2 xadvance=14 page=0 chnl=15 +char id=1338 x=477 y=171 width=14 height=15 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1339 x=154 y=323 width=12 height=14 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1340 x=182 y=371 width=10 height=14 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=15 +char id=1341 x=360 y=172 width=15 height=15 xoffset=0 yoffset=2 xadvance=15 page=0 chnl=15 +char id=1342 x=493 y=171 width=13 height=15 xoffset=1 yoffset=2 xadvance=14 page=0 chnl=15 +char id=1343 x=84 y=327 width=12 height=14 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1344 x=120 y=192 width=13 height=15 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1345 x=290 y=190 width=12 height=15 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1346 x=339 y=257 width=14 height=14 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1347 x=323 y=257 width=14 height=14 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1348 x=461 y=171 width=14 height=15 xoffset=0 yoffset=2 xadvance=13 page=0 chnl=15 +char id=1349 x=262 y=190 width=12 height=15 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1350 x=75 y=195 width=13 height=15 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1351 x=304 y=190 width=12 height=15 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1352 x=284 y=305 width=12 height=14 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1353 x=0 y=196 width=13 height=15 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1354 x=272 y=273 width=14 height=14 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=1355 x=452 y=302 width=12 height=14 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1356 x=304 y=273 width=14 height=14 xoffset=0 yoffset=2 xadvance=13 page=0 chnl=15 +char id=1357 x=312 y=305 width=12 height=14 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1358 x=336 y=273 width=14 height=14 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1359 x=318 y=190 width=12 height=15 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1360 x=280 y=321 width=12 height=14 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=15 +char id=1361 x=220 y=190 width=12 height=15 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1362 x=470 y=366 width=10 height=14 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=15 +char id=1363 x=435 y=254 width=14 height=14 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=1364 x=0 y=311 width=13 height=14 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=1365 x=384 y=272 width=14 height=14 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=1366 x=445 y=171 width=14 height=15 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=1369 x=19 y=461 width=6 height=8 xoffset=-1 yoffset=1 xadvance=5 page=0 chnl=15 +char id=1370 x=135 y=461 width=5 height=7 xoffset=0 yoffset=2 xadvance=5 page=0 chnl=15 +char id=1371 x=415 y=453 width=6 height=6 xoffset=-1 yoffset=1 xadvance=4 page=0 chnl=15 +char id=1372 x=487 y=438 width=8 height=8 xoffset=-1 yoffset=-1 xadvance=6 page=0 chnl=15 +char id=1373 x=371 y=453 width=7 height=6 xoffset=-1 yoffset=1 xadvance=4 page=0 chnl=15 +char id=1374 x=71 y=461 width=9 height=7 xoffset=-1 yoffset=0 xadvance=6 page=0 chnl=15 +char id=1375 x=307 y=454 width=10 height=6 xoffset=-1 yoffset=1 xadvance=8 page=0 chnl=15 +char id=1377 x=288 y=401 width=16 height=12 xoffset=0 yoffset=5 xadvance=16 page=0 chnl=15 +char id=1378 x=420 y=205 width=10 height=15 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1379 x=15 y=196 width=13 height=15 xoffset=-1 yoffset=5 xadvance=11 page=0 chnl=15 +char id=1380 x=178 y=190 width=12 height=15 xoffset=0 yoffset=5 xadvance=11 page=0 chnl=15 +char id=1381 x=429 y=153 width=10 height=16 xoffset=0 yoffset=1 xadvance=10 page=0 chnl=15 +char id=1382 x=30 y=196 width=13 height=15 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1383 x=258 y=224 width=9 height=15 xoffset=0 yoffset=1 xadvance=8 page=0 chnl=15 +char id=1384 x=168 y=225 width=10 height=15 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1385 x=105 y=192 width=13 height=15 xoffset=0 yoffset=5 xadvance=12 page=0 chnl=15 +char id=1386 x=0 y=160 width=13 height=16 xoffset=-1 yoffset=1 xadvance=11 page=0 chnl=15 +char id=1387 x=296 y=0 width=10 height=19 xoffset=0 yoffset=1 xadvance=10 page=0 chnl=15 +char id=1388 x=504 y=188 width=6 height=15 xoffset=0 yoffset=5 xadvance=4 page=0 chnl=15 +char id=1389 x=111 y=0 width=16 height=19 xoffset=0 yoffset=1 xadvance=16 page=0 chnl=15 +char id=1390 x=241 y=155 width=11 height=16 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=1391 x=284 y=0 width=10 height=19 xoffset=0 yoffset=1 xadvance=10 page=0 chnl=15 +char id=1392 x=144 y=390 width=10 height=14 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=1393 x=228 y=155 width=11 height=16 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=1394 x=360 y=189 width=12 height=15 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1395 x=441 y=153 width=10 height=16 xoffset=0 yoffset=1 xadvance=10 page=0 chnl=15 +char id=1396 x=117 y=157 width=12 height=16 xoffset=0 yoffset=1 xadvance=10 page=0 chnl=15 +char id=1397 x=504 y=205 width=6 height=15 xoffset=-2 yoffset=5 xadvance=4 page=0 chnl=15 +char id=1398 x=103 y=157 width=12 height=16 xoffset=-2 yoffset=1 xadvance=10 page=0 chnl=15 +char id=1399 x=269 y=224 width=9 height=15 xoffset=-1 yoffset=5 xadvance=8 page=0 chnl=15 +char id=1400 x=108 y=448 width=10 height=11 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1401 x=341 y=224 width=8 height=15 xoffset=-1 yoffset=5 xadvance=6 page=0 chnl=15 +char id=1402 x=254 y=173 width=16 height=15 xoffset=0 yoffset=5 xadvance=16 page=0 chnl=15 +char id=1403 x=324 y=207 width=10 height=15 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=1404 x=208 y=431 width=11 height=11 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1405 x=156 y=447 width=10 height=11 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1406 x=214 y=0 width=12 height=19 xoffset=0 yoffset=1 xadvance=10 page=0 chnl=15 +char id=1407 x=270 y=401 width=16 height=12 xoffset=0 yoffset=5 xadvance=16 page=0 chnl=15 +char id=1408 x=408 y=205 width=10 height=15 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1409 x=13 y=375 width=11 height=14 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1410 x=281 y=442 width=9 height=11 xoffset=0 yoffset=5 xadvance=7 page=0 chnl=15 +char id=1411 x=147 y=0 width=16 height=19 xoffset=0 yoffset=1 xadvance=16 page=0 chnl=15 +char id=1412 x=164 y=190 width=12 height=15 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1413 x=234 y=430 width=11 height=11 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=1414 x=165 y=0 width=15 height=19 xoffset=-1 yoffset=1 xadvance=13 page=0 chnl=15 +char id=1415 x=403 y=135 width=14 height=16 xoffset=0 yoffset=1 xadvance=13 page=0 chnl=15 +char id=1417 x=455 y=440 width=5 height=9 xoffset=0 yoffset=7 xadvance=5 page=0 chnl=15 +char id=1418 x=164 y=468 width=7 height=4 xoffset=-1 yoffset=9 xadvance=6 page=0 chnl=15 +char id=8192 x=289 y=463 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=8 page=0 chnl=15 +char id=8193 x=507 y=349 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=16 page=0 chnl=15 +char id=8194 x=507 y=334 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=8 page=0 chnl=15 +char id=8195 x=507 y=339 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=16 page=0 chnl=15 +char id=8196 x=249 y=465 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=5 page=0 chnl=15 +char id=8197 x=244 y=465 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=4 page=0 chnl=15 +char id=8198 x=214 y=465 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=3 page=0 chnl=15 +char id=8199 x=507 y=439 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=10 page=0 chnl=15 +char id=8200 x=507 y=424 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=5 page=0 chnl=15 +char id=8201 x=219 y=465 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=3 page=0 chnl=15 +char id=8202 x=224 y=465 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=2 page=0 chnl=15 +char id=8203 x=234 y=465 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=0 page=0 chnl=15 +char id=8204 x=239 y=465 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=0 page=0 chnl=15 +char id=8205 x=264 y=464 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=0 page=0 chnl=15 +char id=8206 x=269 y=464 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=0 page=0 chnl=15 +char id=8207 x=274 y=464 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=0 page=0 chnl=15 +char id=8208 x=182 y=468 width=7 height=4 xoffset=-1 yoffset=9 xadvance=6 page=0 chnl=15 +char id=8209 x=173 y=468 width=7 height=4 xoffset=-1 yoffset=9 xadvance=6 page=0 chnl=15 +char id=8210 x=79 y=470 width=12 height=4 xoffset=-1 yoffset=9 xadvance=10 page=0 chnl=15 +char id=8211 x=121 y=470 width=10 height=4 xoffset=-1 yoffset=9 xadvance=8 page=0 chnl=15 +char id=8212 x=21 y=471 width=18 height=4 xoffset=-1 yoffset=9 xadvance=16 page=0 chnl=15 +char id=8213 x=41 y=470 width=18 height=4 xoffset=-1 yoffset=9 xadvance=16 page=0 chnl=15 +char id=8214 x=413 y=20 width=8 height=18 xoffset=0 yoffset=2 xadvance=8 page=0 chnl=15 +char id=8215 x=57 y=461 width=12 height=7 xoffset=-2 yoffset=13 xadvance=8 page=0 chnl=15 +char id=8216 x=142 y=461 width=5 height=7 xoffset=0 yoffset=2 xadvance=5 page=0 chnl=15 +char id=8217 x=128 y=461 width=5 height=7 xoffset=0 yoffset=2 xadvance=5 page=0 chnl=15 +char id=8218 x=460 y=451 width=5 height=6 xoffset=0 yoffset=12 xadvance=5 page=0 chnl=15 +char id=8219 x=149 y=461 width=5 height=7 xoffset=0 yoffset=2 xadvance=5 page=0 chnl=15 +char id=8220 x=82 y=461 width=8 height=7 xoffset=0 yoffset=2 xadvance=8 page=0 chnl=15 +char id=8221 x=92 y=461 width=8 height=7 xoffset=0 yoffset=2 xadvance=8 page=0 chnl=15 +char id=8222 x=361 y=453 width=8 height=6 xoffset=0 yoffset=12 xadvance=8 page=0 chnl=15 +char id=8223 x=102 y=461 width=8 height=7 xoffset=0 yoffset=2 xadvance=8 page=0 chnl=15 +char id=8224 x=417 y=153 width=10 height=16 xoffset=-1 yoffset=2 xadvance=8 page=0 chnl=15 +char id=8225 x=405 y=153 width=10 height=16 xoffset=-1 yoffset=2 xadvance=8 page=0 chnl=15 +char id=8226 x=10 y=461 width=7 height=8 xoffset=1 yoffset=6 xadvance=9 page=0 chnl=15 +char id=8227 x=445 y=441 width=8 height=9 xoffset=1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=8228 x=200 y=465 width=5 height=4 xoffset=0 yoffset=12 xadvance=5 page=0 chnl=15 +char id=8229 x=133 y=470 width=10 height=4 xoffset=0 yoffset=12 xadvance=11 page=0 chnl=15 +char id=8230 x=61 y=470 width=16 height=4 xoffset=0 yoffset=12 xadvance=16 page=0 chnl=15 +char id=8231 x=7 y=471 width=5 height=5 xoffset=0 yoffset=7 xadvance=5 page=0 chnl=15 +char id=8232 x=507 y=359 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=0 page=0 chnl=15 +char id=8233 x=229 y=465 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=0 page=0 chnl=15 +char id=8234 x=254 y=464 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=0 page=0 chnl=15 +char id=8235 x=507 y=434 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=0 page=0 chnl=15 +char id=8236 x=507 y=429 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=0 page=0 chnl=15 +char id=8237 x=279 y=464 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=0 page=0 chnl=15 +char id=8238 x=507 y=354 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=0 page=0 chnl=15 +char id=8239 x=507 y=344 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=3 page=0 chnl=15 +char id=8240 x=423 y=222 width=23 height=14 xoffset=-1 yoffset=2 xadvance=21 page=0 chnl=15 +char id=8241 x=49 y=178 width=29 height=15 xoffset=-1 yoffset=2 xadvance=28 page=0 chnl=15 +char id=8242 x=407 y=453 width=6 height=6 xoffset=-1 yoffset=2 xadvance=4 page=0 chnl=15 +char id=8243 x=331 y=453 width=8 height=6 xoffset=-1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=8244 x=294 y=454 width=11 height=6 xoffset=-1 yoffset=2 xadvance=8 page=0 chnl=15 +char id=8245 x=431 y=453 width=6 height=6 xoffset=-1 yoffset=2 xadvance=4 page=0 chnl=15 +char id=8246 x=351 y=453 width=8 height=6 xoffset=-1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=8247 x=281 y=455 width=11 height=6 xoffset=-1 yoffset=2 xadvance=8 page=0 chnl=15 +char id=8248 x=341 y=453 width=8 height=6 xoffset=-1 yoffset=14 xadvance=5 page=0 chnl=15 +char id=8249 x=420 y=441 width=6 height=10 xoffset=0 yoffset=6 xadvance=6 page=0 chnl=15 +char id=8250 x=402 y=441 width=7 height=10 xoffset=0 yoffset=6 xadvance=6 page=0 chnl=15 +char id=8251 x=45 y=311 width=13 height=14 xoffset=0 yoffset=2 xadvance=13 page=0 chnl=15 +char id=8252 x=351 y=385 width=8 height=14 xoffset=0 yoffset=2 xadvance=8 page=0 chnl=15 +char id=8253 x=250 y=385 width=9 height=14 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=15 +char id=8254 x=93 y=470 width=12 height=4 xoffset=-2 yoffset=2 xadvance=8 page=0 chnl=15 +char id=8255 x=214 y=457 width=17 height=6 xoffset=-2 yoffset=14 xadvance=13 page=0 chnl=15 +char id=8256 x=176 y=460 width=17 height=6 xoffset=-2 yoffset=-1 xadvance=13 page=0 chnl=15 +char id=8257 x=372 y=441 width=8 height=10 xoffset=-2 yoffset=10 xadvance=4 page=0 chnl=15 +char id=8258 x=329 y=136 width=18 height=16 xoffset=-1 yoffset=1 xadvance=16 page=0 chnl=15 +char id=8259 x=492 y=448 width=8 height=5 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=15 +char id=8260 x=117 y=375 width=11 height=14 xoffset=-4 yoffset=2 xadvance=3 page=0 chnl=15 +char id=8261 x=503 y=0 width=6 height=18 xoffset=0 yoffset=1 xadvance=6 page=0 chnl=15 +char id=8262 x=453 y=20 width=6 height=18 xoffset=0 yoffset=1 xadvance=6 page=0 chnl=15 +char id=8263 x=223 y=241 width=17 height=14 xoffset=-1 yoffset=2 xadvance=15 page=0 chnl=15 +char id=8264 x=448 y=318 width=12 height=14 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=8265 x=462 y=318 width=12 height=14 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=15 +char id=8266 x=172 y=403 width=10 height=13 xoffset=-1 yoffset=5 xadvance=8 page=0 chnl=15 +char id=8267 x=280 y=155 width=11 height=16 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=8268 x=497 y=437 width=8 height=8 xoffset=0 yoffset=5 xadvance=8 page=0 chnl=15 +char id=8269 x=477 y=438 width=8 height=8 xoffset=0 yoffset=5 xadvance=8 page=0 chnl=15 +char id=8270 x=325 y=441 width=10 height=10 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=15 +char id=8271 x=263 y=401 width=5 height=13 xoffset=1 yoffset=5 xadvance=5 page=0 chnl=15 +char id=8272 x=26 y=0 width=17 height=21 xoffset=-2 yoffset=-1 xadvance=13 page=0 chnl=15 +char id=8273 x=389 y=20 width=10 height=18 xoffset=-1 yoffset=-1 xadvance=8 page=0 chnl=15 +char id=8274 x=280 y=224 width=9 height=15 xoffset=-1 yoffset=2 xadvance=7 page=0 chnl=15 +char id=8275 x=156 y=460 width=18 height=6 xoffset=-1 yoffset=7 xadvance=16 page=0 chnl=15 +char id=8276 x=195 y=457 width=17 height=6 xoffset=-2 yoffset=14 xadvance=13 page=0 chnl=15 +char id=8277 x=435 y=400 width=11 height=12 xoffset=1 yoffset=3 xadvance=13 page=0 chnl=15 +char id=8278 x=361 y=441 width=9 height=10 xoffset=0 yoffset=4 xadvance=9 page=0 chnl=15 +char id=8279 x=251 y=456 width=13 height=6 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=15 +char id=8280 x=26 y=435 width=11 height=11 xoffset=1 yoffset=4 xadvance=13 page=0 chnl=15 +char id=8281 x=39 y=435 width=11 height=11 xoffset=1 yoffset=4 xadvance=13 page=0 chnl=15 +char id=8282 x=451 y=384 width=5 height=14 xoffset=0 yoffset=2 xadvance=5 page=0 chnl=15 +char id=8283 x=198 y=0 width=14 height=19 xoffset=-1 yoffset=0 xadvance=13 page=0 chnl=15 +char id=8284 x=176 y=258 width=15 height=14 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=8285 x=256 y=401 width=5 height=13 xoffset=0 yoffset=3 xadvance=5 page=0 chnl=15 +char id=8286 x=249 y=402 width=5 height=13 xoffset=0 yoffset=3 xadvance=5 page=0 chnl=15 +char id=8287 x=294 y=462 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=4 page=0 chnl=15 +char id=8288 x=299 y=462 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=0 page=0 chnl=15 +char id=8289 x=304 y=462 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=0 page=0 chnl=15 +char id=8290 x=309 y=462 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=0 page=0 chnl=15 +char id=8291 x=314 y=462 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=0 page=0 chnl=15 +char id=8292 x=319 y=461 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=0 page=0 chnl=15 +char id=8298 x=324 y=461 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=0 page=0 chnl=15 +char id=8299 x=329 y=461 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=0 page=0 chnl=15 +char id=8300 x=334 y=461 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=0 page=0 chnl=15 +char id=8301 x=339 y=461 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=0 page=0 chnl=15 +char id=8302 x=344 y=461 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=0 page=0 chnl=15 +char id=8303 x=349 y=461 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=0 page=0 chnl=15 diff --git a/examples/text/resources/dejavu.png b/examples/text/resources/dejavu.png new file mode 100644 index 0000000..77fe4b3 Binary files /dev/null and b/examples/text/resources/dejavu.png differ diff --git a/examples/text/resources/fonts/alagard.png b/examples/text/resources/fonts/alagard.png new file mode 100644 index 0000000..e8d15ee Binary files /dev/null and b/examples/text/resources/fonts/alagard.png differ diff --git a/examples/text/resources/fonts/alpha_beta.png b/examples/text/resources/fonts/alpha_beta.png new file mode 100644 index 0000000..6b880bd Binary files /dev/null and b/examples/text/resources/fonts/alpha_beta.png differ diff --git a/examples/text/resources/fonts/jupiter_crash.png b/examples/text/resources/fonts/jupiter_crash.png new file mode 100644 index 0000000..064df10 Binary files /dev/null and b/examples/text/resources/fonts/jupiter_crash.png differ diff --git a/examples/text/resources/fonts/mecha.png b/examples/text/resources/fonts/mecha.png new file mode 100644 index 0000000..88c2df7 Binary files /dev/null and b/examples/text/resources/fonts/mecha.png differ diff --git a/examples/text/resources/fonts/pixantiqua.png b/examples/text/resources/fonts/pixantiqua.png new file mode 100644 index 0000000..d9d3dfa Binary files /dev/null and b/examples/text/resources/fonts/pixantiqua.png differ diff --git a/examples/text/resources/fonts/pixelplay.png b/examples/text/resources/fonts/pixelplay.png new file mode 100644 index 0000000..5d5d563 Binary files /dev/null and b/examples/text/resources/fonts/pixelplay.png differ diff --git a/examples/text/resources/fonts/romulus.png b/examples/text/resources/fonts/romulus.png new file mode 100644 index 0000000..37b8f63 Binary files /dev/null and b/examples/text/resources/fonts/romulus.png differ diff --git a/examples/text/resources/fonts/setback.png b/examples/text/resources/fonts/setback.png new file mode 100644 index 0000000..7331c95 Binary files /dev/null and b/examples/text/resources/fonts/setback.png differ diff --git a/examples/text/resources/noto_cjk.fnt b/examples/text/resources/noto_cjk.fnt new file mode 100644 index 0000000..f112ef8 --- /dev/null +++ b/examples/text/resources/noto_cjk.fnt @@ -0,0 +1,580 @@ +info face="Noto Serif CJK JP" size=-16 bold=0 italic=0 charset="" unicode=1 stretchH=100 smooth=1 aa=1 padding=0,0,0,0 spacing=2,2 outline=1 +common lineHeight=23 base=18 scaleW=512 scaleH=512 pages=1 packed=0 alphaChnl=0 redChnl=4 greenChnl=4 blueChnl=4 +page id=0 file="noto_cjk.png" +chars count=576 +char id=32 x=507 y=185 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=4 page=0 chnl=15 +char id=33 x=449 y=285 width=5 height=14 xoffset=0 yoffset=5 xadvance=5 page=0 chnl=15 +char id=34 x=393 y=315 width=8 height=8 xoffset=-1 yoffset=4 xadvance=6 page=0 chnl=15 +char id=35 x=285 y=287 width=11 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=36 x=500 y=61 width=10 height=18 xoffset=-1 yoffset=3 xadvance=9 page=0 chnl=15 +char id=37 x=52 y=257 width=15 height=15 xoffset=0 yoffset=5 xadvance=15 page=0 chnl=15 +char id=38 x=495 y=268 width=14 height=14 xoffset=-1 yoffset=5 xadvance=12 page=0 chnl=15 +char id=39 x=413 y=315 width=5 height=8 xoffset=-1 yoffset=4 xadvance=3 page=0 chnl=15 +char id=40 x=339 y=21 width=7 height=19 xoffset=0 yoffset=4 xadvance=6 page=0 chnl=15 +char id=41 x=330 y=21 width=7 height=19 xoffset=-1 yoffset=4 xadvance=6 page=0 chnl=15 +char id=42 x=321 y=317 width=10 height=9 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=15 +char id=43 x=26 y=322 width=11 height=11 xoffset=-1 yoffset=7 xadvance=9 page=0 chnl=15 +char id=44 x=353 y=316 width=6 height=9 xoffset=-1 yoffset=15 xadvance=5 page=0 chnl=15 +char id=45 x=136 y=334 width=7 height=4 xoffset=-1 yoffset=12 xadvance=5 page=0 chnl=15 +char id=46 x=109 y=334 width=5 height=5 xoffset=0 yoffset=14 xadvance=5 page=0 chnl=15 +char id=47 x=500 y=81 width=8 height=18 xoffset=-1 yoffset=4 xadvance=6 page=0 chnl=15 +char id=48 x=406 y=286 width=10 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=49 x=418 y=286 width=9 height=14 xoffset=0 yoffset=5 xadvance=9 page=0 chnl=15 +char id=50 x=394 y=286 width=10 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=51 x=382 y=286 width=10 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=52 x=272 y=287 width=11 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=53 x=370 y=286 width=10 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=54 x=358 y=286 width=10 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=55 x=346 y=286 width=10 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=56 x=334 y=287 width=10 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=57 x=322 y=287 width=10 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=58 x=502 y=300 width=5 height=11 xoffset=0 yoffset=8 xadvance=5 page=0 chnl=15 +char id=59 x=190 y=238 width=6 height=16 xoffset=-1 yoffset=8 xadvance=5 page=0 chnl=15 +char id=60 x=39 y=322 width=11 height=11 xoffset=-1 yoffset=7 xadvance=9 page=0 chnl=15 +char id=61 x=440 y=315 width=11 height=7 xoffset=-1 yoffset=9 xadvance=9 page=0 chnl=15 +char id=62 x=78 y=321 width=11 height=11 xoffset=-1 yoffset=7 xadvance=9 page=0 chnl=15 +char id=63 x=460 y=252 width=7 height=15 xoffset=0 yoffset=4 xadvance=7 page=0 chnl=15 +char id=64 x=72 y=221 width=16 height=16 xoffset=-1 yoffset=6 xadvance=14 page=0 chnl=15 +char id=65 x=447 y=269 width=14 height=14 xoffset=-1 yoffset=5 xadvance=12 page=0 chnl=15 +char id=66 x=175 y=289 width=12 height=14 xoffset=-1 yoffset=5 xadvance=11 page=0 chnl=15 +char id=67 x=75 y=290 width=13 height=14 xoffset=-1 yoffset=5 xadvance=11 page=0 chnl=15 +char id=68 x=415 y=270 width=14 height=14 xoffset=-1 yoffset=5 xadvance=12 page=0 chnl=15 +char id=69 x=119 y=290 width=12 height=14 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=70 x=105 y=290 width=12 height=14 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=71 x=431 y=269 width=14 height=14 xoffset=-1 yoffset=5 xadvance=12 page=0 chnl=15 +char id=72 x=302 y=271 width=15 height=14 xoffset=-1 yoffset=5 xadvance=14 page=0 chnl=15 +char id=73 x=439 y=285 width=8 height=14 xoffset=-1 yoffset=5 xadvance=6 page=0 chnl=15 +char id=74 x=268 y=200 width=9 height=17 xoffset=-2 yoffset=5 xadvance=6 page=0 chnl=15 +char id=75 x=367 y=270 width=14 height=14 xoffset=-1 yoffset=5 xadvance=12 page=0 chnl=15 +char id=76 x=203 y=289 width=12 height=14 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=77 x=158 y=273 width=17 height=14 xoffset=-1 yoffset=5 xadvance=16 page=0 chnl=15 +char id=78 x=285 y=271 width=15 height=14 xoffset=-1 yoffset=5 xadvance=13 page=0 chnl=15 +char id=79 x=479 y=269 width=14 height=14 xoffset=-1 yoffset=5 xadvance=12 page=0 chnl=15 +char id=80 x=189 y=289 width=12 height=14 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=81 x=209 y=142 width=14 height=18 xoffset=-1 yoffset=5 xadvance=12 page=0 chnl=15 +char id=82 x=30 y=291 width=13 height=14 xoffset=-1 yoffset=5 xadvance=11 page=0 chnl=15 +char id=83 x=259 y=287 width=11 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=84 x=45 y=291 width=13 height=14 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=85 x=335 y=270 width=14 height=14 xoffset=-1 yoffset=5 xadvance=13 page=0 chnl=15 +char id=86 x=399 y=270 width=14 height=14 xoffset=-1 yoffset=5 xadvance=12 page=0 chnl=15 +char id=87 x=485 y=252 width=19 height=14 xoffset=-1 yoffset=5 xadvance=17 page=0 chnl=15 +char id=88 x=0 y=291 width=13 height=14 xoffset=-1 yoffset=5 xadvance=11 page=0 chnl=15 +char id=89 x=15 y=291 width=13 height=14 xoffset=-1 yoffset=5 xadvance=11 page=0 chnl=15 +char id=90 x=217 y=287 width=12 height=14 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=91 x=8 y=164 width=6 height=18 xoffset=0 yoffset=4 xadvance=5 page=0 chnl=15 +char id=92 x=497 y=141 width=8 height=18 xoffset=-1 yoffset=4 xadvance=6 page=0 chnl=15 +char id=93 x=0 y=164 width=6 height=18 xoffset=-1 yoffset=4 xadvance=5 page=0 chnl=15 +char id=94 x=465 y=313 width=9 height=7 xoffset=0 yoffset=8 xadvance=9 page=0 chnl=15 +char id=95 x=145 y=334 width=11 height=3 xoffset=-1 yoffset=17 xadvance=9 page=0 chnl=15 +char id=96 x=74 y=335 width=6 height=6 xoffset=0 yoffset=4 xadvance=7 page=0 chnl=15 +char id=97 x=13 y=322 width=11 height=11 xoffset=-1 yoffset=8 xadvance=9 page=0 chnl=15 +char id=98 x=398 y=218 width=12 height=16 xoffset=-1 yoffset=3 xadvance=10 page=0 chnl=15 +char id=99 x=129 y=321 width=10 height=11 xoffset=-1 yoffset=8 xadvance=8 page=0 chnl=15 +char id=100 x=426 y=217 width=12 height=16 xoffset=-1 yoffset=3 xadvance=10 page=0 chnl=15 +char id=101 x=117 y=321 width=10 height=11 xoffset=-1 yoffset=8 xadvance=9 page=0 chnl=15 +char id=102 x=140 y=238 width=10 height=16 xoffset=-1 yoffset=3 xadvance=6 page=0 chnl=15 +char id=103 x=52 y=239 width=11 height=16 xoffset=-1 yoffset=8 xadvance=9 page=0 chnl=15 +char id=104 x=440 y=217 width=12 height=16 xoffset=-1 yoffset=3 xadvance=10 page=0 chnl=15 +char id=105 x=469 y=252 width=7 height=15 xoffset=-1 yoffset=4 xadvance=5 page=0 chnl=15 +char id=106 x=95 y=0 width=8 height=20 xoffset=-3 yoffset=4 xadvance=5 page=0 chnl=15 +char id=107 x=412 y=218 width=12 height=16 xoffset=-1 yoffset=3 xadvance=9 page=0 chnl=15 +char id=108 x=451 y=252 width=7 height=15 xoffset=-1 yoffset=4 xadvance=5 page=0 chnl=15 +char id=109 x=386 y=302 width=18 height=11 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=15 +char id=110 x=488 y=300 width=12 height=11 xoffset=-1 yoffset=8 xadvance=11 page=0 chnl=15 +char id=111 x=91 y=321 width=11 height=11 xoffset=-1 yoffset=8 xadvance=10 page=0 chnl=15 +char id=112 x=300 y=218 width=12 height=16 xoffset=-1 yoffset=8 xadvance=10 page=0 chnl=15 +char id=113 x=286 y=219 width=12 height=16 xoffset=-1 yoffset=8 xadvance=10 page=0 chnl=15 +char id=114 x=141 y=321 width=10 height=11 xoffset=-1 yoffset=8 xadvance=7 page=0 chnl=15 +char id=115 x=165 y=320 width=9 height=11 xoffset=-1 yoffset=8 xadvance=8 page=0 chnl=15 +char id=116 x=429 y=286 width=8 height=14 xoffset=-1 yoffset=5 xadvance=6 page=0 chnl=15 +char id=117 x=474 y=300 width=12 height=11 xoffset=-1 yoffset=8 xadvance=10 page=0 chnl=15 +char id=118 x=0 y=322 width=11 height=11 xoffset=-1 yoffset=8 xadvance=9 page=0 chnl=15 +char id=119 x=424 y=302 width=16 height=11 xoffset=-1 yoffset=8 xadvance=13 page=0 chnl=15 +char id=120 x=104 y=321 width=11 height=11 xoffset=-1 yoffset=8 xadvance=9 page=0 chnl=15 +char id=121 x=342 y=218 width=12 height=16 xoffset=-2 yoffset=8 xadvance=9 page=0 chnl=15 +char id=122 x=153 y=320 width=10 height=11 xoffset=-1 yoffset=8 xadvance=8 page=0 chnl=15 +char id=123 x=467 y=141 width=8 height=18 xoffset=-1 yoffset=4 xadvance=6 page=0 chnl=15 +char id=124 x=111 y=0 width=4 height=20 xoffset=0 yoffset=4 xadvance=4 page=0 chnl=15 +char id=125 x=457 y=141 width=8 height=18 xoffset=-1 yoffset=4 xadvance=6 page=0 chnl=15 +char id=126 x=27 y=335 width=11 height=6 xoffset=-1 yoffset=9 xadvance=9 page=0 chnl=15 +char id=160 x=507 y=180 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=4 page=0 chnl=15 +char id=161 x=478 y=252 width=5 height=15 xoffset=0 yoffset=8 xadvance=5 page=0 chnl=15 +char id=162 x=430 y=252 width=10 height=15 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=163 x=310 y=287 width=10 height=14 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=164 x=52 y=322 width=11 height=11 xoffset=-1 yoffset=7 xadvance=9 page=0 chnl=15 +char id=165 x=201 y=305 width=12 height=13 xoffset=-2 yoffset=6 xadvance=9 page=0 chnl=15 +char id=166 x=105 y=0 width=4 height=20 xoffset=0 yoffset=4 xadvance=4 page=0 chnl=15 +char id=167 x=244 y=200 width=10 height=17 xoffset=3 yoffset=4 xadvance=16 page=0 chnl=15 +char id=168 x=116 y=334 width=9 height=4 xoffset=-1 yoffset=5 xadvance=7 page=0 chnl=15 +char id=169 x=251 y=271 width=15 height=14 xoffset=-1 yoffset=5 xadvance=13 page=0 chnl=15 +char id=170 x=383 y=316 width=8 height=8 xoffset=-1 yoffset=4 xadvance=6 page=0 chnl=15 +char id=171 x=248 y=317 width=10 height=10 xoffset=-1 yoffset=9 xadvance=8 page=0 chnl=15 +char id=172 x=427 y=315 width=11 height=7 xoffset=-1 yoffset=10 xadvance=9 page=0 chnl=15 +char id=173 x=127 y=334 width=7 height=4 xoffset=-1 yoffset=12 xadvance=5 page=0 chnl=15 +char id=174 x=236 y=317 width=10 height=10 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=15 +char id=175 x=158 y=333 width=7 height=3 xoffset=0 yoffset=6 xadvance=7 page=0 chnl=15 +char id=176 x=486 y=313 width=7 height=7 xoffset=-1 yoffset=5 xadvance=6 page=0 chnl=15 +char id=177 x=154 y=256 width=15 height=15 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=178 x=270 y=317 width=8 height=10 xoffset=-1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=179 x=260 y=317 width=8 height=10 xoffset=-1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=180 x=58 y=335 width=6 height=6 xoffset=1 yoffset=4 xadvance=7 page=0 chnl=15 +char id=181 x=26 y=240 width=11 height=16 xoffset=0 yoffset=7 xadvance=10 page=0 chnl=15 +char id=182 x=216 y=200 width=12 height=17 xoffset=2 yoffset=5 xadvance=16 page=0 chnl=15 +char id=183 x=102 y=334 width=5 height=5 xoffset=0 yoffset=10 xadvance=5 page=0 chnl=15 +char id=184 x=504 y=313 width=6 height=7 xoffset=0 yoffset=16 xadvance=7 page=0 chnl=15 +char id=185 x=280 y=317 width=7 height=10 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=186 x=403 y=315 width=8 height=8 xoffset=-1 yoffset=4 xadvance=6 page=0 chnl=15 +char id=187 x=224 y=320 width=10 height=10 xoffset=-1 yoffset=9 xadvance=8 page=0 chnl=15 +char id=188 x=137 y=256 width=15 height=15 xoffset=0 yoffset=5 xadvance=15 page=0 chnl=15 +char id=189 x=375 y=236 width=16 height=15 xoffset=-1 yoffset=5 xadvance=15 page=0 chnl=15 +char id=190 x=120 y=256 width=15 height=15 xoffset=0 yoffset=5 xadvance=15 page=0 chnl=15 +char id=191 x=442 y=252 width=7 height=15 xoffset=0 yoffset=8 xadvance=7 page=0 chnl=15 +char id=192 x=273 y=142 width=14 height=18 xoffset=-1 yoffset=1 xadvance=12 page=0 chnl=15 +char id=193 x=353 y=142 width=14 height=18 xoffset=-1 yoffset=1 xadvance=12 page=0 chnl=15 +char id=194 x=48 y=202 width=14 height=17 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=195 x=337 y=142 width=14 height=18 xoffset=-1 yoffset=1 xadvance=12 page=0 chnl=15 +char id=196 x=0 y=203 width=14 height=17 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=197 x=225 y=142 width=14 height=18 xoffset=-1 yoffset=1 xadvance=12 page=0 chnl=15 +char id=198 x=20 y=275 width=18 height=14 xoffset=-1 yoffset=5 xadvance=16 page=0 chnl=15 +char id=199 x=400 y=141 width=13 height=18 xoffset=-1 yoffset=5 xadvance=11 page=0 chnl=15 +char id=200 x=443 y=141 width=12 height=18 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=201 x=498 y=101 width=12 height=18 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=202 x=429 y=141 width=12 height=18 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=15 +char id=203 x=202 y=200 width=12 height=17 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=204 x=502 y=121 width=8 height=18 xoffset=-1 yoffset=1 xadvance=6 page=0 chnl=15 +char id=205 x=477 y=141 width=8 height=18 xoffset=-1 yoffset=1 xadvance=6 page=0 chnl=15 +char id=206 x=487 y=141 width=8 height=18 xoffset=-1 yoffset=1 xadvance=6 page=0 chnl=15 +char id=207 x=279 y=200 width=8 height=17 xoffset=-1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=208 x=319 y=271 width=14 height=14 xoffset=-1 yoffset=5 xadvance=12 page=0 chnl=15 +char id=209 x=142 y=143 width=15 height=18 xoffset=-1 yoffset=1 xadvance=13 page=0 chnl=15 +char id=210 x=305 y=142 width=14 height=18 xoffset=-1 yoffset=1 xadvance=12 page=0 chnl=15 +char id=211 x=369 y=142 width=14 height=18 xoffset=-1 yoffset=1 xadvance=12 page=0 chnl=15 +char id=212 x=491 y=180 width=14 height=17 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=213 x=475 y=180 width=14 height=17 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=214 x=96 y=201 width=14 height=17 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=215 x=173 y=305 width=12 height=13 xoffset=2 yoffset=6 xadvance=16 page=0 chnl=15 +char id=216 x=209 y=219 width=14 height=16 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=15 +char id=217 x=241 y=142 width=14 height=18 xoffset=-1 yoffset=1 xadvance=13 page=0 chnl=15 +char id=218 x=257 y=142 width=14 height=18 xoffset=-1 yoffset=1 xadvance=13 page=0 chnl=15 +char id=219 x=64 y=202 width=14 height=17 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=220 x=16 y=203 width=14 height=17 xoffset=-1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=221 x=385 y=141 width=13 height=18 xoffset=-1 yoffset=1 xadvance=11 page=0 chnl=15 +char id=222 x=231 y=287 width=12 height=14 xoffset=-1 yoffset=5 xadvance=11 page=0 chnl=15 +char id=223 x=299 y=254 width=12 height=15 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=15 +char id=224 x=13 y=240 width=11 height=16 xoffset=-1 yoffset=3 xadvance=9 page=0 chnl=15 +char id=225 x=0 y=240 width=11 height=16 xoffset=-1 yoffset=3 xadvance=9 page=0 chnl=15 +char id=226 x=493 y=217 width=11 height=16 xoffset=-1 yoffset=3 xadvance=9 page=0 chnl=15 +char id=227 x=367 y=253 width=11 height=15 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=15 +char id=228 x=341 y=253 width=11 height=15 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=15 +char id=229 x=480 y=217 width=11 height=16 xoffset=-1 yoffset=3 xadvance=9 page=0 chnl=15 +char id=230 x=442 y=301 width=15 height=11 xoffset=-1 yoffset=8 xadvance=14 page=0 chnl=15 +char id=231 x=406 y=253 width=10 height=15 xoffset=-1 yoffset=8 xadvance=8 page=0 chnl=15 +char id=232 x=116 y=238 width=10 height=16 xoffset=-1 yoffset=3 xadvance=9 page=0 chnl=15 +char id=233 x=128 y=238 width=10 height=16 xoffset=-1 yoffset=3 xadvance=9 page=0 chnl=15 +char id=234 x=104 y=239 width=10 height=16 xoffset=-1 yoffset=3 xadvance=9 page=0 chnl=15 +char id=235 x=418 y=253 width=10 height=15 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=15 +char id=236 x=172 y=238 width=7 height=16 xoffset=-1 yoffset=3 xadvance=5 page=0 chnl=15 +char id=237 x=181 y=238 width=7 height=16 xoffset=-1 yoffset=3 xadvance=5 page=0 chnl=15 +char id=238 x=163 y=238 width=7 height=16 xoffset=-1 yoffset=3 xadvance=5 page=0 chnl=15 +char id=239 x=501 y=235 width=9 height=15 xoffset=-2 yoffset=4 xadvance=5 page=0 chnl=15 +char id=240 x=454 y=217 width=11 height=16 xoffset=-1 yoffset=3 xadvance=9 page=0 chnl=15 +char id=241 x=327 y=253 width=12 height=15 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=15 +char id=242 x=91 y=239 width=11 height=16 xoffset=-1 yoffset=3 xadvance=10 page=0 chnl=15 +char id=243 x=78 y=239 width=11 height=16 xoffset=-1 yoffset=3 xadvance=10 page=0 chnl=15 +char id=244 x=65 y=239 width=11 height=16 xoffset=-1 yoffset=3 xadvance=10 page=0 chnl=15 +char id=245 x=393 y=253 width=11 height=15 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=15 +char id=246 x=380 y=253 width=11 height=15 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=15 +char id=247 x=233 y=271 width=16 height=14 xoffset=0 yoffset=5 xadvance=16 page=0 chnl=15 +char id=248 x=215 y=305 width=11 height=13 xoffset=-1 yoffset=7 xadvance=10 page=0 chnl=15 +char id=249 x=384 y=218 width=12 height=16 xoffset=-1 yoffset=3 xadvance=10 page=0 chnl=15 +char id=250 x=356 y=218 width=12 height=16 xoffset=-1 yoffset=3 xadvance=10 page=0 chnl=15 +char id=251 x=314 y=218 width=12 height=16 xoffset=-1 yoffset=3 xadvance=10 page=0 chnl=15 +char id=252 x=313 y=254 width=12 height=15 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=15 +char id=253 x=0 y=0 width=12 height=21 xoffset=-2 yoffset=3 xadvance=9 page=0 chnl=15 +char id=254 x=14 y=0 width=11 height=21 xoffset=-1 yoffset=3 xadvance=10 page=0 chnl=15 +char id=255 x=81 y=0 width=12 height=20 xoffset=-2 yoffset=4 xadvance=9 page=0 chnl=15 +char id=8220 x=361 y=316 width=9 height=8 xoffset=-1 yoffset=4 xadvance=7 page=0 chnl=15 +char id=8222 x=372 y=316 width=9 height=8 xoffset=-1 yoffset=14 xadvance=7 page=0 chnl=15 +char id=9829 x=18 y=222 width=16 height=16 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12288 x=507 y=141 width=3 height=3 xoffset=-1 yoffset=-1 xadvance=16 page=0 chnl=15 +char id=12290 x=476 y=313 width=8 height=7 xoffset=-1 yoffset=14 xadvance=16 page=0 chnl=15 +char id=12353 x=147 y=289 width=12 height=14 xoffset=2 yoffset=7 xadvance=16 page=0 chnl=15 +char id=12354 x=73 y=183 width=16 height=17 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12355 x=459 y=300 width=13 height=11 xoffset=1 yoffset=9 xadvance=16 page=0 chnl=15 +char id=12356 x=483 y=235 width=16 height=15 xoffset=0 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12357 x=298 y=287 width=10 height=14 xoffset=3 yoffset=7 xadvance=16 page=0 chnl=15 +char id=12358 x=415 y=141 width=12 height=18 xoffset=2 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12359 x=187 y=305 width=12 height=13 xoffset=2 yoffset=7 xadvance=16 page=0 chnl=15 +char id=12360 x=409 y=180 width=15 height=17 xoffset=1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12361 x=53 y=307 width=14 height=13 xoffset=1 yoffset=8 xadvance=16 page=0 chnl=15 +char id=12362 x=108 y=220 width=16 height=16 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12363 x=271 y=181 width=16 height=17 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12364 x=0 y=184 width=17 height=17 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12365 x=32 y=202 width=14 height=17 xoffset=1 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12366 x=72 y=143 width=16 height=18 xoffset=1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12367 x=152 y=238 width=9 height=16 xoffset=3 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12368 x=256 y=219 width=13 height=16 xoffset=2 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12369 x=375 y=181 width=15 height=17 xoffset=1 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12370 x=340 y=122 width=16 height=18 xoffset=1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12371 x=284 y=254 width=13 height=15 xoffset=2 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12372 x=426 y=180 width=15 height=17 xoffset=1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12373 x=142 y=201 width=13 height=17 xoffset=1 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12374 x=57 y=123 width=17 height=18 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12375 x=443 y=180 width=14 height=17 xoffset=2 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12376 x=112 y=201 width=13 height=17 xoffset=2 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12377 x=235 y=181 width=16 height=17 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12378 x=209 y=122 width=17 height=18 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12379 x=309 y=200 width=18 height=16 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12380 x=137 y=163 width=18 height=17 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12381 x=358 y=181 width=15 height=17 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12382 x=396 y=161 width=17 height=17 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12383 x=217 y=181 width=16 height=17 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12384 x=277 y=162 width=18 height=17 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12385 x=324 y=181 width=15 height=17 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12386 x=430 y=121 width=16 height=18 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12387 x=195 y=320 width=13 height=10 xoffset=1 yoffset=10 xadvance=16 page=0 chnl=15 +char id=12388 x=267 y=303 width=17 height=12 xoffset=-1 yoffset=7 xadvance=16 page=0 chnl=15 +char id=12389 x=218 y=237 width=18 height=15 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12390 x=411 y=236 width=16 height=15 xoffset=0 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12391 x=338 y=236 width=17 height=15 xoffset=-1 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12392 x=370 y=218 width=12 height=16 xoffset=2 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12393 x=392 y=181 width=15 height=17 xoffset=2 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12394 x=477 y=199 width=16 height=16 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12395 x=160 y=220 width=15 height=16 xoffset=1 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12396 x=447 y=235 width=16 height=15 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12397 x=491 y=161 width=17 height=17 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12398 x=465 y=235 width=16 height=15 xoffset=0 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12399 x=36 y=221 width=16 height=16 xoffset=0 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12400 x=479 y=101 width=17 height=18 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12401 x=247 y=122 width=17 height=18 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12402 x=495 y=199 width=15 height=16 xoffset=1 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12403 x=36 y=144 width=16 height=18 xoffset=1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12404 x=253 y=181 width=16 height=17 xoffset=1 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12405 x=348 y=200 width=17 height=16 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12406 x=289 y=200 width=18 height=16 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12407 x=386 y=200 width=17 height=16 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12408 x=228 y=303 width=18 height=12 xoffset=-1 yoffset=7 xadvance=16 page=0 chnl=15 +char id=12409 x=139 y=273 width=17 height=14 xoffset=-1 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12410 x=456 y=285 width=17 height=13 xoffset=-1 yoffset=6 xadvance=16 page=0 chnl=15 +char id=12411 x=55 y=183 width=16 height=17 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12412 x=171 y=122 width=17 height=18 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12413 x=95 y=123 width=17 height=18 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12414 x=193 y=219 width=14 height=16 xoffset=1 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12415 x=405 y=200 width=16 height=16 xoffset=0 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12416 x=367 y=200 width=17 height=16 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12417 x=90 y=221 width=16 height=16 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12418 x=328 y=218 width=12 height=16 xoffset=2 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12419 x=383 y=270 width=14 height=14 xoffset=1 yoffset=7 xadvance=16 page=0 chnl=15 +char id=12420 x=472 y=161 width=17 height=17 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12421 x=159 y=305 width=12 height=13 xoffset=2 yoffset=8 xadvance=16 page=0 chnl=15 +char id=12422 x=109 y=182 width=16 height=17 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12423 x=348 y=302 width=11 height=12 xoffset=3 yoffset=8 xadvance=16 page=0 chnl=15 +char id=12424 x=241 y=219 width=13 height=16 xoffset=2 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12425 x=127 y=201 width=13 height=17 xoffset=2 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12426 x=500 y=41 width=10 height=18 xoffset=3 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12427 x=188 y=256 width=14 height=15 xoffset=1 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12428 x=177 y=162 width=18 height=17 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12429 x=177 y=220 width=14 height=16 xoffset=1 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12430 x=351 y=270 width=14 height=14 xoffset=1 yoffset=7 xadvance=16 page=0 chnl=15 +char id=12431 x=163 y=182 width=16 height=17 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12432 x=393 y=236 width=16 height=15 xoffset=0 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12433 x=181 y=181 width=16 height=17 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12434 x=143 y=220 width=15 height=16 xoffset=1 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12435 x=54 y=221 width=16 height=16 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12436 x=289 y=142 width=14 height=18 xoffset=2 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12437 x=463 y=269 width=14 height=14 xoffset=1 yoffset=7 xadvance=16 page=0 chnl=15 +char id=12438 x=101 y=306 width=13 height=13 xoffset=2 yoffset=8 xadvance=16 page=0 chnl=15 +char id=12441 x=40 y=335 width=7 height=6 xoffset=-6 yoffset=3 xadvance=0 page=0 chnl=15 +char id=12442 x=49 y=335 width=7 height=6 xoffset=-5 yoffset=3 xadvance=0 page=0 chnl=15 +char id=12443 x=495 y=313 width=7 height=7 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12444 x=0 y=335 width=7 height=7 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12445 x=333 y=317 width=8 height=9 xoffset=4 yoffset=8 xadvance=16 page=0 chnl=15 +char id=12446 x=65 y=322 width=11 height=11 xoffset=4 yoffset=6 xadvance=16 page=0 chnl=15 +char id=12447 x=193 y=142 width=14 height=18 xoffset=1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12448 x=453 y=314 width=10 height=7 xoffset=3 yoffset=9 xadvance=16 page=0 chnl=15 +char id=12449 x=334 y=303 width=12 height=12 xoffset=2 yoffset=9 xadvance=16 page=0 chnl=15 +char id=12450 x=126 y=220 width=15 height=16 xoffset=1 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12451 x=374 y=302 width=10 height=12 xoffset=2 yoffset=8 xadvance=16 page=0 chnl=15 +char id=12452 x=157 y=201 width=13 height=17 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12453 x=161 y=289 width=12 height=14 xoffset=2 yoffset=7 xadvance=16 page=0 chnl=15 +char id=12454 x=459 y=180 width=14 height=17 xoffset=1 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12455 x=289 y=317 width=14 height=9 xoffset=1 yoffset=10 xadvance=16 page=0 chnl=15 +char id=12456 x=494 y=285 width=16 height=13 xoffset=0 yoffset=6 xadvance=16 page=0 chnl=15 +char id=12457 x=116 y=306 width=13 height=13 xoffset=1 yoffset=7 xadvance=16 page=0 chnl=15 +char id=12458 x=459 y=199 width=16 height=16 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12459 x=307 y=181 width=15 height=17 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12460 x=453 y=161 width=17 height=17 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12461 x=289 y=181 width=16 height=17 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12462 x=285 y=122 width=17 height=18 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12463 x=80 y=202 width=14 height=17 xoffset=1 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12464 x=448 y=121 width=16 height=18 xoffset=1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12465 x=0 y=222 width=16 height=16 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12466 x=19 y=124 width=17 height=18 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12467 x=304 y=303 width=14 height=12 xoffset=1 yoffset=7 xadvance=16 page=0 chnl=15 +char id=12468 x=429 y=235 width=16 height=15 xoffset=1 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12469 x=199 y=181 width=16 height=17 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12470 x=160 y=102 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12471 x=103 y=257 width=15 height=15 xoffset=1 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12472 x=341 y=181 width=15 height=17 xoffset=1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12473 x=69 y=257 width=15 height=15 xoffset=0 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12474 x=145 y=182 width=16 height=17 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12475 x=86 y=257 width=15 height=15 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12476 x=278 y=237 width=18 height=15 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12477 x=204 y=254 width=14 height=15 xoffset=1 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12478 x=322 y=122 width=16 height=18 xoffset=1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12479 x=321 y=142 width=14 height=18 xoffset=1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12480 x=38 y=124 width=17 height=18 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12481 x=127 y=182 width=16 height=17 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12482 x=434 y=161 width=17 height=17 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12483 x=320 y=303 width=12 height=12 xoffset=2 yoffset=9 xadvance=16 page=0 chnl=15 +char id=12484 x=252 y=254 width=14 height=15 xoffset=1 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12485 x=266 y=122 width=17 height=18 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12486 x=441 y=199 width=16 height=16 xoffset=0 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12487 x=228 y=122 width=17 height=18 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12488 x=256 y=200 width=10 height=17 xoffset=4 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12489 x=230 y=200 width=12 height=17 xoffset=3 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12490 x=91 y=182 width=16 height=17 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12491 x=406 y=302 width=16 height=11 xoffset=0 yoffset=7 xadvance=16 page=0 chnl=15 +char id=12492 x=35 y=258 width=15 height=15 xoffset=0 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12493 x=484 y=121 width=16 height=18 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12494 x=90 y=290 width=13 height=14 xoffset=1 yoffset=6 xadvance=16 page=0 chnl=15 +char id=12495 x=176 y=320 width=17 height=10 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=15 +char id=12496 x=196 y=273 width=17 height=14 xoffset=-1 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12497 x=177 y=273 width=17 height=14 xoffset=-1 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12498 x=60 y=290 width=13 height=14 xoffset=2 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12499 x=171 y=256 width=15 height=15 xoffset=1 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12500 x=0 y=258 width=16 height=15 xoffset=1 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12501 x=236 y=254 width=14 height=15 xoffset=1 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12502 x=18 y=144 width=16 height=18 xoffset=1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12503 x=90 y=143 width=16 height=18 xoffset=1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12504 x=248 y=303 width=17 height=12 xoffset=-1 yoffset=7 xadvance=16 page=0 chnl=15 +char id=12505 x=120 y=273 width=17 height=14 xoffset=-1 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12506 x=475 y=285 width=17 height=13 xoffset=-1 yoffset=6 xadvance=16 page=0 chnl=15 +char id=12507 x=357 y=236 width=16 height=15 xoffset=0 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12508 x=415 y=161 width=17 height=17 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12509 x=37 y=183 width=16 height=17 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12510 x=286 y=303 width=16 height=12 xoffset=0 yoffset=7 xadvance=16 page=0 chnl=15 +char id=12511 x=354 y=253 width=11 height=15 xoffset=2 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12512 x=18 y=258 width=15 height=15 xoffset=0 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12513 x=268 y=254 width=14 height=15 xoffset=0 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12514 x=215 y=271 width=16 height=14 xoffset=0 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12515 x=131 y=306 width=12 height=13 xoffset=2 yoffset=8 xadvance=16 page=0 chnl=15 +char id=12516 x=423 y=199 width=16 height=16 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12517 x=305 y=317 width=14 height=9 xoffset=1 yoffset=10 xadvance=16 page=0 chnl=15 +char id=12518 x=0 y=307 width=16 height=13 xoffset=0 yoffset=6 xadvance=16 page=0 chnl=15 +char id=12519 x=210 y=320 width=12 height=10 xoffset=2 yoffset=9 xadvance=16 page=0 chnl=15 +char id=12520 x=85 y=306 width=14 height=13 xoffset=1 yoffset=6 xadvance=16 page=0 chnl=15 +char id=12521 x=225 y=219 width=14 height=16 xoffset=1 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12522 x=39 y=239 width=11 height=16 xoffset=2 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12523 x=0 y=275 width=18 height=14 xoffset=-1 yoffset=6 xadvance=16 page=0 chnl=15 +char id=12524 x=36 y=307 width=15 height=13 xoffset=1 yoffset=6 xadvance=16 page=0 chnl=15 +char id=12525 x=69 y=306 width=14 height=13 xoffset=1 yoffset=6 xadvance=16 page=0 chnl=15 +char id=12526 x=145 y=305 width=12 height=13 xoffset=2 yoffset=8 xadvance=16 page=0 chnl=15 +char id=12527 x=220 y=254 width=14 height=15 xoffset=1 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12528 x=19 y=183 width=16 height=17 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=15 +char id=12529 x=18 y=307 width=16 height=13 xoffset=0 yoffset=6 xadvance=16 page=0 chnl=15 +char id=12530 x=271 y=219 width=13 height=16 xoffset=2 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12531 x=268 y=271 width=15 height=14 xoffset=1 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12532 x=304 y=122 width=16 height=18 xoffset=1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12533 x=133 y=289 width=12 height=14 xoffset=2 yoffset=7 xadvance=16 page=0 chnl=15 +char id=12534 x=245 y=287 width=12 height=14 xoffset=2 yoffset=7 xadvance=16 page=0 chnl=15 +char id=12535 x=190 y=122 width=17 height=18 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12536 x=140 y=102 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12537 x=329 y=200 width=17 height=16 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12538 x=54 y=144 width=16 height=18 xoffset=1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=12539 x=66 y=335 width=6 height=6 xoffset=5 yoffset=10 xadvance=16 page=0 chnl=15 +char id=12540 x=9 y=335 width=16 height=6 xoffset=0 yoffset=10 xadvance=16 page=0 chnl=15 +char id=12541 x=343 y=317 width=8 height=9 xoffset=4 yoffset=8 xadvance=16 page=0 chnl=15 +char id=12542 x=361 y=302 width=11 height=12 xoffset=4 yoffset=5 xadvance=16 page=0 chnl=15 +char id=12543 x=172 y=201 width=13 height=17 xoffset=1 yoffset=4 xadvance=16 page=0 chnl=15 +char id=19968 x=82 y=334 width=18 height=5 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=15 +char id=19975 x=217 y=162 width=18 height=17 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=15 +char id=19979 x=120 y=103 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=19981 x=100 y=103 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=20037 x=80 y=103 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=20096 x=60 y=103 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=20102 x=394 y=121 width=16 height=18 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=15 +char id=20107 x=40 y=103 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=20108 x=60 y=274 width=18 height=14 xoffset=-1 yoffset=5 xadvance=16 page=0 chnl=15 +char id=20154 x=20 y=104 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=20260 x=0 y=104 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=20307 x=480 y=81 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=20316 x=320 y=82 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=20320 x=340 y=62 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=20663 x=320 y=62 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=20814 x=120 y=63 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=20837 x=80 y=63 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=20853 x=60 y=63 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=20891 x=40 y=63 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=20986 x=0 y=144 width=16 height=18 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=15 +char id=20999 x=480 y=41 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=21040 x=460 y=41 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=21147 x=133 y=123 width=17 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=21151 x=440 y=41 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=21315 x=420 y=41 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=21507 x=377 y=162 width=17 height=17 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=15 +char id=21527 x=152 y=122 width=17 height=18 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=15 +char id=21534 x=400 y=41 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=21705 x=380 y=41 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=22622 x=360 y=41 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=22825 x=340 y=42 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=22833 x=260 y=42 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=22836 x=220 y=42 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=22909 x=160 y=42 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=23376 x=140 y=42 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=23398 x=120 y=43 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=23544 x=80 y=43 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=23558 x=60 y=43 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=24120 x=40 y=43 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=24180 x=117 y=0 width=18 height=19 xoffset=-1 yoffset=2 xadvance=16 page=0 chnl=15 +char id=24320 x=20 y=44 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=24433 x=0 y=44 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=24471 x=469 y=21 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=24515 x=16 y=164 width=19 height=17 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=24605 x=197 y=162 width=18 height=17 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=24651 x=357 y=162 width=18 height=17 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=25105 x=449 y=21 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=26080 x=409 y=21 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=26082 x=369 y=21 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=26085 x=187 y=200 width=13 height=17 xoffset=2 yoffset=4 xadvance=16 page=0 chnl=15 +char id=26131 x=457 y=0 width=17 height=19 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=26178 x=0 y=124 width=17 height=18 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=15 +char id=26368 x=440 y=101 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=26377 x=420 y=101 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=26408 x=400 y=101 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=26543 x=380 y=101 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=27493 x=360 y=101 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=27515 x=340 y=102 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=27714 x=320 y=102 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=27835 x=300 y=102 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=27963 x=280 y=102 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=28937 x=260 y=102 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=29483 x=240 y=102 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=29503 x=220 y=102 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=29627 x=200 y=102 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=29702 x=157 y=163 width=18 height=17 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=29827 x=180 y=102 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=30002 x=159 y=142 width=15 height=18 xoffset=1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=30045 x=460 y=81 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=30693 x=440 y=81 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=31119 x=420 y=81 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=31169 x=348 y=21 width=19 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=31348 x=400 y=81 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=32299 x=380 y=81 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=32368 x=360 y=81 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=32705 x=340 y=82 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=32769 x=257 y=162 width=18 height=17 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=32773 x=300 y=82 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=32780 x=280 y=82 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=32988 x=260 y=82 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=32993 x=240 y=82 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=33021 x=220 y=82 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=33853 x=200 y=82 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=34382 x=180 y=82 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=34678 x=160 y=82 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=34892 x=140 y=82 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=35265 x=120 y=83 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=35328 x=100 y=83 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=36208 x=80 y=83 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=36335 x=60 y=83 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=36523 x=40 y=83 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=36817 x=20 y=84 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=36820 x=0 y=84 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=36861 x=480 y=61 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=36941 x=460 y=61 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=36965 x=440 y=61 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=37326 x=420 y=61 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=38590 x=400 y=61 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=38750 x=380 y=61 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=39034 x=360 y=61 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=39118 x=300 y=62 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=39135 x=280 y=62 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=39340 x=260 y=62 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=39532 x=240 y=62 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=39543 x=220 y=62 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=40575 x=200 y=62 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=40614 x=180 y=62 width=18 height=18 xoffset=-1 yoffset=3 xadvance=16 page=0 chnl=15 +char id=44040 x=160 y=62 width=18 height=18 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=44049 x=357 y=0 width=18 height=19 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=44057 x=140 y=62 width=18 height=18 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=44060 x=19 y=23 width=16 height=19 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=44163 x=145 y=21 width=16 height=19 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=44221 x=412 y=121 width=16 height=18 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=44256 x=238 y=237 width=18 height=15 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=15 +char id=44397 x=237 y=0 width=18 height=19 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=44536 x=80 y=274 width=18 height=14 xoffset=-1 yoffset=5 xadvance=15 page=0 chnl=15 +char id=44544 x=100 y=63 width=18 height=18 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=44592 x=282 y=21 width=14 height=19 xoffset=0 yoffset=3 xadvance=15 page=0 chnl=15 +char id=45033 x=466 y=121 width=16 height=18 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=45149 x=237 y=162 width=18 height=17 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=15 +char id=45208 x=437 y=0 width=18 height=19 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=45209 x=0 y=23 width=17 height=19 xoffset=0 yoffset=3 xadvance=15 page=0 chnl=15 +char id=45212 x=20 y=64 width=18 height=18 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=45216 x=0 y=64 width=18 height=18 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=45320 x=198 y=21 width=15 height=19 xoffset=0 yoffset=3 xadvance=15 page=0 chnl=15 +char id=45328 x=176 y=142 width=15 height=18 xoffset=0 yoffset=3 xadvance=15 page=0 chnl=15 +char id=45397 x=495 y=0 width=15 height=19 xoffset=0 yoffset=2 xadvance=15 page=0 chnl=15 +char id=45576 x=297 y=162 width=18 height=17 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=15 +char id=45716 x=317 y=162 width=18 height=17 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=15 +char id=45720 x=337 y=162 width=18 height=17 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=15 +char id=45768 x=266 y=21 width=14 height=19 xoffset=0 yoffset=3 xadvance=15 page=0 chnl=15 +char id=45796 x=27 y=0 width=18 height=20 xoffset=-1 yoffset=2 xadvance=15 page=0 chnl=15 +char id=46020 x=40 y=275 width=18 height=14 xoffset=-1 yoffset=5 xadvance=15 page=0 chnl=15 +char id=46024 x=117 y=163 width=18 height=17 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=15 +char id=46160 x=320 y=42 width=18 height=18 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=15 +char id=46301 x=300 y=42 width=18 height=18 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=15 +char id=46384 x=257 y=0 width=18 height=19 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=46972 x=197 y=0 width=18 height=19 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=46976 x=280 y=42 width=18 height=18 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=47000 x=163 y=21 width=16 height=19 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=47196 x=258 y=237 width=18 height=15 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=15 +char id=47336 x=240 y=42 width=18 height=18 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=15 +char id=47476 x=298 y=237 width=18 height=15 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=15 +char id=47484 x=97 y=163 width=18 height=17 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=15 +char id=47532 x=65 y=0 width=14 height=20 xoffset=0 yoffset=2 xadvance=15 page=0 chnl=15 +char id=47560 x=277 y=0 width=18 height=19 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=47564 x=200 y=42 width=18 height=18 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=47568 x=180 y=42 width=18 height=18 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=47588 x=127 y=21 width=16 height=19 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=47673 x=181 y=21 width=15 height=19 xoffset=0 yoffset=3 xadvance=15 page=0 chnl=15 +char id=47784 x=318 y=236 width=18 height=15 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=15 +char id=48148 x=297 y=0 width=18 height=19 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=48152 x=317 y=0 width=18 height=19 xoffset=-1 yoffset=2 xadvance=15 page=0 chnl=15 +char id=48373 x=217 y=0 width=18 height=19 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=49373 x=376 y=121 width=16 height=18 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=49436 x=73 y=22 width=16 height=19 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=49464 x=55 y=22 width=16 height=19 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=49688 x=377 y=0 width=18 height=19 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=49845 x=397 y=0 width=18 height=19 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=49884 x=125 y=143 width=15 height=18 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=49892 x=358 y=122 width=16 height=18 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=50420 x=100 y=43 width=18 height=18 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=50500 x=417 y=0 width=18 height=19 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=50504 x=114 y=123 width=17 height=18 xoffset=0 yoffset=3 xadvance=15 page=0 chnl=15 +char id=50506 x=460 y=101 width=17 height=18 xoffset=0 yoffset=3 xadvance=15 page=0 chnl=15 +char id=50508 x=76 y=123 width=17 height=18 xoffset=0 yoffset=3 xadvance=15 page=0 chnl=15 +char id=50612 x=215 y=21 width=15 height=19 xoffset=0 yoffset=3 xadvance=15 page=0 chnl=15 +char id=50631 x=249 y=21 width=15 height=19 xoffset=0 yoffset=3 xadvance=15 page=0 chnl=15 +char id=50640 x=47 y=0 width=16 height=20 xoffset=-1 yoffset=2 xadvance=15 page=0 chnl=15 +char id=50728 x=77 y=163 width=18 height=17 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=15 +char id=50836 x=198 y=237 width=18 height=15 xoffset=-1 yoffset=5 xadvance=15 page=0 chnl=15 +char id=50857 x=57 y=164 width=18 height=17 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=15 +char id=50948 x=37 y=22 width=16 height=19 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=50976 x=489 y=21 width=18 height=18 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=15 +char id=51012 x=37 y=164 width=18 height=17 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=15 +char id=51060 x=298 y=21 width=14 height=19 xoffset=0 yoffset=3 xadvance=15 page=0 chnl=15 +char id=51080 x=91 y=22 width=16 height=19 xoffset=0 yoffset=3 xadvance=15 page=0 chnl=15 +char id=51088 x=337 y=0 width=18 height=19 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=51228 x=109 y=22 width=16 height=19 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=51460 x=429 y=21 width=18 height=18 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=51648 x=232 y=21 width=15 height=19 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=51652 x=108 y=143 width=15 height=18 xoffset=0 yoffset=3 xadvance=15 page=0 chnl=15 +char id=52380 x=476 y=0 width=17 height=19 xoffset=-1 yoffset=2 xadvance=15 page=0 chnl=15 +char id=52840 x=314 y=21 width=14 height=19 xoffset=0 yoffset=3 xadvance=15 page=0 chnl=15 +char id=54032 x=389 y=21 width=18 height=18 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=54532 x=100 y=274 width=18 height=14 xoffset=-1 yoffset=5 xadvance=15 page=0 chnl=15 +char id=54616 x=177 y=0 width=18 height=19 xoffset=-1 yoffset=3 xadvance=15 page=0 chnl=15 +char id=54620 x=157 y=0 width=18 height=19 xoffset=-1 yoffset=2 xadvance=15 page=0 chnl=15 +char id=54988 x=137 y=0 width=18 height=19 xoffset=-1 yoffset=2 xadvance=15 page=0 chnl=15 +char id=65292 x=420 y=315 width=5 height=8 xoffset=0 yoffset=15 xadvance=16 page=0 chnl=15 +char id=65311 x=467 y=217 width=11 height=16 xoffset=2 yoffset=4 xadvance=16 page=0 chnl=15 diff --git a/examples/text/resources/noto_cjk.png b/examples/text/resources/noto_cjk.png new file mode 100644 index 0000000..d3f7b6f Binary files /dev/null and b/examples/text/resources/noto_cjk.png differ diff --git a/examples/text/resources/pixantiqua.fnt b/examples/text/resources/pixantiqua.fnt new file mode 100644 index 0000000..fd9f9db --- /dev/null +++ b/examples/text/resources/pixantiqua.fnt @@ -0,0 +1,188 @@ +info face="PixAntiqua" size=32 bold=0 italic=0 charset="" unicode=1 stretchH=100 smooth=1 aa=1 padding=2,2,2,2 spacing=2,2 outline=0 +common lineHeight=32 base=27 scaleW=512 scaleH=512 pages=1 packed=0 alphaChnl=0 redChnl=4 greenChnl=4 blueChnl=4 +page id=0 file="pixantiqua.png" +chars count=184 +char id=32 x=9 y=304 width=7 height=36 xoffset=-3 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=33 x=391 y=266 width=11 height=36 xoffset=-3 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=34 x=240 y=266 width=14 height=36 xoffset=-3 yoffset=-2 xadvance=11 page=0 chnl=15 +char id=35 x=468 y=38 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=36 x=152 y=76 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=37 x=176 y=76 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=38 x=303 y=0 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=39 x=495 y=266 width=8 height=36 xoffset=-3 yoffset=-2 xadvance=5 page=0 chnl=15 +char id=40 x=256 y=266 width=14 height=36 xoffset=-3 yoffset=-2 xadvance=11 page=0 chnl=15 +char id=199 x=432 y=152 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=200 x=126 y=228 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=201 x=147 y=228 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=202 x=288 y=190 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=203 x=189 y=228 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=204 x=468 y=228 width=16 height=36 xoffset=-3 yoffset=-2 xadvance=13 page=0 chnl=15 +char id=205 x=486 y=228 width=16 height=36 xoffset=-3 yoffset=-2 xadvance=13 page=0 chnl=15 +char id=206 x=0 y=266 width=16 height=36 xoffset=-3 yoffset=-2 xadvance=13 page=0 chnl=15 +char id=207 x=72 y=266 width=16 height=36 xoffset=-3 yoffset=-2 xadvance=13 page=0 chnl=15 +char id=208 x=329 y=0 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=209 x=277 y=0 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=210 x=182 y=38 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=211 x=26 y=76 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=41 x=272 y=266 width=14 height=36 xoffset=-3 yoffset=-2 xadvance=11 page=0 chnl=15 +char id=42 x=288 y=266 width=14 height=36 xoffset=-3 yoffset=-2 xadvance=11 page=0 chnl=15 +char id=43 x=414 y=190 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=44 x=378 y=266 width=11 height=36 xoffset=-3 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=45 x=414 y=228 width=16 height=36 xoffset=-3 yoffset=-2 xadvance=13 page=0 chnl=15 +char id=46 x=443 y=266 width=11 height=36 xoffset=-3 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=47 x=392 y=76 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=48 x=485 y=0 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=49 x=450 y=228 width=16 height=36 xoffset=-3 yoffset=-2 xadvance=13 page=0 chnl=15 +char id=50 x=21 y=228 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=51 x=42 y=228 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=59 x=456 y=266 width=11 height=36 xoffset=-3 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=60 x=168 y=228 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=61 x=309 y=190 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=62 x=336 y=228 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=63 x=315 y=228 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=64 x=364 y=38 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=65 x=390 y=38 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=66 x=120 y=114 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=67 x=144 y=114 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=68 x=168 y=114 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=69 x=294 y=228 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=52 x=488 y=76 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=53 x=63 y=228 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=54 x=24 y=114 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=55 x=48 y=114 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=56 x=72 y=114 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=57 x=96 y=114 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=58 x=404 y=266 width=11 height=36 xoffset=-3 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=70 x=252 y=228 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=71 x=192 y=114 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=72 x=78 y=76 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=78 x=78 y=38 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=79 x=355 y=0 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=80 x=264 y=114 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=81 x=381 y=0 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=82 x=288 y=114 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=83 x=312 y=114 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=91 x=144 y=266 width=14 height=36 xoffset=-3 yoffset=-2 xadvance=11 page=0 chnl=15 +char id=92 x=108 y=266 width=16 height=36 xoffset=-3 yoffset=-2 xadvance=13 page=0 chnl=15 +char id=93 x=304 y=266 width=14 height=36 xoffset=-3 yoffset=-2 xadvance=11 page=0 chnl=15 +char id=94 x=34 y=0 width=32 height=36 xoffset=-3 yoffset=-2 xadvance=29 page=0 chnl=15 +char id=95 x=231 y=228 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=96 x=442 y=38 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=97 x=408 y=114 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=98 x=432 y=114 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=99 x=210 y=228 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=84 x=336 y=114 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=85 x=360 y=114 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=86 x=0 y=38 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=87 x=68 y=0 width=30 height=36 xoffset=-3 yoffset=-2 xadvance=27 page=0 chnl=15 +char id=88 x=26 y=38 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=89 x=384 y=114 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=90 x=84 y=228 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=100 x=456 y=114 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=101 x=480 y=114 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=102 x=54 y=266 width=16 height=36 xoffset=-3 yoffset=-2 xadvance=13 page=0 chnl=15 +char id=103 x=0 y=152 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=104 x=24 y=152 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=105 x=469 y=266 width=11 height=36 xoffset=-3 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=106 x=18 y=266 width=16 height=36 xoffset=-8 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=107 x=48 y=152 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=108 x=417 y=266 width=11 height=36 xoffset=-3 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=109 x=161 y=0 width=27 height=36 xoffset=-3 yoffset=-2 xadvance=24 page=0 chnl=15 +char id=110 x=72 y=152 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=111 x=96 y=152 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=117 x=192 y=152 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=118 x=216 y=152 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=119 x=248 y=0 width=27 height=36 xoffset=-3 yoffset=-2 xadvance=24 page=0 chnl=15 +char id=120 x=240 y=152 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=121 x=264 y=152 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=122 x=288 y=152 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=123 x=432 y=228 width=16 height=36 xoffset=-3 yoffset=-2 xadvance=13 page=0 chnl=15 +char id=124 x=365 y=266 width=11 height=36 xoffset=-3 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=125 x=378 y=228 width=16 height=36 xoffset=-3 yoffset=-2 xadvance=13 page=0 chnl=15 +char id=126 x=393 y=190 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=127 x=132 y=0 width=27 height=36 xoffset=-3 yoffset=-2 xadvance=24 page=0 chnl=15 +char id=160 x=0 y=304 width=7 height=36 xoffset=-3 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=161 x=352 y=266 width=11 height=36 xoffset=-3 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=162 x=351 y=190 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=163 x=336 y=152 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=165 x=360 y=152 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=167 x=384 y=152 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=169 x=433 y=0 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=170 x=224 y=266 width=14 height=36 xoffset=-3 yoffset=-2 xadvance=11 page=0 chnl=15 +char id=171 x=105 y=228 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=172 x=0 y=0 width=32 height=36 xoffset=-3 yoffset=-2 xadvance=29 page=0 chnl=15 +char id=173 x=494 y=38 width=16 height=36 xoffset=-3 yoffset=-2 xadvance=13 page=0 chnl=15 +char id=174 x=52 y=76 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=175 x=52 y=38 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=176 x=126 y=266 width=16 height=36 xoffset=-3 yoffset=-2 xadvance=13 page=0 chnl=15 +char id=177 x=435 y=190 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=178 x=320 y=266 width=14 height=36 xoffset=-3 yoffset=-2 xadvance=11 page=0 chnl=15 +char id=179 x=336 y=266 width=14 height=36 xoffset=-3 yoffset=-2 xadvance=11 page=0 chnl=15 +char id=181 x=459 y=0 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=112 x=120 y=152 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=113 x=144 y=152 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=114 x=396 y=228 width=16 height=36 xoffset=-3 yoffset=-2 xadvance=13 page=0 chnl=15 +char id=115 x=168 y=152 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=116 x=36 y=266 width=16 height=36 xoffset=-3 yoffset=-2 xadvance=13 page=0 chnl=15 +char id=182 x=408 y=152 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=183 x=498 y=190 width=11 height=36 xoffset=-3 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=185 x=192 y=266 width=14 height=36 xoffset=-3 yoffset=-2 xadvance=11 page=0 chnl=15 +char id=186 x=208 y=266 width=14 height=36 xoffset=-3 yoffset=-2 xadvance=11 page=0 chnl=15 +char id=187 x=477 y=190 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=191 x=456 y=190 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=192 x=407 y=0 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=193 x=234 y=38 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=194 x=416 y=38 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=195 x=156 y=38 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=196 x=130 y=38 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=197 x=104 y=38 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=198 x=190 y=0 width=27 height=36 xoffset=-3 yoffset=-2 xadvance=24 page=0 chnl=15 +char id=212 x=0 y=76 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=213 x=338 y=38 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=214 x=312 y=38 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=215 x=357 y=228 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=216 x=286 y=38 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=217 x=456 y=152 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=218 x=480 y=152 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=219 x=0 y=190 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=220 x=24 y=190 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=221 x=48 y=190 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=222 x=260 y=38 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=223 x=72 y=190 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=224 x=96 y=190 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=225 x=120 y=190 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=226 x=144 y=190 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=227 x=168 y=190 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=228 x=192 y=190 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=229 x=216 y=190 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=230 x=219 y=0 width=27 height=36 xoffset=-3 yoffset=-2 xadvance=24 page=0 chnl=15 +char id=231 x=372 y=190 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=73 x=90 y=266 width=16 height=36 xoffset=-3 yoffset=-2 xadvance=13 page=0 chnl=15 +char id=74 x=216 y=114 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=75 x=240 y=114 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=76 x=273 y=228 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=77 x=100 y=0 width=30 height=36 xoffset=-3 yoffset=-2 xadvance=27 page=0 chnl=15 +char id=232 x=312 y=152 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=233 x=240 y=190 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=234 x=264 y=190 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=235 x=104 y=76 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=236 x=430 y=266 width=11 height=36 xoffset=-3 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=237 x=482 y=266 width=11 height=36 xoffset=-3 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=238 x=160 y=266 width=14 height=36 xoffset=-3 yoffset=-2 xadvance=11 page=0 chnl=15 +char id=239 x=176 y=266 width=14 height=36 xoffset=-3 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=240 x=128 y=76 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=241 x=200 y=76 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=242 x=224 y=76 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=243 x=248 y=76 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=244 x=272 y=76 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=245 x=296 y=76 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=246 x=320 y=76 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=247 x=330 y=190 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=248 x=208 y=38 width=24 height=36 xoffset=-3 yoffset=-2 xadvance=21 page=0 chnl=15 +char id=249 x=344 y=76 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=250 x=368 y=76 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=251 x=416 y=76 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=252 x=440 y=76 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=253 x=464 y=76 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 +char id=254 x=0 y=228 width=19 height=36 xoffset=-3 yoffset=-2 xadvance=16 page=0 chnl=15 +char id=255 x=0 y=114 width=22 height=36 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=15 diff --git a/examples/text/resources/pixantiqua.png b/examples/text/resources/pixantiqua.png new file mode 100644 index 0000000..2aa2870 Binary files /dev/null and b/examples/text/resources/pixantiqua.png differ diff --git a/examples/text/resources/pixantiqua.ttf b/examples/text/resources/pixantiqua.ttf new file mode 100644 index 0000000..e012875 Binary files /dev/null and b/examples/text/resources/pixantiqua.ttf differ diff --git a/examples/text/resources/shaders/glsl100/alpha_discard.fs b/examples/text/resources/shaders/glsl100/alpha_discard.fs new file mode 100644 index 0000000..15aacf5 --- /dev/null +++ b/examples/text/resources/shaders/glsl100/alpha_discard.fs @@ -0,0 +1,20 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +void main() +{ + vec4 texelColor = texture2D(texture0, fragTexCoord); + + if (texelColor.a == 0.0) discard; + + gl_FragColor = texelColor*fragColor*colDiffuse; +} diff --git a/examples/text/resources/shaders/glsl100/sdf.fs b/examples/text/resources/shaders/glsl100/sdf.fs new file mode 100644 index 0000000..d4878cf --- /dev/null +++ b/examples/text/resources/shaders/glsl100/sdf.fs @@ -0,0 +1,25 @@ +#version 100 + +precision mediump float; + +// Input vertex attributes (from vertex shader) +varying vec2 fragTexCoord; +varying vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// NOTE: Add here your custom variables +const float smoothing = 1.0/16.0; + +void main() +{ + // Texel color fetching from texture sampler + // NOTE: Calculate alpha using signed distance field (SDF) + float distance = texture2D(texture0, fragTexCoord).a; + float alpha = smoothstep(0.5 - smoothing, 0.5 + smoothing, distance); + + // Calculate final fragment color + gl_FragColor = vec4(fragColor.rgb, fragColor.a*alpha); +} diff --git a/examples/text/resources/shaders/glsl330/alpha_discard.fs b/examples/text/resources/shaders/glsl330/alpha_discard.fs new file mode 100644 index 0000000..d2134a6 --- /dev/null +++ b/examples/text/resources/shaders/glsl330/alpha_discard.fs @@ -0,0 +1,19 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// Output fragment color +out vec4 finalColor; + +void main() +{ + vec4 texelColor = texture(texture0, fragTexCoord); + if (texelColor.a == 0.0) discard; + finalColor = texelColor * fragColor * colDiffuse; +} diff --git a/examples/text/resources/shaders/glsl330/sdf.fs b/examples/text/resources/shaders/glsl330/sdf.fs new file mode 100644 index 0000000..545f450 --- /dev/null +++ b/examples/text/resources/shaders/glsl330/sdf.fs @@ -0,0 +1,26 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// Output fragment color +out vec4 finalColor; + +// NOTE: Add here your custom variables + +void main() +{ + // Texel color fetching from texture sampler + // NOTE: Calculate alpha using signed distance field (SDF) + float distanceFromOutline = texture(texture0, fragTexCoord).a - 0.5; + float distanceChangePerFragment = length(vec2(dFdx(distanceFromOutline), dFdy(distanceFromOutline))); + float alpha = smoothstep(-distanceChangePerFragment, distanceChangePerFragment, distanceFromOutline); + + // Calculate final fragment color + finalColor = vec4(fragColor.rgb, fragColor.a*alpha); +} diff --git a/examples/text/resources/symbola.fnt b/examples/text/resources/symbola.fnt new file mode 100644 index 0000000..5a39fcd --- /dev/null +++ b/examples/text/resources/symbola.fnt @@ -0,0 +1,191 @@ +info face="Symbola" size=-64 bold=0 italic=0 charset="" unicode=1 stretchH=100 smooth=1 aa=1 padding=0,0,0,0 spacing=2,2 outline=2 +common lineHeight=81 base=59 scaleW=1024 scaleH=1024 pages=1 packed=0 alphaChnl=0 redChnl=4 greenChnl=4 blueChnl=4 +page id=0 file="symbola.png" +chars count=187 +char id=9749 x=135 y=333 width=63 height=61 xoffset=1 yoffset=9 xadvance=65 page=0 chnl=15 +char id=9752 x=366 y=396 width=57 height=59 xoffset=0 yoffset=10 xadvance=58 page=0 chnl=15 +char id=9760 x=257 y=0 width=46 height=68 xoffset=0 yoffset=7 xadvance=47 page=0 chnl=15 +char id=9785 x=61 y=579 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=9786 x=183 y=578 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=10083 x=984 y=200 width=35 height=50 xoffset=1 yoffset=12 xadvance=37 page=0 chnl=15 +char id=10084 x=266 y=697 width=58 height=44 xoffset=1 yoffset=15 xadvance=60 page=0 chnl=15 +char id=127744 x=736 y=266 width=40 height=63 xoffset=4 yoffset=10 xadvance=48 page=0 chnl=15 +char id=127789 x=401 y=637 width=64 height=56 xoffset=0 yoffset=14 xadvance=64 page=0 chnl=15 +char id=127790 x=697 y=331 width=62 height=60 xoffset=1 yoffset=10 xadvance=64 page=0 chnl=15 +char id=127791 x=0 y=699 width=64 height=51 xoffset=0 yoffset=17 xadvance=64 page=0 chnl=15 +char id=127792 x=456 y=202 width=64 height=63 xoffset=0 yoffset=9 xadvance=64 page=0 chnl=15 +char id=127798 x=523 y=695 width=58 height=35 xoffset=3 yoffset=27 xadvance=64 page=0 chnl=15 +char id=127805 x=825 y=330 width=60 height=60 xoffset=0 yoffset=11 xadvance=60 page=0 chnl=15 +char id=127806 x=259 y=268 width=60 height=63 xoffset=0 yoffset=10 xadvance=60 page=0 chnl=15 +char id=127807 x=322 y=333 width=59 height=61 xoffset=0 yoffset=10 xadvance=60 page=0 chnl=15 +char id=127808 x=0 y=269 width=63 height=63 xoffset=0 yoffset=9 xadvance=63 page=0 chnl=15 +char id=127811 x=305 y=396 width=59 height=59 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=127812 x=696 y=0 width=64 height=66 xoffset=2 yoffset=8 xadvance=68 page=0 chnl=15 +char id=127813 x=61 y=397 width=58 height=60 xoffset=0 yoffset=11 xadvance=58 page=0 chnl=15 +char id=127814 x=946 y=265 width=61 height=62 xoffset=0 yoffset=9 xadvance=61 page=0 chnl=15 +char id=127815 x=584 y=635 width=56 height=56 xoffset=0 yoffset=12 xadvance=56 page=0 chnl=15 +char id=127827 x=121 y=397 width=58 height=60 xoffset=0 yoffset=10 xadvance=58 page=0 chnl=15 +char id=127828 x=0 y=334 width=68 height=61 xoffset=0 yoffset=10 xadvance=68 page=0 chnl=15 +char id=127829 x=68 y=70 width=65 height=65 xoffset=0 yoffset=8 xadvance=65 page=0 chnl=15 +char id=127830 x=737 y=135 width=59 height=64 xoffset=0 yoffset=8 xadvance=59 page=0 chnl=15 +char id=127831 x=560 y=0 width=66 height=66 xoffset=0 yoffset=8 xadvance=66 page=0 chnl=15 +char id=127832 x=135 y=70 width=65 height=65 xoffset=0 yoffset=8 xadvance=65 page=0 chnl=15 +char id=127837 x=630 y=331 width=65 height=60 xoffset=0 yoffset=13 xadvance=65 page=0 chnl=15 +char id=127838 x=628 y=0 width=66 height=66 xoffset=0 yoffset=8 xadvance=66 page=0 chnl=15 +char id=127839 x=566 y=267 width=59 height=63 xoffset=0 yoffset=9 xadvance=59 page=0 chnl=15 +char id=127840 x=562 y=332 width=66 height=60 xoffset=0 yoffset=12 xadvance=66 page=0 chnl=15 +char id=127841 x=798 y=135 width=57 height=64 xoffset=0 yoffset=9 xadvance=57 page=0 chnl=15 +char id=127842 x=467 y=637 width=57 height=56 xoffset=0 yoffset=13 xadvance=57 page=0 chnl=15 +char id=127845 x=213 y=137 width=65 height=64 xoffset=0 yoffset=9 xadvance=65 page=0 chnl=15 +char id=127846 x=950 y=67 width=34 height=65 xoffset=0 yoffset=8 xadvance=34 page=0 chnl=15 +char id=127850 x=522 y=202 width=64 height=63 xoffset=0 yoffset=9 xadvance=64 page=0 chnl=15 +char id=127851 x=544 y=135 width=64 height=64 xoffset=0 yoffset=9 xadvance=65 page=0 chnl=15 +char id=127855 x=440 y=333 width=49 height=61 xoffset=0 yoffset=10 xadvance=49 page=0 chnl=15 +char id=127856 x=207 y=638 width=64 height=57 xoffset=0 yoffset=11 xadvance=64 page=0 chnl=15 +char id=127857 x=710 y=633 width=65 height=55 xoffset=0 yoffset=13 xadvance=66 page=0 chnl=15 +char id=127858 x=237 y=396 width=66 height=59 xoffset=0 yoffset=12 xadvance=66 page=0 chnl=15 +char id=127859 x=195 y=268 width=62 height=63 xoffset=1 yoffset=9 xadvance=64 page=0 chnl=15 +char id=127861 x=77 y=0 width=65 height=68 xoffset=0 yoffset=6 xadvance=65 page=0 chnl=15 +char id=127862 x=857 y=135 width=57 height=64 xoffset=0 yoffset=9 xadvance=58 page=0 chnl=15 +char id=127863 x=47 y=203 width=41 height=64 xoffset=0 yoffset=9 xadvance=41 page=0 chnl=15 +char id=127867 x=833 y=633 width=66 height=54 xoffset=0 yoffset=12 xadvance=66 page=0 chnl=15 +char id=127868 x=986 y=67 width=25 height=53 xoffset=0 yoffset=12 xadvance=25 page=0 chnl=15 +char id=127870 x=383 y=333 width=55 height=61 xoffset=1 yoffset=10 xadvance=57 page=0 chnl=15 +char id=127871 x=530 y=394 width=42 height=59 xoffset=0 yoffset=12 xadvance=42 page=0 chnl=15 +char id=127874 x=0 y=70 width=66 height=65 xoffset=0 yoffset=8 xadvance=66 page=0 chnl=15 +char id=128065 x=384 y=696 width=68 height=39 xoffset=-2 yoffset=19 xadvance=64 page=0 chnl=15 +char id=128068 x=132 y=698 width=57 height=47 xoffset=0 yoffset=15 xadvance=57 page=0 chnl=15 +char id=128069 x=777 y=633 width=54 height=55 xoffset=0 yoffset=14 xadvance=54 page=0 chnl=15 +char id=128121 x=478 y=136 width=64 height=64 xoffset=0 yoffset=8 xadvance=64 page=0 chnl=15 +char id=128122 x=65 y=269 width=63 height=63 xoffset=0 yoffset=9 xadvance=63 page=0 chnl=15 +char id=128123 x=339 y=637 width=60 height=57 xoffset=2 yoffset=14 xadvance=64 page=0 chnl=15 +char id=128125 x=505 y=267 width=59 height=63 xoffset=0 yoffset=9 xadvance=60 page=0 chnl=15 +char id=128126 x=321 y=268 width=60 height=63 xoffset=2 yoffset=7 xadvance=64 page=0 chnl=15 +char id=128127 x=889 y=67 width=59 height=65 xoffset=0 yoffset=8 xadvance=59 page=0 chnl=15 +char id=128128 x=627 y=266 width=55 height=63 xoffset=0 yoffset=9 xadvance=55 page=0 chnl=15 +char id=128139 x=574 y=394 width=68 height=58 xoffset=0 yoffset=12 xadvance=68 page=0 chnl=15 +char id=128140 x=202 y=70 width=65 height=65 xoffset=0 yoffset=8 xadvance=65 page=0 chnl=15 +char id=128147 x=642 y=634 width=66 height=55 xoffset=0 yoffset=12 xadvance=66 page=0 chnl=15 +char id=128151 x=588 y=201 width=64 height=63 xoffset=0 yoffset=10 xadvance=64 page=0 chnl=15 +char id=128152 x=280 y=137 width=64 height=64 xoffset=0 yoffset=9 xadvance=64 page=0 chnl=15 +char id=128153 x=654 y=201 width=64 height=63 xoffset=0 yoffset=10 xadvance=64 page=0 chnl=15 +char id=128155 x=720 y=201 width=64 height=63 xoffset=0 yoffset=10 xadvance=64 page=0 chnl=15 +char id=128156 x=786 y=201 width=64 height=63 xoffset=0 yoffset=10 xadvance=64 page=0 chnl=15 +char id=128157 x=77 y=137 width=67 height=64 xoffset=0 yoffset=9 xadvance=68 page=0 chnl=15 +char id=128159 x=335 y=69 width=64 height=65 xoffset=0 yoffset=8 xadvance=64 page=0 chnl=15 +char id=128162 x=130 y=268 width=63 height=63 xoffset=0 yoffset=9 xadvance=63 page=0 chnl=15 +char id=128163 x=146 y=137 width=65 height=64 xoffset=0 yoffset=9 xadvance=65 page=0 chnl=15 +char id=128164 x=454 y=695 width=67 height=38 xoffset=0 yoffset=23 xadvance=67 page=0 chnl=15 +char id=128169 x=916 y=134 width=57 height=64 xoffset=0 yoffset=9 xadvance=58 page=0 chnl=15 +char id=128420 x=852 y=201 width=64 height=63 xoffset=0 yoffset=10 xadvance=64 page=0 chnl=15 +char id=128512 x=732 y=513 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128514 x=644 y=393 width=63 height=58 xoffset=0 yoffset=12 xadvance=63 page=0 chnl=15 +char id=128515 x=610 y=514 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128518 x=488 y=517 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128519 x=144 y=0 width=59 height=68 xoffset=0 yoffset=7 xadvance=59 page=0 chnl=15 +char id=128520 x=584 y=68 width=59 height=65 xoffset=0 yoffset=8 xadvance=59 page=0 chnl=15 +char id=128521 x=427 y=517 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128523 x=61 y=519 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128524 x=0 y=519 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128525 x=915 y=452 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128526 x=854 y=452 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128527 x=793 y=453 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128528 x=732 y=453 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128529 x=671 y=453 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128530 x=488 y=457 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128533 x=122 y=459 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128534 x=854 y=572 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128535 x=305 y=457 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128536 x=122 y=579 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128537 x=366 y=517 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128538 x=244 y=577 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128539 x=305 y=577 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128541 x=366 y=577 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128542 x=427 y=577 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128543 x=488 y=577 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128544 x=549 y=575 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128545 x=671 y=573 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128546 x=732 y=573 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128547 x=793 y=573 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128548 x=427 y=0 width=59 height=67 xoffset=0 yoffset=8 xadvance=59 page=0 chnl=15 +char id=128549 x=915 y=572 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128550 x=0 y=639 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128553 x=898 y=392 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128554 x=959 y=391 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128555 x=0 y=459 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128556 x=61 y=459 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128557 x=305 y=0 width=59 height=67 xoffset=0 yoffset=8 xadvance=59 page=0 chnl=15 +char id=128558 x=183 y=458 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128559 x=244 y=457 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128560 x=709 y=393 width=61 height=58 xoffset=0 yoffset=12 xadvance=62 page=0 chnl=15 +char id=128561 x=835 y=392 width=61 height=58 xoffset=0 yoffset=12 xadvance=61 page=0 chnl=15 +char id=128562 x=366 y=457 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128563 x=427 y=457 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128564 x=90 y=203 width=88 height=63 xoffset=0 yoffset=7 xadvance=59 page=0 chnl=15 +char id=128565 x=549 y=455 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128566 x=610 y=574 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128567 x=610 y=454 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128568 x=401 y=69 width=59 height=65 xoffset=0 yoffset=8 xadvance=59 page=0 chnl=15 +char id=128569 x=878 y=0 width=67 height=65 xoffset=0 yoffset=8 xadvance=67 page=0 chnl=15 +char id=128570 x=523 y=68 width=59 height=65 xoffset=0 yoffset=8 xadvance=59 page=0 chnl=15 +char id=128571 x=828 y=68 width=59 height=65 xoffset=0 yoffset=8 xadvance=59 page=0 chnl=15 +char id=128573 x=767 y=68 width=59 height=65 xoffset=0 yoffset=8 xadvance=59 page=0 chnl=15 +char id=128575 x=706 y=68 width=59 height=65 xoffset=0 yoffset=8 xadvance=59 page=0 chnl=15 +char id=128576 x=645 y=68 width=59 height=65 xoffset=0 yoffset=8 xadvance=59 page=0 chnl=15 +char id=128577 x=122 y=519 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128578 x=183 y=518 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128579 x=244 y=517 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=128580 x=305 y=517 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=129296 x=200 y=333 width=59 height=61 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=129297 x=366 y=0 width=59 height=67 xoffset=0 yoffset=8 xadvance=59 page=0 chnl=15 +char id=129298 x=383 y=268 width=59 height=63 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=129299 x=549 y=515 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=129300 x=0 y=0 width=75 height=68 xoffset=0 yoffset=7 xadvance=72 page=0 chnl=15 +char id=129301 x=671 y=513 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=129302 x=181 y=396 width=54 height=60 xoffset=2 yoffset=7 xadvance=59 page=0 chnl=15 +char id=129303 x=778 y=266 width=98 height=62 xoffset=-1 yoffset=12 xadvance=96 page=0 chnl=15 +char id=129312 x=0 y=137 width=75 height=64 xoffset=-1 yoffset=9 xadvance=74 page=0 chnl=15 +char id=129314 x=793 y=513 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=129315 x=346 y=136 width=64 height=64 xoffset=-1 yoffset=9 xadvance=64 page=0 chnl=15 +char id=129316 x=444 y=267 width=59 height=63 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=129319 x=488 y=0 width=70 height=66 xoffset=0 yoffset=8 xadvance=70 page=0 chnl=15 +char id=129320 x=854 y=512 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=129321 x=915 y=512 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=129322 x=0 y=579 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=129323 x=762 y=0 width=59 height=66 xoffset=0 yoffset=8 xadvance=59 page=0 chnl=15 +char id=129324 x=772 y=393 width=61 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=129325 x=949 y=329 width=59 height=60 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=129326 x=261 y=333 width=59 height=61 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=129327 x=462 y=69 width=59 height=65 xoffset=0 yoffset=8 xadvance=59 page=0 chnl=15 +char id=129346 x=975 y=134 width=46 height=64 xoffset=-1 yoffset=8 xadvance=44 page=0 chnl=15 +char id=129347 x=675 y=135 width=60 height=64 xoffset=-1 yoffset=9 xadvance=58 page=0 chnl=15 +char id=129360 x=70 y=334 width=63 height=61 xoffset=-1 yoffset=10 xadvance=61 page=0 chnl=15 +char id=129361 x=191 y=698 width=73 height=45 xoffset=-1 yoffset=18 xadvance=72 page=0 chnl=15 +char id=129362 x=253 y=203 width=66 height=63 xoffset=-1 yoffset=9 xadvance=64 page=0 chnl=15 +char id=129363 x=122 y=639 width=83 height=57 xoffset=-1 yoffset=14 xadvance=82 page=0 chnl=15 +char id=129364 x=491 y=332 width=69 height=60 xoffset=-1 yoffset=11 xadvance=68 page=0 chnl=15 +char id=129365 x=412 y=136 width=64 height=64 xoffset=-1 yoffset=8 xadvance=63 page=0 chnl=15 +char id=129366 x=947 y=0 width=66 height=65 xoffset=-1 yoffset=8 xadvance=65 page=0 chnl=15 +char id=129367 x=180 y=203 width=71 height=63 xoffset=-1 yoffset=8 xadvance=70 page=0 chnl=15 +char id=129368 x=878 y=266 width=66 height=62 xoffset=-1 yoffset=9 xadvance=65 page=0 chnl=15 +char id=129369 x=269 y=70 width=64 height=65 xoffset=-1 yoffset=8 xadvance=63 page=0 chnl=15 +char id=129370 x=823 y=0 width=53 height=66 xoffset=1 yoffset=8 xadvance=55 page=0 chnl=15 +char id=129371 x=205 y=0 width=50 height=68 xoffset=1 yoffset=7 xadvance=52 page=0 chnl=15 +char id=129372 x=389 y=202 width=65 height=63 xoffset=1 yoffset=9 xadvance=67 page=0 chnl=15 +char id=129373 x=887 y=330 width=60 height=60 xoffset=1 yoffset=10 xadvance=62 page=0 chnl=15 +char id=129374 x=961 y=632 width=61 height=51 xoffset=1 yoffset=15 xadvance=64 page=0 chnl=15 +char id=129375 x=526 y=637 width=56 height=56 xoffset=1 yoffset=12 xadvance=58 page=0 chnl=15 +char id=129377 x=425 y=396 width=53 height=59 xoffset=1 yoffset=10 xadvance=56 page=0 chnl=15 +char id=129378 x=321 y=203 width=66 height=63 xoffset=-1 yoffset=9 xadvance=64 page=0 chnl=15 +char id=129379 x=761 y=331 width=62 height=60 xoffset=1 yoffset=12 xadvance=64 page=0 chnl=15 +char id=129380 x=480 y=396 width=48 height=59 xoffset=4 yoffset=13 xadvance=56 page=0 chnl=15 +char id=129381 x=0 y=397 width=59 height=60 xoffset=0 yoffset=10 xadvance=59 page=0 chnl=15 +char id=129382 x=684 y=266 width=50 height=63 xoffset=1 yoffset=10 xadvance=53 page=0 chnl=15 +char id=129383 x=610 y=135 width=63 height=64 xoffset=1 yoffset=8 xadvance=65 page=0 chnl=15 +char id=129384 x=901 y=632 width=58 height=53 xoffset=2 yoffset=16 xadvance=63 page=0 chnl=15 +char id=129385 x=326 y=696 width=56 height=41 xoffset=2 yoffset=19 xadvance=60 page=0 chnl=15 +char id=129386 x=273 y=637 width=64 height=57 xoffset=0 yoffset=10 xadvance=64 page=0 chnl=15 +char id=129387 x=0 y=203 width=45 height=64 xoffset=4 yoffset=9 xadvance=53 page=0 chnl=15 +char id=129472 x=66 y=699 width=64 height=49 xoffset=0 yoffset=14 xadvance=64 page=0 chnl=15 +char id=129488 x=61 y=639 width=59 height=58 xoffset=0 yoffset=12 xadvance=59 page=0 chnl=15 +char id=129505 x=918 y=200 width=64 height=63 xoffset=0 yoffset=10 xadvance=64 page=0 chnl=15 diff --git a/examples/text/resources/symbola.png b/examples/text/resources/symbola.png new file mode 100644 index 0000000..e942606 Binary files /dev/null and b/examples/text/resources/symbola.png differ diff --git a/examples/text/text_codepoints_loading.c b/examples/text/text_codepoints_loading.c new file mode 100644 index 0000000..1f3db0c --- /dev/null +++ b/examples/text/text_codepoints_loading.c @@ -0,0 +1,155 @@ +/******************************************************************************************* +* +* raylib [text] example - Codepoints loading +* +* Example originally created with raylib 4.2, last time updated with raylib 2.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2022-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#include // Required for: calloc(), realloc(), free() +#include // Required for: memcpy() + +// Text to be displayed, must be UTF-8 (save this code file as UTF-8) +// NOTE: It can contain all the required text for the game, +// this text will be scanned to get all the required codepoints +static char *text = "いろはにほへと ちりぬるを\nわかよたれそ つねならむ\nうゐのおくやま けふこえて\nあさきゆめみし ゑひもせす"; + +// Remove codepoint duplicates if requested +static int *CodepointRemoveDuplicates(int *codepoints, int codepointCount, int *codepointResultCount); + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [text] example - codepoints loading"); + + // Get codepoints from text + int codepointCount = 0; + int *codepoints = LoadCodepoints(text, &codepointCount); + + // Removed duplicate codepoints to generate smaller font atlas + int codepointsNoDupsCount = 0; + int *codepointsNoDups = CodepointRemoveDuplicates(codepoints, codepointCount, &codepointsNoDupsCount); + UnloadCodepoints(codepoints); + + // Load font containing all the provided codepoint glyphs + // A texture font atlas is automatically generated + Font font = LoadFontEx("resources/DotGothic16-Regular.ttf", 36, codepointsNoDups, codepointsNoDupsCount); + + // Set bilinear scale filter for better font scaling + SetTextureFilter(font.texture, TEXTURE_FILTER_BILINEAR); + + // Free codepoints, atlas has already been generated + free(codepointsNoDups); + + bool showFontAtlas = false; + + int codepointSize = 0; + int codepoint = 0; + char *ptr = text; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + if (IsKeyPressed(KEY_SPACE)) showFontAtlas = !showFontAtlas; + + // Testing code: getting next and previous codepoints on provided text + if (IsKeyPressed(KEY_RIGHT)) + { + // Get next codepoint in string and move pointer + codepoint = GetCodepointNext(ptr, &codepointSize); + ptr += codepointSize; + } + else if (IsKeyPressed(KEY_LEFT)) + { + // Get previous codepoint in string and move pointer + codepoint = GetCodepointPrevious(ptr, &codepointSize); + ptr -= codepointSize; + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawRectangle(0, 0, GetScreenWidth(), 70, BLACK); + DrawText(TextFormat("Total codepoints contained in provided text: %i", codepointCount), 10, 10, 20, GREEN); + DrawText(TextFormat("Total codepoints required for font atlas (duplicates excluded): %i", codepointsNoDupsCount), 10, 40, 20, GREEN); + + if (showFontAtlas) + { + // Draw generated font texture atlas containing provided codepoints + DrawTexture(font.texture, 150, 100, BLACK); + DrawRectangleLines(150, 100, font.texture.width, font.texture.height, BLACK); + } + else + { + // Draw provided text with laoded font, containing all required codepoint glyphs + DrawTextEx(font, text, (Vector2) { 160, 110 }, 48, 5, BLACK); + } + + DrawText("Press SPACE to toggle font atlas view!", 10, GetScreenHeight() - 30, 20, GRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadFont(font); // Unload font + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} + +// Remove codepoint duplicates if requested +// WARNING: This process could be a bit slow if there text to process is very long +static int *CodepointRemoveDuplicates(int *codepoints, int codepointCount, int *codepointsResultCount) +{ + int codepointsNoDupsCount = codepointCount; + int *codepointsNoDups = (int *)calloc(codepointCount, sizeof(int)); + memcpy(codepointsNoDups, codepoints, codepointCount*sizeof(int)); + + // Remove duplicates + for (int i = 0; i < codepointsNoDupsCount; i++) + { + for (int j = i + 1; j < codepointsNoDupsCount; j++) + { + if (codepointsNoDups[i] == codepointsNoDups[j]) + { + for (int k = j; k < codepointsNoDupsCount; k++) codepointsNoDups[k] = codepointsNoDups[k + 1]; + + codepointsNoDupsCount--; + j--; + } + } + } + + // NOTE: The size of codepointsNoDups is the same as original array but + // only required positions are filled (codepointsNoDupsCount) + + *codepointsResultCount = codepointsNoDupsCount; + return codepointsNoDups; +} \ No newline at end of file diff --git a/examples/text/text_draw_3d.c b/examples/text/text_draw_3d.c new file mode 100644 index 0000000..097e4fc --- /dev/null +++ b/examples/text/text_draw_3d.c @@ -0,0 +1,750 @@ +/******************************************************************************************* +* +* raylib [text] example - Draw 3d +* +* NOTE: Draw a 2D text in 3D space, each letter is drawn in a quad (or 2 quads if backface is set) +* where the texture coodinates of each quad map to the texture coordinates of the glyphs +* inside the font texture. +* +* A more efficient approach, i believe, would be to render the text in a render texture and +* map that texture to a plane and render that, or maybe a shader but my method allows more +* flexibility...for example to change position of each letter individually to make somethink +* like a wavy text effect. +* +* Special thanks to: +* @Nighten for the DrawTextStyle() code https://github.com/NightenDushi/Raylib_DrawTextStyle +* Chris Camacho (codifies - http://bedroomcoders.co.uk/) for the alpha discard shader +* +* Example originally created with raylib 3.5, last time updated with raylib 4.0 +* +* Example contributed by Vlad Adrian (@demizdor) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2021-2023 Vlad Adrian (@demizdor) +* +********************************************************************************************/ + +#include "raylib.h" +#include "rlgl.h" + +#include // Required for: NULL +#include // Required for: sinf() + +// To make it work with the older RLGL module just comment the line below +#define RAYLIB_NEW_RLGL + +//-------------------------------------------------------------------------------------- +// Globals +//-------------------------------------------------------------------------------------- +#define LETTER_BOUNDRY_SIZE 0.25f +#define TEXT_MAX_LAYERS 32 +#define LETTER_BOUNDRY_COLOR VIOLET + +bool SHOW_LETTER_BOUNDRY = false; +bool SHOW_TEXT_BOUNDRY = false; + +//-------------------------------------------------------------------------------------- +// Data Types definition +//-------------------------------------------------------------------------------------- + +// Configuration structure for waving the text +typedef struct WaveTextConfig { + Vector3 waveRange; + Vector3 waveSpeed; + Vector3 waveOffset; +} WaveTextConfig; + +//-------------------------------------------------------------------------------------- +// Module Functions Declaration +//-------------------------------------------------------------------------------------- +// Draw a codepoint in 3D space +static void DrawTextCodepoint3D(Font font, int codepoint, Vector3 position, float fontSize, bool backface, Color tint); +// Draw a 2D text in 3D space +static void DrawText3D(Font font, const char *text, Vector3 position, float fontSize, float fontSpacing, float lineSpacing, bool backface, Color tint); +// Measure a text in 3D. For some reason `MeasureTextEx()` just doesn't seem to work so i had to use this instead. +static Vector3 MeasureText3D(Font font, const char *text, float fontSize, float fontSpacing, float lineSpacing); + +// Draw a 2D text in 3D space and wave the parts that start with `~~` and end with `~~`. +// This is a modified version of the original code by @Nighten found here https://github.com/NightenDushi/Raylib_DrawTextStyle +static void DrawTextWave3D(Font font, const char *text, Vector3 position, float fontSize, float fontSpacing, float lineSpacing, bool backface, WaveTextConfig *config, float time, Color tint); +// Measure a text in 3D ignoring the `~~` chars. +static Vector3 MeasureTextWave3D(Font font, const char *text, float fontSize, float fontSpacing, float lineSpacing); +// Generates a nice color with a random hue +static Color GenerateRandomColor(float s, float v); + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + SetConfigFlags(FLAG_MSAA_4X_HINT|FLAG_VSYNC_HINT); + InitWindow(screenWidth, screenHeight, "raylib [text] example - draw 2D text in 3D"); + + bool spin = true; // Spin the camera? + bool multicolor = false; // Multicolor mode + + // Define the camera to look into our 3d world + Camera3D camera = { 0 }; + camera.position = (Vector3){ -10.0f, 15.0f, -10.0f }; // Camera position + camera.target = (Vector3){ 0.0f, 0.0f, 0.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 45.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera projection type + + int camera_mode = CAMERA_ORBITAL; + + Vector3 cubePosition = { 0.0f, 1.0f, 0.0f }; + Vector3 cubeSize = { 2.0f, 2.0f, 2.0f }; + + // Use the default font + Font font = GetFontDefault(); + float fontSize = 8.0f; + float fontSpacing = 0.5f; + float lineSpacing = -1.0f; + + // Set the text (using markdown!) + char text[64] = "Hello ~~World~~ in 3D!"; + Vector3 tbox = {0}; + int layers = 1; + int quads = 0; + float layerDistance = 0.01f; + + WaveTextConfig wcfg; + wcfg.waveSpeed.x = wcfg.waveSpeed.y = 3.0f; wcfg.waveSpeed.z = 0.5f; + wcfg.waveOffset.x = wcfg.waveOffset.y = wcfg.waveOffset.z = 0.35f; + wcfg.waveRange.x = wcfg.waveRange.y = wcfg.waveRange.z = 0.45f; + + float time = 0.0f; + + // Setup a light and dark color + Color light = MAROON; + Color dark = RED; + + // Load the alpha discard shader + Shader alphaDiscard = LoadShader(NULL, "resources/shaders/glsl330/alpha_discard.fs"); + + // Array filled with multiple random colors (when multicolor mode is set) + Color multi[TEXT_MAX_LAYERS] = {0}; + + DisableCursor(); // Limit cursor to relative movement inside the window + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + UpdateCamera(&camera, camera_mode); + + // Handle font files dropped + if (IsFileDropped()) + { + FilePathList droppedFiles = LoadDroppedFiles(); + + // NOTE: We only support first ttf file dropped + if (IsFileExtension(droppedFiles.paths[0], ".ttf")) + { + UnloadFont(font); + font = LoadFontEx(droppedFiles.paths[0], (int)fontSize, 0, 0); + } + else if (IsFileExtension(droppedFiles.paths[0], ".fnt")) + { + UnloadFont(font); + font = LoadFont(droppedFiles.paths[0]); + fontSize = (float)font.baseSize; + } + + UnloadDroppedFiles(droppedFiles); // Unload filepaths from memory + } + + // Handle Events + if (IsKeyPressed(KEY_F1)) SHOW_LETTER_BOUNDRY = !SHOW_LETTER_BOUNDRY; + if (IsKeyPressed(KEY_F2)) SHOW_TEXT_BOUNDRY = !SHOW_TEXT_BOUNDRY; + if (IsKeyPressed(KEY_F3)) + { + // Handle camera change + spin = !spin; + // we need to reset the camera when changing modes + camera = (Camera3D){ 0 }; + camera.target = (Vector3){ 0.0f, 0.0f, 0.0f }; // Camera looking at point + camera.up = (Vector3){ 0.0f, 1.0f, 0.0f }; // Camera up vector (rotation towards target) + camera.fovy = 45.0f; // Camera field-of-view Y + camera.projection = CAMERA_PERSPECTIVE; // Camera mode type + + if (spin) + { + camera.position = (Vector3){ -10.0f, 15.0f, -10.0f }; // Camera position + camera_mode = CAMERA_ORBITAL; + } + else + { + camera.position = (Vector3){ 10.0f, 10.0f, -10.0f }; // Camera position + camera_mode = CAMERA_FREE; + } + } + + // Handle clicking the cube + if (IsMouseButtonPressed(MOUSE_BUTTON_LEFT)) + { + Ray ray = GetMouseRay(GetMousePosition(), camera); + + // Check collision between ray and box + RayCollision collision = GetRayCollisionBox(ray, + (BoundingBox){(Vector3){ cubePosition.x - cubeSize.x/2, cubePosition.y - cubeSize.y/2, cubePosition.z - cubeSize.z/2 }, + (Vector3){ cubePosition.x + cubeSize.x/2, cubePosition.y + cubeSize.y/2, cubePosition.z + cubeSize.z/2 }}); + if (collision.hit) + { + // Generate new random colors + light = GenerateRandomColor(0.5f, 0.78f); + dark = GenerateRandomColor(0.4f, 0.58f); + } + } + + // Handle text layers changes + if (IsKeyPressed(KEY_HOME)) { if (layers > 1) --layers; } + else if (IsKeyPressed(KEY_END)) { if (layers < TEXT_MAX_LAYERS) ++layers; } + + // Handle text changes + if (IsKeyPressed(KEY_LEFT)) fontSize -= 0.5f; + else if (IsKeyPressed(KEY_RIGHT)) fontSize += 0.5f; + else if (IsKeyPressed(KEY_UP)) fontSpacing -= 0.1f; + else if (IsKeyPressed(KEY_DOWN)) fontSpacing += 0.1f; + else if (IsKeyPressed(KEY_PAGE_UP)) lineSpacing -= 0.1f; + else if (IsKeyPressed(KEY_PAGE_DOWN)) lineSpacing += 0.1f; + else if (IsKeyDown(KEY_INSERT)) layerDistance -= 0.001f; + else if (IsKeyDown(KEY_DELETE)) layerDistance += 0.001f; + else if (IsKeyPressed(KEY_TAB)) + { + multicolor = !multicolor; // Enable /disable multicolor mode + + if (multicolor) + { + // Fill color array with random colors + for (int i = 0; i < TEXT_MAX_LAYERS; ++i) + { + multi[i] = GenerateRandomColor(0.5f, 0.8f); + multi[i].a = GetRandomValue(0, 255); + } + } + } + + // Handle text input + int ch = GetCharPressed(); + if (IsKeyPressed(KEY_BACKSPACE)) + { + // Remove last char + int len = TextLength(text); + if (len > 0) text[len - 1] = '\0'; + } + else if (IsKeyPressed(KEY_ENTER)) + { + // handle newline + int len = TextLength(text); + if (len < sizeof(text) - 1) + { + text[len] = '\n'; + text[len+1] ='\0'; + } + } + else + { + // append only printable chars + int len = TextLength(text); + if (len < sizeof(text) - 1) + { + text[len] = ch; + text[len+1] ='\0'; + } + } + + // Measure 3D text so we can center it + tbox = MeasureTextWave3D(font, text, fontSize, fontSpacing, lineSpacing); + + quads = 0; // Reset quad counter + time += GetFrameTime(); // Update timer needed by `DrawTextWave3D()` + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + BeginMode3D(camera); + DrawCubeV(cubePosition, cubeSize, dark); + DrawCubeWires(cubePosition, 2.1f, 2.1f, 2.1f, light); + + DrawGrid(10, 2.0f); + + // Use a shader to handle the depth buffer issue with transparent textures + // NOTE: more info at https://bedroomcoders.co.uk/raylib-billboards-advanced-use/ + BeginShaderMode(alphaDiscard); + + // Draw the 3D text above the red cube + rlPushMatrix(); + rlRotatef(90.0f, 1.0f, 0.0f, 0.0f); + rlRotatef(90.0f, 0.0f, 0.0f, -1.0f); + + for (int i = 0; i < layers; ++i) + { + Color clr = light; + if (multicolor) clr = multi[i]; + DrawTextWave3D(font, text, (Vector3){ -tbox.x/2.0f, layerDistance*i, -4.5f }, fontSize, fontSpacing, lineSpacing, true, &wcfg, time, clr); + } + + // Draw the text boundry if set + if (SHOW_TEXT_BOUNDRY) DrawCubeWiresV((Vector3){ 0.0f, 0.0f, -4.5f + tbox.z/2 }, tbox, dark); + rlPopMatrix(); + + // Don't draw the letter boundries for the 3D text below + bool slb = SHOW_LETTER_BOUNDRY; + SHOW_LETTER_BOUNDRY = false; + + // Draw 3D options (use default font) + //------------------------------------------------------------------------- + rlPushMatrix(); + rlRotatef(180.0f, 0.0f, 1.0f, 0.0f); + char *opt = (char *)TextFormat("< SIZE: %2.1f >", fontSize); + quads += TextLength(opt); + Vector3 m = MeasureText3D(GetFontDefault(), opt, 8.0f, 1.0f, 0.0f); + Vector3 pos = { -m.x/2.0f, 0.01f, 2.0f}; + DrawText3D(GetFontDefault(), opt, pos, 8.0f, 1.0f, 0.0f, false, BLUE); + pos.z += 0.5f + m.z; + + opt = (char *)TextFormat("< SPACING: %2.1f >", fontSpacing); + quads += TextLength(opt); + m = MeasureText3D(GetFontDefault(), opt, 8.0f, 1.0f, 0.0f); + pos.x = -m.x/2.0f; + DrawText3D(GetFontDefault(), opt, pos, 8.0f, 1.0f, 0.0f, false, BLUE); + pos.z += 0.5f + m.z; + + opt = (char *)TextFormat("< LINE: %2.1f >", lineSpacing); + quads += TextLength(opt); + m = MeasureText3D(GetFontDefault(), opt, 8.0f, 1.0f, 0.0f); + pos.x = -m.x/2.0f; + DrawText3D(GetFontDefault(), opt, pos, 8.0f, 1.0f, 0.0f, false, BLUE); + pos.z += 1.0f + m.z; + + opt = (char *)TextFormat("< LBOX: %3s >", slb? "ON" : "OFF"); + quads += TextLength(opt); + m = MeasureText3D(GetFontDefault(), opt, 8.0f, 1.0f, 0.0f); + pos.x = -m.x/2.0f; + DrawText3D(GetFontDefault(), opt, pos, 8.0f, 1.0f, 0.0f, false, RED); + pos.z += 0.5f + m.z; + + opt = (char *)TextFormat("< TBOX: %3s >", SHOW_TEXT_BOUNDRY? "ON" : "OFF"); + quads += TextLength(opt); + m = MeasureText3D(GetFontDefault(), opt, 8.0f, 1.0f, 0.0f); + pos.x = -m.x/2.0f; + DrawText3D(GetFontDefault(), opt, pos, 8.0f, 1.0f, 0.0f, false, RED); + pos.z += 0.5f + m.z; + + opt = (char *)TextFormat("< LAYER DISTANCE: %.3f >", layerDistance); + quads += TextLength(opt); + m = MeasureText3D(GetFontDefault(), opt, 8.0f, 1.0f, 0.0f); + pos.x = -m.x/2.0f; + DrawText3D(GetFontDefault(), opt, pos, 8.0f, 1.0f, 0.0f, false, DARKPURPLE); + rlPopMatrix(); + //------------------------------------------------------------------------- + + // Draw 3D info text (use default font) + //------------------------------------------------------------------------- + opt = "All the text displayed here is in 3D"; + quads += 36; + m = MeasureText3D(GetFontDefault(), opt, 10.0f, 0.5f, 0.0f); + pos = (Vector3){-m.x/2.0f, 0.01f, 2.0f}; + DrawText3D(GetFontDefault(), opt, pos, 10.0f, 0.5f, 0.0f, false, DARKBLUE); + pos.z += 1.5f + m.z; + + opt = "press [Left]/[Right] to change the font size"; + quads += 44; + m = MeasureText3D(GetFontDefault(), opt, 6.0f, 0.5f, 0.0f); + pos.x = -m.x/2.0f; + DrawText3D(GetFontDefault(), opt, pos, 6.0f, 0.5f, 0.0f, false, DARKBLUE); + pos.z += 0.5f + m.z; + + opt = "press [Up]/[Down] to change the font spacing"; + quads += 44; + m = MeasureText3D(GetFontDefault(), opt, 6.0f, 0.5f, 0.0f); + pos.x = -m.x/2.0f; + DrawText3D(GetFontDefault(), opt, pos, 6.0f, 0.5f, 0.0f, false, DARKBLUE); + pos.z += 0.5f + m.z; + + opt = "press [PgUp]/[PgDown] to change the line spacing"; + quads += 48; + m = MeasureText3D(GetFontDefault(), opt, 6.0f, 0.5f, 0.0f); + pos.x = -m.x/2.0f; + DrawText3D(GetFontDefault(), opt, pos, 6.0f, 0.5f, 0.0f, false, DARKBLUE); + pos.z += 0.5f + m.z; + + opt = "press [F1] to toggle the letter boundry"; + quads += 39; + m = MeasureText3D(GetFontDefault(), opt, 6.0f, 0.5f, 0.0f); + pos.x = -m.x/2.0f; + DrawText3D(GetFontDefault(), opt, pos, 6.0f, 0.5f, 0.0f, false, DARKBLUE); + pos.z += 0.5f + m.z; + + opt = "press [F2] to toggle the text boundry"; + quads += 37; + m = MeasureText3D(GetFontDefault(), opt, 6.0f, 0.5f, 0.0f); + pos.x = -m.x/2.0f; + DrawText3D(GetFontDefault(), opt, pos, 6.0f, 0.5f, 0.0f, false, DARKBLUE); + //------------------------------------------------------------------------- + + SHOW_LETTER_BOUNDRY = slb; + EndShaderMode(); + + EndMode3D(); + + // Draw 2D info text & stats + //------------------------------------------------------------------------- + DrawText("Drag & drop a font file to change the font!\nType something, see what happens!\n\n" + "Press [F3] to toggle the camera", 10, 35, 10, BLACK); + + quads += TextLength(text)*2*layers; + char *tmp = (char *)TextFormat("%2i layer(s) | %s camera | %4i quads (%4i verts)", layers, spin? "ORBITAL" : "FREE", quads, quads*4); + int width = MeasureText(tmp, 10); + DrawText(tmp, screenWidth - 20 - width, 10, 10, DARKGREEN); + + tmp = "[Home]/[End] to add/remove 3D text layers"; + width = MeasureText(tmp, 10); + DrawText(tmp, screenWidth - 20 - width, 25, 10, DARKGRAY); + + tmp = "[Insert]/[Delete] to increase/decrease distance between layers"; + width = MeasureText(tmp, 10); + DrawText(tmp, screenWidth - 20 - width, 40, 10, DARKGRAY); + + tmp = "click the [CUBE] for a random color"; + width = MeasureText(tmp, 10); + DrawText(tmp, screenWidth - 20 - width, 55, 10, DARKGRAY); + + tmp = "[Tab] to toggle multicolor mode"; + width = MeasureText(tmp, 10); + DrawText(tmp, screenWidth - 20 - width, 70, 10, DARKGRAY); + //------------------------------------------------------------------------- + + DrawFPS(10, 10); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadFont(font); + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} + +//-------------------------------------------------------------------------------------- +// Module Functions Definitions +//-------------------------------------------------------------------------------------- +// Draw codepoint at specified position in 3D space +static void DrawTextCodepoint3D(Font font, int codepoint, Vector3 position, float fontSize, bool backface, Color tint) +{ + // Character index position in sprite font + // NOTE: In case a codepoint is not available in the font, index returned points to '?' + int index = GetGlyphIndex(font, codepoint); + float scale = fontSize/(float)font.baseSize; + + // Character destination rectangle on screen + // NOTE: We consider charsPadding on drawing + position.x += (float)(font.glyphs[index].offsetX - font.glyphPadding)/(float)font.baseSize*scale; + position.z += (float)(font.glyphs[index].offsetY - font.glyphPadding)/(float)font.baseSize*scale; + + // Character source rectangle from font texture atlas + // NOTE: We consider chars padding when drawing, it could be required for outline/glow shader effects + Rectangle srcRec = { font.recs[index].x - (float)font.glyphPadding, font.recs[index].y - (float)font.glyphPadding, + font.recs[index].width + 2.0f*font.glyphPadding, font.recs[index].height + 2.0f*font.glyphPadding }; + + float width = (float)(font.recs[index].width + 2.0f*font.glyphPadding)/(float)font.baseSize*scale; + float height = (float)(font.recs[index].height + 2.0f*font.glyphPadding)/(float)font.baseSize*scale; + + if (font.texture.id > 0) + { + const float x = 0.0f; + const float y = 0.0f; + const float z = 0.0f; + + // normalized texture coordinates of the glyph inside the font texture (0.0f -> 1.0f) + const float tx = srcRec.x/font.texture.width; + const float ty = srcRec.y/font.texture.height; + const float tw = (srcRec.x+srcRec.width)/font.texture.width; + const float th = (srcRec.y+srcRec.height)/font.texture.height; + + if (SHOW_LETTER_BOUNDRY) DrawCubeWiresV((Vector3){ position.x + width/2, position.y, position.z + height/2}, (Vector3){ width, LETTER_BOUNDRY_SIZE, height }, LETTER_BOUNDRY_COLOR); + + rlCheckRenderBatchLimit(4 + 4*backface); + rlSetTexture(font.texture.id); + + rlPushMatrix(); + rlTranslatef(position.x, position.y, position.z); + + rlBegin(RL_QUADS); + rlColor4ub(tint.r, tint.g, tint.b, tint.a); + + // Front Face + rlNormal3f(0.0f, 1.0f, 0.0f); // Normal Pointing Up + rlTexCoord2f(tx, ty); rlVertex3f(x, y, z); // Top Left Of The Texture and Quad + rlTexCoord2f(tx, th); rlVertex3f(x, y, z + height); // Bottom Left Of The Texture and Quad + rlTexCoord2f(tw, th); rlVertex3f(x + width, y, z + height); // Bottom Right Of The Texture and Quad + rlTexCoord2f(tw, ty); rlVertex3f(x + width, y, z); // Top Right Of The Texture and Quad + + if (backface) + { + // Back Face + rlNormal3f(0.0f, -1.0f, 0.0f); // Normal Pointing Down + rlTexCoord2f(tx, ty); rlVertex3f(x, y, z); // Top Right Of The Texture and Quad + rlTexCoord2f(tw, ty); rlVertex3f(x + width, y, z); // Top Left Of The Texture and Quad + rlTexCoord2f(tw, th); rlVertex3f(x + width, y, z + height); // Bottom Left Of The Texture and Quad + rlTexCoord2f(tx, th); rlVertex3f(x, y, z + height); // Bottom Right Of The Texture and Quad + } + rlEnd(); + rlPopMatrix(); + + rlSetTexture(0); + } +} + +// Draw a 2D text in 3D space +static void DrawText3D(Font font, const char *text, Vector3 position, float fontSize, float fontSpacing, float lineSpacing, bool backface, Color tint) +{ + int length = TextLength(text); // Total length in bytes of the text, scanned by codepoints in loop + + float textOffsetY = 0.0f; // Offset between lines (on line break '\n') + float textOffsetX = 0.0f; // Offset X to next character to draw + + float scale = fontSize/(float)font.baseSize; + + for (int i = 0; i < length;) + { + // Get next codepoint from byte string and glyph index in font + int codepointByteCount = 0; + int codepoint = GetCodepoint(&text[i], &codepointByteCount); + int index = GetGlyphIndex(font, codepoint); + + // NOTE: Normally we exit the decoding sequence as soon as a bad byte is found (and return 0x3f) + // but we need to draw all of the bad bytes using the '?' symbol moving one byte + if (codepoint == 0x3f) codepointByteCount = 1; + + if (codepoint == '\n') + { + // NOTE: Fixed line spacing of 1.5 line-height + // TODO: Support custom line spacing defined by user + textOffsetY += scale + lineSpacing/(float)font.baseSize*scale; + textOffsetX = 0.0f; + } + else + { + if ((codepoint != ' ') && (codepoint != '\t')) + { + DrawTextCodepoint3D(font, codepoint, (Vector3){ position.x + textOffsetX, position.y, position.z + textOffsetY }, fontSize, backface, tint); + } + + if (font.glyphs[index].advanceX == 0) textOffsetX += (float)(font.recs[index].width + fontSpacing)/(float)font.baseSize*scale; + else textOffsetX += (float)(font.glyphs[index].advanceX + fontSpacing)/(float)font.baseSize*scale; + } + + i += codepointByteCount; // Move text bytes counter to next codepoint + } +} + +// Measure a text in 3D. For some reason `MeasureTextEx()` just doesn't seem to work so i had to use this instead. +static Vector3 MeasureText3D(Font font, const char* text, float fontSize, float fontSpacing, float lineSpacing) +{ + int len = TextLength(text); + int tempLen = 0; // Used to count longer text line num chars + int lenCounter = 0; + + float tempTextWidth = 0.0f; // Used to count longer text line width + + float scale = fontSize/(float)font.baseSize; + float textHeight = scale; + float textWidth = 0.0f; + + int letter = 0; // Current character + int index = 0; // Index position in sprite font + + for (int i = 0; i < len; i++) + { + lenCounter++; + + int next = 0; + letter = GetCodepoint(&text[i], &next); + index = GetGlyphIndex(font, letter); + + // NOTE: normally we exit the decoding sequence as soon as a bad byte is found (and return 0x3f) + // but we need to draw all of the bad bytes using the '?' symbol so to not skip any we set next = 1 + if (letter == 0x3f) next = 1; + i += next - 1; + + if (letter != '\n') + { + if (font.glyphs[index].advanceX != 0) textWidth += (font.glyphs[index].advanceX+fontSpacing)/(float)font.baseSize*scale; + else textWidth += (font.recs[index].width + font.glyphs[index].offsetX)/(float)font.baseSize*scale; + } + else + { + if (tempTextWidth < textWidth) tempTextWidth = textWidth; + lenCounter = 0; + textWidth = 0.0f; + textHeight += scale + lineSpacing/(float)font.baseSize*scale; + } + + if (tempLen < lenCounter) tempLen = lenCounter; + } + + if (tempTextWidth < textWidth) tempTextWidth = textWidth; + + Vector3 vec = { 0 }; + vec.x = tempTextWidth + (float)((tempLen - 1)*fontSpacing/(float)font.baseSize*scale); // Adds chars spacing to measure + vec.y = 0.25f; + vec.z = textHeight; + + return vec; +} + +// Draw a 2D text in 3D space and wave the parts that start with `~~` and end with `~~`. +// This is a modified version of the original code by @Nighten found here https://github.com/NightenDushi/Raylib_DrawTextStyle +static void DrawTextWave3D(Font font, const char *text, Vector3 position, float fontSize, float fontSpacing, float lineSpacing, bool backface, WaveTextConfig* config, float time, Color tint) +{ + int length = TextLength(text); // Total length in bytes of the text, scanned by codepoints in loop + + float textOffsetY = 0.0f; // Offset between lines (on line break '\n') + float textOffsetX = 0.0f; // Offset X to next character to draw + + float scale = fontSize/(float)font.baseSize; + + bool wave = false; + + for (int i = 0, k = 0; i < length; ++k) + { + // Get next codepoint from byte string and glyph index in font + int codepointByteCount = 0; + int codepoint = GetCodepoint(&text[i], &codepointByteCount); + int index = GetGlyphIndex(font, codepoint); + + // NOTE: Normally we exit the decoding sequence as soon as a bad byte is found (and return 0x3f) + // but we need to draw all of the bad bytes using the '?' symbol moving one byte + if (codepoint == 0x3f) codepointByteCount = 1; + + if (codepoint == '\n') + { + // NOTE: Fixed line spacing of 1.5 line-height + // TODO: Support custom line spacing defined by user + textOffsetY += scale + lineSpacing/(float)font.baseSize*scale; + textOffsetX = 0.0f; + k = 0; + } + else if (codepoint == '~') + { + if (GetCodepoint(&text[i+1], &codepointByteCount) == '~') + { + codepointByteCount += 1; + wave = !wave; + } + } + else + { + if ((codepoint != ' ') && (codepoint != '\t')) + { + Vector3 pos = position; + if (wave) // Apply the wave effect + { + pos.x += sinf(time*config->waveSpeed.x-k*config->waveOffset.x)*config->waveRange.x; + pos.y += sinf(time*config->waveSpeed.y-k*config->waveOffset.y)*config->waveRange.y; + pos.z += sinf(time*config->waveSpeed.z-k*config->waveOffset.z)*config->waveRange.z; + } + + DrawTextCodepoint3D(font, codepoint, (Vector3){ pos.x + textOffsetX, pos.y, pos.z + textOffsetY }, fontSize, backface, tint); + } + + if (font.glyphs[index].advanceX == 0) textOffsetX += (float)(font.recs[index].width + fontSpacing)/(float)font.baseSize*scale; + else textOffsetX += (float)(font.glyphs[index].advanceX + fontSpacing)/(float)font.baseSize*scale; + } + + i += codepointByteCount; // Move text bytes counter to next codepoint + } +} + +// Measure a text in 3D ignoring the `~~` chars. +static Vector3 MeasureTextWave3D(Font font, const char* text, float fontSize, float fontSpacing, float lineSpacing) +{ + int len = TextLength(text); + int tempLen = 0; // Used to count longer text line num chars + int lenCounter = 0; + + float tempTextWidth = 0.0f; // Used to count longer text line width + + float scale = fontSize/(float)font.baseSize; + float textHeight = scale; + float textWidth = 0.0f; + + int letter = 0; // Current character + int index = 0; // Index position in sprite font + + for (int i = 0; i < len; i++) + { + lenCounter++; + + int next = 0; + letter = GetCodepoint(&text[i], &next); + index = GetGlyphIndex(font, letter); + + // NOTE: normally we exit the decoding sequence as soon as a bad byte is found (and return 0x3f) + // but we need to draw all of the bad bytes using the '?' symbol so to not skip any we set next = 1 + if (letter == 0x3f) next = 1; + i += next - 1; + + if (letter != '\n') + { + if (letter == '~' && GetCodepoint(&text[i+1], &next) == '~') + { + i++; + } + else + { + if (font.glyphs[index].advanceX != 0) textWidth += (font.glyphs[index].advanceX+fontSpacing)/(float)font.baseSize*scale; + else textWidth += (font.recs[index].width + font.glyphs[index].offsetX)/(float)font.baseSize*scale; + } + } + else + { + if (tempTextWidth < textWidth) tempTextWidth = textWidth; + lenCounter = 0; + textWidth = 0.0f; + textHeight += scale + lineSpacing/(float)font.baseSize*scale; + } + + if (tempLen < lenCounter) tempLen = lenCounter; + } + + if (tempTextWidth < textWidth) tempTextWidth = textWidth; + + Vector3 vec = { 0 }; + vec.x = tempTextWidth + (float)((tempLen - 1)*fontSpacing/(float)font.baseSize*scale); // Adds chars spacing to measure + vec.y = 0.25f; + vec.z = textHeight; + + return vec; +} + +// Generates a nice color with a random hue +static Color GenerateRandomColor(float s, float v) +{ + const float Phi = 0.618033988749895f; // Golden ratio conjugate + float h = (float)GetRandomValue(0, 360); + h = fmodf((h + h*Phi), 360.0f); + return ColorFromHSV(h, s, v); +} diff --git a/examples/text/text_font_filters.c b/examples/text/text_font_filters.c new file mode 100644 index 0000000..e675671 --- /dev/null +++ b/examples/text/text_font_filters.c @@ -0,0 +1,137 @@ +/******************************************************************************************* +* +* raylib [text] example - Font filters +* +* NOTE: After font loading, font texture atlas filter could be configured for a softer +* display of the font when scaling it to different sizes, that way, it's not required +* to generate multiple fonts at multiple sizes (as long as the scaling is not very different) +* +* Example originally created with raylib 1.3, last time updated with raylib 4.2 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2015-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [text] example - font filters"); + + const char msg[50] = "Loaded Font"; + + // NOTE: Textures/Fonts MUST be loaded after Window initialization (OpenGL context is required) + + // TTF Font loading with custom generation parameters + Font font = LoadFontEx("resources/KAISG.ttf", 96, 0, 0); + + // Generate mipmap levels to use trilinear filtering + // NOTE: On 2D drawing it won't be noticeable, it looks like FILTER_BILINEAR + GenTextureMipmaps(&font.texture); + + float fontSize = (float)font.baseSize; + Vector2 fontPosition = { 40.0f, screenHeight/2.0f - 80.0f }; + Vector2 textSize = { 0.0f, 0.0f }; + + // Setup texture scaling filter + SetTextureFilter(font.texture, TEXTURE_FILTER_POINT); + int currentFontFilter = 0; // TEXTURE_FILTER_POINT + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + fontSize += GetMouseWheelMove()*4.0f; + + // Choose font texture filter method + if (IsKeyPressed(KEY_ONE)) + { + SetTextureFilter(font.texture, TEXTURE_FILTER_POINT); + currentFontFilter = 0; + } + else if (IsKeyPressed(KEY_TWO)) + { + SetTextureFilter(font.texture, TEXTURE_FILTER_BILINEAR); + currentFontFilter = 1; + } + else if (IsKeyPressed(KEY_THREE)) + { + // NOTE: Trilinear filter won't be noticed on 2D drawing + SetTextureFilter(font.texture, TEXTURE_FILTER_TRILINEAR); + currentFontFilter = 2; + } + + textSize = MeasureTextEx(font, msg, fontSize, 0); + + if (IsKeyDown(KEY_LEFT)) fontPosition.x -= 10; + else if (IsKeyDown(KEY_RIGHT)) fontPosition.x += 10; + + // Load a dropped TTF file dynamically (at current fontSize) + if (IsFileDropped()) + { + FilePathList droppedFiles = LoadDroppedFiles(); + + // NOTE: We only support first ttf file dropped + if (IsFileExtension(droppedFiles.paths[0], ".ttf")) + { + UnloadFont(font); + font = LoadFontEx(droppedFiles.paths[0], (int)fontSize, 0, 0); + } + + UnloadDroppedFiles(droppedFiles); // Unload filepaths from memory + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawText("Use mouse wheel to change font size", 20, 20, 10, GRAY); + DrawText("Use KEY_RIGHT and KEY_LEFT to move text", 20, 40, 10, GRAY); + DrawText("Use 1, 2, 3 to change texture filter", 20, 60, 10, GRAY); + DrawText("Drop a new TTF font for dynamic loading", 20, 80, 10, DARKGRAY); + + DrawTextEx(font, msg, fontPosition, fontSize, 0, BLACK); + + // TODO: It seems texSize measurement is not accurate due to chars offsets... + //DrawRectangleLines(fontPosition.x, fontPosition.y, textSize.x, textSize.y, RED); + + DrawRectangle(0, screenHeight - 80, screenWidth, 80, LIGHTGRAY); + DrawText(TextFormat("Font size: %02.02f", fontSize), 20, screenHeight - 50, 10, DARKGRAY); + DrawText(TextFormat("Text size: [%02.02f, %02.02f]", textSize.x, textSize.y), 20, screenHeight - 30, 10, DARKGRAY); + DrawText("CURRENT TEXTURE FILTER:", 250, 400, 20, GRAY); + + if (currentFontFilter == 0) DrawText("POINT", 570, 400, 20, BLACK); + else if (currentFontFilter == 1) DrawText("BILINEAR", 570, 400, 20, BLACK); + else if (currentFontFilter == 2) DrawText("TRILINEAR", 570, 400, 20, BLACK); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadFont(font); // Font unloading + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/text/text_font_loading.c b/examples/text/text_font_loading.c new file mode 100644 index 0000000..2ded64f --- /dev/null +++ b/examples/text/text_font_loading.c @@ -0,0 +1,96 @@ +/******************************************************************************************* +* +* raylib [text] example - Font loading +* +* NOTE: raylib can load fonts from multiple input file formats: +* +* - TTF/OTF > Sprite font atlas is generated on loading, user can configure +* some of the generation parameters (size, characters to include) +* - BMFonts > Angel code font fileformat, sprite font image must be provided +* together with the .fnt file, font generation cna not be configured +* - XNA Spritefont > Sprite font image, following XNA Spritefont conventions, +* Characters in image must follow some spacing and order rules +* +* Example originally created with raylib 1.4, last time updated with raylib 3.0 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2016-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [text] example - font loading"); + + // Define characters to draw + // NOTE: raylib supports UTF-8 encoding, following list is actually codified as UTF8 internally + const char msg[256] = "!\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHI\nJKLMNOPQRSTUVWXYZ[]^_`abcdefghijklmn\nopqrstuvwxyz{|}~¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓ\nÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷\nøùúûüýþÿ"; + + // NOTE: Textures/Fonts MUST be loaded after Window initialization (OpenGL context is required) + + // BMFont (AngelCode) : Font data and image atlas have been generated using external program + Font fontBm = LoadFont("resources/pixantiqua.fnt"); + + // TTF font : Font data and atlas are generated directly from TTF + // NOTE: We define a font base size of 32 pixels tall and up-to 250 characters + Font fontTtf = LoadFontEx("resources/pixantiqua.ttf", 32, 0, 250); + + bool useTtf = false; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + if (IsKeyDown(KEY_SPACE)) useTtf = true; + else useTtf = false; + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawText("Hold SPACE to use TTF generated font", 20, 20, 20, LIGHTGRAY); + + if (!useTtf) + { + DrawTextEx(fontBm, msg, (Vector2){ 20.0f, 100.0f }, (float)fontBm.baseSize, 2, MAROON); + DrawText("Using BMFont (Angelcode) imported", 20, GetScreenHeight() - 30, 20, GRAY); + } + else + { + DrawTextEx(fontTtf, msg, (Vector2){ 20.0f, 100.0f }, (float)fontTtf.baseSize, 2, LIME); + DrawText("Using TTF font generated", 20, GetScreenHeight() - 30, 20, GRAY); + } + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadFont(fontBm); // AngelCode Font unloading + UnloadFont(fontTtf); // TTF Font unloading + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/text/text_font_sdf.c b/examples/text/text_font_sdf.c new file mode 100644 index 0000000..6a223ae --- /dev/null +++ b/examples/text/text_font_sdf.c @@ -0,0 +1,146 @@ +/******************************************************************************************* +* +* raylib [text] example - Font SDF loading +* +* Example originally created with raylib 1.3, last time updated with raylib 4.0 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2015-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#if defined(PLATFORM_DESKTOP) + #define GLSL_VERSION 330 +#else // PLATFORM_RPI, PLATFORM_ANDROID, PLATFORM_WEB + #define GLSL_VERSION 100 +#endif + +#include + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [text] example - SDF fonts"); + + // NOTE: Textures/Fonts MUST be loaded after Window initialization (OpenGL context is required) + + const char msg[50] = "Signed Distance Fields"; + + // Loading file to memory + unsigned int fileSize = 0; + unsigned char *fileData = LoadFileData("resources/anonymous_pro_bold.ttf", &fileSize); + + // Default font generation from TTF font + Font fontDefault = { 0 }; + fontDefault.baseSize = 16; + fontDefault.glyphCount = 95; + + // Loading font data from memory data + // Parameters > font size: 16, no glyphs array provided (0), glyphs count: 95 (autogenerate chars array) + fontDefault.glyphs = LoadFontData(fileData, fileSize, 16, 0, 95, FONT_DEFAULT); + // Parameters > glyphs count: 95, font size: 16, glyphs padding in image: 4 px, pack method: 0 (default) + Image atlas = GenImageFontAtlas(fontDefault.glyphs, &fontDefault.recs, 95, 16, 4, 0); + fontDefault.texture = LoadTextureFromImage(atlas); + UnloadImage(atlas); + + // SDF font generation from TTF font + Font fontSDF = { 0 }; + fontSDF.baseSize = 16; + fontSDF.glyphCount = 95; + // Parameters > font size: 16, no glyphs array provided (0), glyphs count: 0 (defaults to 95) + fontSDF.glyphs = LoadFontData(fileData, fileSize, 16, 0, 0, FONT_SDF); + // Parameters > glyphs count: 95, font size: 16, glyphs padding in image: 0 px, pack method: 1 (Skyline algorythm) + atlas = GenImageFontAtlas(fontSDF.glyphs, &fontSDF.recs, 95, 16, 0, 1); + fontSDF.texture = LoadTextureFromImage(atlas); + UnloadImage(atlas); + + UnloadFileData(fileData); // Free memory from loaded file + + // Load SDF required shader (we use default vertex shader) + Shader shader = LoadShader(0, TextFormat("resources/shaders/glsl%i/sdf.fs", GLSL_VERSION)); + SetTextureFilter(fontSDF.texture, TEXTURE_FILTER_BILINEAR); // Required for SDF font + + Vector2 fontPosition = { 40, screenHeight/2.0f - 50 }; + Vector2 textSize = { 0.0f, 0.0f }; + float fontSize = 16.0f; + int currentFont = 0; // 0 - fontDefault, 1 - fontSDF + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + fontSize += GetMouseWheelMove()*8.0f; + + if (fontSize < 6) fontSize = 6; + + if (IsKeyDown(KEY_SPACE)) currentFont = 1; + else currentFont = 0; + + if (currentFont == 0) textSize = MeasureTextEx(fontDefault, msg, fontSize, 0); + else textSize = MeasureTextEx(fontSDF, msg, fontSize, 0); + + fontPosition.x = GetScreenWidth()/2 - textSize.x/2; + fontPosition.y = GetScreenHeight()/2 - textSize.y/2 + 80; + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + if (currentFont == 1) + { + // NOTE: SDF fonts require a custom SDf shader to compute fragment color + BeginShaderMode(shader); // Activate SDF font shader + DrawTextEx(fontSDF, msg, fontPosition, fontSize, 0, BLACK); + EndShaderMode(); // Activate our default shader for next drawings + + DrawTexture(fontSDF.texture, 10, 10, BLACK); + } + else + { + DrawTextEx(fontDefault, msg, fontPosition, fontSize, 0, BLACK); + DrawTexture(fontDefault.texture, 10, 10, BLACK); + } + + if (currentFont == 1) DrawText("SDF!", 320, 20, 80, RED); + else DrawText("default font", 315, 40, 30, GRAY); + + DrawText("FONT SIZE: 16.0", GetScreenWidth() - 240, 20, 20, DARKGRAY); + DrawText(TextFormat("RENDER SIZE: %02.02f", fontSize), GetScreenWidth() - 240, 50, 20, DARKGRAY); + DrawText("Use MOUSE WHEEL to SCALE TEXT!", GetScreenWidth() - 240, 90, 10, DARKGRAY); + + DrawText("HOLD SPACE to USE SDF FONT VERSION!", 340, GetScreenHeight() - 30, 20, MAROON); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadFont(fontDefault); // Default font unloading + UnloadFont(fontSDF); // SDF font unloading + + UnloadShader(shader); // Unload SDF shader + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/text/text_font_spritefont.c b/examples/text/text_font_spritefont.c new file mode 100644 index 0000000..b5df2d0 --- /dev/null +++ b/examples/text/text_font_spritefont.c @@ -0,0 +1,91 @@ +/******************************************************************************************* +* +* raylib [text] example - Sprite font loading +* +* NOTE: Sprite fonts should be generated following this conventions: +* +* - Characters must be ordered starting with character 32 (Space) +* - Every character must be contained within the same Rectangle height +* - Every character and every line must be separated by the same distance (margin/padding) +* - Rectangles must be defined by a MAGENTA color background +* +* Following those constraints, a font can be provided just by an image, +* this is quite handy to avoid additional font descriptor files (like BMFonts use). +* +* Example originally created with raylib 1.0, last time updated with raylib 1.0 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2014-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [text] example - sprite font loading"); + + const char msg1[50] = "THIS IS A custom SPRITE FONT..."; + const char msg2[50] = "...and this is ANOTHER CUSTOM font..."; + const char msg3[50] = "...and a THIRD one! GREAT! :D"; + + // NOTE: Textures/Fonts MUST be loaded after Window initialization (OpenGL context is required) + Font font1 = LoadFont("resources/custom_mecha.png"); // Font loading + Font font2 = LoadFont("resources/custom_alagard.png"); // Font loading + Font font3 = LoadFont("resources/custom_jupiter_crash.png"); // Font loading + + Vector2 fontPosition1 = { screenWidth/2.0f - MeasureTextEx(font1, msg1, (float)font1.baseSize, -3).x/2, + screenHeight/2.0f - font1.baseSize/2.0f - 80.0f }; + + Vector2 fontPosition2 = { screenWidth/2.0f - MeasureTextEx(font2, msg2, (float)font2.baseSize, -2.0f).x/2.0f, + screenHeight/2.0f - font2.baseSize/2.0f - 10.0f }; + + Vector2 fontPosition3 = { screenWidth/2.0f - MeasureTextEx(font3, msg3, (float)font3.baseSize, 2.0f).x/2.0f, + screenHeight/2.0f - font3.baseSize/2.0f + 50.0f }; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // TODO: Update variables here... + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawTextEx(font1, msg1, fontPosition1, (float)font1.baseSize, -3, WHITE); + DrawTextEx(font2, msg2, fontPosition2, (float)font2.baseSize, -2, WHITE); + DrawTextEx(font3, msg3, fontPosition3, (float)font3.baseSize, 2, WHITE); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadFont(font1); // Font unloading + UnloadFont(font2); // Font unloading + UnloadFont(font3); // Font unloading + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/text/text_format_text.c b/examples/text/text_format_text.c new file mode 100644 index 0000000..6b1b045 --- /dev/null +++ b/examples/text/text_format_text.c @@ -0,0 +1,67 @@ +/******************************************************************************************* +* +* raylib [text] example - Text formatting +* +* Example originally created with raylib 1.1, last time updated with raylib 3.0 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2014-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [text] example - text formatting"); + + int score = 100020; + int hiscore = 200450; + int lives = 5; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // TODO: Update your variables here + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawText(TextFormat("Score: %08i", score), 200, 80, 20, RED); + + DrawText(TextFormat("HiScore: %08i", hiscore), 200, 120, 20, GREEN); + + DrawText(TextFormat("Lives: %02i", lives), 200, 160, 40, BLUE); + + DrawText(TextFormat("Elapsed Time: %02.02f ms", GetFrameTime()*1000), 200, 220, 20, BLACK); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/text/text_input_box.c b/examples/text/text_input_box.c new file mode 100644 index 0000000..f3923c1 --- /dev/null +++ b/examples/text/text_input_box.c @@ -0,0 +1,132 @@ +/******************************************************************************************* +* +* raylib [text] example - Input Box +* +* Example originally created with raylib 1.7, last time updated with raylib 3.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2017-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#define MAX_INPUT_CHARS 9 + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [text] example - input box"); + + char name[MAX_INPUT_CHARS + 1] = "\0"; // NOTE: One extra space required for null terminator char '\0' + int letterCount = 0; + + Rectangle textBox = { screenWidth/2.0f - 100, 180, 225, 50 }; + bool mouseOnText = false; + + int framesCounter = 0; + + SetTargetFPS(10); // Set our game to run at 10 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + if (CheckCollisionPointRec(GetMousePosition(), textBox)) mouseOnText = true; + else mouseOnText = false; + + if (mouseOnText) + { + // Set the window's cursor to the I-Beam + SetMouseCursor(MOUSE_CURSOR_IBEAM); + + // Get char pressed (unicode character) on the queue + int key = GetCharPressed(); + + // Check if more characters have been pressed on the same frame + while (key > 0) + { + // NOTE: Only allow keys in range [32..125] + if ((key >= 32) && (key <= 125) && (letterCount < MAX_INPUT_CHARS)) + { + name[letterCount] = (char)key; + name[letterCount+1] = '\0'; // Add null terminator at the end of the string. + letterCount++; + } + + key = GetCharPressed(); // Check next character in the queue + } + + if (IsKeyPressed(KEY_BACKSPACE)) + { + letterCount--; + if (letterCount < 0) letterCount = 0; + name[letterCount] = '\0'; + } + } + else SetMouseCursor(MOUSE_CURSOR_DEFAULT); + + if (mouseOnText) framesCounter++; + else framesCounter = 0; + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawText("PLACE MOUSE OVER INPUT BOX!", 240, 140, 20, GRAY); + + DrawRectangleRec(textBox, LIGHTGRAY); + if (mouseOnText) DrawRectangleLines((int)textBox.x, (int)textBox.y, (int)textBox.width, (int)textBox.height, RED); + else DrawRectangleLines((int)textBox.x, (int)textBox.y, (int)textBox.width, (int)textBox.height, DARKGRAY); + + DrawText(name, (int)textBox.x + 5, (int)textBox.y + 8, 40, MAROON); + + DrawText(TextFormat("INPUT CHARS: %i/%i", letterCount, MAX_INPUT_CHARS), 315, 250, 20, DARKGRAY); + + if (mouseOnText) + { + if (letterCount < MAX_INPUT_CHARS) + { + // Draw blinking underscore char + if (((framesCounter/20)%2) == 0) DrawText("_", (int)textBox.x + 8 + MeasureText(name, 40), (int)textBox.y + 12, 40, MAROON); + } + else DrawText("Press BACKSPACE to delete chars...", 230, 300, 20, GRAY); + } + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} + +// Check if any key is pressed +// NOTE: We limit keys check to keys between 32 (KEY_SPACE) and 126 +bool IsAnyKeyPressed() +{ + bool keyPressed = false; + int key = GetKeyPressed(); + + if ((key >= 32) && (key <= 126)) keyPressed = true; + + return keyPressed; +} diff --git a/examples/text/text_raylib_fonts.c b/examples/text/text_raylib_fonts.c new file mode 100644 index 0000000..8ef67c7 --- /dev/null +++ b/examples/text/text_raylib_fonts.c @@ -0,0 +1,110 @@ +/******************************************************************************************* +* +* raylib [text] example - raylib fonts loading +* +* NOTE: raylib is distributed with some free to use fonts (even for commercial pourposes!) +* To view details and credits for those fonts, check raylib license file +* +* Example originally created with raylib 1.7, last time updated with raylib 3.7 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2017-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#define MAX_FONTS 8 + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [text] example - raylib fonts"); + + // NOTE: Textures MUST be loaded after Window initialization (OpenGL context is required) + Font fonts[MAX_FONTS] = { 0 }; + + fonts[0] = LoadFont("resources/fonts/alagard.png"); + fonts[1] = LoadFont("resources/fonts/pixelplay.png"); + fonts[2] = LoadFont("resources/fonts/mecha.png"); + fonts[3] = LoadFont("resources/fonts/setback.png"); + fonts[4] = LoadFont("resources/fonts/romulus.png"); + fonts[5] = LoadFont("resources/fonts/pixantiqua.png"); + fonts[6] = LoadFont("resources/fonts/alpha_beta.png"); + fonts[7] = LoadFont("resources/fonts/jupiter_crash.png"); + + const char *messages[MAX_FONTS] = { "ALAGARD FONT designed by Hewett Tsoi", + "PIXELPLAY FONT designed by Aleksander Shevchuk", + "MECHA FONT designed by Captain Falcon", + "SETBACK FONT designed by Brian Kent (AEnigma)", + "ROMULUS FONT designed by Hewett Tsoi", + "PIXANTIQUA FONT designed by Gerhard Grossmann", + "ALPHA_BETA FONT designed by Brian Kent (AEnigma)", + "JUPITER_CRASH FONT designed by Brian Kent (AEnigma)" }; + + const int spacings[MAX_FONTS] = { 2, 4, 8, 4, 3, 4, 4, 1 }; + + Vector2 positions[MAX_FONTS] = { 0 }; + + for (int i = 0; i < MAX_FONTS; i++) + { + positions[i].x = screenWidth/2.0f - MeasureTextEx(fonts[i], messages[i], fonts[i].baseSize*2.0f, (float)spacings[i]).x/2.0f; + positions[i].y = 60.0f + fonts[i].baseSize + 45.0f*i; + } + + // Small Y position corrections + positions[3].y += 8; + positions[4].y += 2; + positions[7].y -= 8; + + Color colors[MAX_FONTS] = { MAROON, ORANGE, DARKGREEN, DARKBLUE, DARKPURPLE, LIME, GOLD, RED }; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // TODO: Update your variables here + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawText("free fonts included with raylib", 250, 20, 20, DARKGRAY); + DrawLine(220, 50, 590, 50, DARKGRAY); + + for (int i = 0; i < MAX_FONTS; i++) + { + DrawTextEx(fonts[i], messages[i], positions[i], fonts[i].baseSize*2.0f, (float)spacings[i], colors[i]); + } + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + + // Fonts unloading + for (int i = 0; i < MAX_FONTS; i++) UnloadFont(fonts[i]); + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/text/text_rectangle_bounds.c b/examples/text/text_rectangle_bounds.c new file mode 100644 index 0000000..886c348 --- /dev/null +++ b/examples/text/text_rectangle_bounds.c @@ -0,0 +1,268 @@ +/******************************************************************************************* +* +* raylib [text] example - Rectangle bounds +* +* Example originally created with raylib 2.5, last time updated with raylib 4.0 +* +* Example contributed by Vlad Adrian (@demizdor) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2018-2023 Vlad Adrian (@demizdor) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +static void DrawTextBoxed(Font font, const char *text, Rectangle rec, float fontSize, float spacing, bool wordWrap, Color tint); // Draw text using font inside rectangle limits +static void DrawTextBoxedSelectable(Font font, const char *text, Rectangle rec, float fontSize, float spacing, bool wordWrap, Color tint, int selectStart, int selectLength, Color selectTint, Color selectBackTint); // Draw text using font inside rectangle limits with support for text selection + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [text] example - draw text inside a rectangle"); + + const char text[] = "Text cannot escape\tthis container\t...word wrap also works when active so here's \ +a long text for testing.\n\nLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod \ +tempor incididunt ut labore et dolore magna aliqua. Nec ullamcorper sit amet risus nullam eget felis eget."; + + bool resizing = false; + bool wordWrap = true; + + Rectangle container = { 25.0f, 25.0f, screenWidth - 50.0f, screenHeight - 250.0f }; + Rectangle resizer = { container.x + container.width - 17, container.y + container.height - 17, 14, 14 }; + + // Minimum width and heigh for the container rectangle + const float minWidth = 60; + const float minHeight = 60; + const float maxWidth = screenWidth - 50.0f; + const float maxHeight = screenHeight - 160.0f; + + Vector2 lastMouse = { 0.0f, 0.0f }; // Stores last mouse coordinates + Color borderColor = MAROON; // Container border color + Font font = GetFontDefault(); // Get default system font + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + if (IsKeyPressed(KEY_SPACE)) wordWrap = !wordWrap; + + Vector2 mouse = GetMousePosition(); + + // Check if the mouse is inside the container and toggle border color + if (CheckCollisionPointRec(mouse, container)) borderColor = Fade(MAROON, 0.4f); + else if (!resizing) borderColor = MAROON; + + // Container resizing logic + if (resizing) + { + if (IsMouseButtonReleased(MOUSE_BUTTON_LEFT)) resizing = false; + + float width = container.width + (mouse.x - lastMouse.x); + container.width = (width > minWidth)? ((width < maxWidth)? width : maxWidth) : minWidth; + + float height = container.height + (mouse.y - lastMouse.y); + container.height = (height > minHeight)? ((height < maxHeight)? height : maxHeight) : minHeight; + } + else + { + // Check if we're resizing + if (IsMouseButtonDown(MOUSE_BUTTON_LEFT) && CheckCollisionPointRec(mouse, resizer)) resizing = true; + } + + // Move resizer rectangle properly + resizer.x = container.x + container.width - 17; + resizer.y = container.y + container.height - 17; + + lastMouse = mouse; // Update mouse + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawRectangleLinesEx(container, 3, borderColor); // Draw container border + + // Draw text in container (add some padding) + DrawTextBoxed(font, text, (Rectangle){ container.x + 4, container.y + 4, container.width - 4, container.height - 4 }, 20.0f, 2.0f, wordWrap, GRAY); + + DrawRectangleRec(resizer, borderColor); // Draw the resize box + + // Draw bottom info + DrawRectangle(0, screenHeight - 54, screenWidth, 54, GRAY); + DrawRectangleRec((Rectangle){ 382.0f, screenHeight - 34.0f, 12.0f, 12.0f }, MAROON); + + DrawText("Word Wrap: ", 313, screenHeight-115, 20, BLACK); + if (wordWrap) DrawText("ON", 447, screenHeight - 115, 20, RED); + else DrawText("OFF", 447, screenHeight - 115, 20, BLACK); + + DrawText("Press [SPACE] to toggle word wrap", 218, screenHeight - 86, 20, GRAY); + + DrawText("Click hold & drag the to resize the container", 155, screenHeight - 38, 20, RAYWHITE); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} + +//-------------------------------------------------------------------------------------- +// Module functions definition +//-------------------------------------------------------------------------------------- + +// Draw text using font inside rectangle limits +static void DrawTextBoxed(Font font, const char *text, Rectangle rec, float fontSize, float spacing, bool wordWrap, Color tint) +{ + DrawTextBoxedSelectable(font, text, rec, fontSize, spacing, wordWrap, tint, 0, 0, WHITE, WHITE); +} + +// Draw text using font inside rectangle limits with support for text selection +static void DrawTextBoxedSelectable(Font font, const char *text, Rectangle rec, float fontSize, float spacing, bool wordWrap, Color tint, int selectStart, int selectLength, Color selectTint, Color selectBackTint) +{ + int length = TextLength(text); // Total length in bytes of the text, scanned by codepoints in loop + + float textOffsetY = 0; // Offset between lines (on line break '\n') + float textOffsetX = 0.0f; // Offset X to next character to draw + + float scaleFactor = fontSize/(float)font.baseSize; // Character rectangle scaling factor + + // Word/character wrapping mechanism variables + enum { MEASURE_STATE = 0, DRAW_STATE = 1 }; + int state = wordWrap? MEASURE_STATE : DRAW_STATE; + + int startLine = -1; // Index where to begin drawing (where a line begins) + int endLine = -1; // Index where to stop drawing (where a line ends) + int lastk = -1; // Holds last value of the character position + + for (int i = 0, k = 0; i < length; i++, k++) + { + // Get next codepoint from byte string and glyph index in font + int codepointByteCount = 0; + int codepoint = GetCodepoint(&text[i], &codepointByteCount); + int index = GetGlyphIndex(font, codepoint); + + // NOTE: Normally we exit the decoding sequence as soon as a bad byte is found (and return 0x3f) + // but we need to draw all of the bad bytes using the '?' symbol moving one byte + if (codepoint == 0x3f) codepointByteCount = 1; + i += (codepointByteCount - 1); + + float glyphWidth = 0; + if (codepoint != '\n') + { + glyphWidth = (font.glyphs[index].advanceX == 0) ? font.recs[index].width*scaleFactor : font.glyphs[index].advanceX*scaleFactor; + + if (i + 1 < length) glyphWidth = glyphWidth + spacing; + } + + // NOTE: When wordWrap is ON we first measure how much of the text we can draw before going outside of the rec container + // We store this info in startLine and endLine, then we change states, draw the text between those two variables + // and change states again and again recursively until the end of the text (or until we get outside of the container). + // When wordWrap is OFF we don't need the measure state so we go to the drawing state immediately + // and begin drawing on the next line before we can get outside the container. + if (state == MEASURE_STATE) + { + // TODO: There are multiple types of spaces in UNICODE, maybe it's a good idea to add support for more + // Ref: http://jkorpela.fi/chars/spaces.html + if ((codepoint == ' ') || (codepoint == '\t') || (codepoint == '\n')) endLine = i; + + if ((textOffsetX + glyphWidth) > rec.width) + { + endLine = (endLine < 1)? i : endLine; + if (i == endLine) endLine -= codepointByteCount; + if ((startLine + codepointByteCount) == endLine) endLine = (i - codepointByteCount); + + state = !state; + } + else if ((i + 1) == length) + { + endLine = i; + state = !state; + } + else if (codepoint == '\n') state = !state; + + if (state == DRAW_STATE) + { + textOffsetX = 0; + i = startLine; + glyphWidth = 0; + + // Save character position when we switch states + int tmp = lastk; + lastk = k - 1; + k = tmp; + } + } + else + { + if (codepoint == '\n') + { + if (!wordWrap) + { + textOffsetY += (font.baseSize + font.baseSize/2)*scaleFactor; + textOffsetX = 0; + } + } + else + { + if (!wordWrap && ((textOffsetX + glyphWidth) > rec.width)) + { + textOffsetY += (font.baseSize + font.baseSize/2)*scaleFactor; + textOffsetX = 0; + } + + // When text overflows rectangle height limit, just stop drawing + if ((textOffsetY + font.baseSize*scaleFactor) > rec.height) break; + + // Draw selection background + bool isGlyphSelected = false; + if ((selectStart >= 0) && (k >= selectStart) && (k < (selectStart + selectLength))) + { + DrawRectangleRec((Rectangle){ rec.x + textOffsetX - 1, rec.y + textOffsetY, glyphWidth, (float)font.baseSize*scaleFactor }, selectBackTint); + isGlyphSelected = true; + } + + // Draw current character glyph + if ((codepoint != ' ') && (codepoint != '\t')) + { + DrawTextCodepoint(font, codepoint, (Vector2){ rec.x + textOffsetX, rec.y + textOffsetY }, fontSize, isGlyphSelected? selectTint : tint); + } + } + + if (wordWrap && (i == endLine)) + { + textOffsetY += (font.baseSize + font.baseSize/2)*scaleFactor; + textOffsetX = 0; + startLine = endLine; + endLine = -1; + glyphWidth = 0; + selectStart += lastk - k; + k = lastk; + + state = !state; + } + } + + if ((textOffsetX != 0) || (codepoint != ' ')) textOffsetX += glyphWidth; // avoid leading spaces + } +} diff --git a/examples/text/text_unicode.c b/examples/text/text_unicode.c new file mode 100644 index 0000000..eb2a784 --- /dev/null +++ b/examples/text/text_unicode.c @@ -0,0 +1,468 @@ +/******************************************************************************************* +* +* raylib [text] example - Unicode +* +* Example originally created with raylib 2.5, last time updated with raylib 4.0 +* +* Example contributed by Vlad Adrian (@demizdor) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2019-2023 Vlad Adrian (@demizdor) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#include +#include + +#define SIZEOF(A) (sizeof(A)/sizeof(A[0])) +#define EMOJI_PER_WIDTH 8 +#define EMOJI_PER_HEIGHT 4 + +// String containing 180 emoji codepoints separated by a '\0' char +const char *const emojiCodepoints = "\xF0\x9F\x8C\x80\x00\xF0\x9F\x98\x80\x00\xF0\x9F\x98\x82\x00\xF0\x9F\xA4\xA3\x00\xF0\x9F\x98\x83\x00\xF0\x9F\x98\x86\x00\xF0\x9F\x98\x89\x00" + "\xF0\x9F\x98\x8B\x00\xF0\x9F\x98\x8E\x00\xF0\x9F\x98\x8D\x00\xF0\x9F\x98\x98\x00\xF0\x9F\x98\x97\x00\xF0\x9F\x98\x99\x00\xF0\x9F\x98\x9A\x00\xF0\x9F\x99\x82\x00" + "\xF0\x9F\xA4\x97\x00\xF0\x9F\xA4\xA9\x00\xF0\x9F\xA4\x94\x00\xF0\x9F\xA4\xA8\x00\xF0\x9F\x98\x90\x00\xF0\x9F\x98\x91\x00\xF0\x9F\x98\xB6\x00\xF0\x9F\x99\x84\x00" + "\xF0\x9F\x98\x8F\x00\xF0\x9F\x98\xA3\x00\xF0\x9F\x98\xA5\x00\xF0\x9F\x98\xAE\x00\xF0\x9F\xA4\x90\x00\xF0\x9F\x98\xAF\x00\xF0\x9F\x98\xAA\x00\xF0\x9F\x98\xAB\x00" + "\xF0\x9F\x98\xB4\x00\xF0\x9F\x98\x8C\x00\xF0\x9F\x98\x9B\x00\xF0\x9F\x98\x9D\x00\xF0\x9F\xA4\xA4\x00\xF0\x9F\x98\x92\x00\xF0\x9F\x98\x95\x00\xF0\x9F\x99\x83\x00" + "\xF0\x9F\xA4\x91\x00\xF0\x9F\x98\xB2\x00\xF0\x9F\x99\x81\x00\xF0\x9F\x98\x96\x00\xF0\x9F\x98\x9E\x00\xF0\x9F\x98\x9F\x00\xF0\x9F\x98\xA4\x00\xF0\x9F\x98\xA2\x00" + "\xF0\x9F\x98\xAD\x00\xF0\x9F\x98\xA6\x00\xF0\x9F\x98\xA9\x00\xF0\x9F\xA4\xAF\x00\xF0\x9F\x98\xAC\x00\xF0\x9F\x98\xB0\x00\xF0\x9F\x98\xB1\x00\xF0\x9F\x98\xB3\x00" + "\xF0\x9F\xA4\xAA\x00\xF0\x9F\x98\xB5\x00\xF0\x9F\x98\xA1\x00\xF0\x9F\x98\xA0\x00\xF0\x9F\xA4\xAC\x00\xF0\x9F\x98\xB7\x00\xF0\x9F\xA4\x92\x00\xF0\x9F\xA4\x95\x00" + "\xF0\x9F\xA4\xA2\x00\xF0\x9F\xA4\xAE\x00\xF0\x9F\xA4\xA7\x00\xF0\x9F\x98\x87\x00\xF0\x9F\xA4\xA0\x00\xF0\x9F\xA4\xAB\x00\xF0\x9F\xA4\xAD\x00\xF0\x9F\xA7\x90\x00" + "\xF0\x9F\xA4\x93\x00\xF0\x9F\x98\x88\x00\xF0\x9F\x91\xBF\x00\xF0\x9F\x91\xB9\x00\xF0\x9F\x91\xBA\x00\xF0\x9F\x92\x80\x00\xF0\x9F\x91\xBB\x00\xF0\x9F\x91\xBD\x00" + "\xF0\x9F\x91\xBE\x00\xF0\x9F\xA4\x96\x00\xF0\x9F\x92\xA9\x00\xF0\x9F\x98\xBA\x00\xF0\x9F\x98\xB8\x00\xF0\x9F\x98\xB9\x00\xF0\x9F\x98\xBB\x00\xF0\x9F\x98\xBD\x00" + "\xF0\x9F\x99\x80\x00\xF0\x9F\x98\xBF\x00\xF0\x9F\x8C\xBE\x00\xF0\x9F\x8C\xBF\x00\xF0\x9F\x8D\x80\x00\xF0\x9F\x8D\x83\x00\xF0\x9F\x8D\x87\x00\xF0\x9F\x8D\x93\x00" + "\xF0\x9F\xA5\x9D\x00\xF0\x9F\x8D\x85\x00\xF0\x9F\xA5\xA5\x00\xF0\x9F\xA5\x91\x00\xF0\x9F\x8D\x86\x00\xF0\x9F\xA5\x94\x00\xF0\x9F\xA5\x95\x00\xF0\x9F\x8C\xBD\x00" + "\xF0\x9F\x8C\xB6\x00\xF0\x9F\xA5\x92\x00\xF0\x9F\xA5\xA6\x00\xF0\x9F\x8D\x84\x00\xF0\x9F\xA5\x9C\x00\xF0\x9F\x8C\xB0\x00\xF0\x9F\x8D\x9E\x00\xF0\x9F\xA5\x90\x00" + "\xF0\x9F\xA5\x96\x00\xF0\x9F\xA5\xA8\x00\xF0\x9F\xA5\x9E\x00\xF0\x9F\xA7\x80\x00\xF0\x9F\x8D\x96\x00\xF0\x9F\x8D\x97\x00\xF0\x9F\xA5\xA9\x00\xF0\x9F\xA5\x93\x00" + "\xF0\x9F\x8D\x94\x00\xF0\x9F\x8D\x9F\x00\xF0\x9F\x8D\x95\x00\xF0\x9F\x8C\xAD\x00\xF0\x9F\xA5\xAA\x00\xF0\x9F\x8C\xAE\x00\xF0\x9F\x8C\xAF\x00\xF0\x9F\xA5\x99\x00" + "\xF0\x9F\xA5\x9A\x00\xF0\x9F\x8D\xB3\x00\xF0\x9F\xA5\x98\x00\xF0\x9F\x8D\xB2\x00\xF0\x9F\xA5\xA3\x00\xF0\x9F\xA5\x97\x00\xF0\x9F\x8D\xBF\x00\xF0\x9F\xA5\xAB\x00" + "\xF0\x9F\x8D\xB1\x00\xF0\x9F\x8D\x98\x00\xF0\x9F\x8D\x9D\x00\xF0\x9F\x8D\xA0\x00\xF0\x9F\x8D\xA2\x00\xF0\x9F\x8D\xA5\x00\xF0\x9F\x8D\xA1\x00\xF0\x9F\xA5\x9F\x00" + "\xF0\x9F\xA5\xA1\x00\xF0\x9F\x8D\xA6\x00\xF0\x9F\x8D\xAA\x00\xF0\x9F\x8E\x82\x00\xF0\x9F\x8D\xB0\x00\xF0\x9F\xA5\xA7\x00\xF0\x9F\x8D\xAB\x00\xF0\x9F\x8D\xAF\x00" + "\xF0\x9F\x8D\xBC\x00\xF0\x9F\xA5\x9B\x00\xF0\x9F\x8D\xB5\x00\xF0\x9F\x8D\xB6\x00\xF0\x9F\x8D\xBE\x00\xF0\x9F\x8D\xB7\x00\xF0\x9F\x8D\xBB\x00\xF0\x9F\xA5\x82\x00" + "\xF0\x9F\xA5\x83\x00\xF0\x9F\xA5\xA4\x00\xF0\x9F\xA5\xA2\x00\xF0\x9F\x91\x81\x00\xF0\x9F\x91\x85\x00\xF0\x9F\x91\x84\x00\xF0\x9F\x92\x8B\x00\xF0\x9F\x92\x98\x00" + "\xF0\x9F\x92\x93\x00\xF0\x9F\x92\x97\x00\xF0\x9F\x92\x99\x00\xF0\x9F\x92\x9B\x00\xF0\x9F\xA7\xA1\x00\xF0\x9F\x92\x9C\x00\xF0\x9F\x96\xA4\x00\xF0\x9F\x92\x9D\x00" + "\xF0\x9F\x92\x9F\x00\xF0\x9F\x92\x8C\x00\xF0\x9F\x92\xA4\x00\xF0\x9F\x92\xA2\x00\xF0\x9F\x92\xA3\x00"; + +struct { + char *text; + char *language; +} const messages[] = { // Array containing all of the emojis messages + {"\x46\x61\x6C\x73\x63\x68\x65\x73\x20\xC3\x9C\x62\x65\x6E\x20\x76\x6F\x6E\x20\x58\x79\x6C\x6F\x70\x68\x6F\x6E\x6D\x75\x73\x69\x6B\x20\x71\x75\xC3\xA4\x6C" + "\x74\x20\x6A\x65\x64\x65\x6E\x20\x67\x72\xC3\xB6\xC3\x9F\x65\x72\x65\x6E\x20\x5A\x77\x65\x72\x67", "German"}, + {"\x42\x65\x69\xC3\x9F\x20\x6E\x69\x63\x68\x74\x20\x69\x6E\x20\x64\x69\x65\x20\x48\x61\x6E\x64\x2C\x20\x64\x69\x65\x20\x64\x69\x63\x68\x20\x66\xC3\xBC\x74" + "\x74\x65\x72\x74\x2E", "German"}, + {"\x41\x75\xC3\x9F\x65\x72\x6F\x72\x64\x65\x6E\x74\x6C\x69\x63\x68\x65\x20\xC3\x9C\x62\x65\x6C\x20\x65\x72\x66\x6F\x72\x64\x65\x72\x6E\x20\x61\x75\xC3\x9F" + "\x65\x72\x6F\x72\x64\x65\x6E\x74\x6C\x69\x63\x68\x65\x20\x4D\x69\x74\x74\x65\x6C\x2E", "German"}, + {"\xD4\xBF\xD6\x80\xD5\xB6\xD5\xA1\xD5\xB4\x20\xD5\xA1\xD5\xBA\xD5\xA1\xD5\xAF\xD5\xAB\x20\xD5\xB8\xD6\x82\xD5\xBF\xD5\xA5\xD5\xAC\x20\xD6\x87\x20\xD5\xAB" + "\xD5\xB6\xD5\xAE\xD5\xAB\x20\xD5\xA1\xD5\xB6\xD5\xB0\xD5\xA1\xD5\xB6\xD5\xA3\xD5\xAB\xD5\xBD\xD5\xBF\x20\xD5\xB9\xD5\xA8\xD5\xB6\xD5\xA5\xD6\x80", "Armenian"}, + {"\xD4\xB5\xD6\x80\xD5\xA2\x20\xD5\xB8\xD6\x80\x20\xD5\xAF\xD5\xA1\xD6\x81\xD5\xAB\xD5\xB6\xD5\xA8\x20\xD5\xA5\xD5\xAF\xD5\xA1\xD6\x82\x20\xD5\xA1\xD5\xB6\xD5" + "\xBF\xD5\xA1\xD5\xBC\x2C\x20\xD5\xAE\xD5\xA1\xD5\xBC\xD5\xA5\xD6\x80\xD5\xA8\x20\xD5\xA1\xD5\xBD\xD5\xA1\xD6\x81\xD5\xAB\xD5\xB6\x2E\x2E\x2E\x20\xC2\xAB\xD4\xBF" + "\xD5\xB8\xD5\xBF\xD5\xA8\x20\xD5\xB4\xD5\xA5\xD6\x80\xD5\xB8\xD5\xB6\xD6\x81\xD5\xAB\xD6\x81\x20\xD5\xA7\x3A\xC2\xBB", "Armenian"}, + {"\xD4\xB3\xD5\xA1\xD5\xBC\xD5\xA8\xD5\x9D\x20\xD5\xA3\xD5\xA1\xD6\x80\xD5\xB6\xD5\xA1\xD5\xB6\x2C\x20\xD5\xB1\xD5\xAB\xD6\x82\xD5\xB6\xD5\xA8\xD5\x9D\x20\xD5" + "\xB1\xD5\xB4\xD5\xBC\xD5\xA1\xD5\xB6", "Armenian"}, + {"\x4A\x65\xC5\xBC\x75\x20\x6B\x6C\xC4\x85\x74\x77\x2C\x20\x73\x70\xC5\x82\xC3\xB3\x64\xC5\xBA\x20\x46\x69\x6E\x6F\x6D\x20\x63\x7A\xC4\x99\xC5\x9B\xC4\x87" + "\x20\x67\x72\x79\x20\x68\x61\xC5\x84\x62\x21", "Polish"}, + {"\x44\x6F\x62\x72\x79\x6D\x69\x20\x63\x68\xC4\x99\x63\x69\x61\x6D\x69\x20\x6A\x65\x73\x74\x20\x70\x69\x65\x6B\xC5\x82\x6F\x20\x77\x79\x62\x72\x75\x6B\x6F" + "\x77\x61\x6E\x65\x2E", "Polish"}, + {"\xC3\x8E\xC8\x9B\x69\x20\x6D\x75\x6C\xC8\x9B\x75\x6D\x65\x73\x63\x20\x63\xC4\x83\x20\x61\x69\x20\x61\x6C\x65\x73\x20\x72\x61\x79\x6C\x69\x62\x2E\x0A\xC8\x98" + "\x69\x20\x73\x70\x65\x72\x20\x73\xC4\x83\x20\x61\x69\x20\x6F\x20\x7A\x69\x20\x62\x75\x6E\xC4\x83\x21", "Romanian"}, + {"\xD0\xAD\xD1\x85\x2C\x20\xD1\x87\xD1\x83\xD0\xB6\xD0\xB0\xD0\xBA\x2C\x20\xD0\xBE\xD0\xB1\xD1\x89\xD0\xB8\xD0\xB9\x20\xD1\x81\xD1\x8A\xD1\x91\xD0\xBC\x20" + "\xD1\x86\xD0\xB5\xD0\xBD\x20\xD1\x88\xD0\xBB\xD1\x8F\xD0\xBF\x20\x28\xD1\x8E\xD1\x84\xD1\x82\xD1\x8C\x29\x20\xD0\xB2\xD0\xB4\xD1\x80\xD1\x8B\xD0\xB7\xD0\xB3\x21", "Russian"}, + {"\xD0\xAF\x20\xD0\xBB\xD1\x8E\xD0\xB1\xD0\xBB\xD1\x8E\x20\x72\x61\x79\x6C\x69\x62\x21", "Russian"}, + {"\xD0\x9C\xD0\xBE\xD0\xBB\xD1\x87\xD0\xB8\x2C\x20\xD1\x81\xD0\xBA\xD1\x80\xD1\x8B\xD0\xB2\xD0\xB0\xD0\xB9\xD1\x81\xD1\x8F\x20\xD0\xB8\x20\xD1\x82\xD0\xB0\xD0\xB8" + "\x0A\xD0\x98\x20\xD1\x87\xD1\x83\xD0\xB2\xD1\x81\xD1\x82\xD0\xB2\xD0\xB0\x20\xD0\xB8\x20\xD0\xBC\xD0\xB5\xD1\x87\xD1\x82\xD1\x8B\x20\xD1\x81\xD0\xB2\xD0\xBE\xD0\xB8\x20" + "\xE2\x80\x93\x0A\xD0\x9F\xD1\x83\xD1\x81\xD0\xBA\xD0\xB0\xD0\xB9\x20\xD0\xB2\x20\xD0\xB4\xD1\x83\xD1\x88\xD0\xB5\xD0\xB2\xD0\xBD\xD0\xBE\xD0\xB9\x20\xD0\xB3\xD0\xBB\xD1" + "\x83\xD0\xB1\xD0\xB8\xD0\xBD\xD0\xB5\x0A\xD0\x98\x20\xD0\xB2\xD1\x81\xD1\x85\xD0\xBE\xD0\xB4\xD1\x8F\xD1\x82\x20\xD0\xB8\x20\xD0\xB7\xD0\xB0\xD0\xB9\xD0\xB4\xD1\x83\xD1" + "\x82\x20\xD0\xBE\xD0\xBD\xD0\xB5\x0A\xD0\x9A\xD0\xB0\xD0\xBA\x20\xD0\xB7\xD0\xB2\xD0\xB5\xD0\xB7\xD0\xB4\xD1\x8B\x20\xD1\x8F\xD1\x81\xD0\xBD\xD1\x8B\xD0\xB5\x20\xD0\xB2" + "\x20\xD0\xBD\xD0\xBE\xD1\x87\xD0\xB8\x2D\x0A\xD0\x9B\xD1\x8E\xD0\xB1\xD1\x83\xD0\xB9\xD1\x81\xD1\x8F\x20\xD0\xB8\xD0\xBC\xD0\xB8\x20\xE2\x80\x93\x20\xD0\xB8\x20\xD0\xBC" + "\xD0\xBE\xD0\xBB\xD1\x87\xD0\xB8\x2E", "Russian"}, + {"\x56\x6F\x69\x78\x20\x61\x6D\x62\x69\x67\x75\xC3\xAB\x20\x64\xE2\x80\x99\x75\x6E\x20\x63\xC5\x93\x75\x72\x20\x71\x75\x69\x20\x61\x75\x20\x7A\xC3\xA9\x70" + "\x68\x79\x72\x20\x70\x72\xC3\xA9\x66\xC3\xA8\x72\x65\x20\x6C\x65\x73\x20\x6A\x61\x74\x74\x65\x73\x20\x64\x65\x20\x6B\x69\x77\x69", "French"}, + {"\x42\x65\x6E\x6A\x61\x6D\xC3\xAD\x6E\x20\x70\x69\x64\x69\xC3\xB3\x20\x75\x6E\x61\x20\x62\x65\x62\x69\x64\x61\x20\x64\x65\x20\x6B\x69\x77\x69\x20\x79\x20" + "\x66\x72\x65\x73\x61\x3B\x20\x4E\x6F\xC3\xA9\x2C\x20\x73\x69\x6E\x20\x76\x65\x72\x67\xC3\xBC\x65\x6E\x7A\x61\x2C\x20\x6C\x61\x20\x6D\xC3\xA1\x73\x20\x65\x78" + "\x71\x75\x69\x73\x69\x74\x61\x20\x63\x68\x61\x6D\x70\x61\xC3\xB1\x61\x20\x64\x65\x6C\x20\x6D\x65\x6E\xC3\xBA\x2E", "Spanish"}, + {"\xCE\xA4\xCE\xB1\xCF\x87\xCE\xAF\xCF\x83\xCF\x84\xCE\xB7\x20\xCE\xB1\xCE\xBB\xCF\x8E\xCF\x80\xCE\xB7\xCE\xBE\x20\xCE\xB2\xCE\xB1\xCF\x86\xCE\xAE\xCF\x82\x20" + "\xCF\x88\xCE\xB7\xCE\xBC\xCE\xAD\xCE\xBD\xCE\xB7\x20\xCE\xB3\xCE\xB7\x2C\x20\xCE\xB4\xCF\x81\xCE\xB1\xCF\x83\xCE\xBA\xCE\xB5\xCE\xBB\xCE\xAF\xCE\xB6\xCE\xB5\xCE" + "\xB9\x20\xCF\x85\xCF\x80\xCE\xAD\xCF\x81\x20\xCE\xBD\xCF\x89\xCE\xB8\xCF\x81\xCE\xBF\xCF\x8D\x20\xCE\xBA\xCF\x85\xCE\xBD\xCF\x8C\xCF\x82", "Greek"}, + {"\xCE\x97\x20\xCE\xBA\xCE\xB1\xCE\xBB\xCF\x8D\xCF\x84\xCE\xB5\xCF\x81\xCE\xB7\x20\xCE\xAC\xCE\xBC\xCF\x85\xCE\xBD\xCE\xB1\x20\xCE\xB5\xCE\xAF\xCE\xBD" + "\xCE\xB1\xCE\xB9\x20\xCE\xB7\x20\xCE\xB5\xCF\x80\xCE\xAF\xCE\xB8\xCE\xB5\xCF\x83\xCE\xB7\x2E", "Greek"}, + {"\xCE\xA7\xCF\x81\xCF\x8C\xCE\xBD\xCE\xB9\xCE\xB1\x20\xCE\xBA\xCE\xB1\xCE\xB9\x20\xCE\xB6\xCE\xB1\xCE\xBC\xCE\xAC\xCE\xBD\xCE\xB9\xCE\xB1\x21", "Greek"}, + {"\xCE\xA0\xCF\x8E\xCF\x82\x20\xCF\x84\xCE\xB1\x20\xCF\x80\xCE\xB1\xCF\x82\x20\xCF\x83\xCE\xAE\xCE\xBC\xCE\xB5\xCF\x81\xCE\xB1\x3B", "Greek"}, + + {"\xE6\x88\x91\xE8\x83\xBD\xE5\x90\x9E\xE4\xB8\x8B\xE7\x8E\xBB\xE7\x92\x83\xE8\x80\x8C\xE4\xB8\x8D\xE4\xBC\xA4\xE8\xBA\xAB\xE4\xBD\x93\xE3\x80\x82", "Chinese"}, + {"\xE4\xBD\xA0\xE5\x90\x83\xE4\xBA\x86\xE5\x90\x97\xEF\xBC\x9F", "Chinese"}, + {"\xE4\xB8\x8D\xE4\xBD\x9C\xE4\xB8\x8D\xE6\xAD\xBB\xE3\x80\x82", "Chinese"}, + {"\xE6\x9C\x80\xE8\xBF\x91\xE5\xA5\xBD\xE5\x90\x97\xEF\xBC\x9F", "Chinese"}, + {"\xE5\xA1\x9E\xE7\xBF\x81\xE5\xA4\xB1\xE9\xA9\xAC\xEF\xBC\x8C\xE7\x84\x89\xE7\x9F\xA5\xE9\x9D\x9E\xE7\xA6\x8F\xE3\x80\x82", "Chinese"}, + {"\xE5\x8D\x83\xE5\x86\x9B\xE6\x98\x93\xE5\xBE\x97\x2C\x20\xE4\xB8\x80\xE5\xB0\x86\xE9\x9A\xBE\xE6\xB1\x82", "Chinese"}, + {"\xE4\xB8\x87\xE4\xBA\x8B\xE5\xBC\x80\xE5\xA4\xB4\xE9\x9A\xBE\xE3\x80\x82", "Chinese"}, + {"\xE9\xA3\x8E\xE6\x97\xA0\xE5\xB8\xB8\xE9\xA1\xBA\xEF\xBC\x8C\xE5\x85\xB5\xE6\x97\xA0\xE5\xB8\xB8\xE8\x83\x9C\xE3\x80\x82", "Chinese"}, + {"\xE6\xB4\xBB\xE5\x88\xB0\xE8\x80\x81\xEF\xBC\x8C\xE5\xAD\xA6\xE5\x88\xB0\xE8\x80\x81\xE3\x80\x82", "Chinese"}, + {"\xE4\xB8\x80\xE8\xA8\x80\xE6\x97\xA2\xE5\x87\xBA\xEF\xBC\x8C\xE9\xA9\xB7\xE9\xA9\xAC\xE9\x9A\xBE\xE8\xBF\xBD\xE3\x80\x82", "Chinese"}, + {"\xE8\xB7\xAF\xE9\x81\xA5\xE7\x9F\xA5\xE9\xA9\xAC\xE5\x8A\x9B\xEF\xBC\x8C\xE6\x97\xA5\xE4\xB9\x85\xE8\xA7\x81\xE4\xBA\xBA\xE5\xBF\x83", "Chinese"}, + {"\xE6\x9C\x89\xE7\x90\x86\xE8\xB5\xB0\xE9\x81\x8D\xE5\xA4\xA9\xE4\xB8\x8B\xEF\xBC\x8C\xE6\x97\xA0\xE7\x90\x86\xE5\xAF\xB8\xE6\xAD\xA5\xE9\x9A\xBE\xE8\xA1\x8C\xE3\x80\x82", "Chinese"}, + + {"\xE7\x8C\xBF\xE3\x82\x82\xE6\x9C\xA8\xE3\x81\x8B\xE3\x82\x89\xE8\x90\xBD\xE3\x81\xA1\xE3\x82\x8B", "Japanese"}, + {"\xE4\xBA\x80\xE3\x81\xAE\xE7\x94\xB2\xE3\x82\x88\xE3\x82\x8A\xE5\xB9\xB4\xE3\x81\xAE\xE5\x8A\x9F", "Japanese"}, + {"\xE3\x81\x86\xE3\x82\x89\xE3\x82\x84\xE3\x81\xBE\xE3\x81\x97\x20\x20\xE6\x80\x9D\xE3\x81\xB2\xE5\x88\x87\xE3\x82\x8B\xE6\x99\x82\x20\x20\xE7\x8C\xAB\xE3\x81\xAE\xE6\x81\x8B", "Japanese"}, + {"\xE8\x99\x8E\xE7\xA9\xB4\xE3\x81\xAB\xE5\x85\xA5\xE3\x82\x89\xE3\x81\x9A\xE3\x82\x93\xE3\x81\xB0\xE8\x99\x8E\xE5\xAD\x90\xE3\x82\x92\xE5\xBE\x97\xE3\x81\x9A\xE3\x80\x82", "Japanese"}, + {"\xE4\xBA\x8C\xE5\x85\x8E\xE3\x82\x92\xE8\xBF\xBD\xE3\x81\x86\xE8\x80\x85\xE3\x81\xAF\xE4\xB8\x80\xE5\x85\x8E\xE3\x82\x92\xE3\x82\x82\xE5\xBE\x97\xE3\x81\x9A\xE3\x80\x82", "Japanese"}, + {"\xE9\xA6\xAC\xE9\xB9\xBF\xE3\x81\xAF\xE6\xAD\xBB\xE3\x81\xAA\xE3\x81\xAA\xE3\x81\x8D\xE3\x82\x83\xE6\xB2\xBB\xE3\x82\x89\xE3\x81\xAA\xE3\x81\x84\xE3\x80\x82", "Japanese"}, + {"\xE6\x9E\xAF\xE9\x87\x8E\xE8\xB7\xAF\xE3\x81\xAB\xE3\x80\x80\xE5\xBD\xB1\xE3\x81\x8B\xE3\x81\x95\xE3\x81\xAA\xE3\x82\x8A\xE3\x81\xA6\xE3\x80\x80\xE3\x82\x8F\xE3\x81\x8B\xE3\x82\x8C\xE3\x81\x91\xE3\x82\x8A", "Japanese"}, + {"\xE7\xB9\xB0\xE3\x82\x8A\xE8\xBF\x94\xE3\x81\x97\xE9\xBA\xA6\xE3\x81\xAE\xE7\x95\x9D\xE7\xB8\xAB\xE3\x81\xB5\xE8\x83\xA1\xE8\x9D\xB6\xE5\x93\x89", "Japanese"}, + + {"\xEC\x95\x84\xEB\x93\x9D\xED\x95\x9C\x20\xEB\xB0\x94\xEB\x8B\xA4\x20\xEC\x9C\x84\xEC\x97\x90\x20\xEA\xB0\x88\xEB\xA7\xA4\xEA\xB8\xB0\x20\xEB\x91\x90\xEC\x97\x87\x20" + "\xEB\x82\xA0\xEC\x95\x84\x20\xEB\x8F\x88\xEB\x8B\xA4\x2E\x0A\xEB\x84\x88\xED\x9B\x8C\xEB\x84\x88\xED\x9B\x8C\x20\xEC\x8B\x9C\xEB\xA5\xBC\x20\xEC\x93\xB4\xEB\x8B\xA4\x2E" + "\x20\xEB\xAA\xA8\xEB\xA5\xB4\xEB\x8A\x94\x20\xEB\x82\x98\xEB\x9D\xBC\x20\xEA\xB8\x80\xEC\x9E\x90\xEB\x8B\xA4\x2E\x0A\xEB\x84\x90\xEB\x94\xB0\xEB\x9E\x80\x20\xED\x95\x98" + "\xEB\x8A\x98\x20\xEB\xB3\xB5\xED\x8C\x90\xEC\x97\x90\x20\xEB\x82\x98\xEB\x8F\x84\x20\xEA\xB0\x99\xEC\x9D\xB4\x20\xEC\x8B\x9C\xEB\xA5\xBC\x20\xEC\x93\xB4\xEB\x8B\xA4\x2E", "Korean"}, + {"\xEC\xA0\x9C\x20\xEB\x88\x88\xEC\x97\x90\x20\xEC\x95\x88\xEA\xB2\xBD\xEC\x9D\xB4\xEB\x8B\xA4", "Korean"}, + {"\xEA\xBF\xA9\x20\xEB\xA8\xB9\xEA\xB3\xA0\x20\xEC\x95\x8C\x20\xEB\xA8\xB9\xEB\x8A\x94\xEB\x8B\xA4", "Korean"}, + {"\xEB\xA1\x9C\xEB\xA7\x88\xEB\x8A\x94\x20\xED\x95\x98\xEB\xA3\xA8\xEC\x95\x84\xEC\xB9\xA8\xEC\x97\x90\x20\xEC\x9D\xB4\xEB\xA3\xA8\xEC\x96\xB4\xEC\xA7\x84\x20\xEA\xB2\x83\xEC\x9D\xB4" + "\x20\xEC\x95\x84\xEB\x8B\x88\xEB\x8B\xA4", "Korean"}, + {"\xEA\xB3\xA0\xEC\x83\x9D\x20\xEB\x81\x9D\xEC\x97\x90\x20\xEB\x82\x99\xEC\x9D\xB4\x20\xEC\x98\xA8\xEB\x8B\xA4", "Korean"}, + {"\xEA\xB0\x9C\xEC\xB2\x9C\xEC\x97\x90\xEC\x84\x9C\x20\xEC\x9A\xA9\x20\xEB\x82\x9C\xEB\x8B\xA4", "Korean"}, + {"\xEC\x95\x88\xEB\x85\x95\xED\x95\x98\xEC\x84\xB8\xEC\x9A\x94\x3F", "Korean"}, + {"\xEB\xA7\x8C\xEB\x82\x98\xEC\x84\x9C\x20\xEB\xB0\x98\xEA\xB0\x91\xEC\x8A\xB5\xEB\x8B\x88\xEB\x8B\xA4", "Korean"}, + {"\xED\x95\x9C\xEA\xB5\xAD\xEB\xA7\x90\x20\xED\x95\x98\xEC\x8B\xA4\x20\xEC\xA4\x84\x20\xEC\x95\x84\xEC\x84\xB8\xEC\x9A\x94\x3F", "Korean"}, +}; + +//-------------------------------------------------------------------------------------- +// Module functions declaration +//-------------------------------------------------------------------------------------- +static void RandomizeEmoji(void); // Fills the emoji array with random emojis + +static void DrawTextBoxed(Font font, const char *text, Rectangle rec, float fontSize, float spacing, bool wordWrap, Color tint); // Draw text using font inside rectangle limits +static void DrawTextBoxedSelectable(Font font, const char *text, Rectangle rec, float fontSize, float spacing, bool wordWrap, Color tint, int selectStart, int selectLength, Color selectTint, Color selectBackTint); // Draw text using font inside rectangle limits with support for text selection + +//-------------------------------------------------------------------------------------- +// Global variables +//-------------------------------------------------------------------------------------- +// Arrays that holds the random emojis +struct { + int index; // Index inside `emojiCodepoints` + int message; // Message index + Color color; // Emoji color +} emoji[EMOJI_PER_WIDTH*EMOJI_PER_HEIGHT] = { 0 }; + +static int hovered = -1, selected = -1; + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + SetConfigFlags(FLAG_MSAA_4X_HINT | FLAG_VSYNC_HINT); + InitWindow(screenWidth, screenHeight, "raylib [text] example - unicode"); + + // Load the font resources + // NOTE: fontAsian is for asian languages, + // fontEmoji is the emojis and fontDefault is used for everything else + Font fontDefault = LoadFont("resources/dejavu.fnt"); + Font fontAsian = LoadFont("resources/noto_cjk.fnt"); + Font fontEmoji = LoadFont("resources/symbola.fnt"); + + Vector2 hoveredPos = { 0.0f, 0.0f }; + Vector2 selectedPos = { 0.0f, 0.0f }; + + // Set a random set of emojis when starting up + RandomizeEmoji(); + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // Add a new set of emojis when SPACE is pressed + if (IsKeyPressed(KEY_SPACE)) RandomizeEmoji(); + + // Set the selected emoji and copy its text to clipboard + if (IsMouseButtonPressed(MOUSE_BUTTON_LEFT) && (hovered != -1) && (hovered != selected)) + { + selected = hovered; + selectedPos = hoveredPos; + SetClipboardText(messages[emoji[selected].message].text); + } + + Vector2 mouse = GetMousePosition(); + Vector2 pos = { 28.8f, 10.0f }; + hovered = -1; + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + // Draw random emojis in the background + //------------------------------------------------------------------------------ + for (int i = 0; i < SIZEOF(emoji); ++i) + { + const char *txt = &emojiCodepoints[emoji[i].index]; + Rectangle emojiRect = { pos.x, pos.y, (float)fontEmoji.baseSize, (float)fontEmoji.baseSize }; + + if (!CheckCollisionPointRec(mouse, emojiRect)) + { + DrawTextEx(fontEmoji, txt, pos, (float)fontEmoji.baseSize, 1.0f, selected == i ? emoji[i].color : Fade(LIGHTGRAY, 0.4f)); + } + else + { + DrawTextEx(fontEmoji, txt, pos, (float)fontEmoji.baseSize, 1.0f, emoji[i].color ); + hovered = i; + hoveredPos = pos; + } + + if ((i != 0) && (i%EMOJI_PER_WIDTH == 0)) { pos.y += fontEmoji.baseSize + 24.25f; pos.x = 28.8f; } + else pos.x += fontEmoji.baseSize + 28.8f; + } + //------------------------------------------------------------------------------ + + // Draw the message when a emoji is selected + //------------------------------------------------------------------------------ + if (selected != -1) + { + const int message = emoji[selected].message; + const int horizontalPadding = 20, verticalPadding = 30; + Font *font = &fontDefault; + + // Set correct font for asian languages + if (TextIsEqual(messages[message].language, "Chinese") || + TextIsEqual(messages[message].language, "Korean") || + TextIsEqual(messages[message].language, "Japanese")) font = &fontAsian; + + // Calculate size for the message box (approximate the height and width) + Vector2 sz = MeasureTextEx(*font, messages[message].text, (float)font->baseSize, 1.0f); + if (sz.x > 300) { sz.y *= sz.x/300; sz.x = 300; } + else if (sz.x < 160) sz.x = 160; + + Rectangle msgRect = { selectedPos.x - 38.8f, selectedPos.y, 2 * horizontalPadding + sz.x, 2 * verticalPadding + sz.y }; + msgRect.y -= msgRect.height; + + // Coordinates for the chat bubble triangle + Vector2 a = { selectedPos.x, msgRect.y + msgRect.height }, b = {a.x + 8, a.y + 10}, c= { a.x + 10, a.y }; + + // Don't go outside the screen + if (msgRect.x < 10) msgRect.x += 28; + if (msgRect.y < 10) + { + msgRect.y = selectedPos.y + 84; + a.y = msgRect.y; + c.y = a.y; + b.y = a.y - 10; + + // Swap values so we can actually render the triangle :( + Vector2 tmp = a; + a = b; + b = tmp; + } + + if (msgRect.x + msgRect.width > screenWidth) msgRect.x -= (msgRect.x + msgRect.width) - screenWidth + 10; + + // Draw chat bubble + DrawRectangleRec(msgRect, emoji[selected].color); + DrawTriangle(a, b, c, emoji[selected].color); + + // Draw the main text message + Rectangle textRect = { msgRect.x + horizontalPadding/2, msgRect.y + verticalPadding/2, msgRect.width - horizontalPadding, msgRect.height }; + DrawTextBoxed(*font, messages[message].text, textRect, (float)font->baseSize, 1.0f, true, WHITE); + + // Draw the info text below the main message + int size = (int)strlen(messages[message].text); + int length = GetCodepointCount(messages[message].text); + const char *info = TextFormat("%s %u characters %i bytes", messages[message].language, length, size); + sz = MeasureTextEx(GetFontDefault(), info, 10, 1.0f); + Vector2 pos = { textRect.x + textRect.width - sz.x, msgRect.y + msgRect.height - sz.y - 2 }; + DrawText(info, (int)pos.x, (int)pos.y, 10, RAYWHITE); + } + //------------------------------------------------------------------------------ + + // Draw the info text + DrawText("These emojis have something to tell you, click each to find out!", (screenWidth - 650)/2, screenHeight - 40, 20, GRAY); + DrawText("Each emoji is a unicode character from a font, not a texture... Press [SPACEBAR] to refresh", (screenWidth - 484)/2, screenHeight - 16, 10, GRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadFont(fontDefault); // Unload font resource + UnloadFont(fontAsian); // Unload font resource + UnloadFont(fontEmoji); // Unload font resource + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} + +// Fills the emoji array with random emoji (only those emojis present in fontEmoji) +static void RandomizeEmoji(void) +{ + hovered = selected = -1; + int start = GetRandomValue(45, 360); + + for (int i = 0; i < SIZEOF(emoji); ++i) + { + // 0-179 emoji codepoints (from emoji char array) each 4bytes + null char + emoji[i].index = GetRandomValue(0, 179)*5; + + // Generate a random color for this emoji + emoji[i].color = Fade(ColorFromHSV((float)((start*(i + 1))%360), 0.6f, 0.85f), 0.8f); + + // Set a random message for this emoji + emoji[i].message = GetRandomValue(0, SIZEOF(messages) - 1); + } +} + +//-------------------------------------------------------------------------------------- +// Module functions definition +//-------------------------------------------------------------------------------------- + +// Draw text using font inside rectangle limits +static void DrawTextBoxed(Font font, const char *text, Rectangle rec, float fontSize, float spacing, bool wordWrap, Color tint) +{ + DrawTextBoxedSelectable(font, text, rec, fontSize, spacing, wordWrap, tint, 0, 0, WHITE, WHITE); +} + +// Draw text using font inside rectangle limits with support for text selection +static void DrawTextBoxedSelectable(Font font, const char *text, Rectangle rec, float fontSize, float spacing, bool wordWrap, Color tint, int selectStart, int selectLength, Color selectTint, Color selectBackTint) +{ + int length = TextLength(text); // Total length in bytes of the text, scanned by codepoints in loop + + float textOffsetY = 0; // Offset between lines (on line break '\n') + float textOffsetX = 0.0f; // Offset X to next character to draw + + float scaleFactor = fontSize/(float)font.baseSize; // Character rectangle scaling factor + + // Word/character wrapping mechanism variables + enum { MEASURE_STATE = 0, DRAW_STATE = 1 }; + int state = wordWrap? MEASURE_STATE : DRAW_STATE; + + int startLine = -1; // Index where to begin drawing (where a line begins) + int endLine = -1; // Index where to stop drawing (where a line ends) + int lastk = -1; // Holds last value of the character position + + for (int i = 0, k = 0; i < length; i++, k++) + { + // Get next codepoint from byte string and glyph index in font + int codepointByteCount = 0; + int codepoint = GetCodepoint(&text[i], &codepointByteCount); + int index = GetGlyphIndex(font, codepoint); + + // NOTE: Normally we exit the decoding sequence as soon as a bad byte is found (and return 0x3f) + // but we need to draw all of the bad bytes using the '?' symbol moving one byte + if (codepoint == 0x3f) codepointByteCount = 1; + i += (codepointByteCount - 1); + + float glyphWidth = 0; + if (codepoint != '\n') + { + glyphWidth = (font.glyphs[index].advanceX == 0) ? font.recs[index].width*scaleFactor : font.glyphs[index].advanceX*scaleFactor; + + if (i + 1 < length) glyphWidth = glyphWidth + spacing; + } + + // NOTE: When wordWrap is ON we first measure how much of the text we can draw before going outside of the rec container + // We store this info in startLine and endLine, then we change states, draw the text between those two variables + // and change states again and again recursively until the end of the text (or until we get outside of the container). + // When wordWrap is OFF we don't need the measure state so we go to the drawing state immediately + // and begin drawing on the next line before we can get outside the container. + if (state == MEASURE_STATE) + { + // TODO: There are multiple types of spaces in UNICODE, maybe it's a good idea to add support for more + // Ref: http://jkorpela.fi/chars/spaces.html + if ((codepoint == ' ') || (codepoint == '\t') || (codepoint == '\n')) endLine = i; + + if ((textOffsetX + glyphWidth) > rec.width) + { + endLine = (endLine < 1)? i : endLine; + if (i == endLine) endLine -= codepointByteCount; + if ((startLine + codepointByteCount) == endLine) endLine = (i - codepointByteCount); + + state = !state; + } + else if ((i + 1) == length) + { + endLine = i; + state = !state; + } + else if (codepoint == '\n') state = !state; + + if (state == DRAW_STATE) + { + textOffsetX = 0; + i = startLine; + glyphWidth = 0; + + // Save character position when we switch states + int tmp = lastk; + lastk = k - 1; + k = tmp; + } + } + else + { + if (codepoint == '\n') + { + if (!wordWrap) + { + textOffsetY += (font.baseSize + font.baseSize/2)*scaleFactor; + textOffsetX = 0; + } + } + else + { + if (!wordWrap && ((textOffsetX + glyphWidth) > rec.width)) + { + textOffsetY += (font.baseSize + font.baseSize/2)*scaleFactor; + textOffsetX = 0; + } + + // When text overflows rectangle height limit, just stop drawing + if ((textOffsetY + font.baseSize*scaleFactor) > rec.height) break; + + // Draw selection background + bool isGlyphSelected = false; + if ((selectStart >= 0) && (k >= selectStart) && (k < (selectStart + selectLength))) + { + DrawRectangleRec((Rectangle){ rec.x + textOffsetX - 1, rec.y + textOffsetY, glyphWidth, (float)font.baseSize*scaleFactor }, selectBackTint); + isGlyphSelected = true; + } + + // Draw current character glyph + if ((codepoint != ' ') && (codepoint != '\t')) + { + DrawTextCodepoint(font, codepoint, (Vector2){ rec.x + textOffsetX, rec.y + textOffsetY }, fontSize, isGlyphSelected? selectTint : tint); + } + } + + if (wordWrap && (i == endLine)) + { + textOffsetY += (font.baseSize + font.baseSize/2)*scaleFactor; + textOffsetX = 0; + startLine = endLine; + endLine = -1; + glyphWidth = 0; + selectStart += lastk - k; + k = lastk; + + state = !state; + } + } + + textOffsetX += glyphWidth; + } +} \ No newline at end of file diff --git a/examples/text/text_writing_anim.c b/examples/text/text_writing_anim.c new file mode 100644 index 0000000..4ee6770 --- /dev/null +++ b/examples/text/text_writing_anim.c @@ -0,0 +1,67 @@ +/******************************************************************************************* +* +* raylib [text] example - Text Writing Animation +* +* Example originally created with raylib 1.4, last time updated with raylib 1.4 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2016-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [text] example - text writing anim"); + + const char message[128] = "This sample illustrates a text writing\nanimation effect! Check it out! ;)"; + + int framesCounter = 0; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + if (IsKeyDown(KEY_SPACE)) framesCounter += 8; + else framesCounter++; + + if (IsKeyPressed(KEY_ENTER)) framesCounter = 0; + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawText(TextSubtext(message, 0, framesCounter/10), 210, 160, 20, MAROON); + + DrawText("PRESS [ENTER] to RESTART!", 240, 260, 20, LIGHTGRAY); + DrawText("PRESS [SPACE] to SPEED UP!", 239, 300, 20, LIGHTGRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/textures/resources/KAISG.ttf b/examples/textures/resources/KAISG.ttf new file mode 100644 index 0000000..04478b2 Binary files /dev/null and b/examples/textures/resources/KAISG.ttf differ diff --git a/examples/textures/resources/LICENSE.md b/examples/textures/resources/LICENSE.md new file mode 100644 index 0000000..e4ee453 --- /dev/null +++ b/examples/textures/resources/LICENSE.md @@ -0,0 +1,18 @@ +| resource | author | licence | notes | +| :------------------- | :---------: | :------ | :---- | +| boom.wav | [@raysan5](https://github.com/raysan5) | [CC0](https://creativecommons.org/publicdomain/zero/1.0/) | Made with [rFXGen](https://raylibtech.itch.io/rfxgen) | +| buttonfx.wav | [@raysan5](https://github.com/raysan5) | [CC0](https://creativecommons.org/publicdomain/zero/1.0/) | Made with [rFXGen](https://raylibtech.itch.io/rfxgen) | +| button.png | [@raysan5](https://github.com/raysan5) | [CC0](https://creativecommons.org/publicdomain/zero/1.0/) | Made with [rFXGen](https://raylibtech.itch.io/rfxgen) | +| spark_flame.png | [@raysan5](https://github.com/raysan5) | [CC0](https://creativecommons.org/publicdomain/zero/1.0/) | Made with [EffectTextureMaker](https://mebiusbox.github.io/contents/EffectTextureMaker/) | +| ninepatch_button.png | [@overdev](https://github.com/overdev) | ❔ | +| explosion.png | [Unity Labs Paris](https://blogs.unity3d.com/2016/11/28/free-vfx-image-sequences-flipbooks/) | [CC0](https://creativecommons.org/publicdomain/zero/1.0/) | +| parrots.png | [Kodak set](http://r0k.us/graphics/kodak/) | ❔ | Original name: `kodim23.png` +| cat.png | ❔ | ❔ | - | +| wabbit_alpha.png | ❔ | ❔ | - | +| custom_jupiter_crash.png | [Brian Kent (AEnigma)](https://www.dafont.com/es/aenigma.d188) | [Freeware](https://www.dafont.com/es/jupiter-crash.font) | Atlas created by [@raysan5](https://github.com/raysan5) | +| KAISG.ttf | [Dieter Steffmann](http://www.steffmann.de/wordpress/) | [Freeware](https://www.1001fonts.com/users/steffmann/) | [Kaiserzeit Gotisch](https://www.dafont.com/es/kaiserzeit-gotisch.font) font | +| fudesumi.png | [Eiden Marsal](https://www.artstation.com/marshall_z) | [CC-BY-NC](https://creativecommons.org/licenses/by-nc/4.0/) | - | +| scarfy.png | [Eiden Marsal](https://www.artstation.com/marshall_z) | [CC-BY-NC](https://creativecommons.org/licenses/by-nc/4.0/legalcode) | - | +| cyberpunk_street_background.png | [Luis Zuno](http://ansimuz.com/site/) | [CC-BY-3.0](http://creativecommons.org/licenses/by/3.0/) | [Cyberpunk Street Environment](https://ansimuz.itch.io/cyberpunk-street-environment) | +| cyberpunk_street_foreground.png | [Luis Zuno](http://ansimuz.com/site/) | [CC-BY-3.0](http://creativecommons.org/licenses/by/3.0/) | [Cyberpunk Street Environment](https://ansimuz.itch.io/cyberpunk-street-environment) | +| cyberpunk_street_midground.png | [Luis Zuno](http://ansimuz.com/site/) | [CC-BY-3.0](http://creativecommons.org/licenses/by/3.0/) | [Cyberpunk Street Environment](https://ansimuz.itch.io/cyberpunk-street-environment) | diff --git a/examples/textures/resources/boom.wav b/examples/textures/resources/boom.wav new file mode 100644 index 0000000..fd18137 Binary files /dev/null and b/examples/textures/resources/boom.wav differ diff --git a/examples/textures/resources/button.png b/examples/textures/resources/button.png new file mode 100644 index 0000000..99a383b Binary files /dev/null and b/examples/textures/resources/button.png differ diff --git a/examples/textures/resources/buttonfx.wav b/examples/textures/resources/buttonfx.wav new file mode 100644 index 0000000..b93b0ca Binary files /dev/null and b/examples/textures/resources/buttonfx.wav differ diff --git a/examples/textures/resources/cat.png b/examples/textures/resources/cat.png new file mode 100644 index 0000000..db56b9e Binary files /dev/null and b/examples/textures/resources/cat.png differ diff --git a/examples/textures/resources/custom_jupiter_crash.png b/examples/textures/resources/custom_jupiter_crash.png new file mode 100644 index 0000000..c89572e Binary files /dev/null and b/examples/textures/resources/custom_jupiter_crash.png differ diff --git a/examples/textures/resources/cyberpunk_street_background.png b/examples/textures/resources/cyberpunk_street_background.png new file mode 100644 index 0000000..838d08a Binary files /dev/null and b/examples/textures/resources/cyberpunk_street_background.png differ diff --git a/examples/textures/resources/cyberpunk_street_foreground.png b/examples/textures/resources/cyberpunk_street_foreground.png new file mode 100644 index 0000000..528b4ae Binary files /dev/null and b/examples/textures/resources/cyberpunk_street_foreground.png differ diff --git a/examples/textures/resources/cyberpunk_street_midground.png b/examples/textures/resources/cyberpunk_street_midground.png new file mode 100644 index 0000000..73f24fe Binary files /dev/null and b/examples/textures/resources/cyberpunk_street_midground.png differ diff --git a/examples/textures/resources/explosion.png b/examples/textures/resources/explosion.png new file mode 100644 index 0000000..6df1cf3 Binary files /dev/null and b/examples/textures/resources/explosion.png differ diff --git a/examples/textures/resources/fudesumi.png b/examples/textures/resources/fudesumi.png new file mode 100644 index 0000000..c77c287 Binary files /dev/null and b/examples/textures/resources/fudesumi.png differ diff --git a/examples/textures/resources/fudesumi.raw b/examples/textures/resources/fudesumi.raw new file mode 100644 index 0000000..dad6ff0 Binary files /dev/null and b/examples/textures/resources/fudesumi.raw differ diff --git a/examples/textures/resources/ninepatch_button.png b/examples/textures/resources/ninepatch_button.png new file mode 100644 index 0000000..f10037a Binary files /dev/null and b/examples/textures/resources/ninepatch_button.png differ diff --git a/examples/textures/resources/parrots.png b/examples/textures/resources/parrots.png new file mode 100644 index 0000000..9a0e7f8 Binary files /dev/null and b/examples/textures/resources/parrots.png differ diff --git a/examples/textures/resources/patterns.png b/examples/textures/resources/patterns.png new file mode 100644 index 0000000..58b3c37 Binary files /dev/null and b/examples/textures/resources/patterns.png differ diff --git a/examples/textures/resources/raylib_logo.png b/examples/textures/resources/raylib_logo.png new file mode 100644 index 0000000..15bbaa2 Binary files /dev/null and b/examples/textures/resources/raylib_logo.png differ diff --git a/examples/textures/resources/road.png b/examples/textures/resources/road.png new file mode 100644 index 0000000..082f4cd Binary files /dev/null and b/examples/textures/resources/road.png differ diff --git a/examples/textures/resources/scarfy.png b/examples/textures/resources/scarfy.png new file mode 100644 index 0000000..be3b83d Binary files /dev/null and b/examples/textures/resources/scarfy.png differ diff --git a/examples/textures/resources/scarfy_run.gif b/examples/textures/resources/scarfy_run.gif new file mode 100644 index 0000000..f0f712c Binary files /dev/null and b/examples/textures/resources/scarfy_run.gif differ diff --git a/examples/textures/resources/spark_flame.png b/examples/textures/resources/spark_flame.png new file mode 100644 index 0000000..72cea2e Binary files /dev/null and b/examples/textures/resources/spark_flame.png differ diff --git a/examples/textures/resources/wabbit_alpha.png b/examples/textures/resources/wabbit_alpha.png new file mode 100644 index 0000000..db4081f Binary files /dev/null and b/examples/textures/resources/wabbit_alpha.png differ diff --git a/examples/textures/textures_background_scrolling.c b/examples/textures/textures_background_scrolling.c new file mode 100644 index 0000000..55fa211 --- /dev/null +++ b/examples/textures/textures_background_scrolling.c @@ -0,0 +1,92 @@ +/******************************************************************************************* +* +* raylib [textures] example - Background scrolling +* +* Example originally created with raylib 2.0, last time updated with raylib 2.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2019-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [textures] example - background scrolling"); + + // NOTE: Be careful, background width must be equal or bigger than screen width + // if not, texture should be draw more than two times for scrolling effect + Texture2D background = LoadTexture("resources/cyberpunk_street_background.png"); + Texture2D midground = LoadTexture("resources/cyberpunk_street_midground.png"); + Texture2D foreground = LoadTexture("resources/cyberpunk_street_foreground.png"); + + float scrollingBack = 0.0f; + float scrollingMid = 0.0f; + float scrollingFore = 0.0f; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + scrollingBack -= 0.1f; + scrollingMid -= 0.5f; + scrollingFore -= 1.0f; + + // NOTE: Texture is scaled twice its size, so it sould be considered on scrolling + if (scrollingBack <= -background.width*2) scrollingBack = 0; + if (scrollingMid <= -midground.width*2) scrollingMid = 0; + if (scrollingFore <= -foreground.width*2) scrollingFore = 0; + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(GetColor(0x052c46ff)); + + // Draw background image twice + // NOTE: Texture is scaled twice its size + DrawTextureEx(background, (Vector2){ scrollingBack, 20 }, 0.0f, 2.0f, WHITE); + DrawTextureEx(background, (Vector2){ background.width*2 + scrollingBack, 20 }, 0.0f, 2.0f, WHITE); + + // Draw midground image twice + DrawTextureEx(midground, (Vector2){ scrollingMid, 20 }, 0.0f, 2.0f, WHITE); + DrawTextureEx(midground, (Vector2){ midground.width*2 + scrollingMid, 20 }, 0.0f, 2.0f, WHITE); + + // Draw foreground image twice + DrawTextureEx(foreground, (Vector2){ scrollingFore, 70 }, 0.0f, 2.0f, WHITE); + DrawTextureEx(foreground, (Vector2){ foreground.width*2 + scrollingFore, 70 }, 0.0f, 2.0f, WHITE); + + DrawText("BACKGROUND SCROLLING & PARALLAX", 10, 10, 20, RED); + DrawText("(c) Cyberpunk Street Environment by Luis Zuno (@ansimuz)", screenWidth - 330, screenHeight - 20, 10, RAYWHITE); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(background); // Unload background texture + UnloadTexture(midground); // Unload midground texture + UnloadTexture(foreground); // Unload foreground texture + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/textures/textures_blend_modes.c b/examples/textures/textures_blend_modes.c new file mode 100644 index 0000000..246a98e --- /dev/null +++ b/examples/textures/textures_blend_modes.c @@ -0,0 +1,98 @@ +/******************************************************************************************* +* +* raylib [textures] example - blend modes +* +* NOTE: Images are loaded in CPU memory (RAM); textures are loaded in GPU memory (VRAM) +* +* Example originally created with raylib 3.5, last time updated with raylib 3.5 +* +* Example contributed by Karlo Licudine (@accidentalrebel) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2020-2023 Karlo Licudine (@accidentalrebel) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [textures] example - blend modes"); + + // NOTE: Textures MUST be loaded after Window initialization (OpenGL context is required) + Image bgImage = LoadImage("resources/cyberpunk_street_background.png"); // Loaded in CPU memory (RAM) + Texture2D bgTexture = LoadTextureFromImage(bgImage); // Image converted to texture, GPU memory (VRAM) + + Image fgImage = LoadImage("resources/cyberpunk_street_foreground.png"); // Loaded in CPU memory (RAM) + Texture2D fgTexture = LoadTextureFromImage(fgImage); // Image converted to texture, GPU memory (VRAM) + + // Once image has been converted to texture and uploaded to VRAM, it can be unloaded from RAM + UnloadImage(bgImage); + UnloadImage(fgImage); + + const int blendCountMax = 4; + BlendMode blendMode = 0; + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + if (IsKeyPressed(KEY_SPACE)) + { + if (blendMode >= (blendCountMax - 1)) blendMode = 0; + else blendMode++; + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawTexture(bgTexture, screenWidth/2 - bgTexture.width/2, screenHeight/2 - bgTexture.height/2, WHITE); + + // Apply the blend mode and then draw the foreground texture + BeginBlendMode(blendMode); + DrawTexture(fgTexture, screenWidth/2 - fgTexture.width/2, screenHeight/2 - fgTexture.height/2, WHITE); + EndBlendMode(); + + // Draw the texts + DrawText("Press SPACE to change blend modes.", 310, 350, 10, GRAY); + + switch (blendMode) + { + case BLEND_ALPHA: DrawText("Current: BLEND_ALPHA", (screenWidth / 2) - 60, 370, 10, GRAY); break; + case BLEND_ADDITIVE: DrawText("Current: BLEND_ADDITIVE", (screenWidth / 2) - 60, 370, 10, GRAY); break; + case BLEND_MULTIPLIED: DrawText("Current: BLEND_MULTIPLIED", (screenWidth / 2) - 60, 370, 10, GRAY); break; + case BLEND_ADD_COLORS: DrawText("Current: BLEND_ADD_COLORS", (screenWidth / 2) - 60, 370, 10, GRAY); break; + default: break; + } + + DrawText("(c) Cyberpunk Street Environment by Luis Zuno (@ansimuz)", screenWidth - 330, screenHeight - 20, 10, GRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(fgTexture); // Unload foreground texture + UnloadTexture(bgTexture); // Unload background texture + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/textures/textures_bunnymark.c b/examples/textures/textures_bunnymark.c new file mode 100644 index 0000000..ede3036 --- /dev/null +++ b/examples/textures/textures_bunnymark.c @@ -0,0 +1,125 @@ +/******************************************************************************************* +* +* raylib [textures] example - Bunnymark +* +* Example originally created with raylib 1.6, last time updated with raylib 2.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2014-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#include // Required for: malloc(), free() + +#define MAX_BUNNIES 50000 // 50K bunnies limit + +// This is the maximum amount of elements (quads) per batch +// NOTE: This value is defined in [rlgl] module and can be changed there +#define MAX_BATCH_ELEMENTS 8192 + +typedef struct Bunny { + Vector2 position; + Vector2 speed; + Color color; +} Bunny; + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [textures] example - bunnymark"); + + // Load bunny texture + Texture2D texBunny = LoadTexture("resources/wabbit_alpha.png"); + + Bunny *bunnies = (Bunny *)malloc(MAX_BUNNIES*sizeof(Bunny)); // Bunnies array + + int bunniesCount = 0; // Bunnies counter + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + if (IsMouseButtonDown(MOUSE_BUTTON_LEFT)) + { + // Create more bunnies + for (int i = 0; i < 100; i++) + { + if (bunniesCount < MAX_BUNNIES) + { + bunnies[bunniesCount].position = GetMousePosition(); + bunnies[bunniesCount].speed.x = (float)GetRandomValue(-250, 250)/60.0f; + bunnies[bunniesCount].speed.y = (float)GetRandomValue(-250, 250)/60.0f; + bunnies[bunniesCount].color = (Color){ GetRandomValue(50, 240), + GetRandomValue(80, 240), + GetRandomValue(100, 240), 255 }; + bunniesCount++; + } + } + } + + // Update bunnies + for (int i = 0; i < bunniesCount; i++) + { + bunnies[i].position.x += bunnies[i].speed.x; + bunnies[i].position.y += bunnies[i].speed.y; + + if (((bunnies[i].position.x + texBunny.width/2) > GetScreenWidth()) || + ((bunnies[i].position.x + texBunny.width/2) < 0)) bunnies[i].speed.x *= -1; + if (((bunnies[i].position.y + texBunny.height/2) > GetScreenHeight()) || + ((bunnies[i].position.y + texBunny.height/2 - 40) < 0)) bunnies[i].speed.y *= -1; + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + for (int i = 0; i < bunniesCount; i++) + { + // NOTE: When internal batch buffer limit is reached (MAX_BATCH_ELEMENTS), + // a draw call is launched and buffer starts being filled again; + // before issuing a draw call, updated vertex data from internal CPU buffer is send to GPU... + // Process of sending data is costly and it could happen that GPU data has not been completely + // processed for drawing while new data is tried to be sent (updating current in-use buffers) + // it could generates a stall and consequently a frame drop, limiting the number of drawn bunnies + DrawTexture(texBunny, (int)bunnies[i].position.x, (int)bunnies[i].position.y, bunnies[i].color); + } + + DrawRectangle(0, 0, screenWidth, 40, BLACK); + DrawText(TextFormat("bunnies: %i", bunniesCount), 120, 10, 20, GREEN); + DrawText(TextFormat("batched draw calls: %i", 1 + bunniesCount/MAX_BATCH_ELEMENTS), 320, 10, 20, MAROON); + + DrawFPS(10, 10); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + free(bunnies); // Unload bunnies data array + + UnloadTexture(texBunny); // Unload bunny texture + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/textures/textures_draw_tiled.c b/examples/textures/textures_draw_tiled.c new file mode 100644 index 0000000..34fe82c --- /dev/null +++ b/examples/textures/textures_draw_tiled.c @@ -0,0 +1,256 @@ +/******************************************************************************************* +* +* raylib [textures] example - Draw part of the texture tiled +* +* Example originally created with raylib 3.0, last time updated with raylib 4.2 +* +* Example contributed by Vlad Adrian (@demizdor) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2020-2023 Vlad Adrian (@demizdor) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#define SIZEOF(A) (sizeof(A)/sizeof(A[0])) +#define OPT_WIDTH 220 // Max width for the options container +#define MARGIN_SIZE 8 // Size for the margins +#define COLOR_SIZE 16 // Size of the color select buttons + +// Draw part of a texture (defined by a rectangle) with rotation and scale tiled into dest. +void DrawTextureTiled(Texture2D texture, Rectangle source, Rectangle dest, Vector2 origin, float rotation, float scale, Color tint); + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + SetConfigFlags(FLAG_WINDOW_RESIZABLE); // Make the window resizable + InitWindow(screenWidth, screenHeight, "raylib [textures] example - Draw part of a texture tiled"); + + // NOTE: Textures MUST be loaded after Window initialization (OpenGL context is required) + Texture texPattern = LoadTexture("resources/patterns.png"); + SetTextureFilter(texPattern, TEXTURE_FILTER_TRILINEAR); // Makes the texture smoother when upscaled + + // Coordinates for all patterns inside the texture + const Rectangle recPattern[] = { + (Rectangle){ 3, 3, 66, 66 }, + (Rectangle){ 75, 3, 100, 100 }, + (Rectangle){ 3, 75, 66, 66 }, + (Rectangle){ 7, 156, 50, 50 }, + (Rectangle){ 85, 106, 90, 45 }, + (Rectangle){ 75, 154, 100, 60} + }; + + // Setup colors + const Color colors[] = { BLACK, MAROON, ORANGE, BLUE, PURPLE, BEIGE, LIME, RED, DARKGRAY, SKYBLUE }; + enum { MAX_COLORS = SIZEOF(colors) }; + Rectangle colorRec[MAX_COLORS] = { 0 }; + + // Calculate rectangle for each color + for (int i = 0, x = 0, y = 0; i < MAX_COLORS; i++) + { + colorRec[i].x = 2.0f + MARGIN_SIZE + x; + colorRec[i].y = 22.0f + 256.0f + MARGIN_SIZE + y; + colorRec[i].width = COLOR_SIZE*2.0f; + colorRec[i].height = (float)COLOR_SIZE; + + if (i == (MAX_COLORS/2 - 1)) + { + x = 0; + y += COLOR_SIZE + MARGIN_SIZE; + } + else x += (COLOR_SIZE*2 + MARGIN_SIZE); + } + + int activePattern = 0, activeCol = 0; + float scale = 1.0f, rotation = 0.0f; + + SetTargetFPS(60); + //--------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // Handle mouse + if (IsMouseButtonPressed(MOUSE_BUTTON_LEFT)) + { + const Vector2 mouse = GetMousePosition(); + + // Check which pattern was clicked and set it as the active pattern + for (int i = 0; i < SIZEOF(recPattern); i++) + { + if (CheckCollisionPointRec(mouse, (Rectangle){ 2 + MARGIN_SIZE + recPattern[i].x, 40 + MARGIN_SIZE + recPattern[i].y, recPattern[i].width, recPattern[i].height })) + { + activePattern = i; + break; + } + } + + // Check to see which color was clicked and set it as the active color + for (int i = 0; i < MAX_COLORS; ++i) + { + if (CheckCollisionPointRec(mouse, colorRec[i])) + { + activeCol = i; + break; + } + } + } + + // Handle keys + + // Change scale + if (IsKeyPressed(KEY_UP)) scale += 0.25f; + if (IsKeyPressed(KEY_DOWN)) scale -= 0.25f; + if (scale > 10.0f) scale = 10.0f; + else if ( scale <= 0.0f) scale = 0.25f; + + // Change rotation + if (IsKeyPressed(KEY_LEFT)) rotation -= 25.0f; + if (IsKeyPressed(KEY_RIGHT)) rotation += 25.0f; + + // Reset + if (IsKeyPressed(KEY_SPACE)) { rotation = 0.0f; scale = 1.0f; } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + ClearBackground(RAYWHITE); + + // Draw the tiled area + DrawTextureTiled(texPattern, recPattern[activePattern], (Rectangle){(float)OPT_WIDTH+MARGIN_SIZE, (float)MARGIN_SIZE, GetScreenWidth() - OPT_WIDTH - 2.0f*MARGIN_SIZE, GetScreenHeight() - 2.0f*MARGIN_SIZE}, + (Vector2){0.0f, 0.0f}, rotation, scale, colors[activeCol]); + + // Draw options + DrawRectangle(MARGIN_SIZE, MARGIN_SIZE, OPT_WIDTH - MARGIN_SIZE, GetScreenHeight() - 2*MARGIN_SIZE, ColorAlpha(LIGHTGRAY, 0.5f)); + + DrawText("Select Pattern", 2 + MARGIN_SIZE, 30 + MARGIN_SIZE, 10, BLACK); + DrawTexture(texPattern, 2 + MARGIN_SIZE, 40 + MARGIN_SIZE, BLACK); + DrawRectangle(2 + MARGIN_SIZE + (int)recPattern[activePattern].x, 40 + MARGIN_SIZE + (int)recPattern[activePattern].y, (int)recPattern[activePattern].width, (int)recPattern[activePattern].height, ColorAlpha(DARKBLUE, 0.3f)); + + DrawText("Select Color", 2+MARGIN_SIZE, 10+256+MARGIN_SIZE, 10, BLACK); + for (int i = 0; i < MAX_COLORS; i++) + { + DrawRectangleRec(colorRec[i], colors[i]); + if (activeCol == i) DrawRectangleLinesEx(colorRec[i], 3, ColorAlpha(WHITE, 0.5f)); + } + + DrawText("Scale (UP/DOWN to change)", 2 + MARGIN_SIZE, 80 + 256 + MARGIN_SIZE, 10, BLACK); + DrawText(TextFormat("%.2fx", scale), 2 + MARGIN_SIZE, 92 + 256 + MARGIN_SIZE, 20, BLACK); + + DrawText("Rotation (LEFT/RIGHT to change)", 2 + MARGIN_SIZE, 122 + 256 + MARGIN_SIZE, 10, BLACK); + DrawText(TextFormat("%.0f degrees", rotation), 2 + MARGIN_SIZE, 134 + 256 + MARGIN_SIZE, 20, BLACK); + + DrawText("Press [SPACE] to reset", 2 + MARGIN_SIZE, 164 + 256 + MARGIN_SIZE, 10, DARKBLUE); + + // Draw FPS + DrawText(TextFormat("%i FPS", GetFPS()), 2 + MARGIN_SIZE, 2 + MARGIN_SIZE, 20, BLACK); + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(texPattern); // Unload texture + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} + +// Draw part of a texture (defined by a rectangle) with rotation and scale tiled into dest. +void DrawTextureTiled(Texture2D texture, Rectangle source, Rectangle dest, Vector2 origin, float rotation, float scale, Color tint) +{ + if ((texture.id <= 0) || (scale <= 0.0f)) return; // Wanna see a infinite loop?!...just delete this line! + if ((source.width == 0) || (source.height == 0)) return; + + int tileWidth = (int)(source.width*scale), tileHeight = (int)(source.height*scale); + if ((dest.width < tileWidth) && (dest.height < tileHeight)) + { + // Can fit only one tile + DrawTexturePro(texture, (Rectangle){source.x, source.y, ((float)dest.width/tileWidth)*source.width, ((float)dest.height/tileHeight)*source.height}, + (Rectangle){dest.x, dest.y, dest.width, dest.height}, origin, rotation, tint); + } + else if (dest.width <= tileWidth) + { + // Tiled vertically (one column) + int dy = 0; + for (;dy+tileHeight < dest.height; dy += tileHeight) + { + DrawTexturePro(texture, (Rectangle){source.x, source.y, ((float)dest.width/tileWidth)*source.width, source.height}, (Rectangle){dest.x, dest.y + dy, dest.width, (float)tileHeight}, origin, rotation, tint); + } + + // Fit last tile + if (dy < dest.height) + { + DrawTexturePro(texture, (Rectangle){source.x, source.y, ((float)dest.width/tileWidth)*source.width, ((float)(dest.height - dy)/tileHeight)*source.height}, + (Rectangle){dest.x, dest.y + dy, dest.width, dest.height - dy}, origin, rotation, tint); + } + } + else if (dest.height <= tileHeight) + { + // Tiled horizontally (one row) + int dx = 0; + for (;dx+tileWidth < dest.width; dx += tileWidth) + { + DrawTexturePro(texture, (Rectangle){source.x, source.y, source.width, ((float)dest.height/tileHeight)*source.height}, (Rectangle){dest.x + dx, dest.y, (float)tileWidth, dest.height}, origin, rotation, tint); + } + + // Fit last tile + if (dx < dest.width) + { + DrawTexturePro(texture, (Rectangle){source.x, source.y, ((float)(dest.width - dx)/tileWidth)*source.width, ((float)dest.height/tileHeight)*source.height}, + (Rectangle){dest.x + dx, dest.y, dest.width - dx, dest.height}, origin, rotation, tint); + } + } + else + { + // Tiled both horizontally and vertically (rows and columns) + int dx = 0; + for (;dx+tileWidth < dest.width; dx += tileWidth) + { + int dy = 0; + for (;dy+tileHeight < dest.height; dy += tileHeight) + { + DrawTexturePro(texture, source, (Rectangle){dest.x + dx, dest.y + dy, (float)tileWidth, (float)tileHeight}, origin, rotation, tint); + } + + if (dy < dest.height) + { + DrawTexturePro(texture, (Rectangle){source.x, source.y, source.width, ((float)(dest.height - dy)/tileHeight)*source.height}, + (Rectangle){dest.x + dx, dest.y + dy, (float)tileWidth, dest.height - dy}, origin, rotation, tint); + } + } + + // Fit last column of tiles + if (dx < dest.width) + { + int dy = 0; + for (;dy+tileHeight < dest.height; dy += tileHeight) + { + DrawTexturePro(texture, (Rectangle){source.x, source.y, ((float)(dest.width - dx)/tileWidth)*source.width, source.height}, + (Rectangle){dest.x + dx, dest.y + dy, dest.width - dx, (float)tileHeight}, origin, rotation, tint); + } + + // Draw final tile in the bottom right corner + if (dy < dest.height) + { + DrawTexturePro(texture, (Rectangle){source.x, source.y, ((float)(dest.width - dx)/tileWidth)*source.width, ((float)(dest.height - dy)/tileHeight)*source.height}, + (Rectangle){dest.x + dx, dest.y + dy, dest.width - dx, dest.height - dy}, origin, rotation, tint); + } + } + } +} diff --git a/examples/textures/textures_fog_of_war.c b/examples/textures/textures_fog_of_war.c new file mode 100644 index 0000000..433f364 --- /dev/null +++ b/examples/textures/textures_fog_of_war.c @@ -0,0 +1,154 @@ +/******************************************************************************************* +* +* raylib [textures] example - Fog of war +* +* Example originally created with raylib 4.2, last time updated with raylib 4.2 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2018-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#include // Required for: calloc(), free() + +#define MAP_TILE_SIZE 32 // Tiles size 32x32 pixels +#define PLAYER_SIZE 16 // Player size +#define PLAYER_TILE_VISIBILITY 2 // Player can see 2 tiles around its position + +// Map data type +typedef struct Map { + unsigned int tilesX; // Number of tiles in X axis + unsigned int tilesY; // Number of tiles in Y axis + unsigned char *tileIds; // Tile ids (tilesX*tilesY), defines type of tile to draw + unsigned char *tileFog; // Tile fog state (tilesX*tilesY), defines if a tile has fog or half-fog +} Map; + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + int screenWidth = 800; + int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [textures] example - fog of war"); + + Map map = { 0 }; + map.tilesX = 25; + map.tilesY = 15; + + // NOTE: We can have up to 256 values for tile ids and for tile fog state, + // probably we don't need that many values for fog state, it can be optimized + // to use only 2 bits per fog state (reducing size by 4) but logic will be a bit more complex + map.tileIds = (unsigned char *)calloc(map.tilesX*map.tilesY, sizeof(unsigned char)); + map.tileFog = (unsigned char *)calloc(map.tilesX*map.tilesY, sizeof(unsigned char)); + + // Load map tiles (generating 2 random tile ids for testing) + // NOTE: Map tile ids should be probably loaded from an external map file + for (unsigned int i = 0; i < map.tilesY*map.tilesX; i++) map.tileIds[i] = GetRandomValue(0, 1); + + // Player position on the screen (pixel coordinates, not tile coordinates) + Vector2 playerPosition = { 180, 130 }; + int playerTileX = 0; + int playerTileY = 0; + + // Render texture to render fog of war + // NOTE: To get an automatic smooth-fog effect we use a render texture to render fog + // at a smaller size (one pixel per tile) and scale it on drawing with bilinear filtering + RenderTexture2D fogOfWar = LoadRenderTexture(map.tilesX, map.tilesY); + SetTextureFilter(fogOfWar.texture, TEXTURE_FILTER_BILINEAR); + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // Move player around + if (IsKeyDown(KEY_RIGHT)) playerPosition.x += 5; + if (IsKeyDown(KEY_LEFT)) playerPosition.x -= 5; + if (IsKeyDown(KEY_DOWN)) playerPosition.y += 5; + if (IsKeyDown(KEY_UP)) playerPosition.y -= 5; + + // Check player position to avoid moving outside tilemap limits + if (playerPosition.x < 0) playerPosition.x = 0; + else if ((playerPosition.x + PLAYER_SIZE) > (map.tilesX*MAP_TILE_SIZE)) playerPosition.x = (float)map.tilesX*MAP_TILE_SIZE - PLAYER_SIZE; + if (playerPosition.y < 0) playerPosition.y = 0; + else if ((playerPosition.y + PLAYER_SIZE) > (map.tilesY*MAP_TILE_SIZE)) playerPosition.y = (float)map.tilesY*MAP_TILE_SIZE - PLAYER_SIZE; + + // Previous visited tiles are set to partial fog + for (unsigned int i = 0; i < map.tilesX*map.tilesY; i++) if (map.tileFog[i] == 1) map.tileFog[i] = 2; + + // Get current tile position from player pixel position + playerTileX = (int)((playerPosition.x + MAP_TILE_SIZE/2)/MAP_TILE_SIZE); + playerTileY = (int)((playerPosition.y + MAP_TILE_SIZE/2)/MAP_TILE_SIZE); + + // Check visibility and update fog + // NOTE: We check tilemap limits to avoid processing tiles out-of-array-bounds (it could crash program) + for (int y = (playerTileY - PLAYER_TILE_VISIBILITY); y < (playerTileY + PLAYER_TILE_VISIBILITY); y++) + for (int x = (playerTileX - PLAYER_TILE_VISIBILITY); x < (playerTileX + PLAYER_TILE_VISIBILITY); x++) + if ((x >= 0) && (x < (int)map.tilesX) && (y >= 0) && (y < (int)map.tilesY)) map.tileFog[y*map.tilesX + x] = 1; + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + // Draw fog of war to a small render texture for automatic smoothing on scaling + BeginTextureMode(fogOfWar); + ClearBackground(BLANK); + for (unsigned int y = 0; y < map.tilesY; y++) + for (unsigned int x = 0; x < map.tilesX; x++) + if (map.tileFog[y*map.tilesX + x] == 0) DrawRectangle(x, y, 1, 1, BLACK); + else if (map.tileFog[y*map.tilesX + x] == 2) DrawRectangle(x, y, 1, 1, Fade(BLACK, 0.8f)); + EndTextureMode(); + + BeginDrawing(); + + ClearBackground(RAYWHITE); + + for (unsigned int y = 0; y < map.tilesY; y++) + { + for (unsigned int x = 0; x < map.tilesX; x++) + { + // Draw tiles from id (and tile borders) + DrawRectangle(x*MAP_TILE_SIZE, y*MAP_TILE_SIZE, MAP_TILE_SIZE, MAP_TILE_SIZE, + (map.tileIds[y*map.tilesX + x] == 0)? BLUE : Fade(BLUE, 0.9f)); + DrawRectangleLines(x*MAP_TILE_SIZE, y*MAP_TILE_SIZE, MAP_TILE_SIZE, MAP_TILE_SIZE, Fade(DARKBLUE, 0.5f)); + } + } + + // Draw player + DrawRectangleV(playerPosition, (Vector2){ PLAYER_SIZE, PLAYER_SIZE }, RED); + + + // Draw fog of war (scaled to full map, bilinear filtering) + DrawTexturePro(fogOfWar.texture, (Rectangle){ 0, 0, (float)fogOfWar.texture.width, (float)-fogOfWar.texture.height }, + (Rectangle){ 0, 0, (float)map.tilesX*MAP_TILE_SIZE, (float)map.tilesY*MAP_TILE_SIZE }, + (Vector2){ 0, 0 }, 0.0f, WHITE); + + // Draw player current tile + DrawText(TextFormat("Current tile: [%i,%i]", playerTileX, playerTileY), 10, 10, 20, LIME); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + free(map.tileIds); // Free allocated map tile ids + free(map.tileFog); // Free allocated map tile fog state + + UnloadRenderTexture(fogOfWar); // Unload render texture + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/textures/textures_gif_player.c b/examples/textures/textures_gif_player.c new file mode 100644 index 0000000..1085228 --- /dev/null +++ b/examples/textures/textures_gif_player.c @@ -0,0 +1,121 @@ +/******************************************************************************************* +* +* raylib [textures] example - gif playing +* +* Example originally created with raylib 4.2, last time updated with raylib 4.2 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2021-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#define MAX_FRAME_DELAY 20 +#define MIN_FRAME_DELAY 1 + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [textures] example - gif playing"); + + int animFrames = 0; + + // Load all GIF animation frames into a single Image + // NOTE: GIF data is always loaded as RGBA (32bit) by default + // NOTE: Frames are just appended one after another in image.data memory + Image imScarfyAnim = LoadImageAnim("resources/scarfy_run.gif", &animFrames); + + // Load texture from image + // NOTE: We will update this texture when required with next frame data + // WARNING: It's not recommended to use this technique for sprites animation, + // use spritesheets instead, like illustrated in textures_sprite_anim example + Texture2D texScarfyAnim = LoadTextureFromImage(imScarfyAnim); + + unsigned int nextFrameDataOffset = 0; // Current byte offset to next frame in image.data + + int currentAnimFrame = 0; // Current animation frame to load and draw + int frameDelay = 8; // Frame delay to switch between animation frames + int frameCounter = 0; // General frames counter + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + frameCounter++; + if (frameCounter >= frameDelay) + { + // Move to next frame + // NOTE: If final frame is reached we return to first frame + currentAnimFrame++; + if (currentAnimFrame >= animFrames) currentAnimFrame = 0; + + // Get memory offset position for next frame data in image.data + nextFrameDataOffset = imScarfyAnim.width*imScarfyAnim.height*4*currentAnimFrame; + + // Update GPU texture data with next frame image data + // WARNING: Data size (frame size) and pixel format must match already created texture + UpdateTexture(texScarfyAnim, ((unsigned char *)imScarfyAnim.data) + nextFrameDataOffset); + + frameCounter = 0; + } + + // Control frames delay + if (IsKeyPressed(KEY_RIGHT)) frameDelay++; + else if (IsKeyPressed(KEY_LEFT)) frameDelay--; + + if (frameDelay > MAX_FRAME_DELAY) frameDelay = MAX_FRAME_DELAY; + else if (frameDelay < MIN_FRAME_DELAY) frameDelay = MIN_FRAME_DELAY; + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawText(TextFormat("TOTAL GIF FRAMES: %02i", animFrames), 50, 30, 20, LIGHTGRAY); + DrawText(TextFormat("CURRENT FRAME: %02i", currentAnimFrame), 50, 60, 20, GRAY); + DrawText(TextFormat("CURRENT FRAME IMAGE.DATA OFFSET: %02i", nextFrameDataOffset), 50, 90, 20, GRAY); + + DrawText("FRAMES DELAY: ", 100, 305, 10, DARKGRAY); + DrawText(TextFormat("%02i frames", frameDelay), 620, 305, 10, DARKGRAY); + DrawText("PRESS RIGHT/LEFT KEYS to CHANGE SPEED!", 290, 350, 10, DARKGRAY); + + for (int i = 0; i < MAX_FRAME_DELAY; i++) + { + if (i < frameDelay) DrawRectangle(190 + 21*i, 300, 20, 20, RED); + DrawRectangleLines(190 + 21*i, 300, 20, 20, MAROON); + } + + DrawTexture(texScarfyAnim, GetScreenWidth()/2 - texScarfyAnim.width/2, 140, WHITE); + + DrawText("(c) Scarfy sprite by Eiden Marsal", screenWidth - 200, screenHeight - 20, 10, GRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(texScarfyAnim); // Unload texture + UnloadImage(imScarfyAnim); // Unload image (contains all frames) + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/textures/textures_image_drawing.c b/examples/textures/textures_image_drawing.c new file mode 100644 index 0000000..967cb52 --- /dev/null +++ b/examples/textures/textures_image_drawing.c @@ -0,0 +1,96 @@ +/******************************************************************************************* +* +* raylib [textures] example - Image loading and drawing on it +* +* NOTE: Images are loaded in CPU memory (RAM); textures are loaded in GPU memory (VRAM) +* +* Example originally created with raylib 1.4, last time updated with raylib 1.4 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2016-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [textures] example - image drawing"); + + // NOTE: Textures MUST be loaded after Window initialization (OpenGL context is required) + + Image cat = LoadImage("resources/cat.png"); // Load image in CPU memory (RAM) + ImageCrop(&cat, (Rectangle){ 100, 10, 280, 380 }); // Crop an image piece + ImageFlipHorizontal(&cat); // Flip cropped image horizontally + ImageResize(&cat, 150, 200); // Resize flipped-cropped image + + Image parrots = LoadImage("resources/parrots.png"); // Load image in CPU memory (RAM) + + // Draw one image over the other with a scaling of 1.5f + ImageDraw(&parrots, cat, (Rectangle){ 0, 0, (float)cat.width, (float)cat.height }, (Rectangle){ 30, 40, cat.width*1.5f, cat.height*1.5f }, WHITE); + ImageCrop(&parrots, (Rectangle){ 0, 50, (float)parrots.width, (float)parrots.height - 100 }); // Crop resulting image + + // Draw on the image with a few image draw methods + ImageDrawPixel(&parrots, 10, 10, RAYWHITE); + ImageDrawCircleLines(&parrots, 10, 10, 5, RAYWHITE); + ImageDrawRectangle(&parrots, 5, 20, 10, 10, RAYWHITE); + + UnloadImage(cat); // Unload image from RAM + + // Load custom font for frawing on image + Font font = LoadFont("resources/custom_jupiter_crash.png"); + + // Draw over image using custom font + ImageDrawTextEx(&parrots, font, "PARROTS & CAT", (Vector2){ 300, 230 }, (float)font.baseSize, -2, WHITE); + + UnloadFont(font); // Unload custom font (already drawn used on image) + + Texture2D texture = LoadTextureFromImage(parrots); // Image converted to texture, uploaded to GPU memory (VRAM) + UnloadImage(parrots); // Once image has been converted to texture and uploaded to VRAM, it can be unloaded from RAM + + SetTargetFPS(60); + //--------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // TODO: Update your variables here + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawTexture(texture, screenWidth/2 - texture.width/2, screenHeight/2 - texture.height/2 - 40, WHITE); + DrawRectangleLines(screenWidth/2 - texture.width/2, screenHeight/2 - texture.height/2 - 40, texture.width, texture.height, DARKGRAY); + + DrawText("We are drawing only one texture from various images composed!", 240, 350, 10, DARKGRAY); + DrawText("Source images have been cropped, scaled, flipped and copied one over the other.", 190, 370, 10, DARKGRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(texture); // Texture unloading + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/textures/textures_image_generation.c b/examples/textures/textures_image_generation.c new file mode 100644 index 0000000..1ab08ae --- /dev/null +++ b/examples/textures/textures_image_generation.c @@ -0,0 +1,107 @@ +/******************************************************************************************* +* +* raylib [textures] example - Procedural images generation +* +* Example originally created with raylib 1.8, last time updated with raylib 1.8 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2O17-2023 Wilhem Barbier (@nounoursheureux) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#define NUM_TEXTURES 6 // Currently we have 7 generation algorithms + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [textures] example - procedural images generation"); + + Image verticalGradient = GenImageGradientV(screenWidth, screenHeight, RED, BLUE); + Image horizontalGradient = GenImageGradientH(screenWidth, screenHeight, RED, BLUE); + Image radialGradient = GenImageGradientRadial(screenWidth, screenHeight, 0.0f, WHITE, BLACK); + Image checked = GenImageChecked(screenWidth, screenHeight, 32, 32, RED, BLUE); + Image whiteNoise = GenImageWhiteNoise(screenWidth, screenHeight, 0.5f); + Image cellular = GenImageCellular(screenWidth, screenHeight, 32); + + Texture2D textures[NUM_TEXTURES] = { 0 }; + + textures[0] = LoadTextureFromImage(verticalGradient); + textures[1] = LoadTextureFromImage(horizontalGradient); + textures[2] = LoadTextureFromImage(radialGradient); + textures[3] = LoadTextureFromImage(checked); + textures[4] = LoadTextureFromImage(whiteNoise); + textures[5] = LoadTextureFromImage(cellular); + + // Unload image data (CPU RAM) + UnloadImage(verticalGradient); + UnloadImage(horizontalGradient); + UnloadImage(radialGradient); + UnloadImage(checked); + UnloadImage(whiteNoise); + UnloadImage(cellular); + + int currentTexture = 0; + + SetTargetFPS(60); + //--------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) + { + // Update + //---------------------------------------------------------------------------------- + if (IsMouseButtonPressed(MOUSE_BUTTON_LEFT) || IsKeyPressed(KEY_RIGHT)) + { + currentTexture = (currentTexture + 1)%NUM_TEXTURES; // Cycle between the textures + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawTexture(textures[currentTexture], 0, 0, WHITE); + + DrawRectangle(30, 400, 325, 30, Fade(SKYBLUE, 0.5f)); + DrawRectangleLines(30, 400, 325, 30, Fade(WHITE, 0.5f)); + DrawText("MOUSE LEFT BUTTON to CYCLE PROCEDURAL TEXTURES", 40, 410, 10, WHITE); + + switch(currentTexture) + { + case 0: DrawText("VERTICAL GRADIENT", 560, 10, 20, RAYWHITE); break; + case 1: DrawText("HORIZONTAL GRADIENT", 540, 10, 20, RAYWHITE); break; + case 2: DrawText("RADIAL GRADIENT", 580, 10, 20, LIGHTGRAY); break; + case 3: DrawText("CHECKED", 680, 10, 20, RAYWHITE); break; + case 4: DrawText("WHITE NOISE", 640, 10, 20, RED); break; + case 5: DrawText("CELLULAR", 670, 10, 20, RAYWHITE); break; + default: break; + } + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + + // Unload textures data (GPU VRAM) + for (int i = 0; i < NUM_TEXTURES; i++) UnloadTexture(textures[i]); + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/textures/textures_image_loading.c b/examples/textures/textures_image_loading.c new file mode 100644 index 0000000..b1bfe09 --- /dev/null +++ b/examples/textures/textures_image_loading.c @@ -0,0 +1,69 @@ +/******************************************************************************************* +* +* raylib [textures] example - Image loading and texture creation +* +* NOTE: Images are loaded in CPU memory (RAM); textures are loaded in GPU memory (VRAM) +* +* Example originally created with raylib 1.3, last time updated with raylib 1.3 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2015-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [textures] example - image loading"); + + // NOTE: Textures MUST be loaded after Window initialization (OpenGL context is required) + + Image image = LoadImage("resources/raylib_logo.png"); // Loaded in CPU memory (RAM) + Texture2D texture = LoadTextureFromImage(image); // Image converted to texture, GPU memory (VRAM) + UnloadImage(image); // Once image has been converted to texture and uploaded to VRAM, it can be unloaded from RAM + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //--------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // TODO: Update your variables here + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawTexture(texture, screenWidth/2 - texture.width/2, screenHeight/2 - texture.height/2, WHITE); + + DrawText("this IS a texture loaded from an image!", 300, 370, 10, GRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(texture); // Texture unloading + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/textures/textures_image_processing.c b/examples/textures/textures_image_processing.c new file mode 100644 index 0000000..6e6c854 --- /dev/null +++ b/examples/textures/textures_image_processing.c @@ -0,0 +1,177 @@ +/******************************************************************************************* +* +* raylib [textures] example - Image processing +* +* NOTE: Images are loaded in CPU memory (RAM); textures are loaded in GPU memory (VRAM) +* +* Example originally created with raylib 1.4, last time updated with raylib 3.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2016-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#include // Required for: free() + +#define NUM_PROCESSES 9 + +typedef enum { + NONE = 0, + COLOR_GRAYSCALE, + COLOR_TINT, + COLOR_INVERT, + COLOR_CONTRAST, + COLOR_BRIGHTNESS, + GAUSSIAN_BLUR, + FLIP_VERTICAL, + FLIP_HORIZONTAL +} ImageProcess; + +static const char *processText[] = { + "NO PROCESSING", + "COLOR GRAYSCALE", + "COLOR TINT", + "COLOR INVERT", + "COLOR CONTRAST", + "COLOR BRIGHTNESS", + "GAUSSIAN BLUR", + "FLIP VERTICAL", + "FLIP HORIZONTAL" +}; + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [textures] example - image processing"); + + // NOTE: Textures MUST be loaded after Window initialization (OpenGL context is required) + + Image imOrigin = LoadImage("resources/parrots.png"); // Loaded in CPU memory (RAM) + ImageFormat(&imOrigin, PIXELFORMAT_UNCOMPRESSED_R8G8B8A8); // Format image to RGBA 32bit (required for texture update) <-- ISSUE + Texture2D texture = LoadTextureFromImage(imOrigin); // Image converted to texture, GPU memory (VRAM) + + Image imCopy = ImageCopy(imOrigin); + + int currentProcess = NONE; + bool textureReload = false; + + Rectangle toggleRecs[NUM_PROCESSES] = { 0 }; + int mouseHoverRec = -1; + + for (int i = 0; i < NUM_PROCESSES; i++) toggleRecs[i] = (Rectangle){ 40.0f, (float)(50 + 32*i), 150.0f, 30.0f }; + + SetTargetFPS(60); + //--------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + + // Mouse toggle group logic + for (int i = 0; i < NUM_PROCESSES; i++) + { + if (CheckCollisionPointRec(GetMousePosition(), toggleRecs[i])) + { + mouseHoverRec = i; + + if (IsMouseButtonReleased(MOUSE_BUTTON_LEFT)) + { + currentProcess = i; + textureReload = true; + } + break; + } + else mouseHoverRec = -1; + } + + // Keyboard toggle group logic + if (IsKeyPressed(KEY_DOWN)) + { + currentProcess++; + if (currentProcess > (NUM_PROCESSES - 1)) currentProcess = 0; + textureReload = true; + } + else if (IsKeyPressed(KEY_UP)) + { + currentProcess--; + if (currentProcess < 0) currentProcess = 7; + textureReload = true; + } + + // Reload texture when required + if (textureReload) + { + UnloadImage(imCopy); // Unload image-copy data + imCopy = ImageCopy(imOrigin); // Restore image-copy from image-origin + + // NOTE: Image processing is a costly CPU process to be done every frame, + // If image processing is required in a frame-basis, it should be done + // with a texture and by shaders + switch (currentProcess) + { + case COLOR_GRAYSCALE: ImageColorGrayscale(&imCopy); break; + case COLOR_TINT: ImageColorTint(&imCopy, GREEN); break; + case COLOR_INVERT: ImageColorInvert(&imCopy); break; + case COLOR_CONTRAST: ImageColorContrast(&imCopy, -40); break; + case COLOR_BRIGHTNESS: ImageColorBrightness(&imCopy, -80); break; + case GAUSSIAN_BLUR: ImageBlurGaussian(&imCopy, 10); break; + case FLIP_VERTICAL: ImageFlipVertical(&imCopy); break; + case FLIP_HORIZONTAL: ImageFlipHorizontal(&imCopy); break; + default: break; + } + + Color *pixels = LoadImageColors(imCopy); // Load pixel data from image (RGBA 32bit) + UpdateTexture(texture, pixels); // Update texture with new image data + UnloadImageColors(pixels); // Unload pixels data from RAM + + textureReload = false; + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawText("IMAGE PROCESSING:", 40, 30, 10, DARKGRAY); + + // Draw rectangles + for (int i = 0; i < NUM_PROCESSES; i++) + { + DrawRectangleRec(toggleRecs[i], ((i == currentProcess) || (i == mouseHoverRec)) ? SKYBLUE : LIGHTGRAY); + DrawRectangleLines((int)toggleRecs[i].x, (int) toggleRecs[i].y, (int) toggleRecs[i].width, (int) toggleRecs[i].height, ((i == currentProcess) || (i == mouseHoverRec)) ? BLUE : GRAY); + DrawText( processText[i], (int)( toggleRecs[i].x + toggleRecs[i].width/2 - MeasureText(processText[i], 10)/2), (int) toggleRecs[i].y + 11, 10, ((i == currentProcess) || (i == mouseHoverRec)) ? DARKBLUE : DARKGRAY); + } + + DrawTexture(texture, screenWidth - texture.width - 60, screenHeight/2 - texture.height/2, WHITE); + DrawRectangleLines(screenWidth - texture.width - 60, screenHeight/2 - texture.height/2, texture.width, texture.height, BLACK); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(texture); // Unload texture from VRAM + UnloadImage(imOrigin); // Unload image-origin from RAM + UnloadImage(imCopy); // Unload image-copy from RAM + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/textures/textures_image_text.c b/examples/textures/textures_image_text.c new file mode 100644 index 0000000..50db688 --- /dev/null +++ b/examples/textures/textures_image_text.c @@ -0,0 +1,88 @@ +/******************************************************************************************* +* +* raylib [texture] example - Image text drawing using TTF generated font +* +* Example originally created with raylib 1.8, last time updated with raylib 4.0 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2017-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [texture] example - image text drawing"); + + Image parrots = LoadImage("resources/parrots.png"); // Load image in CPU memory (RAM) + + // TTF Font loading with custom generation parameters + Font font = LoadFontEx("resources/KAISG.ttf", 64, 0, 0); + + // Draw over image using custom font + ImageDrawTextEx(&parrots, font, "[Parrots font drawing]", (Vector2){ 20.0f, 20.0f }, (float)font.baseSize, 0.0f, RED); + + Texture2D texture = LoadTextureFromImage(parrots); // Image converted to texture, uploaded to GPU memory (VRAM) + UnloadImage(parrots); // Once image has been converted to texture and uploaded to VRAM, it can be unloaded from RAM + + Vector2 position = { (float)(screenWidth/2 - texture.width/2), (float)(screenHeight/2 - texture.height/2 - 20) }; + + bool showFont = false; + + SetTargetFPS(60); + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + if (IsKeyDown(KEY_SPACE)) showFont = true; + else showFont = false; + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + if (!showFont) + { + // Draw texture with text already drawn inside + DrawTextureV(texture, position, WHITE); + + // Draw text directly using sprite font + DrawTextEx(font, "[Parrots font drawing]", (Vector2){ position.x + 20, + position.y + 20 + 280 }, (float)font.baseSize, 0.0f, WHITE); + } + else DrawTexture(font.texture, screenWidth/2 - font.texture.width/2, 50, BLACK); + + DrawText("PRESS SPACE to SHOW FONT ATLAS USED", 290, 420, 10, DARKGRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(texture); // Texture unloading + + UnloadFont(font); // Unload custom font + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/textures/textures_logo_raylib.c b/examples/textures/textures_logo_raylib.c new file mode 100644 index 0000000..8bd8658 --- /dev/null +++ b/examples/textures/textures_logo_raylib.c @@ -0,0 +1,62 @@ +/******************************************************************************************* +* +* raylib [textures] example - Texture loading and drawing +* +* Example originally created with raylib 1.0, last time updated with raylib 1.0 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2014-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [textures] example - texture loading and drawing"); + + // NOTE: Textures MUST be loaded after Window initialization (OpenGL context is required) + Texture2D texture = LoadTexture("resources/raylib_logo.png"); // Texture loading + //--------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // TODO: Update your variables here + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawTexture(texture, screenWidth/2 - texture.width/2, screenHeight/2 - texture.height/2, WHITE); + + DrawText("this IS a texture!", 360, 370, 10, GRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(texture); // Texture unloading + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/textures/textures_mouse_painting.c b/examples/textures/textures_mouse_painting.c new file mode 100644 index 0000000..e985cee --- /dev/null +++ b/examples/textures/textures_mouse_painting.c @@ -0,0 +1,226 @@ +/******************************************************************************************* +* +* raylib [textures] example - Mouse painting +* +* Example originally created with raylib 3.0, last time updated with raylib 3.0 +* +* Example contributed by Chris Dill (@MysteriousSpace) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2019-2023 Chris Dill (@MysteriousSpace) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#define MAX_COLORS_COUNT 23 // Number of colors available + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [textures] example - mouse painting"); + + // Colors to choose from + Color colors[MAX_COLORS_COUNT] = { + RAYWHITE, YELLOW, GOLD, ORANGE, PINK, RED, MAROON, GREEN, LIME, DARKGREEN, + SKYBLUE, BLUE, DARKBLUE, PURPLE, VIOLET, DARKPURPLE, BEIGE, BROWN, DARKBROWN, + LIGHTGRAY, GRAY, DARKGRAY, BLACK }; + + // Define colorsRecs data (for every rectangle) + Rectangle colorsRecs[MAX_COLORS_COUNT] = { 0 }; + + for (int i = 0; i < MAX_COLORS_COUNT; i++) + { + colorsRecs[i].x = 10 + 30.0f*i + 2*i; + colorsRecs[i].y = 10; + colorsRecs[i].width = 30; + colorsRecs[i].height = 30; + } + + int colorSelected = 0; + int colorSelectedPrev = colorSelected; + int colorMouseHover = 0; + float brushSize = 20.0f; + bool mouseWasPressed = false; + + Rectangle btnSaveRec = { 750, 10, 40, 30 }; + bool btnSaveMouseHover = false; + bool showSaveMessage = false; + int saveMessageCounter = 0; + + // Create a RenderTexture2D to use as a canvas + RenderTexture2D target = LoadRenderTexture(screenWidth, screenHeight); + + // Clear render texture before entering the game loop + BeginTextureMode(target); + ClearBackground(colors[0]); + EndTextureMode(); + + SetTargetFPS(120); // Set our game to run at 120 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + Vector2 mousePos = GetMousePosition(); + + // Move between colors with keys + if (IsKeyPressed(KEY_RIGHT)) colorSelected++; + else if (IsKeyPressed(KEY_LEFT)) colorSelected--; + + if (colorSelected >= MAX_COLORS_COUNT) colorSelected = MAX_COLORS_COUNT - 1; + else if (colorSelected < 0) colorSelected = 0; + + // Choose color with mouse + for (int i = 0; i < MAX_COLORS_COUNT; i++) + { + if (CheckCollisionPointRec(mousePos, colorsRecs[i])) + { + colorMouseHover = i; + break; + } + else colorMouseHover = -1; + } + + if ((colorMouseHover >= 0) && IsMouseButtonPressed(MOUSE_BUTTON_LEFT)) + { + colorSelected = colorMouseHover; + colorSelectedPrev = colorSelected; + } + + // Change brush size + brushSize += GetMouseWheelMove()*5; + if (brushSize < 2) brushSize = 2; + if (brushSize > 50) brushSize = 50; + + if (IsKeyPressed(KEY_C)) + { + // Clear render texture to clear color + BeginTextureMode(target); + ClearBackground(colors[0]); + EndTextureMode(); + } + + if (IsMouseButtonDown(MOUSE_BUTTON_LEFT) || (GetGestureDetected() == GESTURE_DRAG)) + { + // Paint circle into render texture + // NOTE: To avoid discontinuous circles, we could store + // previous-next mouse points and just draw a line using brush size + BeginTextureMode(target); + if (mousePos.y > 50) DrawCircle((int)mousePos.x, (int)mousePos.y, brushSize, colors[colorSelected]); + EndTextureMode(); + } + + if (IsMouseButtonDown(MOUSE_BUTTON_RIGHT)) + { + if (!mouseWasPressed) + { + colorSelectedPrev = colorSelected; + colorSelected = 0; + } + + mouseWasPressed = true; + + // Erase circle from render texture + BeginTextureMode(target); + if (mousePos.y > 50) DrawCircle((int)mousePos.x, (int)mousePos.y, brushSize, colors[0]); + EndTextureMode(); + } + else if (IsMouseButtonReleased(MOUSE_BUTTON_RIGHT) && mouseWasPressed) + { + colorSelected = colorSelectedPrev; + mouseWasPressed = false; + } + + // Check mouse hover save button + if (CheckCollisionPointRec(mousePos, btnSaveRec)) btnSaveMouseHover = true; + else btnSaveMouseHover = false; + + // Image saving logic + // NOTE: Saving painted texture to a default named image + if ((btnSaveMouseHover && IsMouseButtonReleased(MOUSE_BUTTON_LEFT)) || IsKeyPressed(KEY_S)) + { + Image image = LoadImageFromTexture(target.texture); + ImageFlipVertical(&image); + ExportImage(image, "my_amazing_texture_painting.png"); + UnloadImage(image); + showSaveMessage = true; + } + + if (showSaveMessage) + { + // On saving, show a full screen message for 2 seconds + saveMessageCounter++; + if (saveMessageCounter > 240) + { + showSaveMessage = false; + saveMessageCounter = 0; + } + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + // NOTE: Render texture must be y-flipped due to default OpenGL coordinates (left-bottom) + DrawTextureRec(target.texture, (Rectangle) { 0, 0, (float)target.texture.width, (float)-target.texture.height }, (Vector2) { 0, 0 }, WHITE); + + // Draw drawing circle for reference + if (mousePos.y > 50) + { + if (IsMouseButtonDown(MOUSE_BUTTON_RIGHT)) DrawCircleLines((int)mousePos.x, (int)mousePos.y, brushSize, GRAY); + else DrawCircle(GetMouseX(), GetMouseY(), brushSize, colors[colorSelected]); + } + + // Draw top panel + DrawRectangle(0, 0, GetScreenWidth(), 50, RAYWHITE); + DrawLine(0, 50, GetScreenWidth(), 50, LIGHTGRAY); + + // Draw color selection rectangles + for (int i = 0; i < MAX_COLORS_COUNT; i++) DrawRectangleRec(colorsRecs[i], colors[i]); + DrawRectangleLines(10, 10, 30, 30, LIGHTGRAY); + + if (colorMouseHover >= 0) DrawRectangleRec(colorsRecs[colorMouseHover], Fade(WHITE, 0.6f)); + + DrawRectangleLinesEx((Rectangle){ colorsRecs[colorSelected].x - 2, colorsRecs[colorSelected].y - 2, + colorsRecs[colorSelected].width + 4, colorsRecs[colorSelected].height + 4 }, 2, BLACK); + + // Draw save image button + DrawRectangleLinesEx(btnSaveRec, 2, btnSaveMouseHover ? RED : BLACK); + DrawText("SAVE!", 755, 20, 10, btnSaveMouseHover ? RED : BLACK); + + // Draw save image message + if (showSaveMessage) + { + DrawRectangle(0, 0, GetScreenWidth(), GetScreenHeight(), Fade(RAYWHITE, 0.8f)); + DrawRectangle(0, 150, GetScreenWidth(), 80, BLACK); + DrawText("IMAGE SAVED: my_amazing_texture_painting.png", 150, 180, 20, RAYWHITE); + } + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadRenderTexture(target); // Unload render texture + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/textures/textures_npatch_drawing.c b/examples/textures/textures_npatch_drawing.c new file mode 100644 index 0000000..f85aaa1 --- /dev/null +++ b/examples/textures/textures_npatch_drawing.c @@ -0,0 +1,114 @@ +/******************************************************************************************* +* +* raylib [textures] example - N-patch drawing +* +* NOTE: Images are loaded in CPU memory (RAM); textures are loaded in GPU memory (VRAM) +* +* Example originally created with raylib 2.0, last time updated with raylib 2.5 +* +* Example contributed by Jorge A. Gomes (@overdev) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2018-2023 Jorge A. Gomes (@overdev) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [textures] example - N-patch drawing"); + + // NOTE: Textures MUST be loaded after Window initialization (OpenGL context is required) + Texture2D nPatchTexture = LoadTexture("resources/ninepatch_button.png"); + + Vector2 mousePosition = { 0 }; + Vector2 origin = { 0.0f, 0.0f }; + + // Position and size of the n-patches + Rectangle dstRec1 = { 480.0f, 160.0f, 32.0f, 32.0f }; + Rectangle dstRec2 = { 160.0f, 160.0f, 32.0f, 32.0f }; + Rectangle dstRecH = { 160.0f, 93.0f, 32.0f, 32.0f }; + Rectangle dstRecV = { 92.0f, 160.0f, 32.0f, 32.0f }; + + // A 9-patch (NPATCH_NINE_PATCH) changes its sizes in both axis + NPatchInfo ninePatchInfo1 = { (Rectangle){ 0.0f, 0.0f, 64.0f, 64.0f }, 12, 40, 12, 12, NPATCH_NINE_PATCH }; + NPatchInfo ninePatchInfo2 = { (Rectangle){ 0.0f, 128.0f, 64.0f, 64.0f }, 16, 16, 16, 16, NPATCH_NINE_PATCH }; + + // A horizontal 3-patch (NPATCH_THREE_PATCH_HORIZONTAL) changes its sizes along the x axis only + NPatchInfo h3PatchInfo = { (Rectangle){ 0.0f, 64.0f, 64.0f, 64.0f }, 8, 8, 8, 8, NPATCH_THREE_PATCH_HORIZONTAL }; + + // A vertical 3-patch (NPATCH_THREE_PATCH_VERTICAL) changes its sizes along the y axis only + NPatchInfo v3PatchInfo = { (Rectangle){ 0.0f, 192.0f, 64.0f, 64.0f }, 6, 6, 6, 6, NPATCH_THREE_PATCH_VERTICAL }; + + SetTargetFPS(60); + //--------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + mousePosition = GetMousePosition(); + + // Resize the n-patches based on mouse position + dstRec1.width = mousePosition.x - dstRec1.x; + dstRec1.height = mousePosition.y - dstRec1.y; + dstRec2.width = mousePosition.x - dstRec2.x; + dstRec2.height = mousePosition.y - dstRec2.y; + dstRecH.width = mousePosition.x - dstRecH.x; + dstRecV.height = mousePosition.y - dstRecV.y; + + // Set a minimum width and/or height + if (dstRec1.width < 1.0f) dstRec1.width = 1.0f; + if (dstRec1.width > 300.0f) dstRec1.width = 300.0f; + if (dstRec1.height < 1.0f) dstRec1.height = 1.0f; + if (dstRec2.width < 1.0f) dstRec2.width = 1.0f; + if (dstRec2.width > 300.0f) dstRec2.width = 300.0f; + if (dstRec2.height < 1.0f) dstRec2.height = 1.0f; + if (dstRecH.width < 1.0f) dstRecH.width = 1.0f; + if (dstRecV.height < 1.0f) dstRecV.height = 1.0f; + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + // Draw the n-patches + DrawTextureNPatch(nPatchTexture, ninePatchInfo2, dstRec2, origin, 0.0f, WHITE); + DrawTextureNPatch(nPatchTexture, ninePatchInfo1, dstRec1, origin, 0.0f, WHITE); + DrawTextureNPatch(nPatchTexture, h3PatchInfo, dstRecH, origin, 0.0f, WHITE); + DrawTextureNPatch(nPatchTexture, v3PatchInfo, dstRecV, origin, 0.0f, WHITE); + + // Draw the source texture + DrawRectangleLines(5, 88, 74, 266, BLUE); + DrawTexture(nPatchTexture, 10, 93, WHITE); + DrawText("TEXTURE", 15, 360, 10, DARKGRAY); + + DrawText("Move the mouse to stretch or shrink the n-patches", 10, 20, 20, DARKGRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(nPatchTexture); // Texture unloading + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} diff --git a/examples/textures/textures_particles_blending.c b/examples/textures/textures_particles_blending.c new file mode 100644 index 0000000..ec144ff --- /dev/null +++ b/examples/textures/textures_particles_blending.c @@ -0,0 +1,140 @@ +/******************************************************************************************* +* +* raylib example - particles blending +* +* Example originally created with raylib 1.7, last time updated with raylib 3.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2017-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#define MAX_PARTICLES 200 + +// Particle structure with basic data +typedef struct { + Vector2 position; + Color color; + float alpha; + float size; + float rotation; + bool active; // NOTE: Use it to activate/deactive particle +} Particle; + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [textures] example - particles blending"); + + // Particles pool, reuse them! + Particle mouseTail[MAX_PARTICLES] = { 0 }; + + // Initialize particles + for (int i = 0; i < MAX_PARTICLES; i++) + { + mouseTail[i].position = (Vector2){ 0, 0 }; + mouseTail[i].color = (Color){ GetRandomValue(0, 255), GetRandomValue(0, 255), GetRandomValue(0, 255), 255 }; + mouseTail[i].alpha = 1.0f; + mouseTail[i].size = (float)GetRandomValue(1, 30)/20.0f; + mouseTail[i].rotation = (float)GetRandomValue(0, 360); + mouseTail[i].active = false; + } + + float gravity = 3.0f; + + Texture2D smoke = LoadTexture("resources/spark_flame.png"); + + int blending = BLEND_ALPHA; + + SetTargetFPS(60); + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + + // Activate one particle every frame and Update active particles + // NOTE: Particles initial position should be mouse position when activated + // NOTE: Particles fall down with gravity and rotation... and disappear after 2 seconds (alpha = 0) + // NOTE: When a particle disappears, active = false and it can be reused. + for (int i = 0; i < MAX_PARTICLES; i++) + { + if (!mouseTail[i].active) + { + mouseTail[i].active = true; + mouseTail[i].alpha = 1.0f; + mouseTail[i].position = GetMousePosition(); + i = MAX_PARTICLES; + } + } + + for (int i = 0; i < MAX_PARTICLES; i++) + { + if (mouseTail[i].active) + { + mouseTail[i].position.y += gravity/2; + mouseTail[i].alpha -= 0.005f; + + if (mouseTail[i].alpha <= 0.0f) mouseTail[i].active = false; + + mouseTail[i].rotation += 2.0f; + } + } + + if (IsKeyPressed(KEY_SPACE)) + { + if (blending == BLEND_ALPHA) blending = BLEND_ADDITIVE; + else blending = BLEND_ALPHA; + } + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(DARKGRAY); + + BeginBlendMode(blending); + + // Draw active particles + for (int i = 0; i < MAX_PARTICLES; i++) + { + if (mouseTail[i].active) DrawTexturePro(smoke, (Rectangle){ 0.0f, 0.0f, (float)smoke.width, (float)smoke.height }, + (Rectangle){ mouseTail[i].position.x, mouseTail[i].position.y, smoke.width*mouseTail[i].size, smoke.height*mouseTail[i].size }, + (Vector2){ (float)(smoke.width*mouseTail[i].size/2.0f), (float)(smoke.height*mouseTail[i].size/2.0f) }, mouseTail[i].rotation, + Fade(mouseTail[i].color, mouseTail[i].alpha)); + } + + EndBlendMode(); + + DrawText("PRESS SPACE to CHANGE BLENDING MODE", 180, 20, 20, BLACK); + + if (blending == BLEND_ALPHA) DrawText("ALPHA BLENDING", 290, screenHeight - 40, 20, BLACK); + else DrawText("ADDITIVE BLENDING", 280, screenHeight - 40, 20, RAYWHITE); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(smoke); + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/textures/textures_polygon.c b/examples/textures/textures_polygon.c new file mode 100644 index 0000000..cf59af9 --- /dev/null +++ b/examples/textures/textures_polygon.c @@ -0,0 +1,140 @@ +/******************************************************************************************* +* +* raylib [shapes] example - Draw Textured Polygon +* +* Example originally created with raylib 3.7, last time updated with raylib 3.7 +* +* Example contributed by Chris Camacho (@codifies) and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2021-2023 Chris Camacho (@codifies) and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#include "rlgl.h" // Required for: Vertex definition +#include "raymath.h" + +#define MAX_POINTS 11 // 10 points and back to the start + +// Draw textured polygon, defined by vertex and texture coordinates +void DrawTexturePoly(Texture2D texture, Vector2 center, Vector2 *points, Vector2 *texcoords, int pointCount, Color tint); + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [textures] example - textured polygon"); + + // Define texture coordinates to map our texture to poly + Vector2 texcoords[MAX_POINTS] = { + (Vector2){ 0.75f, 0.0f }, + (Vector2){ 0.25f, 0.0f }, + (Vector2){ 0.0f, 0.5f }, + (Vector2){ 0.0f, 0.75f }, + (Vector2){ 0.25f, 1.0f}, + (Vector2){ 0.375f, 0.875f}, + (Vector2){ 0.625f, 0.875f}, + (Vector2){ 0.75f, 1.0f}, + (Vector2){ 1.0f, 0.75f}, + (Vector2){ 1.0f, 0.5f}, + (Vector2){ 0.75f, 0.0f} // Close the poly + }; + + // Define the base poly vertices from the UV's + // NOTE: They can be specified in any other way + Vector2 points[MAX_POINTS] = { 0 }; + for (int i = 0; i < MAX_POINTS; i++) + { + points[i].x = (texcoords[i].x - 0.5f)*256.0f; + points[i].y = (texcoords[i].y - 0.5f)*256.0f; + } + + // Define the vertices drawing position + // NOTE: Initially same as points but updated every frame + Vector2 positions[MAX_POINTS] = { 0 }; + for (int i = 0; i < MAX_POINTS; i++) positions[i] = points[i]; + + // Load texture to be mapped to poly + Texture texture = LoadTexture("resources/cat.png"); + + float angle = 0.0f; // Rotation angle (in degrees) + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // Update points rotation with an angle transform + // NOTE: Base points position are not modified + angle++; + for (int i = 0; i < MAX_POINTS; i++) positions[i] = Vector2Rotate(points[i], angle*DEG2RAD); + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawText("textured polygon", 20, 20, 20, DARKGRAY); + + DrawTexturePoly(texture, (Vector2){ GetScreenWidth()/2.0f, GetScreenHeight()/2.0f }, + positions, texcoords, MAX_POINTS, WHITE); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(texture); // Unload texture + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} + +// Draw textured polygon, defined by vertex and texture coordinates +// NOTE: Polygon center must have straight line path to all points +// without crossing perimeter, points must be in anticlockwise order +void DrawTexturePoly(Texture2D texture, Vector2 center, Vector2 *points, Vector2 *texcoords, int pointCount, Color tint) +{ + rlSetTexture(texture.id); + + // Texturing is only supported on RL_QUADS + rlBegin(RL_QUADS); + + rlColor4ub(tint.r, tint.g, tint.b, tint.a); + + for (int i = 0; i < pointCount - 1; i++) + { + rlTexCoord2f(0.5f, 0.5f); + rlVertex2f(center.x, center.y); + + rlTexCoord2f(texcoords[i].x, texcoords[i].y); + rlVertex2f(points[i].x + center.x, points[i].y + center.y); + + rlTexCoord2f(texcoords[i + 1].x, texcoords[i + 1].y); + rlVertex2f(points[i + 1].x + center.x, points[i + 1].y + center.y); + + rlTexCoord2f(texcoords[i + 1].x, texcoords[i + 1].y); + rlVertex2f(points[i + 1].x + center.x, points[i + 1].y + center.y); + } + rlEnd(); + + rlSetTexture(0); +} diff --git a/examples/textures/textures_raw_data.c b/examples/textures/textures_raw_data.c new file mode 100644 index 0000000..22d7cc0 --- /dev/null +++ b/examples/textures/textures_raw_data.c @@ -0,0 +1,104 @@ +/******************************************************************************************* +* +* raylib [textures] example - Load textures from raw data +* +* NOTE: Images are loaded in CPU memory (RAM); textures are loaded in GPU memory (VRAM) +* +* Example originally created with raylib 1.3, last time updated with raylib 3.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2015-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#include // Required for: malloc() and free() + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [textures] example - texture from raw data"); + + // NOTE: Textures MUST be loaded after Window initialization (OpenGL context is required) + + // Load RAW image data (512x512, 32bit RGBA, no file header) + Image fudesumiRaw = LoadImageRaw("resources/fudesumi.raw", 384, 512, PIXELFORMAT_UNCOMPRESSED_R8G8B8A8, 0); + Texture2D fudesumi = LoadTextureFromImage(fudesumiRaw); // Upload CPU (RAM) image to GPU (VRAM) + UnloadImage(fudesumiRaw); // Unload CPU (RAM) image data + + // Generate a checked texture by code + int width = 960; + int height = 480; + + // Dynamic memory allocation to store pixels data (Color type) + Color *pixels = (Color *)malloc(width*height*sizeof(Color)); + + for (int y = 0; y < height; y++) + { + for (int x = 0; x < width; x++) + { + if (((x/32+y/32)/1)%2 == 0) pixels[y*width + x] = ORANGE; + else pixels[y*width + x] = GOLD; + } + } + + // Load pixels data into an image structure and create texture + Image checkedIm = { + .data = pixels, // We can assign pixels directly to data + .width = width, + .height = height, + .format = PIXELFORMAT_UNCOMPRESSED_R8G8B8A8, + .mipmaps = 1 + }; + + Texture2D checked = LoadTextureFromImage(checkedIm); + UnloadImage(checkedIm); // Unload CPU (RAM) image data (pixels) + //--------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // TODO: Update your variables here + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawTexture(checked, screenWidth/2 - checked.width/2, screenHeight/2 - checked.height/2, Fade(WHITE, 0.5f)); + DrawTexture(fudesumi, 430, -30, WHITE); + + DrawText("CHECKED TEXTURE ", 84, 85, 30, BROWN); + DrawText("GENERATED by CODE", 72, 148, 30, BROWN); + DrawText("and RAW IMAGE LOADING", 46, 210, 30, BROWN); + + DrawText("(c) Fudesumi sprite by Eiden Marsal", 310, screenHeight - 20, 10, BROWN); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(fudesumi); // Texture unloading + UnloadTexture(checked); // Texture unloading + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/textures/textures_sprite_anim.c b/examples/textures/textures_sprite_anim.c new file mode 100644 index 0000000..99efe2e --- /dev/null +++ b/examples/textures/textures_sprite_anim.c @@ -0,0 +1,105 @@ +/******************************************************************************************* +* +* raylib [textures] example - Sprite animation +* +* Example originally created with raylib 1.3, last time updated with raylib 1.3 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2014-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#define MAX_FRAME_SPEED 15 +#define MIN_FRAME_SPEED 1 + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [texture] example - sprite anim"); + + // NOTE: Textures MUST be loaded after Window initialization (OpenGL context is required) + Texture2D scarfy = LoadTexture("resources/scarfy.png"); // Texture loading + + Vector2 position = { 350.0f, 280.0f }; + Rectangle frameRec = { 0.0f, 0.0f, (float)scarfy.width/6, (float)scarfy.height }; + int currentFrame = 0; + + int framesCounter = 0; + int framesSpeed = 8; // Number of spritesheet frames shown by second + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + framesCounter++; + + if (framesCounter >= (60/framesSpeed)) + { + framesCounter = 0; + currentFrame++; + + if (currentFrame > 5) currentFrame = 0; + + frameRec.x = (float)currentFrame*(float)scarfy.width/6; + } + + // Control frames speed + if (IsKeyPressed(KEY_RIGHT)) framesSpeed++; + else if (IsKeyPressed(KEY_LEFT)) framesSpeed--; + + if (framesSpeed > MAX_FRAME_SPEED) framesSpeed = MAX_FRAME_SPEED; + else if (framesSpeed < MIN_FRAME_SPEED) framesSpeed = MIN_FRAME_SPEED; + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawTexture(scarfy, 15, 40, WHITE); + DrawRectangleLines(15, 40, scarfy.width, scarfy.height, LIME); + DrawRectangleLines(15 + (int)frameRec.x, 40 + (int)frameRec.y, (int)frameRec.width, (int)frameRec.height, RED); + + DrawText("FRAME SPEED: ", 165, 210, 10, DARKGRAY); + DrawText(TextFormat("%02i FPS", framesSpeed), 575, 210, 10, DARKGRAY); + DrawText("PRESS RIGHT/LEFT KEYS to CHANGE SPEED!", 290, 240, 10, DARKGRAY); + + for (int i = 0; i < MAX_FRAME_SPEED; i++) + { + if (i < framesSpeed) DrawRectangle(250 + 21*i, 205, 20, 20, RED); + DrawRectangleLines(250 + 21*i, 205, 20, 20, MAROON); + } + + DrawTextureRec(scarfy, frameRec, position, WHITE); // Draw part of the texture + + DrawText("(c) Scarfy sprite by Eiden Marsal", screenWidth - 200, screenHeight - 20, 10, GRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(scarfy); // Texture unloading + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/textures/textures_sprite_button.c b/examples/textures/textures_sprite_button.c new file mode 100644 index 0000000..bd98918 --- /dev/null +++ b/examples/textures/textures_sprite_button.c @@ -0,0 +1,102 @@ +/******************************************************************************************* +* +* raylib [textures] example - sprite button +* +* Example originally created with raylib 2.5, last time updated with raylib 2.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2019-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#define NUM_FRAMES 3 // Number of frames (rectangles) for the button sprite texture + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [textures] example - sprite button"); + + InitAudioDevice(); // Initialize audio device + + Sound fxButton = LoadSound("resources/buttonfx.wav"); // Load button sound + Texture2D button = LoadTexture("resources/button.png"); // Load button texture + + // Define frame rectangle for drawing + float frameHeight = (float)button.height/NUM_FRAMES; + Rectangle sourceRec = { 0, 0, (float)button.width, frameHeight }; + + // Define button bounds on screen + Rectangle btnBounds = { screenWidth/2.0f - button.width/2.0f, screenHeight/2.0f - button.height/NUM_FRAMES/2.0f, (float)button.width, frameHeight }; + + int btnState = 0; // Button state: 0-NORMAL, 1-MOUSE_HOVER, 2-PRESSED + bool btnAction = false; // Button action should be activated + + Vector2 mousePoint = { 0.0f, 0.0f }; + + SetTargetFPS(60); + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + mousePoint = GetMousePosition(); + btnAction = false; + + // Check button state + if (CheckCollisionPointRec(mousePoint, btnBounds)) + { + if (IsMouseButtonDown(MOUSE_BUTTON_LEFT)) btnState = 2; + else btnState = 1; + + if (IsMouseButtonReleased(MOUSE_BUTTON_LEFT)) btnAction = true; + } + else btnState = 0; + + if (btnAction) + { + PlaySound(fxButton); + + // TODO: Any desired action + } + + // Calculate button frame rectangle to draw depending on button state + sourceRec.y = btnState*frameHeight; + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawTextureRec(button, sourceRec, (Vector2){ btnBounds.x, btnBounds.y }, WHITE); // Draw button frame + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(button); // Unload button texture + UnloadSound(fxButton); // Unload sound + + CloseAudioDevice(); // Close audio device + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/textures/textures_sprite_explosion.c b/examples/textures/textures_sprite_explosion.c new file mode 100644 index 0000000..a6cbd3e --- /dev/null +++ b/examples/textures/textures_sprite_explosion.c @@ -0,0 +1,125 @@ +/******************************************************************************************* +* +* raylib [textures] example - sprite explosion +* +* Example originally created with raylib 2.5, last time updated with raylib 3.5 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2019-2023 Anata and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +#define NUM_FRAMES_PER_LINE 5 +#define NUM_LINES 5 + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [textures] example - sprite explosion"); + + InitAudioDevice(); + + // Load explosion sound + Sound fxBoom = LoadSound("resources/boom.wav"); + + // Load explosion texture + Texture2D explosion = LoadTexture("resources/explosion.png"); + + // Init variables for animation + float frameWidth = (float)(explosion.width/NUM_FRAMES_PER_LINE); // Sprite one frame rectangle width + float frameHeight = (float)(explosion.height/NUM_LINES); // Sprite one frame rectangle height + int currentFrame = 0; + int currentLine = 0; + + Rectangle frameRec = { 0, 0, frameWidth, frameHeight }; + Vector2 position = { 0.0f, 0.0f }; + + bool active = false; + int framesCounter = 0; + + SetTargetFPS(120); + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + + // Check for mouse button pressed and activate explosion (if not active) + if (IsMouseButtonPressed(MOUSE_BUTTON_LEFT) && !active) + { + position = GetMousePosition(); + active = true; + + position.x -= frameWidth/2.0f; + position.y -= frameHeight/2.0f; + + PlaySound(fxBoom); + } + + // Compute explosion animation frames + if (active) + { + framesCounter++; + + if (framesCounter > 2) + { + currentFrame++; + + if (currentFrame >= NUM_FRAMES_PER_LINE) + { + currentFrame = 0; + currentLine++; + + if (currentLine >= NUM_LINES) + { + currentLine = 0; + active = false; + } + } + + framesCounter = 0; + } + } + + frameRec.x = frameWidth*currentFrame; + frameRec.y = frameHeight*currentLine; + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + // Draw explosion required frame rectangle + if (active) DrawTextureRec(explosion, frameRec, position, WHITE); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(explosion); // Unload texture + UnloadSound(fxBoom); // Unload sound + + CloseAudioDevice(); + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/textures/textures_srcrec_dstrec.c b/examples/textures/textures_srcrec_dstrec.c new file mode 100644 index 0000000..caf8f64 --- /dev/null +++ b/examples/textures/textures_srcrec_dstrec.c @@ -0,0 +1,87 @@ +/******************************************************************************************* +* +* raylib [textures] example - Texture source and destination rectangles +* +* Example originally created with raylib 1.3, last time updated with raylib 1.3 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2015-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [textures] examples - texture source and destination rectangles"); + + // NOTE: Textures MUST be loaded after Window initialization (OpenGL context is required) + + Texture2D scarfy = LoadTexture("resources/scarfy.png"); // Texture loading + + int frameWidth = scarfy.width/6; + int frameHeight = scarfy.height; + + // Source rectangle (part of the texture to use for drawing) + Rectangle sourceRec = { 0.0f, 0.0f, (float)frameWidth, (float)frameHeight }; + + // Destination rectangle (screen rectangle where drawing part of texture) + Rectangle destRec = { screenWidth/2.0f, screenHeight/2.0f, frameWidth*2.0f, frameHeight*2.0f }; + + // Origin of the texture (rotation/scale point), it's relative to destination rectangle size + Vector2 origin = { (float)frameWidth, (float)frameHeight }; + + int rotation = 0; + + SetTargetFPS(60); + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + rotation++; + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + // NOTE: Using DrawTexturePro() we can easily rotate and scale the part of the texture we draw + // sourceRec defines the part of the texture we use for drawing + // destRec defines the rectangle where our texture part will fit (scaling it to fit) + // origin defines the point of the texture used as reference for rotation and scaling + // rotation defines the texture rotation (using origin as rotation point) + DrawTexturePro(scarfy, sourceRec, destRec, origin, (float)rotation, WHITE); + + DrawLine((int)destRec.x, 0, (int)destRec.x, screenHeight, GRAY); + DrawLine(0, (int)destRec.y, screenWidth, (int)destRec.y, GRAY); + + DrawText("(c) Scarfy sprite by Eiden Marsal", screenWidth - 200, screenHeight - 20, 10, GRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(scarfy); // Texture unloading + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/examples/textures/textures_textured_curve.c b/examples/textures/textures_textured_curve.c new file mode 100644 index 0000000..3c2f060 --- /dev/null +++ b/examples/textures/textures_textured_curve.c @@ -0,0 +1,259 @@ +/******************************************************************************************* +* +* raylib [textures] example - Draw a texture along a segmented curve +* +* Example originally created with raylib 4.5, last time updated with raylib 4.5 +* +* Example contributed by Jeffery Myers and reviewed by Ramon Santamaria (@raysan5) +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2022-2023 Jeffery Myers and Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + + +#include "raylib.h" + +#include "raymath.h" +#include "rlgl.h" + +#include // Required for: powf() +#include // Required for: NULL + +//---------------------------------------------------------------------------------- +// Global Variables Definition +//---------------------------------------------------------------------------------- +static Texture texRoad = { 0 }; + +static bool showCurve = false; + +static float curveWidth = 50; +static int curveSegments = 24; + +static Vector2 curveStartPosition = { 0 }; +static Vector2 curveStartPositionTangent = { 0 }; + +static Vector2 curveEndPosition = { 0 }; +static Vector2 curveEndPositionTangent = { 0 }; + +static Vector2 *curveSelectedPoint = NULL; + +//---------------------------------------------------------------------------------- +// Module Functions Declaration +//---------------------------------------------------------------------------------- +static void UpdateOptions(void); +static void UpdateCurve(void); +static void DrawCurve(void); +static void DrawTexturedCurve(void); + + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main() +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + SetConfigFlags(FLAG_VSYNC_HINT | FLAG_MSAA_4X_HINT); + InitWindow(screenWidth, screenHeight, "raylib [textures] examples - textured curve"); + + // Load the road texture + texRoad = LoadTexture("resources/road.png"); + SetTextureFilter(texRoad, TEXTURE_FILTER_BILINEAR); + + // Setup the curve + curveStartPosition = (Vector2){ 80, 100 }; + curveStartPositionTangent = (Vector2){ 100, 300 }; + + curveEndPosition = (Vector2){ 700, 350 }; + curveEndPositionTangent = (Vector2){ 600, 100 }; + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second + //-------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + UpdateCurve(); + UpdateOptions(); + + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawTexturedCurve(); + DrawCurve(); + + DrawText("Drag points to move curve, press SPACE to show/hide base curve", 10, 10, 10, DARKGRAY); + DrawText(TextFormat("Curve width: %2.0f (Use + and - to adjust)", curveWidth), 10, 30, 10, DARKGRAY); + DrawText(TextFormat("Curve segments: %d (Use LEFT and RIGHT to adjust)", curveSegments), 10, 50, 10, DARKGRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(texRoad); + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} + +//---------------------------------------------------------------------------------- +// Module Functions Definition +//---------------------------------------------------------------------------------- +static void DrawCurve(void) +{ + if (showCurve) DrawLineBezierCubic(curveStartPosition, curveEndPosition, curveStartPositionTangent, curveEndPositionTangent, 2, BLUE); + + // Draw the various control points and highlight where the mouse is + DrawLineV(curveStartPosition, curveStartPositionTangent, SKYBLUE); + DrawLineV(curveEndPosition, curveEndPositionTangent, PURPLE); + Vector2 mouse = GetMousePosition(); + + if (CheckCollisionPointCircle(mouse, curveStartPosition, 6)) DrawCircleV(curveStartPosition, 7, YELLOW); + DrawCircleV(curveStartPosition, 5, RED); + + if (CheckCollisionPointCircle(mouse, curveStartPositionTangent, 6)) DrawCircleV(curveStartPositionTangent, 7, YELLOW); + DrawCircleV(curveStartPositionTangent, 5, MAROON); + + if (CheckCollisionPointCircle(mouse, curveEndPosition, 6)) DrawCircleV(curveEndPosition, 7, YELLOW); + DrawCircleV(curveEndPosition, 5, GREEN); + + if (CheckCollisionPointCircle(mouse, curveEndPositionTangent, 6)) DrawCircleV(curveEndPositionTangent, 7, YELLOW); + DrawCircleV(curveEndPositionTangent, 5, DARKGREEN); +} + +static void UpdateCurve(void) +{ + // If the mouse is not down, we are not editing the curve so clear the selection + if (!IsMouseButtonDown(MOUSE_LEFT_BUTTON)) + { + curveSelectedPoint = NULL; + return; + } + + // If a point was selected, move it + if (curveSelectedPoint) + { + *curveSelectedPoint = Vector2Add(*curveSelectedPoint, GetMouseDelta()); + return; + } + + // The mouse is down, and nothing was selected, so see if anything was picked + Vector2 mouse = GetMousePosition(); + + if (CheckCollisionPointCircle(mouse, curveStartPosition, 6)) curveSelectedPoint = &curveStartPosition; + else if (CheckCollisionPointCircle(mouse, curveStartPositionTangent, 6)) curveSelectedPoint = &curveStartPositionTangent; + else if (CheckCollisionPointCircle(mouse, curveEndPosition, 6)) curveSelectedPoint = &curveEndPosition; + else if (CheckCollisionPointCircle(mouse, curveEndPositionTangent, 6)) curveSelectedPoint = &curveEndPositionTangent; +} + +static void DrawTexturedCurve(void) +{ + const float step = 1.0f/curveSegments; + + Vector2 previous = curveStartPosition; + Vector2 previousTangent = { 0 }; + float previousV = 0; + + // We can't compute a tangent for the first point, so we need to reuse the tangent from the first segment + bool tangentSet = false; + + Vector2 current = { 0 }; + float t = 0.0f; + + for (int i = 1; i <= curveSegments; i++) + { + // Segment the curve + t = step*i; + float a = powf(1 - t, 3); + float b = 3*powf(1 - t, 2)*t; + float c = 3*(1 - t)*powf(t, 2); + float d = powf(t, 3); + + // Compute the endpoint for this segment + current.y = a*curveStartPosition.y + b*curveStartPositionTangent.y + c*curveEndPositionTangent.y + d*curveEndPosition.y; + current.x = a*curveStartPosition.x + b*curveStartPositionTangent.x + c*curveEndPositionTangent.x + d*curveEndPosition.x; + + // Vector from previous to current + Vector2 delta = { current.x - previous.x, current.y - previous.y }; + + // The right hand normal to the delta vector + Vector2 normal = Vector2Normalize((Vector2){ -delta.y, delta.x }); + + // The v texture coordinate of the segment (add up the length of all the segments so far) + float v = previousV + Vector2Length(delta); + + // Make sure the start point has a normal + if (!tangentSet) + { + previousTangent = normal; + tangentSet = true; + } + + // Extend out the normals from the previous and current points to get the quad for this segment + Vector2 prevPosNormal = Vector2Add(previous, Vector2Scale(previousTangent, curveWidth)); + Vector2 prevNegNormal = Vector2Add(previous, Vector2Scale(previousTangent, -curveWidth)); + + Vector2 currentPosNormal = Vector2Add(current, Vector2Scale(normal, curveWidth)); + Vector2 currentNegNormal = Vector2Add(current, Vector2Scale(normal, -curveWidth)); + + // Draw the segment as a quad + rlSetTexture(texRoad.id); + rlBegin(RL_QUADS); + + rlColor4ub(255,255,255,255); + rlNormal3f(0.0f, 0.0f, 1.0f); + + rlTexCoord2f(0, previousV); + rlVertex2f(prevNegNormal.x, prevNegNormal.y); + + rlTexCoord2f(1, previousV); + rlVertex2f(prevPosNormal.x, prevPosNormal.y); + + rlTexCoord2f(1, v); + rlVertex2f(currentPosNormal.x, currentPosNormal.y); + + rlTexCoord2f(0, v); + rlVertex2f(currentNegNormal.x, currentNegNormal.y); + + rlEnd(); + + // The current step is the start of the next step + previous = current; + previousTangent = normal; + previousV = v; + } +} + +static void UpdateOptions(void) +{ + if (IsKeyPressed(KEY_SPACE)) showCurve = !showCurve; + + // Update with + if (IsKeyPressed(KEY_EQUAL)) curveWidth += 2; + if (IsKeyPressed(KEY_MINUS)) curveWidth -= 2; + + if (curveWidth < 2) curveWidth = 2; + + // Update segments + if (IsKeyPressed(KEY_LEFT)) curveSegments -= 2; + if (IsKeyPressed(KEY_RIGHT)) curveSegments += 2; + + if (curveSegments < 2) curveSegments = 2; +} diff --git a/examples/textures/textures_to_image.c b/examples/textures/textures_to_image.c new file mode 100644 index 0000000..fd3c848 --- /dev/null +++ b/examples/textures/textures_to_image.c @@ -0,0 +1,73 @@ +/******************************************************************************************* +* +* raylib [textures] example - Retrieve image data from texture: LoadImageFromTexture() +* +* NOTE: Images are loaded in CPU memory (RAM); textures are loaded in GPU memory (VRAM) +* +* Example originally created with raylib 1.3, last time updated with raylib 4.0 +* +* Example licensed under an unmodified zlib/libpng license, which is an OSI-certified, +* BSD-like license that allows static linking with closed source software +* +* Copyright (c) 2015-2023 Ramon Santamaria (@raysan5) +* +********************************************************************************************/ + +#include "raylib.h" + +//------------------------------------------------------------------------------------ +// Program main entry point +//------------------------------------------------------------------------------------ +int main(void) +{ + // Initialization + //-------------------------------------------------------------------------------------- + const int screenWidth = 800; + const int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [textures] example - texture to image"); + + // NOTE: Textures MUST be loaded after Window initialization (OpenGL context is required) + + Image image = LoadImage("resources/raylib_logo.png"); // Load image data into CPU memory (RAM) + Texture2D texture = LoadTextureFromImage(image); // Image converted to texture, GPU memory (RAM -> VRAM) + UnloadImage(image); // Unload image data from CPU memory (RAM) + + image = LoadImageFromTexture(texture); // Load image from GPU texture (VRAM -> RAM) + UnloadTexture(texture); // Unload texture from GPU memory (VRAM) + + texture = LoadTextureFromImage(image); // Recreate texture from retrieved image data (RAM -> VRAM) + UnloadImage(image); // Unload retrieved image data from CPU memory (RAM) + //--------------------------------------------------------------------------------------- + + // Main game loop + while (!WindowShouldClose()) // Detect window close button or ESC key + { + // Update + //---------------------------------------------------------------------------------- + // TODO: Update your variables here + //---------------------------------------------------------------------------------- + + // Draw + //---------------------------------------------------------------------------------- + BeginDrawing(); + + ClearBackground(RAYWHITE); + + DrawTexture(texture, screenWidth/2 - texture.width/2, screenHeight/2 - texture.height/2, WHITE); + + DrawText("this IS a texture loaded from an image!", 300, 370, 10, GRAY); + + EndDrawing(); + //---------------------------------------------------------------------------------- + } + + // De-Initialization + //-------------------------------------------------------------------------------------- + UnloadTexture(texture); // Texture unloading + + CloseWindow(); // Close window and OpenGL context + //-------------------------------------------------------------------------------------- + + return 0; +} \ No newline at end of file diff --git a/readme.md b/readme.md index 2e6f35f..b982cac 100644 --- a/readme.md +++ b/readme.md @@ -63,7 +63,18 @@ Similar to including a header in C and for your convenience, all types/functions ## Auto-Complete / Intellisense -rayjs comes with full auto-complete support in the form of the definitions file `lib.raylib.d.ts`. These will work with Typescript and Javascript. For most editors (e.g. Visual Studio Code) it should be enough to put them in the project folder. +rayjs comes with full auto-complete support in the form of the definitions file `lib.raylib.d.ts`. These will work with Typescript and Javascript. In order to use them with Javascript you should create a Typescript configuration file in the project root (even if you are not using Typescript) called `tsconfig.json` with the following configuration +```json +{ + "compilerOptions": { + "allowJs": true, + "target": "es2020", + "lib": [ + "ES2020" + ] + } +} +``` ![](doc/auto-complete.png) ## Building