diff --git a/tests/test_music_stream.c b/examples/audio_music_stream.c similarity index 70% rename from tests/test_music_stream.c rename to examples/audio_music_stream.c index c6cb53fc0..0d0265064 100644 --- a/tests/test_music_stream.c +++ b/examples/audio_music_stream.c @@ -1,10 +1,10 @@ /******************************************************************************************* * -* raylib test - Music playing (streaming) +* raylib [audio] example - Music playing (streaming) * -* NOTE: This test requires OpenAL32 dll installed (or in the same folder) +* NOTE: This example requires OpenAL Soft library installed * -* This test has been created using raylib 1.1 (www.raylib.com) +* This example has been created using raylib 1.1 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * * Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) @@ -20,18 +20,17 @@ int main() int screenWidth = 800; int screenHeight = 450; - InitWindow(screenWidth, screenHeight, "raylib test - music playing (streaming)"); + InitWindow(screenWidth, screenHeight, "raylib [audio] example - music playing (streaming)"); - InitAudioDevice(); // Initialize audio device + InitAudioDevice(); // Initialize audio device - PlayMusicStream("resources/audio/deserve_to_be_loved.ogg"); // Load Music file + PlayMusicStream("resources/audio/guitar_noodling.ogg"); // Play music stream int framesCounter = 0; float volume = 1.0; - float timePlayed = 0; - SetTargetFPS(60); + SetTargetFPS(60); // Set our game to run at 60 frames-per-second //-------------------------------------------------------------------------------------- // Main game loop @@ -41,17 +40,19 @@ int main() //---------------------------------------------------------------------------------- framesCounter++; - // Testing music fading + // Testing music fading from one file to another /* - if (framesCounter > 600) + if (framesCounter > 600) // Wait for 10 seconds (600 frames) { - volume -= 0.01; + volume -= 0.01; // Decrement music volume level - if (volume <= 0) + // When music volume level equal or lower than 0, + // restore volume level and init another music file + if (volume <= 0) { volume = 1.0; - framesCounter = -600; - PlayMusicStream("resources/audio/destiny.ogg"); + framesCounter = 0; + PlayMusicStream("resources/audio/another_file.ogg"); } SetMusicVolume(volume); diff --git a/examples/audio_music_stream.png b/examples/audio_music_stream.png new file mode 100644 index 000000000..f8b14e159 Binary files /dev/null and b/examples/audio_music_stream.png differ diff --git a/examples/audio_sound_loading.c b/examples/audio_sound_loading.c index d070e95dd..68f8dca92 100644 --- a/examples/audio_sound_loading.c +++ b/examples/audio_sound_loading.c @@ -1,13 +1,13 @@ /******************************************************************************************* * -* raylib example 08 - Audio loading and playing +* raylib [audio] example - Sound loading and playing * -* NOTE: This example requires OpenAL32 dll installed (or in the same folder) +* NOTE: This example requires OpenAL Soft library installed * * This example has been created using raylib 1.0 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * -* Copyright (c) 2013 Ramon Santamaria (Ray San - raysan@raysanweb.com) +* Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) * ********************************************************************************************/ @@ -20,11 +20,12 @@ int main() int screenWidth = 800; int screenHeight = 450; - InitWindow(screenWidth, screenHeight, "raylib example 08 - audio loading and playing"); + InitWindow(screenWidth, screenHeight, "raylib [audio] example - sound loading and playing"); InitAudioDevice(); // Initialize audio device - Sound fx = LoadSound("resources/audio/weird.wav"); // Load WAV audio file + Sound fxWav = LoadSound("resources/audio/weird.wav"); // Load WAV audio file + Sound fxOgg = LoadSound("resources/audio/tanatana.ogg"); // Load OGG audio file //-------------------------------------------------------------------------------------- // Main game loop @@ -32,7 +33,9 @@ int main() { // Update //---------------------------------------------------------------------------------- - if (IsKeyPressed(KEY_SPACE)) PlaySound(fx); // Play the sound! + if (IsKeyPressed(KEY_SPACE)) PlaySound(fxWav); // Play WAV sound + + if (IsKeyPressed(KEY_ENTER)) PlaySound(fxOgg); // Play OGG sound //---------------------------------------------------------------------------------- // Draw @@ -41,7 +44,9 @@ int main() ClearBackground(RAYWHITE); - DrawText("Press SPACE to PLAY the SOUND!", 240, 200, 20, LIGHTGRAY); + 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(); //---------------------------------------------------------------------------------- @@ -49,7 +54,8 @@ int main() // De-Initialization //-------------------------------------------------------------------------------------- - UnloadSound(fx); // Unload sound data + UnloadSound(fxWav); // Unload sound data + UnloadSound(fxOgg); // Unload sound data CloseAudioDevice(); // Close audio device @@ -57,4 +63,4 @@ int main() //-------------------------------------------------------------------------------------- return 0; -} +} \ No newline at end of file diff --git a/examples/audio_sound_loading.png b/examples/audio_sound_loading.png new file mode 100644 index 000000000..24071ce3c Binary files /dev/null and b/examples/audio_sound_loading.png differ diff --git a/examples/core_3d_mode.c b/examples/core_3d_mode.c index 984f3fea5..e62247f67 100644 --- a/examples/core_3d_mode.c +++ b/examples/core_3d_mode.c @@ -1,11 +1,11 @@ /******************************************************************************************* * -* raylib example 07a - Initialize 3d mode +* raylib [core] example - Initialize 3d mode * * This example has been created using raylib 1.0 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * -* Copyright (c) 2013 Ramon Santamaria (Ray San - raysan@raysanweb.com) +* Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) * ********************************************************************************************/ @@ -18,11 +18,14 @@ int main() int screenWidth = 800; int screenHeight = 450; - Vector3 position = { 0.0, 0.0, 0.0 }; - + InitWindow(screenWidth, screenHeight, "raylib [core] example - 3d mode"); + + // Define the camera to look into our 3d world Camera camera = {{ 0.0, 10.0, 10.0 }, { 0.0, 0.0, 0.0 }, { 0.0, 1.0, 0.0 }}; - - InitWindow(screenWidth, screenHeight, "raylib example 07a - 3d mode"); + + Vector3 cubePosition = { 0.0, 0.0, 0.0 }; + + //SetTargetFPS(60); // Set our game to run at 60 frames-per-second, but not now... //-------------------------------------------------------------------------------------- // Main game loop @@ -41,7 +44,8 @@ int main() Begin3dMode(camera); - DrawCube(position, 2, 2, 2, RED); + DrawCube(cubePosition, 2, 2, 2, RED); + DrawCubeWires(cubePosition, 2, 2, 2, MAROON); DrawGrid(10.0, 1.0); @@ -61,4 +65,4 @@ int main() //-------------------------------------------------------------------------------------- return 0; -} +} \ No newline at end of file diff --git a/examples/ex07a_3d_mode.png b/examples/core_3d_mode.png similarity index 100% rename from examples/ex07a_3d_mode.png rename to examples/core_3d_mode.png diff --git a/examples/core_basic_window.c b/examples/core_basic_window.c index e3caebb67..2feff9856 100644 --- a/examples/core_basic_window.c +++ b/examples/core_basic_window.c @@ -1,11 +1,11 @@ /******************************************************************************************* * -* raylib example 01 - Basic Window +* raylib [core] example - Basic window * * This example has been created using raylib 1.0 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * -* Copyright (c) 2013 Ramon Santamaria (Ray San - raysan@raysanweb.com) +* Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) * ********************************************************************************************/ @@ -18,7 +18,7 @@ int main() int screenWidth = 800; int screenHeight = 450; - InitWindow(screenWidth, screenHeight, "raylib example 01a - basic window"); + InitWindow(screenWidth, screenHeight, "raylib [core] example - basic window"); //-------------------------------------------------------------------------------------- // Main game loop @@ -47,4 +47,4 @@ int main() //-------------------------------------------------------------------------------------- return 0; -} +} \ No newline at end of file diff --git a/examples/ex01_basic_window.png b/examples/core_basic_window.png similarity index 100% rename from examples/ex01_basic_window.png rename to examples/core_basic_window.png diff --git a/examples/core_color_select.c b/examples/core_color_select.c index b3714bc85..6648a2595 100644 --- a/examples/core_color_select.c +++ b/examples/core_color_select.c @@ -1,11 +1,11 @@ /******************************************************************************************* * -* raylib example 06a - Color selection by mouse (collision detection) +* raylib [core] example - Color selection by mouse (collision detection) * * This example has been created using raylib 1.0 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * -* Copyright (c) 2013 Ramon Santamaria (Ray San - raysan@raysanweb.com) +* Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) * ********************************************************************************************/ @@ -17,29 +17,29 @@ int main() //-------------------------------------------------------------------------------------- int screenWidth = 800; int screenHeight = 400; + + InitWindow(screenWidth, screenHeight, "raylib [core] example - color selection (collision detection)"); Color colors[21] = { DARKGRAY, MAROON, ORANGE, DARKGREEN, DARKBLUE, DARKPURPLE, DARKBROWN, GRAY, RED, GOLD, LIME, BLUE, VIOLET, BROWN, LIGHTGRAY, PINK, YELLOW, GREEN, SKYBLUE, PURPLE, BEIGE }; - Rectangle recs[21]; // Rectangles array + Rectangle colorsRecs[21]; // Rectangles array - // Fills recs data (for every rectangle) + // Fills colorsRecs data (for every rectangle) for (int i = 0; i < 21; i++) { - recs[i].x = 20 + 100*(i%7) + 10*(i%7); - recs[i].y = 40 + 100*(i/7) + 10*(i/7); - recs[i].width = 100; - recs[i].height = 100; + colorsRecs[i].x = 20 + 100*(i%7) + 10*(i%7); + colorsRecs[i].y = 40 + 100*(i/7) + 10*(i/7); + colorsRecs[i].width = 100; + colorsRecs[i].height = 100; } - bool selected[21] = { false }; // Selected rectangles indicator + bool selected[21] = { false }; // Selected rectangles indicator Vector2 mousePoint; - InitWindow(screenWidth, screenHeight, "raylib example 06a - color selection"); - - SetTargetFPS(60); + SetTargetFPS(60); // Set our game to run at 60 frames-per-second //-------------------------------------------------------------------------------------- // Main game loop @@ -51,7 +51,7 @@ int main() for (int i = 0; i < 21; i++) // Iterate along all the rectangles { - if (CheckCollisionPointRec(mousePoint, recs[i])) + if (CheckCollisionPointRec(mousePoint, colorsRecs[i])) { colors[i].a = 120; @@ -69,15 +69,15 @@ int main() for (int i = 0; i < 21; i++) // Draw all rectangles { - DrawRectangleRec(recs[i], colors[i]); + DrawRectangleRec(colorsRecs[i], colors[i]); // Draw four rectangles around selected rectangle if (selected[i]) { - DrawRectangle(recs[i].x, recs[i].y, 100, 10, RAYWHITE); // Square top rectangle - DrawRectangle(recs[i].x, recs[i].y, 10, 100, RAYWHITE); // Square left rectangle - DrawRectangle(recs[i].x + 90, recs[i].y, 10, 100, RAYWHITE); // Square right rectangle - DrawRectangle(recs[i].x, recs[i].y + 90, 100, 10, RAYWHITE); // Square bottom rectangle + DrawRectangle(colorsRecs[i].x, colorsRecs[i].y, 100, 10, RAYWHITE); // Square top rectangle + DrawRectangle(colorsRecs[i].x, colorsRecs[i].y, 10, 100, RAYWHITE); // Square left rectangle + DrawRectangle(colorsRecs[i].x + 90, colorsRecs[i].y, 10, 100, RAYWHITE); // Square right rectangle + DrawRectangle(colorsRecs[i].x, colorsRecs[i].y + 90, 100, 10, RAYWHITE); // Square bottom rectangle } } @@ -91,4 +91,4 @@ int main() //-------------------------------------------------------------------------------------- return 0; -} +} \ No newline at end of file diff --git a/examples/ex06a_color_select.png b/examples/core_color_select.png similarity index 100% rename from examples/ex06a_color_select.png rename to examples/core_color_select.png diff --git a/examples/core_input_gamepad.c b/examples/core_input_gamepad.c index 6b883b42d..9ce5b6ff2 100644 --- a/examples/core_input_gamepad.c +++ b/examples/core_input_gamepad.c @@ -1,11 +1,14 @@ /******************************************************************************************* * -* raylib example 03c - Gamepad input +* raylib [core] example - Gamepad input +* +* NOTE: This example requires a Gamepad connected to the system +* raylib is configured to work with Xbox 360 gamepad, check raylib.h for buttons configuration * * This example has been created using raylib 1.0 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * -* Copyright (c) 2013 Ramon Santamaria (Ray San - raysan@raysanweb.com) +* Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) * ********************************************************************************************/ @@ -18,12 +21,12 @@ int main() int screenWidth = 800; int screenHeight = 450; + InitWindow(screenWidth, screenHeight, "raylib [core] example - gamepad input"); + Vector2 ballPosition = { screenWidth/2, screenHeight/2 }; - Vector2 gamepadMove = { 0, 0 }; - - InitWindow(screenWidth, screenHeight, "raylib example 01 - gamepad input"); - - SetTargetFPS(60); // Set target frames-per-second + Vector2 gamepadMovement = { 0, 0 }; + + SetTargetFPS(60); // Set target frames-per-second //-------------------------------------------------------------------------------------- // Main game loop @@ -33,10 +36,10 @@ int main() //---------------------------------------------------------------------------------- if (IsGamepadAvailable(GAMEPAD_PLAYER1)) { - gamepadMove = GetGamepadMovement(GAMEPAD_PLAYER1); + gamepadMovement = GetGamepadMovement(GAMEPAD_PLAYER1); - ballPosition.x += gamepadMove.x; - ballPosition.y -= gamepadMove.y; + ballPosition.x += gamepadMovement.x; + ballPosition.y -= gamepadMovement.y; if (IsGamepadButtonPressed(GAMEPAD_PLAYER1, GAMEPAD_BUTTON_A)) { @@ -66,4 +69,4 @@ int main() //-------------------------------------------------------------------------------------- return 0; -} +} \ No newline at end of file diff --git a/examples/ex03c_input_gamepad.png b/examples/core_input_gamepad.png similarity index 100% rename from examples/ex03c_input_gamepad.png rename to examples/core_input_gamepad.png diff --git a/examples/core_input_keys.c b/examples/core_input_keys.c index 5c9a4aa16..086edd9fc 100644 --- a/examples/core_input_keys.c +++ b/examples/core_input_keys.c @@ -1,11 +1,11 @@ /******************************************************************************************* * -* raylib example 03a - Keyboard input +* raylib [core] example - Keyboard input * * This example has been created using raylib 1.0 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * -* Copyright (c) 2013 Ramon Santamaria (Ray San - raysan@raysanweb.com) +* Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) * ********************************************************************************************/ @@ -18,10 +18,10 @@ int main() int screenWidth = 800; int screenHeight = 450; - Vector2 ballPosition = { screenWidth/2, screenHeight/2 }; - - InitWindow(screenWidth, screenHeight, "raylib example 05 - keyboard input"); - + InitWindow(screenWidth, screenHeight, "raylib [core] example - keyboard input"); + + Vector2 ballPosition = { screenWidth/2, screenHeight/2 }; + SetTargetFPS(60); // Set target frames-per-second //-------------------------------------------------------------------------------------- @@ -56,4 +56,4 @@ int main() //-------------------------------------------------------------------------------------- return 0; -} +} \ No newline at end of file diff --git a/examples/ex03a_input_keys.png b/examples/core_input_keys.png similarity index 100% rename from examples/ex03a_input_keys.png rename to examples/core_input_keys.png diff --git a/examples/core_input_mouse.c b/examples/core_input_mouse.c index 71aba744f..419238adc 100644 --- a/examples/core_input_mouse.c +++ b/examples/core_input_mouse.c @@ -1,11 +1,11 @@ /******************************************************************************************* * -* raylib example 03b - Mouse input +* raylib [core] example - Mouse input * * This example has been created using raylib 1.0 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * -* Copyright (c) 2013 Ramon Santamaria (Ray San - raysan@raysanweb.com) +* Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) * ********************************************************************************************/ @@ -18,10 +18,10 @@ int main() int screenWidth = 800; int screenHeight = 450; - Vector2 ballPosition = { -100.0, -100.0 }; - int mouseX, mouseY; + InitWindow(screenWidth, screenHeight, "raylib [core] example - mouse input"); - InitWindow(screenWidth, screenHeight, "raylib example 06 - mouse input"); + int mouseX, mouseY; + Vector2 ballPosition = { -100.0, -100.0 }; //--------------------------------------------------------------------------------------- // Main game loop @@ -59,4 +59,4 @@ int main() //-------------------------------------------------------------------------------------- return 0; -} +} \ No newline at end of file diff --git a/examples/ex03b_input_mouse.png b/examples/core_input_mouse.png similarity index 100% rename from examples/ex03b_input_mouse.png rename to examples/core_input_mouse.png diff --git a/tests/test_texture_mipmaps.c b/examples/core_mouse_wheel.c similarity index 70% rename from tests/test_texture_mipmaps.c rename to examples/core_mouse_wheel.c index 7695ba19f..11b435735 100644 --- a/tests/test_texture_mipmaps.c +++ b/examples/core_mouse_wheel.c @@ -1,6 +1,6 @@ /******************************************************************************************* * -* raylib test - Texture loading with mipmaps, mipmaps generation +* raylib [core] examples - Mouse wheel * * This test has been created using raylib 1.1 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) @@ -17,15 +17,13 @@ int main() //-------------------------------------------------------------------------------------- int screenWidth = 800; int screenHeight = 450; - - InitWindow(screenWidth, screenHeight, "raylib test - texture mipmaps"); - Image image = LoadImage("resources/raylib_logo.png"); - Texture2D texture = CreateTexture(image, true); + InitWindow(screenWidth, screenHeight, "raylib [core] example - mouse wheel"); - // NOTE: With OpenGL 3.3 mipmaps generation works great (automatic generation) - // NOTE: With OpenGL 1.1 mipmaps generation works great too! (manual generation) + int boxPositionY = screenHeight/2 - 40; + int scrollSpeed = 4; // Scrolling speed in pixels + SetTargetFPS(60); //-------------------------------------------------------------------------------------- // Main game loop @@ -33,7 +31,7 @@ int main() { // Update //---------------------------------------------------------------------------------- - // TODO: Update your variables here + boxPositionY -= (GetMouseWheelMove()*scrollSpeed); //---------------------------------------------------------------------------------- // Draw @@ -42,17 +40,18 @@ int main() ClearBackground(RAYWHITE); - DrawTexture(texture, 0, 0, WHITE); - + DrawRectangle(screenWidth/2 - 40, boxPositionY, 80, 80, MAROON); + + DrawText("Use mouse wheel to move the cube up and down!", 10, 10, 20, GRAY); + DrawText(FormatText("Box position Y: %03i", boxPositionY), 10, 40, 20, LIGHTGRAY); + EndDrawing(); //---------------------------------------------------------------------------------- } // De-Initialization //-------------------------------------------------------------------------------------- - UnloadTexture(texture); // Texture unloading - - CloseWindow(); // Close window and OpenGL context + CloseWindow(); // Close window and OpenGL context //-------------------------------------------------------------------------------------- return 0; diff --git a/examples/core_mouse_wheel.png b/examples/core_mouse_wheel.png new file mode 100644 index 000000000..26a1f243d Binary files /dev/null and b/examples/core_mouse_wheel.png differ diff --git a/tests/test_random.c b/examples/core_random_values.c similarity index 67% rename from tests/test_random.c rename to examples/core_random_values.c index b44bf1db6..9cb10b8c5 100644 --- a/tests/test_random.c +++ b/examples/core_random_values.c @@ -1,11 +1,11 @@ /******************************************************************************************* * -* raylib test - Testing GetRandomValue() +* raylib [core] example - Generate random values * -* This example has been created using raylib 1.0 (www.raylib.com) +* This example has been created using raylib 1.1 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * -* Copyright (c) 2013 Ramon Santamaria (Ray San - raysan@raysanweb.com) +* Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) * ********************************************************************************************/ @@ -17,14 +17,14 @@ int main() //-------------------------------------------------------------------------------------- int screenWidth = 800; int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [core] example - generate random values"); - int framesCounter = 0; + int framesCounter = 0; // Variable used to count frames + + int randValue = GetRandomValue(-8,5); // Get a random integer number between -8 and 5 (both included) - InitWindow(screenWidth, screenHeight, "raylib test - Random numbers"); - - int randValue = GetRandomValue(-8,5); - - SetTargetFPS(60); + SetTargetFPS(60); // Set our game to run at 60 frames-per-second //-------------------------------------------------------------------------------------- // Main game loop @@ -34,7 +34,8 @@ int main() //---------------------------------------------------------------------------------- framesCounter++; - if ((framesCounter/60)%2) + // Every two seconds (120 frames) a new random value is generated + if (((framesCounter/120)%2) == 1) { randValue = GetRandomValue(-8,5); framesCounter = 0; @@ -46,8 +47,10 @@ int main() BeginDrawing(); ClearBackground(RAYWHITE); - - DrawText(FormatText("%i", randValue), 120, 120, 60, LIGHTGRAY); + + DrawText("Every 2 seconds a new random value is generated:", 130, 100, 20, MAROON); + + DrawText(FormatText("%i", randValue), 360, 180, 80, LIGHTGRAY); EndDrawing(); //---------------------------------------------------------------------------------- diff --git a/examples/core_random_values.png b/examples/core_random_values.png new file mode 100644 index 000000000..6dd49475c Binary files /dev/null and b/examples/core_random_values.png differ diff --git a/examples/ex07b_3d_shapes.png b/examples/ex07b_3d_shapes.png deleted file mode 100644 index febc421e0..000000000 Binary files a/examples/ex07b_3d_shapes.png and /dev/null differ diff --git a/examples/ex07c_3d_models.png b/examples/ex07c_3d_models.png deleted file mode 100644 index f6dd01cd3..000000000 Binary files a/examples/ex07c_3d_models.png and /dev/null differ diff --git a/examples/ex08_audio.png b/examples/ex08_audio.png deleted file mode 100644 index 02eff2c5f..000000000 Binary files a/examples/ex08_audio.png and /dev/null differ diff --git a/examples/makefile b/examples/makefile index 59b16d70f..2a2d62b2a 100644 --- a/examples/makefile +++ b/examples/makefile @@ -72,24 +72,36 @@ endif # define all object files required EXAMPLES = \ - ex01_basic_window \ - ex02a_logo_raylib \ - ex02b_basic_shapes \ - ex02c_color_palette \ - ex03a_input_keys \ - ex03b_input_mouse \ - ex04a_textures \ - ex04b_texture_rectangle \ - ex05a_sprite_fonts \ - ex05b_rbmf_fonts \ - ex06a_color_select \ - ex06b_logo_anim \ - ex06c_font_select \ - ex07a_3d_mode \ - ex07b_3d_shapes \ - ex07c_3d_models \ - ex08_audio - #ex03c_input_gamepad \ + core_basic_window \ + core_input_keys \ + core_input_mouse \ + core_mouse_wheel \ + core_random_values \ + core_color_select \ + core_3d_mode \ + shapes_logo_raylib \ + shapes_basic_shapes \ + shapes_color_palette \ + shapes_logo_raylib_anim \ + textures_logo_raylib \ + textures_image_loading \ + textures_rectangle \ + textures_compressed_dds \ + textures_mipmaps \ + textures_srcrec_dstrec \ + text_sprite_fonts \ + text_rbmf_fonts \ + text_format_text \ + text_font_select \ + models_geometric_shapes \ + models_planes \ + models_billboard \ + models_obj_loading \ + models_heightmap \ + models_cubesmap \ + audio_sound_loading \ + audio_music_stream \ + #core_input_gamepad \ # typing 'make' will invoke the first target entry in the file, @@ -99,82 +111,126 @@ default: examples # compile all examples examples: $(EXAMPLES) -# compile example 01 - basic window -ex01_basic_window: ex01_basic_window.c +# compile [core] example - basic window +core_basic_window: core_basic_window.c $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) -# compile example 01 - basic window -ex02a_logo_raylib: ex02a_logo_raylib.c +# compile [core] example - keyboard input +core_input_keys: core_input_keys.c $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) -# compile example 01 - basic window -ex02b_basic_shapes: ex02b_basic_shapes.c - $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) - -# compile example 01 - basic window -ex02c_color_palette: ex02c_color_palette.c - $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) - -# compile example 01 - basic window -ex03a_input_keys: ex03a_input_keys.c - $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) - -# compile example 01 - basic window -ex03b_input_mouse: ex03b_input_mouse.c +# compile [core] example - mouse input +core_input_mouse: core_input_mouse.c $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) ifeq ($(PLATFORM),PLATFORM_DESKTOP) -# compile example 01 - basic window -ex03c_input_gamepad: ex03c_input_gamepad.c +# compile [core] example - gamepad input +core_input_gamepad: core_input_gamepad.c $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) endif - -# compile example 01 - basic window -ex04a_textures: ex04a_textures.c + +# compile [core] example - mouse wheel +core_mouse_wheel: core_mouse_wheel.c $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) -# compile example 01 - basic window -ex04b_texture_rectangle: ex04b_texture_rectangle.c +# compile [core] example - generate random values +core_random_values: core_random_values.c $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) -# compile example 01 - basic window -ex05a_sprite_fonts: ex05a_sprite_fonts.c +# compile [core] example - color selection (collision detection) +core_color_select: core_color_select.c $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) -# compile example 01 - basic window -ex05b_rbmf_fonts: ex05b_rbmf_fonts.c +# compile [core] example - 3d mode +core_3d_mode: core_3d_mode.c $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) -# compile example 01 - basic window -ex06a_color_select: ex06a_color_select.c +# compile [shapes] example - raylib logo (with basic shapes) +shapes_logo_raylib: shapes_logo_raylib.c $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) -# compile example 01 - basic window -ex06b_logo_anim: ex06b_logo_anim.c +# compile [shapes] example - basic shapes usage (rectangle, circle, ...) +shapes_basic_shapes: shapes_basic_shapes.c $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) -# compile example 01 - basic window -ex06b_shape_select: ex06b_shape_select.c +# compile [shapes] example - raylib color palette +shapes_color_palette: shapes_color_palette.c $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) -# compile example 01 - basic window -ex06c_font_select: ex06c_font_select.c +# compile [shapes] example - raylib logo animation +shapes_logo_raylib_anim: shapes_logo_raylib_anim.c $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) -# compile example 01 - basic window -ex07a_3d_mode: ex07a_3d_mode.c +# compile [textures] example - raylib logo texture loading +textures_logo_raylib: textures_logo_raylib.c $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) -# compile example 01 - basic window -ex07b_3d_shapes: ex07b_3d_shapes.c +# compile [textures] example - image loading and conversion to texture +textures_image_loading: textures_image_loading.c $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) -# compile example 01 - basic window -ex07c_3d_models: ex07c_3d_models.c +# compile [textures] example - texture rectangle drawing +textures_rectangle: textures_rectangle.c $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) -# compile example 01 - basic window -ex08_audio: ex08_audio.c +# compile [textures] example - compressed texture loading (DDS) +textures_compressed_dds: textures_compressed_dds.c + $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) + +# compile [textures] example - texture mipmaps generation +textures_mipmaps: textures_mipmaps.c + $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) + +# compile [textures] example - texture source and destination rectangles +textures_srcrec_dstrec: textures_srcrec_dstrec.c + $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) + +# compile [text] example - sprite fonts loading +text_sprite_fonts: text_sprite_fonts.c + $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) + +# compile [text] example - raylib bitmap fonts (rBMF) +text_rbmf_fonts: text_rbmf_fonts.c + $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) + +# compile [text] example - text formatting +text_format_text: text_format_text.c + $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) + +# compile [text] example - font selection program +text_font_select: text_font_select.c + $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) + +# compile [models] example - basic geometric 3d shapes +models_geometric_shapes: models_geometric_shapes.c + $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) + +# compile [models] example - basic window +models_planes: models_planes.c + $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) + +# compile [models] example - billboard usage +models_billboard: models_billboard.c + $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) + +# compile [models] example - OBJ model loading +models_obj_loading: models_obj_loading.c + $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) + +# compile [models] example - heightmap loading +models_heightmap: models_heightmap.c + $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) + +# compile [models] example - cubesmap loading +models_cubesmap: models_cubesmap.c + $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) + +# compile [audio] example - sound loading and playing (WAV and OGG) +audio_sound_loading: audio_sound_loading.c + $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) + +# compile [audio] example - music stream playing (OGG) +audio_music_stream: audio_music_stream.c $(CC) -o $@ $< $(CFLAGS) $(INCLUDES) $(LFLAGS) $(LIBS) -D$(PLATFORM) $(WINFLAGS) # clean everything diff --git a/tests/test_billboard.c b/examples/models_billboard.c similarity index 78% rename from tests/test_billboard.c rename to examples/models_billboard.c index a50bebfcc..19054c361 100644 --- a/tests/test_billboard.c +++ b/examples/models_billboard.c @@ -1,8 +1,8 @@ /******************************************************************************************* * -* raylib test - Testing DrawBillboard() and DrawBillboardRec() +* raylib [models] example - Drawing billboards * -* This test has been created using raylib 1.0 (www.raylib.com) +* This example has been created using raylib 1.2 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * * Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) @@ -18,19 +18,16 @@ int main() int screenWidth = 800; int screenHeight = 450; - Vector3 position = { 0.0, 0.0, 0.0 }; + InitWindow(screenWidth, screenHeight, "raylib [models] example - drawing billboards"); // Define the camera to look into our 3d world Camera camera = {{ 10.0, 8.0, 10.0 }, { 0.0, 0.0, 0.0 }, { 0.0, 1.0, 0.0 }}; - - InitWindow(screenWidth, screenHeight, "raylib test - Billboards"); - + + Texture2D lena = LoadTexture("resources/lena.png"); // Our texture for billboard + Rectangle eyesRec = { 225, 240, 155, 50 }; // Part of the texture to draw + Vector3 billPosition = { 0.0, 0.0, 0.0 }; // Position where draw billboard + SetTargetFPS(60); // Set our game to run at 60 frames-per-second - - Texture2D texture = LoadTexture("resources/raylib_logo.png"); - Texture2D lena = LoadTexture("resources/lena.png"); - - Rectangle eyesRec = { 225, 240, 155, 50 }; //-------------------------------------------------------------------------------------- // Main game loop @@ -52,8 +49,8 @@ int main() Begin3dMode(camera); - //DrawBillboard(camera, texture, position, 2.0, WHITE); - DrawBillboardRec(camera, lena, eyesRec, position, 4.0, WHITE); + //DrawBillboard(camera, lena, billPosition, 1.0, WHITE); + DrawBillboardRec(camera, lena, eyesRec, billPosition, 4.0, WHITE); DrawGrid(10.0, 1.0); // Draw a grid @@ -67,7 +64,6 @@ int main() // De-Initialization //-------------------------------------------------------------------------------------- - UnloadTexture(texture); // Unload texture UnloadTexture(lena); // Unload texture CloseWindow(); // Close window and OpenGL context diff --git a/tests/test_cubesmap.c b/examples/models_cubesmap.c similarity index 64% rename from tests/test_cubesmap.c rename to examples/models_cubesmap.c index a44abbbcc..ff1134833 100644 --- a/tests/test_cubesmap.c +++ b/examples/models_cubesmap.c @@ -1,15 +1,15 @@ /******************************************************************************************* * -* raylib test - Testing Heightmap Loading and Drawing +* raylib [models] example - Cubesmap loading and drawing * -* This test has been created using raylib 1.0 (www.raylib.com) +* This example has been created using raylib 1.2 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * * Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) * ********************************************************************************************/ -#include "../raylib.h" +#include "raylib.h" int main() { @@ -18,21 +18,20 @@ int main() int screenWidth = 800; int screenHeight = 450; - Vector3 position = { 0.5, 0.0, 0.5 }; + InitWindow(screenWidth, screenHeight, "raylib [models] example - cubesmap loading and drawing"); // Define the camera to look into our 3d world - Camera camera = {{ 7.0, 6.0, 7.0 }, { 0.0, 0.0, 0.0 }, { 0.0, 1.0, 0.0 }}; + Camera camera = {{ 7.0, 7.0, 7.0 }, { 0.0, 0.0, 0.0 }, { 0.0, 1.0, 0.0 }}; - InitWindow(screenWidth, screenHeight, "raylib test - Heightmap loading and drawing"); + Image img = LoadImage("resources/cubesmap.png"); // Load cubesmap image (RAM) + Texture2D texture = CreateTexture(img, false); // Convert image to texture (VRAM) + Model map = LoadCubesmap(img); // Load cubesmap model + SetModelTexture(&map, texture); // Bind texture to model + Vector3 mapPosition = { -1, 0.0, -1 }; // Set model position + + UnloadImage(img); // Unload cubesmap image from RAM, already uploaded to VRAM - Image img = LoadImage("resources/cubesmap.png"); - Model map = LoadCubesmap(img); - Texture2D texture = CreateTexture(img, false); - UnloadImage(img); - - SetModelTexture(&map, texture); - - SetTargetFPS(60); // Set our game to run at 60 frames-per-second + SetTargetFPS(60); // Set our game to run at 60 frames-per-second //-------------------------------------------------------------------------------------- // Main game loop @@ -55,13 +54,11 @@ int main() Begin3dMode(camera); - //DrawCube(position, 1.0f, 1.0f, 1.0f, RED); - - DrawModel(map, position, 1.0f, MAROON); + DrawModel(map, mapPosition, 1.0f, MAROON); - DrawGrid(10.0, 1.0); // Draw a grid + DrawGrid(10.0, 1.0); - DrawGizmo(position); + DrawGizmo(mapPosition); End3dMode(); @@ -74,9 +71,9 @@ int main() // De-Initialization //-------------------------------------------------------------------------------------- UnloadTexture(texture); // Unload texture - UnloadModel(map); // Unload model + UnloadModel(map); // Unload model - CloseWindow(); // Close window and OpenGL context + CloseWindow(); // Close window and OpenGL context //-------------------------------------------------------------------------------------- return 0; diff --git a/examples/models_cubesmap.png b/examples/models_cubesmap.png new file mode 100644 index 000000000..f686ba21c Binary files /dev/null and b/examples/models_cubesmap.png differ diff --git a/examples/models_geometric_shapes.c b/examples/models_geometric_shapes.c index a25daed59..b5243fb1e 100644 --- a/examples/models_geometric_shapes.c +++ b/examples/models_geometric_shapes.c @@ -1,11 +1,11 @@ /******************************************************************************************* * -* raylib example 07b - Draw some basic 3d shapes (cube, sphere, cylinder...) +* raylib [models] example - Draw some basic geometric shapes (cube, sphere, cylinder...) * * This example has been created using raylib 1.0 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * -* Copyright (c) 2013 Ramon Santamaria (Ray San - raysan@raysanweb.com) +* Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) * ********************************************************************************************/ @@ -18,11 +18,11 @@ int main() int screenWidth = 800; int screenHeight = 450; + InitWindow(screenWidth, screenHeight, "raylib [models] example - geometric shapes"); + // Define the camera to look into our 3d world Camera camera = {{ 0.0, 10.0, 10.0 }, { 0.0, 0.0, 0.0 }, { 0.0, 1.0, 0.0 }}; - InitWindow(screenWidth, screenHeight, "raylib example 07b - 3d shapes"); - SetTargetFPS(60); // Set our game to run at 60 frames-per-second //-------------------------------------------------------------------------------------- @@ -72,4 +72,4 @@ int main() //-------------------------------------------------------------------------------------- return 0; -} +} \ No newline at end of file diff --git a/examples/models_geometric_shapes.png b/examples/models_geometric_shapes.png new file mode 100644 index 000000000..6076b4297 Binary files /dev/null and b/examples/models_geometric_shapes.png differ diff --git a/tests/test_3d_models.c b/examples/models_heightmap.c similarity index 62% rename from tests/test_3d_models.c rename to examples/models_heightmap.c index ef0e475a8..644f97234 100644 --- a/tests/test_3d_models.c +++ b/examples/models_heightmap.c @@ -1,8 +1,8 @@ /******************************************************************************************* * -* raylib test - Load and draw a 3d model (OBJ) +* raylib [models] example - Heightmap loading and drawing * -* This test has been created using raylib 1.1 (www.raylib.com) +* This example has been created using raylib 1.1 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * * Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) @@ -18,19 +18,20 @@ int main() int screenWidth = 800; int screenHeight = 450; - Vector3 position = { 0.0, 0.0, 0.0 }; - + InitWindow(screenWidth, screenHeight, "raylib [models] example - heightmap loading and drawing"); + // Define the camera to look into our 3d world - Camera camera = {{ 10.0, 8.0, 10.0 }, { 0.0, 0.0, 0.0 }, { 0.0, 1.0, 0.0 }}; + Camera camera = {{ 10.0, 12.0, 10.0 }, { 0.0, 0.0, 0.0 }, { 0.0, 1.0, 0.0 }}; + + Image img = LoadImage("resources/heightmap.png"); // Load heightmap image (RAM) + Texture2D texture = CreateTexture(img, false); // Convert image to texture (VRAM) + Model map = LoadHeightmap(img, 4); // Load heightmap model + SetModelTexture(&map, texture); // Bind texture to model + Vector3 mapPosition = { -4, 0.0, -4 }; // Set model position + + UnloadImage(img); // Unload heightmap image from RAM, already uploaded to VRAM - InitWindow(screenWidth, screenHeight, "raylib test - 3d models in OpenGL 3.3+"); - - Texture2D texture = LoadTexture("resources/catwhite.png"); - Model cat = LoadModel("resources/cat.obj"); - - SetModelTexture(&cat, texture); - - SetTargetFPS(60); // Set our game to run at 60 frames-per-second + SetTargetFPS(60); // Set our game to run at 60 frames-per-second //-------------------------------------------------------------------------------------- // Main game loop @@ -38,10 +39,7 @@ int main() { // Update //---------------------------------------------------------------------------------- - if (IsKeyDown(KEY_LEFT)) position.x -= 0.2; - if (IsKeyDown(KEY_RIGHT)) position.x += 0.2; - if (IsKeyDown(KEY_UP)) position.z -= 0.2; - if (IsKeyDown(KEY_DOWN)) position.z += 0.2; + // ... //---------------------------------------------------------------------------------- // Draw @@ -52,12 +50,11 @@ int main() Begin3dMode(camera); - DrawModel(cat, position, 0.1f, BEIGE); // OK_GL11, OK_GL33 - //DrawModelWires(cat, position, 0.1f, RED); // OK_GL11, OK_GL33 - - DrawGrid(10.0, 1.0); // Draw a grid + DrawModel(map, mapPosition, 0.5f, MAROON); - DrawGizmo(position); + DrawGrid(10.0, 1.0); + + DrawGizmo(mapPosition); End3dMode(); @@ -70,7 +67,7 @@ int main() // De-Initialization //-------------------------------------------------------------------------------------- UnloadTexture(texture); // Unload texture - UnloadModel(cat); // Unload model + UnloadModel(map); // Unload model CloseWindow(); // Close window and OpenGL context //-------------------------------------------------------------------------------------- diff --git a/examples/models_heightmap.png b/examples/models_heightmap.png new file mode 100644 index 000000000..a32ec954b Binary files /dev/null and b/examples/models_heightmap.png differ diff --git a/examples/models_obj_loading.c b/examples/models_obj_loading.c index 90bccf8a9..3c2da62f8 100644 --- a/examples/models_obj_loading.c +++ b/examples/models_obj_loading.c @@ -1,11 +1,11 @@ /******************************************************************************************* * -* raylib example 07c - Load and draw a 3d model (OBJ) +* raylib [models] example - Load and draw a 3d model (OBJ) * * This example has been created using raylib 1.0 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * -* Copyright (c) 2013 Ramon Santamaria (Ray San - raysan@raysanweb.com) +* Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) * ********************************************************************************************/ @@ -18,18 +18,17 @@ int main() int screenWidth = 800; int screenHeight = 450; - Vector3 position = { 0.0, 0.0, 0.0 }; - + InitWindow(screenWidth, screenHeight, "raylib [models] example - obj model loading"); + // Define the camera to look into our 3d world Camera camera = {{ 10.0, 8.0, 10.0 }, { 0.0, 0.0, 0.0 }, { 0.0, 1.0, 0.0 }}; - - InitWindow(screenWidth, screenHeight, "raylib example 07c - 3d models"); - - SetTargetFPS(60); // Set our game to run at 60 frames-per-second - - Texture2D texture = LoadTexture("resources/catsham.png"); - Model cat = LoadModel("resources/cat.obj"); - SetModelTexture(&cat, texture); // Link texture to model + + Texture2D texture = LoadTexture("resources/catsham.png"); // Load model texture + Model cat = LoadModel("resources/cat.obj"); // Load OBJ model + SetModelTexture(&cat, texture); // Bind texture to model + Vector3 catPosition = { 0.0, 0.0, 0.0 }; // Set model position + + SetTargetFPS(60); // Set our game to run at 60 frames-per-second //-------------------------------------------------------------------------------------- // Main game loop @@ -37,10 +36,10 @@ int main() { // Update //---------------------------------------------------------------------------------- - if (IsKeyDown(KEY_LEFT)) position.x -= 0.2; - if (IsKeyDown(KEY_RIGHT)) position.x += 0.2; - if (IsKeyDown(KEY_UP)) position.z -= 0.2; - if (IsKeyDown(KEY_DOWN)) position.z += 0.2; + if (IsKeyDown(KEY_LEFT)) catPosition.x -= 0.2; + if (IsKeyDown(KEY_RIGHT)) catPosition.x += 0.2; + if (IsKeyDown(KEY_UP)) catPosition.z -= 0.2; + if (IsKeyDown(KEY_DOWN)) catPosition.z += 0.2; //---------------------------------------------------------------------------------- // Draw @@ -51,11 +50,11 @@ int main() Begin3dMode(camera); - DrawModel(cat, position, 0.1f, WHITE); // Draw 3d model with texture + DrawModel(cat, catPosition, 0.1f, WHITE); // Draw 3d model with texture DrawGrid(10.0, 1.0); // Draw a grid - DrawGizmo(position); + DrawGizmo(catPosition); // Draw gizmo End3dMode(); @@ -74,4 +73,4 @@ int main() //-------------------------------------------------------------------------------------- return 0; -} +} \ No newline at end of file diff --git a/examples/models_obj_models.png b/examples/models_obj_models.png new file mode 100644 index 000000000..da49c457b Binary files /dev/null and b/examples/models_obj_models.png differ diff --git a/tests/test_heightmap.c b/examples/models_planes.c similarity index 66% rename from tests/test_heightmap.c rename to examples/models_planes.c index d01936377..4ddded216 100644 --- a/tests/test_heightmap.c +++ b/examples/models_planes.c @@ -1,8 +1,8 @@ /******************************************************************************************* * -* raylib test - Testing Heightmap Loading and Drawing +* raylib [models] example - Draw 3d planes * -* This test has been created using raylib 1.0 (www.raylib.com) +* This example has been created using raylib 1.2 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * * Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) @@ -18,20 +18,11 @@ int main() int screenWidth = 800; int screenHeight = 450; - Vector3 position = { 0.0, 0.0, 0.0 }; - + InitWindow(screenWidth, screenHeight, "raylib [models] example - 3d planes"); + // Define the camera to look into our 3d world - Camera camera = {{ 12.0, 10.0, 12.0 }, { 0.0, 0.0, 0.0 }, { 0.0, 1.0, 0.0 }}; - - InitWindow(screenWidth, screenHeight, "raylib test - Heightmap loading and drawing"); - - Image img = LoadImage("resources/heightmap.png"); - Model map = LoadHeightmap(img, 4); - Texture2D texture = CreateTexture(img, false); - UnloadImage(img); - - SetModelTexture(&map, texture); - + Camera camera = {{ 0.0, 10.0, 10.0 }, { 0.0, 0.0, 0.0 }, { 0.0, 1.0, 0.0 }}; + SetTargetFPS(60); // Set our game to run at 60 frames-per-second //-------------------------------------------------------------------------------------- @@ -40,7 +31,7 @@ int main() { // Update //---------------------------------------------------------------------------------- - // ... + // TODO: Update your variables here //---------------------------------------------------------------------------------- // Draw @@ -51,11 +42,10 @@ int main() Begin3dMode(camera); - DrawModel(map, position, 0.5f, MAROON); - - DrawGrid(10.0, 1.0); // Draw a grid - - DrawGizmo(position); + DrawPlane((Vector3){ 0, 0, 0 }, (Vector2){ 4, 4 }, (Vector3){ 0, 45, 0 }, RED); + //DrawPlaneEx((Vector3){ 0, 8, 0 }, (Vector2){ 2, 1 }, (Vector3){ 0, 0, 0 }, 4, 4, SKYBLUE); + + DrawGrid(10.0, 1.0); End3dMode(); @@ -67,10 +57,7 @@ int main() // De-Initialization //-------------------------------------------------------------------------------------- - UnloadTexture(texture); // Unload texture - UnloadModel(map); // Unload model - - CloseWindow(); // Close window and OpenGL context + CloseWindow(); // Close window and OpenGL context //-------------------------------------------------------------------------------------- return 0; diff --git a/examples/openal32.dll b/examples/openal32.dll new file mode 100644 index 000000000..71ced6a21 Binary files /dev/null and b/examples/openal32.dll differ diff --git a/examples/resources/audio/guitar_noodling.ogg b/examples/resources/audio/guitar_noodling.ogg new file mode 100644 index 000000000..f50220406 Binary files /dev/null and b/examples/resources/audio/guitar_noodling.ogg differ diff --git a/tests/resources/audio/0564.ogg b/examples/resources/audio/tanatana.ogg similarity index 100% rename from tests/resources/audio/0564.ogg rename to examples/resources/audio/tanatana.ogg diff --git a/tests/resources/cubesmap.png b/examples/resources/cubesmap.png similarity index 100% rename from tests/resources/cubesmap.png rename to examples/resources/cubesmap.png diff --git a/tests/resources/heightmap.png b/examples/resources/heightmap.png similarity index 100% rename from tests/resources/heightmap.png rename to examples/resources/heightmap.png diff --git a/examples/resources/mouse.png b/examples/resources/mouse.png deleted file mode 100644 index 543f32b34..000000000 Binary files a/examples/resources/mouse.png and /dev/null differ diff --git a/examples/resources/raylib_logo.dds b/examples/resources/raylib_logo.dds new file mode 100644 index 000000000..b558bc156 Binary files /dev/null and b/examples/resources/raylib_logo.dds differ diff --git a/examples/resources/raylib_logo_uncompressed.dds b/examples/resources/raylib_logo_uncompressed.dds new file mode 100644 index 000000000..2b40a205a Binary files /dev/null and b/examples/resources/raylib_logo_uncompressed.dds differ diff --git a/examples/shapes_basic_shapes.c b/examples/shapes_basic_shapes.c index 0e7298ac8..655f996bb 100644 --- a/examples/shapes_basic_shapes.c +++ b/examples/shapes_basic_shapes.c @@ -1,11 +1,11 @@ /******************************************************************************************* * -* raylib example 02b - Draw basic shapes 2d (rectangle, circle, line...) +* raylib [shapes] example - Draw basic shapes 2d (rectangle, circle, line...) * * This example has been created using raylib 1.0 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * -* Copyright (c) 2013 Ramon Santamaria (Ray San - raysan@raysanweb.com) +* Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) * ********************************************************************************************/ @@ -18,7 +18,7 @@ int main() int screenWidth = 800; int screenHeight = 450; - InitWindow(screenWidth, screenHeight, "raylib example 02b - basic shapes drawing"); + InitWindow(screenWidth, screenHeight, "raylib [shapes] example - basic shapes drawing"); //-------------------------------------------------------------------------------------- // Main game loop @@ -67,4 +67,4 @@ int main() //-------------------------------------------------------------------------------------- return 0; -} +} \ No newline at end of file diff --git a/examples/ex02b_basic_shapes.png b/examples/shapes_basic_shapes.png similarity index 100% rename from examples/ex02b_basic_shapes.png rename to examples/shapes_basic_shapes.png diff --git a/examples/shapes_color_palette.c b/examples/shapes_color_palette.c index a8114e0f5..ec39e642e 100644 --- a/examples/shapes_color_palette.c +++ b/examples/shapes_color_palette.c @@ -1,11 +1,11 @@ /******************************************************************************************* * -* raylib example 02c - Draw raylib custom color palette +* raylib [shapes] example - Draw raylib custom color palette * * This example has been created using raylib 1.0 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * -* Copyright (c) 2013 Ramon Santamaria (Ray San - raysan@raysanweb.com) +* Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) * ********************************************************************************************/ @@ -18,7 +18,7 @@ int main() int screenWidth = 800; int screenHeight = 450; - InitWindow(screenWidth, screenHeight, "raylib example 02c - raylib color palette"); + InitWindow(screenWidth, screenHeight, "raylib [shapes] example - raylib color palette"); //-------------------------------------------------------------------------------------- // Main game loop @@ -92,4 +92,4 @@ int main() //-------------------------------------------------------------------------------------- return 0; -} +} \ No newline at end of file diff --git a/examples/ex02c_color_palette.png b/examples/shapes_colors_palette.png similarity index 100% rename from examples/ex02c_color_palette.png rename to examples/shapes_colors_palette.png diff --git a/examples/shapes_logo_raylib.c b/examples/shapes_logo_raylib.c index bd13890f8..669de4bd3 100644 --- a/examples/shapes_logo_raylib.c +++ b/examples/shapes_logo_raylib.c @@ -1,11 +1,11 @@ /******************************************************************************************* * -* raylib example 02a - Draw raylib logo +* raylib [shapes] example - Draw raylib logo using basic shapes * * This example has been created using raylib 1.0 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * -* Copyright (c) 2013 Ramon Santamaria (Ray San - raysan@raysanweb.com) +* Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) * ********************************************************************************************/ @@ -18,7 +18,7 @@ int main() int screenWidth = 800; int screenHeight = 450; - InitWindow(screenWidth, screenHeight, "raylib example 02a - raylib logo"); + InitWindow(screenWidth, screenHeight, "raylib [shapes] example - raylib logo using shapes"); //-------------------------------------------------------------------------------------- // Main game loop @@ -37,7 +37,7 @@ int main() DrawRectangle(screenWidth/2 - 128, screenHeight/2 - 128, 256, 256, BLACK); DrawRectangle(screenWidth/2 - 112, screenHeight/2 - 112, 224, 224, RAYWHITE); - DrawText("raylib", 356, 273, 50, BLACK); + DrawText("raylib", screenWidth/2 - 44, screenHeight/2 + 48, 50, BLACK); DrawText("this is NOT a texture!", 350, 370, 10, GRAY); @@ -51,4 +51,4 @@ int main() //-------------------------------------------------------------------------------------- return 0; -} +} \ No newline at end of file diff --git a/examples/ex02a_logo_raylib.png b/examples/shapes_logo_raylib.png similarity index 100% rename from examples/ex02a_logo_raylib.png rename to examples/shapes_logo_raylib.png diff --git a/examples/shapes_logo_raylib_anim.c b/examples/shapes_logo_raylib_anim.c index 54e41eb97..830787c8c 100644 --- a/examples/shapes_logo_raylib_anim.c +++ b/examples/shapes_logo_raylib_anim.c @@ -1,11 +1,11 @@ /******************************************************************************************* * -* raylib example 06b - raylib Logo Animation +* raylib [shapes] example - raylib logo animation * -* This example has been created using raylib 1.0 (www.raylib.com) +* This example has been created using raylib 1.1 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * -* Copyright (c) 2013 Ramon Santamaria (Ray San - raysan@raysanweb.com) +* Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) * ********************************************************************************************/ @@ -18,6 +18,8 @@ int main() int screenWidth = 800; int screenHeight = 450; + InitWindow(screenWidth, screenHeight, "raylib [shapes] example - raylib logo animation"); + int logoPositionX = screenWidth/2 - 128; int logoPositionY = screenHeight/2 - 128; @@ -30,13 +32,12 @@ int main() int bottomSideRecWidth = 16; int rightSideRecHeight = 16; - char raylib[8] = " "; // raylib text array, max 8 letters + char raylib[8] = " \0"; // raylib text array, max 8 letters int state = 0; // Tracking animation states (State Machine) - + float alpha = 1.0; // Useful for fading - - InitWindow(screenWidth, screenHeight, "raylib example 06b - raylib logo animation"); + SetTargetFPS(60); //-------------------------------------------------------------------------------------- @@ -115,10 +116,13 @@ int main() bottomSideRecWidth = 16; rightSideRecHeight = 16; - for (int i = 0; i < 8; i++) raylib[i] = ' '; + for (int i = 0; i < 7; i++) raylib[i] = ' '; + + raylib[7] = '\0'; // Last character is end-of-line + alpha = 1.0; - state = 0; // Return to State 0 + state = 0; // Return to State 0 } } //---------------------------------------------------------------------------------- @@ -148,10 +152,15 @@ int main() } else if (state == 3) { - DrawRectangle(logoPositionX, logoPositionY, 256, 256, Fade(BLACK, alpha)); + 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(screenWidth/2 - 112, screenHeight/2 - 112, 224, 224, Fade(RAYWHITE, alpha)); - - DrawText(raylib, 356, 273, 50, Fade(BLACK, alpha)); + + DrawText(raylib, screenWidth/2 - 44, screenHeight/2 + 48, 50, Fade(BLACK, alpha)); } else if (state == 4) { @@ -168,4 +177,4 @@ int main() //-------------------------------------------------------------------------------------- return 0; -} +} \ No newline at end of file diff --git a/examples/ex06b_logo_anim.png b/examples/shapes_logo_raylib_anim.png similarity index 100% rename from examples/ex06b_logo_anim.png rename to examples/shapes_logo_raylib_anim.png diff --git a/examples/text_font_select.c b/examples/text_font_select.c index 5e58f15fd..0ddda8ef3 100644 --- a/examples/text_font_select.c +++ b/examples/text_font_select.c @@ -1,11 +1,11 @@ /******************************************************************************************* * -* raylib example 06c - Font selection... +* raylib [text] example - Font selector * * This example has been created using raylib 1.0 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * -* Copyright (c) 2013 Ramon Santamaria (Ray San - raysan@raysanweb.com) +* Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) * ********************************************************************************************/ @@ -18,7 +18,7 @@ int main() int screenWidth = 800; int screenHeight = 150; - InitWindow(screenWidth, screenHeight, "raylib example 06c - font selection"); + InitWindow(screenWidth, screenHeight, "raylib [text] example - font selector"); // NOTE: Textures MUST be loaded after Window initialization (OpenGL context is required) SpriteFont fonts[8]; // SpriteFont array @@ -52,7 +52,7 @@ int main() int framesCounter = 0; // Useful to count frames button is 'active' = clicked - SetTargetFPS(60); + SetTargetFPS(60); // Set our game to run at 60 frames-per-second //-------------------------------------------------------------------------------------- // Main game loop @@ -141,4 +141,4 @@ int main() //-------------------------------------------------------------------------------------- return 0; -} +} \ No newline at end of file diff --git a/examples/ex06c_font_select.png b/examples/text_font_select.png similarity index 100% rename from examples/ex06c_font_select.png rename to examples/text_font_select.png diff --git a/tests/test_formattext.c b/examples/text_format_text.c similarity index 76% rename from tests/test_formattext.c rename to examples/text_format_text.c index ea9e51773..b9034b461 100644 --- a/tests/test_formattext.c +++ b/examples/text_format_text.c @@ -1,11 +1,11 @@ /******************************************************************************************* * -* raylib test - Testing FormatText() function +* raylib [text] example - Text formatting * -* This test has been created using raylib 1.0 (www.raylib.com) +* This example has been created using raylib 1.1 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * -* Copyright (c) 2013 Ramon Santamaria (Ray San - raysan@raysanweb.com) +* Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) * ********************************************************************************************/ @@ -18,12 +18,12 @@ int main() int screenWidth = 800; int screenHeight = 450; + InitWindow(screenWidth, screenHeight, "raylib [text] example - text formatting"); + int score = 100020; int hiscore = 200450; int lives = 5; - InitWindow(screenWidth, screenHeight, "raylib test - FormatText()"); - SetTargetFPS(60); //-------------------------------------------------------------------------------------- @@ -41,13 +41,13 @@ int main() ClearBackground(RAYWHITE); - DrawText(FormatText("Score: %08i", score), 80, 80, 20, RED); + DrawText(FormatText("Score: %08i", score), 200, 80, 20, RED); - DrawText(FormatText("HiScore: %08i", hiscore), 80, 120, 20, GREEN); + DrawText(FormatText("HiScore: %08i", hiscore), 200, 120, 20, GREEN); - DrawText(FormatText("Lives: %02i", lives), 80, 160, 40, BLUE); + DrawText(FormatText("Lives: %02i", lives), 200, 160, 40, BLUE); - DrawText(FormatText("Elapsed Time: %02.02f ms", GetFrameTime()*1000), 80, 220, 20, BLACK); + DrawText(FormatText("Elapsed Time: %02.02f ms", GetFrameTime()*1000), 200, 220, 20, BLACK); EndDrawing(); //---------------------------------------------------------------------------------- diff --git a/examples/text_format_text.png b/examples/text_format_text.png new file mode 100644 index 000000000..cf9a1ddad Binary files /dev/null and b/examples/text_format_text.png differ diff --git a/examples/text_rbmf_fonts.c b/examples/text_rbmf_fonts.c index 1dbcdcc39..788e27b8d 100644 --- a/examples/text_rbmf_fonts.c +++ b/examples/text_rbmf_fonts.c @@ -1,11 +1,14 @@ /******************************************************************************************* * -* raylib example 05b - raylib bitmap font (rbmf) loading and using +* raylib [text] example - raylib bitmap font (rbmf) loading and usage +* +* 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 * * This example has been created using raylib 1.0 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * -* Copyright (c) 2013 Ramon Santamaria (Ray San - raysan@raysanweb.com) +* Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) * ********************************************************************************************/ @@ -18,17 +21,17 @@ int main() int screenWidth = 560; int screenHeight = 800; - InitWindow(screenWidth, screenHeight, "raylib example 05b - rBMF fonts"); + InitWindow(screenWidth, screenHeight, "raylib [text] example - rBMF fonts"); // NOTE: Textures MUST be loaded after Window initialization (OpenGL context is required) - SpriteFont font1 = LoadSpriteFont("resources/fonts/alagard.rbmf"); // SpriteFont loading - SpriteFont font2 = LoadSpriteFont("resources/fonts/pixelplay.rbmf"); // SpriteFont loading - SpriteFont font3 = LoadSpriteFont("resources/fonts/mecha.rbmf"); // SpriteFont loading - SpriteFont font4 = LoadSpriteFont("resources/fonts/setback.rbmf"); // SpriteFont loading - SpriteFont font5 = LoadSpriteFont("resources/fonts/romulus.rbmf"); // SpriteFont loading - SpriteFont font6 = LoadSpriteFont("resources/fonts/pixantiqua.rbmf"); // SpriteFont loading - SpriteFont font7 = LoadSpriteFont("resources/fonts/alpha_beta.rbmf"); // SpriteFont loading - SpriteFont font8 = LoadSpriteFont("resources/fonts/jupiter_crash.rbmf"); // SpriteFont loading + SpriteFont font1 = LoadSpriteFont("resources/fonts/alagard.rbmf"); // rBMF font loading + SpriteFont font2 = LoadSpriteFont("resources/fonts/pixelplay.rbmf"); // rBMF font loading + SpriteFont font3 = LoadSpriteFont("resources/fonts/mecha.rbmf"); // rBMF font loading + SpriteFont font4 = LoadSpriteFont("resources/fonts/setback.rbmf"); // rBMF font loading + SpriteFont font5 = LoadSpriteFont("resources/fonts/romulus.rbmf"); // rBMF font loading + SpriteFont font6 = LoadSpriteFont("resources/fonts/pixantiqua.rbmf"); // rBMF font loading + SpriteFont font7 = LoadSpriteFont("resources/fonts/alpha_beta.rbmf"); // rBMF font loading + SpriteFont font8 = LoadSpriteFont("resources/fonts/jupiter_crash.rbmf"); // rBMF font loading //-------------------------------------------------------------------------------------- // Main game loop @@ -73,4 +76,4 @@ int main() //-------------------------------------------------------------------------------------- return 0; -} +} \ No newline at end of file diff --git a/examples/ex05b_rbmf_fonts.png b/examples/text_rbmf_fonts.png similarity index 100% rename from examples/ex05b_rbmf_fonts.png rename to examples/text_rbmf_fonts.png diff --git a/examples/text_sprite_fonts.c b/examples/text_sprite_fonts.c index 60a10c19c..77273e4f9 100644 --- a/examples/text_sprite_fonts.c +++ b/examples/text_sprite_fonts.c @@ -1,11 +1,11 @@ /******************************************************************************************* * -* raylib example 05a - SpriteFont loading and drawing some text with it +* raylib [text] example - SpriteFont loading and usage * * This example has been created using raylib 1.0 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * -* Copyright (c) 2013 Ramon Santamaria (Ray San - raysan@raysanweb.com) +* Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) * ********************************************************************************************/ @@ -17,13 +17,13 @@ int main() //-------------------------------------------------------------------------------------- int screenWidth = 800; int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [text] example - sprite fonts usage"); 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"; - - InitWindow(screenWidth, screenHeight, "raylib example 05a - sprite fonts"); - + // NOTE: Textures/Fonts MUST be loaded after Window initialization (OpenGL context is required) SpriteFont font1 = LoadSpriteFont("resources/fonts/custom_mecha.png"); // SpriteFont loading SpriteFont font2 = LoadSpriteFont("resources/fonts/custom_alagard.png"); // SpriteFont loading @@ -74,4 +74,4 @@ int main() //-------------------------------------------------------------------------------------- return 0; -} +} \ No newline at end of file diff --git a/examples/ex05a_sprite_fonts.png b/examples/text_sprite_fonts.png similarity index 100% rename from examples/ex05a_sprite_fonts.png rename to examples/text_sprite_fonts.png diff --git a/tests/test_textures_dds.c b/examples/textures_compressed_dds.c similarity index 70% rename from tests/test_textures_dds.c rename to examples/textures_compressed_dds.c index bc63a9c11..d1d59f21e 100644 --- a/tests/test_textures_dds.c +++ b/examples/textures_compressed_dds.c @@ -1,8 +1,11 @@ /******************************************************************************************* * -* raylib test - DDS Texture loading and drawing (compressed and uncompressed) +* raylib [textures] example - DDS Texture loading and drawing (compressed and uncompressed) * -* This test has been created using raylib 1.1 (www.raylib.com) +* NOTE: This example requires raylib OpenGL 3.3+ or ES2 versions for compressed texture, +* OpenGL 1.1 does not support compressed textures, only uncompressed version. +* +* This example has been created using raylib 1.2 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * * Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) @@ -18,18 +21,13 @@ int main() int screenWidth = 800; int screenHeight = 450; - InitWindow(screenWidth, screenHeight, "raylib test - DDS texture loading and drawing"); + InitWindow(screenWidth, screenHeight, "raylib [textures] example - DDS texture loading and drawing"); // NOTE: Textures MUST be loaded after Window initialization (OpenGL context is required) - //Texture2D texture = LoadTexture("resources/raylib_logo.dds"); // Texture loading - //Texture2D texture = LoadTexture("resources/raylib_logo_uncompressed.dds"); // Texture loading + //Texture2D texture = LoadTexture("resources/raylib_logo.dds"); // Texture loading (compressed) + Texture2D texture = LoadTexture("resources/raylib_logo_uncompressed.dds"); // Texture loading (uncompressed) - Image image = LoadImage("resources/raylib_logo_uncompressed.dds"); - Texture2D texture = CreateTexture(image, false); - - // NOTE: With OpenGL 3.3 mipmaps generation works great - - SetTargetFPS(60); + SetTargetFPS(60); // Set our game to run at 60 frames-per-second //--------------------------------------------------------------------------------------- // Main game loop @@ -49,7 +47,7 @@ int main() DrawTexture(texture, screenWidth/2 - texture.width/2, screenHeight/2 - texture.height/2, WHITE); - DrawText("this IS a texture!", 360, 370, 10, GRAY); + DrawText("this may be a compressed texture!", 320, 370, 10, GRAY); EndDrawing(); //---------------------------------------------------------------------------------- @@ -57,7 +55,7 @@ int main() // De-Initialization //-------------------------------------------------------------------------------------- - //UnloadTexture(texture); // Texture unloading + UnloadTexture(texture); // Texture unloading CloseWindow(); // Close window and OpenGL context //-------------------------------------------------------------------------------------- diff --git a/examples/textures_compressed_dds.png b/examples/textures_compressed_dds.png new file mode 100644 index 000000000..89922baea Binary files /dev/null and b/examples/textures_compressed_dds.png differ diff --git a/tests/test_image_loading.c b/examples/textures_image_loading.c similarity index 70% rename from tests/test_image_loading.c rename to examples/textures_image_loading.c index 7376bb60f..c2929d9ce 100644 --- a/tests/test_image_loading.c +++ b/examples/textures_image_loading.c @@ -1,11 +1,13 @@ /******************************************************************************************* * -* raylib test - Testing LoadImage() and CreateTexture() +* raylib [textures] example - Image loading and texture creation * -* This test has been created using raylib 1.0 (www.raylib.com) +* NOTE: Images are loaded in CPU memory (RAM); textures are loaded in GPU memory (VRAM) +* +* This example has been created using raylib 1.1 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * -* Copyright (c) 2013 Ramon Santamaria (Ray San - raysan@raysanweb.com) +* Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) * ********************************************************************************************/ @@ -18,13 +20,14 @@ int main() int screenWidth = 800; int screenHeight = 450; - InitWindow(screenWidth, screenHeight, "raylib test - Image loading"); + InitWindow(screenWidth, screenHeight, "raylib [textures] example - image loading"); // NOTE: Textures MUST be loaded after Window initialization (OpenGL context is required) - Image img = LoadImage("resources/raylib_logo.png"); - Texture2D texture = CreateTexture(img, false); - UnloadImage(img); + Image img = LoadImage("resources/raylib_logo.png"); // Loaded in CPU memory (RAM) + Texture2D texture = CreateTexture(img, false); // Image converted to texture, GPU memory (VRAM) + + UnloadImage(img); // Once image has been converted to texture and uploaded to VRAM, it can be unloaded from RAM //--------------------------------------------------------------------------------------- // Main game loop @@ -43,7 +46,7 @@ int main() DrawTexture(texture, screenWidth/2 - texture.width/2, screenHeight/2 - texture.height/2, WHITE); - DrawText("this IS a texture!", 360, 370, 10, GRAY); + DrawText("this IS a texture loaded from an image!", 300, 370, 10, GRAY); EndDrawing(); //---------------------------------------------------------------------------------- diff --git a/examples/textures_image_loading.png b/examples/textures_image_loading.png new file mode 100644 index 000000000..410103a5e Binary files /dev/null and b/examples/textures_image_loading.png differ diff --git a/examples/textures_logo_raylib.c b/examples/textures_logo_raylib.c index 606045943..23ee75ad3 100644 --- a/examples/textures_logo_raylib.c +++ b/examples/textures_logo_raylib.c @@ -1,11 +1,11 @@ /******************************************************************************************* * -* raylib example 04a - Texture loading and drawing +* raylib [textures] example - Texture loading and drawing * * This example has been created using raylib 1.0 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * -* Copyright (c) 2013 Ramon Santamaria (Ray San - raysan@raysanweb.com) +* Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) * ********************************************************************************************/ @@ -18,7 +18,7 @@ int main() int screenWidth = 800; int screenHeight = 450; - InitWindow(screenWidth, screenHeight, "raylib example 04a - texture loading and drawing"); + 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 @@ -55,4 +55,4 @@ int main() //-------------------------------------------------------------------------------------- return 0; -} +} \ No newline at end of file diff --git a/examples/ex04a_textures.png b/examples/textures_logo_raylib.png similarity index 100% rename from examples/ex04a_textures.png rename to examples/textures_logo_raylib.png diff --git a/examples/textures_mipmaps.c b/examples/textures_mipmaps.c new file mode 100644 index 000000000..889303a45 --- /dev/null +++ b/examples/textures_mipmaps.c @@ -0,0 +1,66 @@ +/******************************************************************************************* +* +* raylib [textures] example - Texture loading with mipmaps, mipmaps generation +* +* NOTE: On OpenGL 1.1, mipmaps are calculated 'manually', original image must be power-of-two +* On OpenGL 3.3 and ES2, mipmaps are generated automatically +* +* This example has been created using raylib 1.1 (www.raylib.com) +* raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) +* +* Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) +* +********************************************************************************************/ + +#include "raylib.h" + +int main() +{ + // Initialization + //-------------------------------------------------------------------------------------- + int screenWidth = 800; + int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [textures] example - texture mipmaps generation"); + + // NOTE: To generate mipmaps for an image, image must be loaded first and converted to texture + // with mipmaps option set to true on CreateTexture() + + Image image = LoadImage("resources/raylib_logo.png"); // Load image to CPU memory (RAM) + Texture2D texture = CreateTexture(image, true); // Create texture and generate mipmaps + + UnloadImage(image); // Once texture has been created, we can unload image data from 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 - 30, WHITE); + + DrawText("this IS a texture with mipmaps! really!", 210, 360, 20, 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_mipmaps.png b/examples/textures_mipmaps.png new file mode 100644 index 000000000..d8f2448cc Binary files /dev/null and b/examples/textures_mipmaps.png differ diff --git a/examples/textures_rectangle.c b/examples/textures_rectangle.c index 5836e7a9f..95caf0a46 100644 --- a/examples/textures_rectangle.c +++ b/examples/textures_rectangle.c @@ -1,11 +1,11 @@ /******************************************************************************************* * -* raylib example 04b - Texture loading and drawing a part defined by a rectangle +* raylib [textures] example - Texture loading and drawing a part defined by a rectangle * * This example has been created using raylib 1.0 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * -* Copyright (c) 2013 Ramon Santamaria (Ray San - raysan@raysanweb.com) +* Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) * ********************************************************************************************/ @@ -17,21 +17,17 @@ int main() //-------------------------------------------------------------------------------------- int screenWidth = 800; int screenHeight = 450; + + InitWindow(screenWidth, screenHeight, "raylib [texture] example - texture rectangle"); const char textLine1[] = "Lena image is a standard test image which has been in use since 1973."; - const char textLine2[] = "It comprises 512x512 pixels, and was originally cropped from the centerfold"; - const char textLine3[] = "of November 1972 issue of Playboy magazine. The image is probably the most"; - const char textLine4[] = "widely used test image for all sorts of image processing algorithms."; + const char textLine2[] = "It comprises 512x512 pixels, and it is probably the most widely used"; + const char textLine3[] = "test image for all sorts of image processing algorithms."; - InitWindow(screenWidth, screenHeight, "raylib example 04b - texture rectangle"); - // NOTE: Textures MUST be loaded after Window initialization (OpenGL context is required) Texture2D texture = LoadTexture("resources/lena.png"); // Texture loading - Color halfTrans = WHITE; - halfTrans.a = 30; - - Rectangle eyesRec = { 225, 240, 155, 50 }; + Rectangle eyesRec = { 225, 240, 155, 50 }; // Part of the texture to draw Vector2 position = { 369, 241 }; //-------------------------------------------------------------------------------------- @@ -51,14 +47,13 @@ int main() DrawText("LENA", 220, 100, 20, PINK); - DrawTexture(texture, screenWidth/2 - 256, 0, halfTrans); // Draw background image + DrawTexture(texture, screenWidth/2 - 256, 0, Fade(WHITE, 0.1f)); // Draw background image DrawTextureRec(texture, eyesRec, position, WHITE); // Draw eyes part of image DrawText(textLine1, 220, 140, 10, DARKGRAY); DrawText(textLine2, 220, 160, 10, DARKGRAY); DrawText(textLine3, 220, 180, 10, DARKGRAY); - DrawText(textLine4, 220, 200, 10, DARKGRAY); EndDrawing(); //---------------------------------------------------------------------------------- @@ -72,4 +67,4 @@ int main() //-------------------------------------------------------------------------------------- return 0; -} +} \ No newline at end of file diff --git a/examples/ex04b_texture_rectangle.png b/examples/textures_rectangle.png similarity index 100% rename from examples/ex04b_texture_rectangle.png rename to examples/textures_rectangle.png diff --git a/tests/test_texture_pro.c b/examples/textures_srcrec_dstrec.c similarity index 74% rename from tests/test_texture_pro.c rename to examples/textures_srcrec_dstrec.c index 02bf86cdd..27d9610ed 100644 --- a/tests/test_texture_pro.c +++ b/examples/textures_srcrec_dstrec.c @@ -1,8 +1,8 @@ /******************************************************************************************* * -* raylib test - Texture loading and drawing with pro parameters (rotation, origin, scale...) +* raylib [textures] example - Texture source and destination rectangles * -* This test has been created using raylib 1.1 (www.raylib.com) +* This example has been created using raylib 1.1 (www.raylib.com) * raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) * * Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) @@ -18,16 +18,19 @@ int main() int screenWidth = 800; int screenHeight = 450; - InitWindow(screenWidth, screenHeight, "raylib test - texture pro"); + InitWindow(screenWidth, screenHeight, "raylib [textures] examples - texture source and destination rectangles"); // NOTE: Textures MUST be loaded after Window initialization (OpenGL context is required) Texture2D texture = LoadTexture("resources/raylib_logo.png"); // Texture loading - - Vector2 position = { 200, 100 }; - + + // NOTE: Source rectangle (part of the texture to use for drawing) Rectangle sourceRec = { 128, 128, 128, 128 }; - Rectangle destRec = { 128, 128, 128, 128 }; - Vector2 origin = { 64, 64 }; // NOTE: origin is relative to destRec size + + // NOTE: Destination rectangle (screen rectangle where drawing part of texture) + Rectangle destRec = { screenWidth/2, screenHeight/2, 256, 256 }; + + // NOTE: Origin of the texture in case of rotation, it's relative to destination rectangle size + Vector2 origin = { 128, 128 }; //-------------------------------------------------------------------------------------- // Main game loop @@ -44,9 +47,8 @@ int main() ClearBackground(RAYWHITE); - //DrawTextureEx(texture, position, 45, 1, MAROON); - - DrawTexturePro(texture, sourceRec, destRec, origin, 45, GREEN); + // NOTE: Using DrawTexturePro() we can easily rotate and scale the part of the texture we draw + DrawTexturePro(texture, sourceRec, destRec, origin, 45, LIGHTGRAY); DrawLine(destRec.x, 0, destRec.x, screenHeight, RED); DrawLine(0, destRec.y, screenWidth, destRec.y, RED); diff --git a/examples/textures_srcrec_dstrec.png b/examples/textures_srcrec_dstrec.png new file mode 100644 index 000000000..95b7130e4 Binary files /dev/null and b/examples/textures_srcrec_dstrec.png differ diff --git a/tests/resources/audio/coin.wav b/tests/resources/audio/coin.wav deleted file mode 100644 index 6007509bf..000000000 Binary files a/tests/resources/audio/coin.wav and /dev/null differ diff --git a/tests/resources/audio/deserve_to_be_loved.ogg b/tests/resources/audio/deserve_to_be_loved.ogg deleted file mode 100644 index 12b900df1..000000000 Binary files a/tests/resources/audio/deserve_to_be_loved.ogg and /dev/null differ diff --git a/tests/resources/audio/destiny.ogg b/tests/resources/audio/destiny.ogg deleted file mode 100644 index 9d06b2ba5..000000000 Binary files a/tests/resources/audio/destiny.ogg and /dev/null differ diff --git a/tests/resources/audio/spring.wav b/tests/resources/audio/spring.wav deleted file mode 100644 index c7fbf1b9c..000000000 Binary files a/tests/resources/audio/spring.wav and /dev/null differ diff --git a/tests/resources/audio/weird.wav b/tests/resources/audio/weird.wav deleted file mode 100644 index 101029c5b..000000000 Binary files a/tests/resources/audio/weird.wav and /dev/null differ diff --git a/tests/resources/cat.obj b/tests/resources/cat.obj deleted file mode 100644 index 1faa9846b..000000000 --- a/tests/resources/cat.obj +++ /dev/null @@ -1,4731 +0,0 @@ -# -# object Cat -# - -v -0.00 30.40 -1.43 -v -0.00 30.01 1.57 -v 3.07 28.57 1.88 -v 3.23 28.74 -1.28 -v 2.93 30.52 -14.47 -v 0.00 31.65 -14.07 -v 0.00 32.03 -11.02 -v 3.49 30.39 -11.43 -v -0.00 22.66 -19.14 -v 1.98 22.94 -18.73 -v 2.33 19.32 -17.01 -v -0.00 18.98 -17.55 -v 6.09 25.02 -0.72 -v 6.05 25.40 2.15 -v 6.20 18.84 -0.16 -v 5.74 18.56 2.35 -v 6.32 19.78 -7.20 -v 4.52 16.56 -7.33 -v 4.70 16.75 -9.21 -v 6.65 19.94 -8.17 -v -0.00 30.43 5.21 -v 3.15 29.21 6.20 -v 3.46 15.19 3.29 -v 4.18 15.67 0.04 -v 2.28 13.77 0.12 -v 2.04 14.08 2.60 -v 2.38 14.74 -7.70 -v 2.27 15.37 -10.06 -v 5.58 26.84 7.17 -v 2.87 30.20 8.03 -v 4.93 27.37 9.73 -v 5.61 2.21 8.37 -v 6.14 3.22 9.74 -v 6.68 1.73 10.18 -v 5.68 -0.03 9.83 -v 4.08 -0.03 9.37 -v 4.02 1.99 7.98 -v 2.54 -0.03 10.04 -v 2.39 2.21 8.56 -v 1.77 1.73 10.48 -v 2.34 3.22 10.01 -v 2.52 3.27 11.56 -v 2.80 3.64 11.26 -v 3.32 3.62 11.86 -v 5.34 3.62 11.75 -v 5.75 3.64 11.07 -v 4.32 3.96 11.73 -v 4.34 3.73 12.02 -v 6.03 3.27 11.36 -v 7.00 1.16 12.70 -v 7.05 1.09 14.30 -v 6.62 -0.01 14.46 -v 6.67 -0.01 12.74 -v 5.94 -0.01 14.95 -v 5.34 -0.01 14.87 -v 4.29 -0.01 12.84 -v 4.47 -0.01 15.37 -v 3.58 -0.01 14.94 -v 1.67 1.17 12.96 -v 1.91 -0.01 12.93 -v 2.27 -0.01 14.65 -v 1.87 1.10 14.53 -v 2.04 2.51 14.08 -v 2.41 2.98 12.86 -v 3.07 3.33 12.99 -v 2.87 2.89 14.41 -v 4.95 3.61 13.06 -v 4.38 3.90 13.27 -v 4.41 3.41 14.79 -v 5.47 2.54 14.56 -v 6.74 2.51 13.88 -v 6.27 3.03 12.63 -v 5.58 1.24 15.03 -v 4.51 1.34 15.66 -v 3.48 1.25 15.07 -v 2.66 1.19 15.14 -v 3.54 2.56 14.63 -v 2.19 14.25 6.54 -v 1.39 14.12 6.98 -v 2.42 14.98 8.43 -v 1.36 14.78 9.20 -v 2.01 16.83 -13.60 -v -0.00 16.45 -13.91 -v 6.29 19.22 -3.91 -v 5.78 25.21 -4.36 -v 3.33 29.17 -4.90 -v 0.00 31.15 -4.95 -v -0.00 26.87 -17.74 -v 2.39 27.13 -17.55 -v -0.00 14.93 -10.66 -v -0.00 31.09 -16.51 -v 2.17 29.72 -16.78 -v 1.49 36.84 -24.79 -v 1.27 41.55 -26.64 -v 0.00 42.08 -25.44 -v -0.00 37.36 -23.33 -v 1.10 48.04 -27.60 -v 0.00 41.08 -28.03 -v 0.00 47.89 -28.89 -v -0.00 36.18 -26.27 -v -0.02 31.50 -23.55 -v 1.65 32.74 -22.14 -v 1.80 30.64 -19.84 -v -0.00 29.11 -21.24 -v -0.02 33.60 -20.56 -v -0.01 31.57 -18.45 -v 0.00 48.20 -26.51 -v 0.64 48.90 -27.72 -v -0.00 48.99 -27.04 -v 0.00 48.81 -28.52 -v 2.01 29.52 -17.72 -v -0.00 19.75 14.29 -v -0.00 17.45 12.46 -v 1.88 17.93 12.35 -v 1.57 20.12 14.04 -v 2.56 30.98 9.13 -v 4.46 28.79 10.92 -v -0.00 31.95 8.21 -v -0.00 31.29 7.02 -v 5.94 25.26 11.51 -v 4.93 26.82 12.64 -v -0.00 32.95 8.95 -v 2.56 32.43 9.79 -v 1.36 23.45 15.57 -v -0.00 23.15 15.81 -v 3.19 24.31 14.77 -v 3.17 20.72 13.42 -v 5.00 22.20 12.86 -v 4.13 24.96 14.05 -v 4.39 31.01 11.80 -v 4.76 29.65 13.36 -v 4.26 28.06 14.68 -v 3.28 27.06 15.56 -v -0.00 25.73 16.48 -v 1.41 26.15 16.41 -v 2.33 34.56 22.15 -v 2.25 34.47 22.31 -v 3.19 34.48 22.08 -v 3.11 34.55 21.97 -v 1.82 34.76 22.51 -v 1.98 34.86 22.25 -v 4.11 41.24 16.12 -v 4.12 40.53 17.30 -v 5.12 39.89 15.46 -v 5.50 40.64 14.98 -v 3.81 42.25 16.18 -v 5.77 38.26 15.33 -v 5.91 39.09 13.80 -v 7.55 38.39 15.53 -v 6.54 36.03 14.95 -v 5.79 37.39 13.19 -v 1.95 41.74 16.78 -v 1.50 41.82 17.78 -v 1.91 41.74 17.62 -v 4.44 44.21 17.57 -v 3.38 43.19 17.82 -v 4.27 42.62 18.08 -v 4.86 43.93 17.63 -v 6.27 42.25 15.15 -v 4.55 43.61 16.50 -v 8.27 41.13 15.27 -v 7.96 39.76 15.42 -v 6.37 40.27 13.65 -v 8.04 39.75 15.23 -v 7.03 42.62 14.09 -v 4.88 41.33 13.82 -v 5.86 43.29 14.36 -v 5.09 43.90 15.39 -v 3.78 42.25 15.07 -v 5.51 45.24 17.16 -v 5.70 45.19 17.08 -v 7.48 46.20 17.08 -v 7.08 44.48 15.93 -v 7.79 45.24 16.33 -v 8.24 43.92 15.60 -v 8.30 43.97 15.38 -v 7.56 44.53 15.35 -v 7.82 45.29 16.17 -v 6.80 44.94 15.49 -v 6.20 45.28 16.21 -v 7.45 46.19 16.92 -v 5.18 43.72 17.22 -v 8.33 42.51 15.28 -v 8.40 42.58 15.07 -v 5.09 41.88 17.65 -v 3.26 19.02 11.83 -v 4.39 16.04 -3.75 -v 2.33 13.93 -3.88 -v 0.00 13.05 0.04 -v 0.00 13.35 2.73 -v 0.00 14.05 -7.91 -v 0.00 13.86 7.43 -v 0.00 14.78 9.65 -v 2.74 18.21 -13.21 -v 0.00 13.25 -4.01 -v 5.80 25.70 -8.38 -v 3.34 30.05 -8.19 -v 0.00 31.71 -7.95 -v 2.16 35.87 22.31 -v 2.57 36.23 22.18 -v 2.55 36.31 22.34 -v 2.13 35.91 22.52 -v 1.80 35.20 22.55 -v 1.94 35.25 22.33 -v 4.17 35.18 21.38 -v 4.25 35.81 21.29 -v 4.16 35.76 21.28 -v 4.10 35.18 21.41 -v 3.86 34.75 21.73 -v 3.78 34.80 21.68 -v 3.07 36.36 21.96 -v 3.13 36.47 22.14 -v 3.78 3.59 13.14 -v 5.65 3.37 12.82 -v 6.11 2.84 14.28 -v 6.30 1.18 14.99 -v 2.96 -0.01 15.07 -v 6.25 36.31 15.33 -v 7.47 38.42 15.69 -v 3.13 41.25 17.80 -v 2.03 41.16 19.56 -v 2.31 41.56 17.79 -v 7.09 2.43 -19.06 -v 7.57 3.28 -17.72 -v 7.74 1.96 -17.50 -v 7.12 0.00 -18.53 -v 5.75 0.00 -19.00 -v 5.72 2.06 -19.83 -v 4.44 0.00 -18.31 -v 4.40 2.43 -18.89 -v 3.76 1.96 -17.22 -v 3.89 3.29 -17.47 -v 4.49 3.30 -16.19 -v 4.57 3.62 -16.49 -v 5.21 3.62 -15.90 -v 5.96 3.97 -15.94 -v 5.96 3.72 -15.75 -v 6.70 3.61 -16.01 -v 7.24 3.61 -16.67 -v 7.39 3.30 -16.39 -v 8.75 1.24 -15.02 -v 8.64 1.16 -12.80 -v 8.22 0.00 -12.58 -v 8.27 0.00 -14.95 -v 7.55 0.00 -11.91 -v 6.95 0.00 -12.02 -v 5.92 0.00 -14.81 -v 6.10 0.00 -11.32 -v 5.22 0.00 -11.92 -v 3.53 1.16 -12.48 -v 3.19 1.24 -14.66 -v 3.57 0.00 -14.69 -v 3.93 0.00 -12.32 -v 3.70 3.02 -13.10 -v 4.06 3.53 -14.81 -v 4.51 3.43 -12.65 -v 4.71 3.91 -14.62 -v 6.01 4.53 -14.23 -v 6.04 4.00 -12.13 -v 7.09 3.06 -12.44 -v 6.57 4.22 -14.52 -v 8.34 3.02 -13.38 -v 7.88 3.59 -15.12 -v 7.20 1.32 -11.80 -v 6.14 1.42 -10.92 -v 5.12 1.33 -11.73 -v 4.30 1.26 -11.65 -v 5.18 3.08 -12.34 -v 5.42 4.19 -14.41 -v 7.26 3.95 -14.86 -v 7.72 3.38 -12.82 -v 7.91 1.26 -11.85 -v 4.60 0.00 -11.75 -v 8.34 41.12 15.05 -v 1.05 31.27 23.35 -v 1.91 30.72 22.80 -v -0.00 30.42 21.70 -v 0.99 31.21 23.60 -v 0.44 31.50 23.77 -v -0.00 31.85 23.98 -v -0.00 31.64 23.83 -v 0.19 31.62 23.81 -v 0.77 31.44 23.53 -v 4.07 40.21 13.27 -v 2.70 41.60 14.81 -v 9.35 21.36 -11.82 -v 7.34 20.08 -8.75 -v 7.54 15.35 -9.52 -v 9.91 16.45 -13.25 -v 6.26 25.80 -8.91 -v 7.71 25.97 -11.69 -v 7.69 23.23 -16.57 -v 6.48 26.48 -15.68 -v 4.67 24.17 -19.26 -v 4.29 27.08 -17.03 -v 5.40 13.46 -20.28 -v 5.10 15.57 -19.07 -v 8.29 14.42 -17.91 -v 8.49 11.41 -19.26 -v 8.44 18.60 -17.05 -v 4.95 19.86 -19.38 -v 4.86 29.06 -14.93 -v 5.76 28.94 -11.95 -v 8.39 10.36 -17.19 -v 8.26 8.96 -17.63 -v 8.15 9.26 -19.80 -v 5.37 9.04 -22.20 -v 5.39 12.45 -21.46 -v 7.56 6.58 -19.65 -v 7.75 6.67 -17.92 -v 5.46 6.28 -20.78 -v 9.55 12.52 -15.65 -v 3.21 10.61 -16.85 -v 2.99 11.59 -19.22 -v 3.15 9.53 -19.54 -v 3.35 9.18 -17.26 -v 3.93 6.80 -17.69 -v 5.84 6.61 -16.48 -v 6.07 8.72 -15.66 -v 3.87 6.53 -19.23 -v 6.24 9.51 -15.18 -v 6.94 10.91 -13.09 -v 3.41 12.28 -13.94 -v 3.04 13.84 -15.32 -v 3.10 15.11 -17.16 -v 6.80 11.45 5.31 -v 5.08 11.25 4.62 -v 5.44 13.30 3.26 -v 7.01 13.17 4.27 -v 3.68 11.50 5.38 -v 3.96 13.36 4.06 -v 2.61 12.50 6.46 -v 3.54 12.74 10.35 -v 5.44 11.32 10.79 -v 5.71 12.69 10.92 -v 7.21 12.61 9.49 -v 6.74 10.48 9.44 -v 5.54 15.60 2.65 -v 7.56 15.57 3.60 -v 3.35 15.84 10.75 -v 5.70 16.02 11.41 -v 7.55 16.03 10.25 -v 7.92 12.48 7.83 -v 8.73 15.76 7.82 -v 7.08 21.62 3.10 -v 7.64 18.57 3.15 -v 6.65 24.62 10.50 -v 7.22 23.54 7.84 -v 7.48 10.15 8.22 -v 6.52 9.31 6.17 -v 6.51 9.30 6.16 -v 4.96 9.40 5.37 -v 2.67 3.40 8.13 -v 4.14 3.11 7.38 -v 2.39 4.06 8.96 -v 2.88 4.43 10.82 -v 8.62 19.59 7.86 -v 5.89 19.71 11.97 -v 7.55 19.76 10.61 -v 4.84 8.62 10.62 -v 4.95 9.57 10.50 -v 3.02 9.48 10.01 -v 2.97 8.56 10.21 -v 6.17 8.46 9.79 -v 6.32 9.42 9.66 -v 6.98 9.13 8.55 -v 6.79 8.23 8.68 -v 4.50 8.16 6.43 -v 6.08 8.40 7.10 -v 5.96 7.46 7.26 -v 4.41 7.23 6.64 -v 6.51 7.32 8.81 -v 3.52 10.12 5.88 -v 2.46 8.83 7.68 -v 2.69 6.46 7.45 -v 4.31 6.29 6.86 -v 2.48 7.01 8.20 -v 3.10 7.52 10.42 -v 4.48 4.59 11.31 -v 5.68 4.40 10.51 -v 6.11 4.22 9.23 -v 5.55 3.27 7.82 -v 2.19 28.58 17.74 -v -0.00 28.19 17.89 -v 0.00 27.08 17.06 -v 1.97 27.54 16.97 -v 4.13 28.54 16.42 -v 4.34 29.37 17.58 -v 5.44 30.14 15.70 -v 6.10 31.05 16.90 -v 5.84 30.72 18.56 -v 0.00 34.44 9.58 -v 3.01 33.84 10.45 -v 5.46 32.87 12.29 -v 5.78 31.44 14.37 -v 5.89 35.55 12.68 -v 3.31 36.61 10.82 -v -0.00 37.13 9.86 -v 0.92 34.95 23.68 -v -0.00 35.17 23.93 -v -0.00 34.52 24.34 -v 1.00 34.24 24.10 -v 1.13 33.50 24.60 -v -0.00 33.71 24.97 -v -0.00 32.81 24.82 -v 1.16 33.35 24.54 -v 0.17 32.79 24.76 -v 1.88 32.27 24.20 -v 1.06 32.47 24.68 -v 0.92 32.04 24.48 -v 1.63 31.75 24.03 -v 0.74 31.73 24.22 -v 1.35 31.33 23.89 -v 1.29 34.04 23.96 -v 3.21 30.53 21.75 -v 3.96 31.60 22.04 -v 2.75 31.57 23.20 -v 0.00 41.90 18.20 -v -0.00 41.15 20.18 -v 4.22 29.82 19.06 -v 6.42 33.99 19.85 -v 6.16 32.01 19.66 -v 6.88 32.41 18.06 -v 7.09 34.21 18.13 -v -0.00 36.61 23.40 -v -0.00 35.79 23.62 -v 0.93 35.61 23.37 -v 1.12 36.42 23.17 -v -0.00 31.48 23.97 -v 0.40 31.42 23.92 -v 4.14 32.81 22.39 -v 3.02 32.48 23.28 -v 1.78 36.12 22.84 -v 1.42 35.35 23.08 -v 2.07 40.06 21.08 -v -0.00 40.08 21.59 -v 3.19 36.68 22.18 -v 3.82 36.35 21.67 -v 4.00 36.52 21.64 -v 3.51 37.03 22.04 -v 3.07 40.70 12.84 -v -0.00 41.05 12.30 -v 0.00 41.95 14.79 -v 1.34 29.48 22.43 -v 1.78 29.30 21.35 -v 2.55 29.83 21.48 -v 1.89 29.97 22.46 -v 5.17 30.55 19.50 -v 4.32 30.50 20.82 -v 3.37 29.88 20.50 -v 2.28 29.22 19.09 -v 2.10 29.36 20.32 -v -0.00 33.98 24.85 -v 4.63 37.76 21.16 -v 3.35 38.38 21.86 -v 2.79 37.40 22.61 -v 3.80 39.63 20.44 -v 4.97 38.68 19.91 -v 1.86 38.83 22.55 -v 1.56 37.79 23.12 -v 5.08 36.64 20.39 -v 5.59 37.08 19.06 -v 4.94 39.75 16.71 -v 4.92 39.26 18.02 -v 5.85 37.70 17.08 -v 5.89 38.20 15.93 -v 0.84 29.87 23.02 -v -0.00 29.64 23.08 -v 0.00 29.17 22.48 -v -0.00 28.93 21.37 -v -0.00 29.08 20.37 -v -0.00 28.97 19.19 -v 5.06 31.74 21.03 -v 3.76 40.47 18.68 -v -0.00 38.87 22.78 -v 1.33 34.72 23.44 -v 5.28 36.00 20.21 -v 4.40 36.18 21.25 -v 4.48 35.84 21.14 -v -0.00 37.84 23.28 -v 2.39 33.29 23.39 -v 1.36 33.84 23.79 -v 1.63 32.77 24.35 -v 2.56 36.62 22.56 -v 4.19 36.02 21.35 -v 3.56 33.77 22.69 -v 3.37 39.54 11.68 -v -0.00 39.65 10.81 -v 6.54 34.68 14.01 -v 1.15 31.06 23.46 -v 1.39 30.16 23.06 -v 0.18 32.36 24.61 -v 0.15 32.09 24.44 -v -0.00 32.76 24.73 -v -0.00 32.34 24.55 -v -0.00 32.10 24.37 -v 0.81 31.29 23.67 -v 4.73 34.55 21.49 -v 5.24 33.33 21.28 -v 6.91 32.96 15.56 -v 7.07 34.54 16.53 -v 6.04 36.45 16.75 -v 5.76 36.16 18.45 -v -0.00 30.54 23.72 -v 0.85 30.42 23.55 -v 3.73 36.27 21.50 -v 4.11 35.97 21.31 -v 2.30 35.42 22.46 -v 2.29 35.79 22.39 -v 2.37 35.17 22.43 -v 2.58 34.97 22.35 -v 3.08 34.88 22.13 -v 3.42 35.10 21.98 -v 3.55 35.34 21.89 -v 3.46 35.98 21.87 -v 3.56 35.68 21.85 -v 3.04 36.19 22.04 -v 2.61 36.15 22.23 -v 2.97 35.56 22.36 -v 4.73 7.67 10.74 -v 5.94 7.50 9.91 -v 5.76 6.50 7.43 -v 2.55 7.46 7.26 -v 2.39 7.97 7.91 -v 2.76 8.38 7.02 -v 0.00 49.12 -27.78 -v -3.23 28.74 -1.28 -v -3.07 28.57 1.88 -v -2.93 30.52 -14.47 -v -3.49 30.39 -11.43 -v -2.33 19.32 -17.01 -v -1.98 22.94 -18.73 -v -6.09 25.02 -0.72 -v -6.05 25.40 2.15 -v -6.20 18.84 -0.16 -v -5.74 18.55 2.35 -v -6.32 19.78 -7.20 -v -6.65 19.94 -8.17 -v -4.70 16.75 -9.21 -v -4.52 16.56 -7.33 -v -3.15 29.21 6.20 -v -3.46 15.18 3.30 -v -4.18 15.67 0.04 -v -2.28 13.77 0.12 -v -2.04 14.08 2.60 -v -2.38 14.74 -7.70 -v -2.27 15.37 -10.06 -v -5.58 26.84 7.17 -v -4.93 27.37 9.73 -v -2.87 30.20 8.03 -v -5.61 2.21 8.37 -v -5.68 -0.03 9.83 -v -6.68 1.73 10.18 -v -6.14 3.22 9.74 -v -4.02 1.99 7.98 -v -4.08 -0.03 9.37 -v -2.39 2.21 8.56 -v -2.54 -0.03 10.04 -v -1.77 1.73 10.48 -v -2.34 3.22 10.01 -v -2.52 3.27 11.56 -v -2.80 3.64 11.26 -v -3.32 3.62 11.86 -v -4.32 3.96 11.73 -v -5.75 3.64 11.07 -v -5.34 3.62 11.75 -v -4.34 3.73 12.02 -v -6.03 3.27 11.36 -v -7.00 1.16 12.70 -v -6.67 -0.01 12.74 -v -6.62 -0.01 14.46 -v -7.05 1.09 14.30 -v -5.94 -0.01 14.95 -v -4.29 -0.01 12.84 -v -5.34 -0.01 14.87 -v -4.47 -0.01 15.37 -v -3.58 -0.01 14.94 -v -1.67 1.17 12.96 -v -1.87 1.10 14.53 -v -2.27 -0.01 14.65 -v -1.91 -0.01 12.93 -v -2.04 2.51 14.08 -v -2.41 2.98 12.86 -v -3.07 3.33 12.99 -v -2.87 2.89 14.41 -v -4.95 3.61 13.06 -v -5.47 2.54 14.56 -v -4.41 3.41 14.79 -v -4.38 3.90 13.27 -v -6.74 2.51 13.88 -v -6.27 3.03 12.63 -v -5.58 1.24 15.03 -v -4.51 1.34 15.66 -v -3.48 1.25 15.07 -v -2.66 1.19 15.14 -v -3.54 2.56 14.63 -v -2.19 14.25 6.54 -v -1.39 14.12 6.98 -v -2.42 14.98 8.43 -v -1.36 14.78 9.20 -v -2.01 16.83 -13.60 -v -6.29 19.22 -3.91 -v -5.78 25.21 -4.36 -v -3.33 29.17 -4.90 -v -2.39 27.13 -17.55 -v -2.17 29.71 -16.77 -v -1.49 36.84 -24.79 -v -1.27 41.55 -26.64 -v -1.10 48.04 -27.60 -v -1.80 30.62 -19.83 -v -1.73 32.71 -22.16 -v -0.64 48.90 -27.72 -v -2.01 29.49 -17.69 -v -1.57 20.12 14.04 -v -1.88 17.93 12.35 -v -2.56 30.98 9.13 -v -4.46 28.79 10.92 -v -5.94 25.30 11.45 -v -4.93 26.82 12.64 -v -2.56 32.43 9.79 -v -1.36 23.45 15.57 -v -3.19 24.31 14.77 -v -4.13 24.96 14.05 -v -5.00 22.20 12.86 -v -3.17 20.72 13.42 -v -4.39 31.01 11.80 -v -4.26 28.06 14.68 -v -4.76 29.65 13.36 -v -3.28 27.06 15.56 -v -1.41 26.15 16.41 -v -2.36 34.54 22.12 -v -3.17 34.53 21.93 -v -3.24 34.45 22.04 -v -2.28 34.44 22.27 -v -1.85 34.74 22.48 -v -2.01 34.84 22.21 -v -4.11 41.25 16.12 -v -5.14 39.91 15.45 -v -4.10 40.52 17.32 -v -5.51 40.65 14.97 -v -3.82 42.26 16.17 -v -5.78 38.23 15.31 -v -5.93 39.07 13.75 -v -5.77 37.37 13.20 -v -6.53 36.04 14.96 -v -7.55 38.38 15.52 -v -1.95 41.75 16.78 -v -1.91 41.74 17.62 -v -1.50 41.83 17.78 -v -4.44 44.22 17.56 -v -4.87 43.94 17.63 -v -4.27 42.64 18.07 -v -3.39 43.20 17.82 -v -4.55 43.63 16.49 -v -6.28 42.27 15.14 -v -8.27 41.15 15.26 -v -7.97 39.78 15.41 -v -6.38 40.27 13.63 -v -8.05 39.76 15.23 -v -7.04 42.64 14.09 -v -5.86 43.30 14.35 -v -4.81 41.35 13.62 -v -3.78 42.26 15.07 -v -5.09 43.91 15.39 -v -5.51 45.25 17.16 -v -7.48 46.22 17.08 -v -5.70 45.21 17.08 -v -7.08 44.49 15.93 -v -7.79 45.26 16.33 -v -8.24 43.93 15.60 -v -8.30 43.98 15.38 -v -7.82 45.31 16.17 -v -7.57 44.55 15.34 -v -6.80 44.96 15.49 -v -7.45 46.20 16.92 -v -6.20 45.30 16.21 -v -5.19 43.74 17.22 -v -8.33 42.53 15.28 -v -8.40 42.59 15.07 -v -5.08 41.92 17.73 -v -3.26 19.02 11.83 -v -4.39 16.04 -3.75 -v -2.33 13.93 -3.88 -v -2.74 18.21 -13.21 -v -5.80 25.70 -8.38 -v -3.34 30.05 -8.19 -v -2.22 35.87 22.27 -v -2.18 35.91 22.49 -v -2.62 36.32 22.31 -v -2.64 36.24 22.14 -v -1.99 35.24 22.30 -v -1.84 35.19 22.52 -v -4.24 35.17 21.32 -v -4.17 35.17 21.36 -v -4.22 35.77 21.22 -v -4.32 35.81 21.24 -v -3.84 34.78 21.64 -v -3.92 34.73 21.68 -v -3.20 36.48 22.11 -v -3.14 36.37 21.92 -v -3.78 3.59 13.14 -v -6.11 2.84 14.28 -v -5.65 3.37 12.82 -v -6.30 1.18 14.99 -v -2.96 -0.01 15.07 -v -7.48 38.41 15.68 -v -6.27 36.31 15.32 -v -3.13 41.25 17.80 -v -2.31 41.56 17.79 -v -2.03 41.16 19.56 -v -7.09 2.43 -19.06 -v -7.12 0.00 -18.53 -v -7.74 1.96 -17.50 -v -7.57 3.28 -17.72 -v -5.72 2.06 -19.83 -v -5.75 0.00 -19.00 -v -4.40 2.43 -18.89 -v -4.44 0.00 -18.31 -v -3.76 1.96 -17.22 -v -3.89 3.29 -17.47 -v -4.57 3.62 -16.49 -v -4.49 3.30 -16.19 -v -5.96 3.97 -15.94 -v -5.21 3.62 -15.90 -v -5.96 3.72 -15.75 -v -6.70 3.61 -16.01 -v -7.39 3.30 -16.39 -v -7.24 3.61 -16.67 -v -8.75 1.24 -15.02 -v -8.27 0.00 -14.95 -v -8.22 0.00 -12.58 -v -8.64 1.16 -12.80 -v -7.55 0.00 -11.91 -v -5.92 0.00 -14.81 -v -6.95 0.00 -12.02 -v -6.10 0.00 -11.32 -v -5.22 0.00 -11.92 -v -3.53 1.16 -12.48 -v -3.93 0.00 -12.32 -v -3.57 0.00 -14.69 -v -3.19 1.24 -14.66 -v -3.70 3.02 -13.10 -v -4.06 3.53 -14.81 -v -4.71 3.91 -14.62 -v -4.51 3.43 -12.65 -v -6.01 4.53 -14.23 -v -6.57 4.22 -14.52 -v -7.09 3.06 -12.44 -v -6.04 4.00 -12.13 -v -8.34 3.02 -13.38 -v -7.88 3.59 -15.12 -v -7.20 1.32 -11.80 -v -6.14 1.42 -10.92 -v -5.12 1.33 -11.73 -v -4.30 1.26 -11.65 -v -5.18 3.08 -12.34 -v -5.42 4.19 -14.41 -v -7.26 3.95 -14.86 -v -7.72 3.38 -12.82 -v -7.91 1.26 -11.85 -v -4.60 0.00 -11.75 -v -8.35 41.13 15.05 -v -1.05 31.27 23.35 -v -1.91 30.72 22.80 -v -0.44 31.50 23.77 -v -0.99 31.21 23.60 -v -0.18 31.62 23.81 -v -0.76 31.44 23.53 -v -3.97 40.15 13.10 -v -2.70 41.61 14.81 -v -9.35 21.36 -11.82 -v -9.91 16.45 -13.25 -v -7.54 15.35 -9.52 -v -7.34 20.08 -8.75 -v -6.26 25.80 -8.91 -v -7.71 25.97 -11.69 -v -6.48 26.48 -15.68 -v -7.69 23.23 -16.57 -v -4.67 24.17 -19.26 -v -4.29 27.08 -17.03 -v -5.40 13.46 -20.27 -v -8.49 11.41 -19.26 -v -8.29 14.42 -17.91 -v -5.10 15.57 -19.07 -v -4.95 19.86 -19.38 -v -8.44 18.60 -17.05 -v -5.76 28.94 -11.95 -v -4.86 29.06 -14.93 -v -8.39 10.36 -17.19 -v -8.15 9.26 -19.79 -v -8.25 8.95 -17.63 -v -5.39 12.45 -21.46 -v -5.37 9.04 -22.20 -v -7.55 6.57 -19.63 -v -7.74 6.66 -17.92 -v -5.46 6.28 -20.75 -v -9.55 12.52 -15.65 -v -3.21 10.61 -16.85 -v -3.35 9.18 -17.26 -v -3.15 9.53 -19.54 -v -2.99 11.59 -19.22 -v -3.95 6.80 -17.69 -v -6.07 8.71 -15.66 -v -5.84 6.61 -16.49 -v -3.89 6.53 -19.21 -v -6.24 9.51 -15.18 -v -3.41 12.28 -13.94 -v -6.94 10.91 -13.09 -v -3.04 13.84 -15.32 -v -3.10 15.11 -17.16 -v -6.80 11.45 5.31 -v -7.01 13.17 4.27 -v -5.44 13.30 3.26 -v -5.08 11.25 4.62 -v -3.96 13.36 4.06 -v -3.68 11.50 5.38 -v -2.61 12.50 6.46 -v -3.54 12.74 10.35 -v -5.71 12.69 10.92 -v -5.44 11.32 10.79 -v -7.21 12.61 9.49 -v -6.74 10.48 9.44 -v -7.56 15.56 3.62 -v -5.54 15.58 2.66 -v -3.35 15.84 10.75 -v -5.70 16.04 11.42 -v -7.55 16.04 10.26 -v -7.92 12.48 7.83 -v -8.73 15.76 7.84 -v -7.64 18.53 3.16 -v -7.08 21.58 3.09 -v -6.65 24.64 10.45 -v -7.22 23.54 7.80 -v -7.48 10.15 8.22 -v -6.51 9.30 6.16 -v -4.96 9.40 5.37 -v -6.52 9.31 6.17 -v -4.14 3.11 7.38 -v -2.67 3.40 8.13 -v -2.39 4.06 8.96 -v -2.88 4.43 10.82 -v -8.62 19.59 7.86 -v -5.89 19.76 11.97 -v -7.55 19.80 10.61 -v -4.84 8.62 10.62 -v -2.97 8.56 10.21 -v -3.02 9.48 10.01 -v -4.95 9.57 10.50 -v -6.17 8.46 9.79 -v -6.32 9.42 9.66 -v -6.98 9.13 8.55 -v -6.79 8.23 8.68 -v -4.50 8.16 6.43 -v -4.41 7.23 6.64 -v -5.96 7.46 7.26 -v -6.08 8.40 7.10 -v -6.51 7.32 8.81 -v -3.52 10.12 5.88 -v -2.46 8.83 7.68 -v -4.31 6.29 6.86 -v -2.69 6.46 7.45 -v -2.48 7.01 8.20 -v -3.10 7.52 10.42 -v -4.48 4.59 11.31 -v -5.68 4.40 10.51 -v -6.11 4.22 9.23 -v -5.55 3.27 7.82 -v -2.19 28.58 17.74 -v -1.97 27.54 16.97 -v -4.34 29.37 17.58 -v -4.13 28.54 16.42 -v -5.84 30.72 18.56 -v -6.10 31.05 16.90 -v -5.44 30.14 15.70 -v -3.01 33.84 10.45 -v -5.78 31.44 14.37 -v -5.46 32.87 12.29 -v -5.71 35.59 12.81 -v -3.31 36.61 10.82 -v -0.93 34.94 23.68 -v -1.00 34.24 24.10 -v -1.16 33.35 24.54 -v -0.17 32.79 24.76 -v -1.13 33.50 24.60 -v -1.88 32.27 24.20 -v -1.63 31.75 24.03 -v -0.92 32.04 24.48 -v -1.06 32.47 24.68 -v -1.35 31.33 23.89 -v -0.74 31.73 24.22 -v -1.30 34.03 23.96 -v -3.21 30.53 21.75 -v -2.75 31.57 23.20 -v -3.96 31.60 22.04 -v -4.22 29.82 19.06 -v -6.42 33.99 19.85 -v -7.09 34.21 18.13 -v -6.88 32.41 18.06 -v -6.16 32.01 19.66 -v -1.13 36.42 23.17 -v -0.94 35.60 23.36 -v -0.40 31.42 23.92 -v -3.03 32.48 23.28 -v -4.15 32.81 22.39 -v -1.82 36.12 22.82 -v -1.44 35.34 23.07 -v -2.07 40.06 21.08 -v -4.07 36.54 21.59 -v -3.89 36.36 21.63 -v -3.25 36.70 22.15 -v -3.56 37.05 22.01 -v -2.94 40.68 12.68 -v -1.34 29.48 22.43 -v -1.89 29.97 22.46 -v -2.55 29.83 21.48 -v -1.78 29.30 21.35 -v -5.17 30.55 19.50 -v -3.37 29.88 20.50 -v -4.32 30.50 20.82 -v -2.28 29.22 19.09 -v -2.10 29.36 20.32 -v -2.83 37.42 22.60 -v -3.36 38.39 21.85 -v -4.65 37.77 21.15 -v -3.79 39.63 20.44 -v -4.96 38.68 19.91 -v -1.86 38.83 22.55 -v -1.57 37.79 23.12 -v -5.57 37.08 19.06 -v -5.09 36.65 20.37 -v -4.94 39.76 16.71 -v -5.87 38.17 15.92 -v -5.83 37.68 17.08 -v -4.92 39.25 18.02 -v -0.84 29.87 23.02 -v -5.06 31.74 21.03 -v -3.72 40.46 18.75 -v -1.34 34.71 23.44 -v -5.29 36.00 20.18 -v -4.55 35.85 21.09 -v -4.47 36.19 21.20 -v -2.41 33.28 23.39 -v -1.63 32.77 24.35 -v -1.37 33.83 23.79 -v -2.62 36.63 22.54 -v -4.26 36.03 21.29 -v -3.60 33.75 22.67 -v -3.34 39.51 11.62 -v -6.49 34.69 14.03 -v -1.15 31.06 23.46 -v -1.39 30.16 23.06 -v -0.18 32.36 24.61 -v -0.15 32.09 24.44 -v -0.81 31.29 23.67 -v -4.78 34.53 21.45 -v -5.25 33.32 21.27 -v -6.91 32.96 15.56 -v -7.07 34.54 16.53 -v -6.06 36.46 16.74 -v -5.78 36.16 18.45 -v -0.85 30.42 23.55 -v -3.80 36.28 21.45 -v -4.18 35.98 21.26 -v -2.36 35.40 22.43 -v -2.35 35.78 22.36 -v -2.43 35.15 22.39 -v -2.64 34.95 22.32 -v -3.14 34.86 22.10 -v -3.48 35.09 21.94 -v -3.62 35.34 21.85 -v -3.62 35.68 21.80 -v -3.53 35.99 21.82 -v -3.11 36.20 22.00 -v -2.68 36.15 22.20 -v -3.03 35.56 22.32 -v -4.73 7.67 10.74 -v -5.94 7.50 9.91 -v -5.76 6.50 7.43 -v -2.55 7.46 7.26 -v -2.39 7.97 7.91 -v -2.76 8.38 7.02 -v 6.85 37.87 15.86 -v 7.57 39.02 15.60 -v 6.61 39.54 15.81 -v 6.25 40.55 15.97 -v 5.65 41.65 16.34 -v 5.11 42.24 16.66 -v 8.70 40.27 15.35 -v 7.52 41.07 15.29 -v 8.25 42.23 15.29 -v 6.63 42.67 15.79 -v 6.24 43.68 16.20 -v 4.53 42.44 16.97 -v 3.63 40.71 17.31 -v 4.99 43.52 16.35 -v 8.25 38.26 15.78 -v 6.14 36.94 15.33 -v -6.26 40.55 15.97 -v -6.62 39.52 15.80 -v -7.58 39.01 15.59 -v -6.85 37.85 15.85 -v -5.11 42.25 16.66 -v -5.66 41.66 16.34 -v -8.70 40.28 15.34 -v -7.53 41.09 15.28 -v -6.63 42.68 15.79 -v -8.25 42.24 15.29 -v -6.24 43.69 16.20 -v -3.61 40.71 17.32 -v -4.53 42.45 16.97 -v -5.00 43.53 16.35 -v -8.25 38.27 15.78 -v -6.16 36.93 15.32 -# 1013 vertices - -vn -0.00 0.99 0.14 -vn -0.00 1.00 0.00 -vn 0.61 0.79 -0.04 -vn 0.65 0.76 0.07 -vn 0.49 0.82 -0.29 -vn 0.00 0.99 -0.17 -vn 0.00 1.00 0.02 -vn 0.56 0.82 0.10 -vn -0.00 -0.08 -1.00 -vn -0.08 -0.02 -1.00 -vn -0.34 -0.51 -0.79 -vn -0.00 -0.63 -0.78 -vn 0.94 0.33 -0.02 -vn 0.90 0.42 -0.11 -vn 0.96 -0.27 0.06 -vn 0.80 -0.25 -0.55 -vn 0.97 -0.22 0.10 -vn 0.77 -0.64 -0.03 -vn 0.31 -0.83 0.46 -vn 0.77 -0.12 0.62 -vn -0.00 0.97 -0.26 -vn 0.60 0.77 -0.22 -vn 0.28 -0.83 -0.48 -vn 0.78 -0.62 0.03 -vn 0.50 -0.86 0.04 -vn 0.45 -0.89 0.10 -vn 0.47 -0.86 -0.18 -vn 0.41 -0.85 -0.32 -vn 0.82 0.57 -0.03 -vn 0.65 0.71 -0.27 -vn 0.86 0.51 -0.01 -vn 0.65 -0.32 -0.69 -vn 0.98 0.17 -0.11 -vn 0.95 -0.02 -0.30 -vn 0.44 -0.79 -0.42 -vn -0.04 -0.84 -0.53 -vn -0.08 -0.49 -0.87 -vn -0.52 -0.78 -0.35 -vn -0.76 -0.19 -0.62 -vn -0.99 0.03 -0.16 -vn -0.95 0.30 0.02 -vn -0.75 0.64 0.15 -vn -0.67 0.63 0.40 -vn -0.33 0.91 0.24 -vn 0.36 0.91 0.18 -vn 0.70 0.63 0.35 -vn 0.04 0.73 0.69 -vn 0.02 0.96 0.30 -vn 0.77 0.63 0.07 -vn 1.00 -0.00 -0.09 -vn 0.93 -0.01 0.37 -vn 0.60 -0.72 0.35 -vn 0.63 -0.78 -0.06 -vn 0.14 -0.67 0.73 -vn 0.14 -0.82 0.55 -vn 0.00 -1.00 0.00 -vn 0.01 -0.69 0.72 -vn -0.08 -0.82 0.57 -vn -1.00 0.03 0.03 -vn -0.66 -0.75 0.02 -vn -0.56 -0.71 0.42 -vn -0.87 -0.01 0.49 -vn -0.78 0.53 0.34 -vn -0.73 0.68 0.07 -vn -0.43 0.89 0.17 -vn -0.25 0.73 0.63 -vn 0.39 0.91 0.14 -vn 0.00 0.99 0.12 -vn -0.02 0.76 0.65 -vn 0.35 0.54 0.77 -vn 0.82 0.52 0.25 -vn 0.74 0.68 0.01 -vn 0.30 0.11 0.95 -vn 0.02 0.09 1.00 -vn -0.21 0.11 0.97 -vn -0.31 0.12 0.94 -vn -0.29 0.53 0.80 -vn -0.41 -0.91 0.06 -vn 0.27 -0.94 0.19 -vn 0.15 -0.89 0.43 -vn 0.33 -0.81 0.49 -vn 0.54 -0.71 -0.46 -vn 0.00 -0.87 -0.50 -vn 0.97 -0.24 -0.02 -vn 0.94 0.33 0.01 -vn 0.70 0.70 0.14 -vn -0.00 0.98 0.21 -vn -0.00 -0.07 -1.00 -vn 0.22 0.35 -0.91 -vn 0.00 -0.93 -0.36 -vn -0.00 0.99 -0.12 -vn 0.77 0.53 -0.35 -vn 1.00 0.02 -0.04 -vn 1.00 0.03 -0.03 -vn 0.00 0.28 0.96 -vn 0.00 0.51 0.86 -vn 0.97 0.23 0.00 -vn 0.00 -0.23 -0.97 -vn -0.00 0.11 -0.99 -vn 0.00 -0.42 -0.91 -vn 0.00 -0.61 -0.79 -vn 1.00 0.00 -0.05 -vn 1.00 0.03 -0.05 -vn 0.00 -0.77 -0.64 -vn -0.00 0.68 0.74 -vn -0.01 0.90 0.43 -vn 0.00 0.36 0.93 -vn 0.73 0.68 -0.05 -vn -0.00 0.77 0.64 -vn -0.00 0.61 -0.80 -vn 0.92 0.22 -0.32 -vn -0.00 -0.51 0.86 -vn -0.00 -0.68 0.73 -vn 0.44 -0.60 0.67 -vn 0.37 -0.47 0.80 -vn 0.67 0.52 -0.52 -vn 0.92 0.31 -0.22 -vn -0.00 0.75 -0.66 -vn -0.00 0.89 -0.46 -vn 0.86 0.28 0.42 -vn 0.94 0.13 0.31 -vn -0.00 0.46 -0.89 -vn 0.54 0.26 -0.80 -vn 0.35 -0.31 0.88 -vn 0.00 -0.34 0.94 -vn 0.57 -0.23 0.79 -vn 0.43 -0.43 0.80 -vn 0.65 -0.10 0.75 -vn 0.76 -0.09 0.65 -vn 0.85 -0.06 -0.53 -vn 0.97 -0.18 -0.15 -vn 0.90 -0.33 0.29 -vn 0.65 -0.42 0.63 -vn 0.33 -0.37 0.87 -vn 0.34 0.72 0.61 -vn 0.48 0.61 0.63 -vn 0.03 0.84 0.55 -vn 0.04 0.85 0.53 -vn 0.79 0.23 0.57 -vn 0.76 0.30 0.58 -vn 0.84 0.28 0.46 -vn 0.97 0.12 -0.19 -vn 0.68 0.22 0.70 -vn 0.29 0.04 0.96 -vn 0.93 -0.27 0.23 -vn -0.13 0.06 0.99 -vn 0.55 -0.05 -0.83 -vn 0.92 -0.39 -0.07 -vn 0.99 0.12 -0.04 -vn 0.81 0.20 -0.56 -vn -0.21 0.97 -0.11 -vn 0.17 0.97 0.15 -vn -0.07 0.95 0.31 -vn -0.50 0.70 0.50 -vn -0.56 0.64 0.53 -vn 0.18 0.03 0.98 -vn 0.43 0.09 0.90 -vn 0.15 -0.24 0.96 -vn 0.84 -0.52 0.16 -vn -0.10 0.04 0.99 -vn -0.11 0.19 0.98 -vn 0.38 -0.08 -0.92 -vn 0.93 -0.31 -0.20 -vn 0.30 0.25 -0.92 -vn -0.16 0.43 -0.89 -vn -0.21 0.50 -0.84 -vn -0.56 0.64 -0.52 -vn -0.49 0.67 -0.55 -vn -0.32 0.78 0.54 -vn 0.36 -0.26 0.89 -vn 0.12 0.99 -0.05 -vn 0.28 -0.58 0.77 -vn 0.47 -0.61 0.64 -vn 0.20 -0.48 0.85 -vn 0.12 -0.55 0.83 -vn 0.03 -0.35 0.94 -vn 0.88 0.32 -0.35 -vn 0.30 0.56 -0.77 -vn 0.78 0.54 -0.31 -vn -0.07 0.68 -0.73 -vn -0.42 0.77 -0.47 -vn 0.19 0.93 -0.32 -vn 0.71 -0.10 0.70 -vn -0.05 -0.13 0.99 -vn 0.95 0.06 -0.32 -vn 0.70 -0.26 -0.66 -vn 0.75 -0.25 -0.61 -vn 0.24 -0.51 0.82 -vn 0.78 -0.62 -0.05 -vn 0.51 -0.85 -0.10 -vn 0.00 -1.00 0.04 -vn 0.00 -1.00 0.09 -vn 0.00 -0.97 -0.25 -vn 0.00 -0.97 0.23 -vn -0.00 -0.82 0.57 -vn -0.11 -0.94 -0.33 -vn 0.00 -0.99 -0.12 -vn 0.85 0.39 0.35 -vn 0.68 0.72 0.14 -vn 0.83 -0.50 0.25 -vn 0.52 -0.75 0.41 -vn 0.56 -0.73 0.40 -vn 0.83 -0.49 0.26 -vn 0.84 -0.16 0.51 -vn 0.85 -0.22 0.48 -vn 0.43 0.22 0.88 -vn -0.12 -0.11 0.99 -vn -0.16 -0.00 0.99 -vn 0.44 0.29 0.85 -vn 0.04 0.65 0.76 -vn 0.02 0.67 0.75 -vn 0.26 -0.87 0.42 -vn 0.28 -0.86 0.43 -vn -0.38 0.91 0.18 -vn 0.43 0.89 0.13 -vn 0.35 0.71 0.61 -vn 0.39 0.12 0.91 -vn -0.10 -0.68 0.73 -vn -0.20 -0.05 0.98 -vn -0.17 0.11 0.98 -vn 0.34 -0.17 0.93 -vn 0.37 0.39 0.84 -vn 0.72 0.46 0.52 -vn 0.29 0.86 0.42 -vn 0.08 0.66 0.74 -vn 0.76 -0.13 -0.64 -vn 0.95 0.07 -0.32 -vn 0.54 -0.69 -0.48 -vn -0.05 -0.76 -0.64 -vn -0.05 -0.25 -0.97 -vn -0.57 -0.71 -0.41 -vn -0.80 -0.15 -0.58 -vn -0.98 0.05 -0.21 -vn -0.99 0.05 0.11 -vn -0.70 0.71 0.07 -vn -0.68 0.41 0.62 -vn -0.33 0.94 0.08 -vn 0.07 0.47 0.88 -vn 0.00 0.99 0.16 -vn 0.34 0.94 0.02 -vn 0.79 0.41 0.45 -vn 0.74 0.67 -0.09 -vn 0.99 -0.03 -0.16 -vn 0.94 -0.02 0.33 -vn 0.61 -0.73 0.30 -vn 0.60 -0.80 -0.09 -vn 0.17 -0.66 0.73 -vn 0.16 -0.85 0.49 -vn -0.09 -0.85 0.51 -vn -0.90 -0.02 0.43 -vn -1.00 -0.01 -0.05 -vn -0.64 -0.77 -0.03 -vn -0.59 -0.73 0.36 -vn -0.80 0.51 0.31 -vn -0.70 0.70 -0.12 -vn -0.28 0.76 0.59 -vn -0.41 0.91 -0.09 -vn -0.01 1.00 0.01 -vn -0.03 0.81 0.59 -vn 0.46 0.58 0.68 -vn 0.39 0.92 -0.06 -vn 0.84 0.50 0.22 -vn 0.69 0.70 -0.20 -vn 0.39 0.09 0.92 -vn 0.02 0.07 1.00 -vn -0.27 0.10 0.96 -vn -0.37 0.11 0.92 -vn -0.37 0.57 0.74 -vn -0.37 0.93 -0.04 -vn 0.37 0.92 -0.09 -vn 0.32 0.78 0.54 -vn 0.47 0.11 0.88 -vn -0.13 -0.67 0.73 -vn 0.95 -0.12 -0.30 -vn 0.96 0.14 0.25 -vn 0.81 -0.37 0.46 -vn 0.92 0.15 0.37 -vn 0.89 -0.20 0.42 -vn 0.96 0.09 0.27 -vn 0.94 -0.03 0.34 -vn 0.94 -0.11 0.33 -vn 0.17 0.83 -0.53 -vn 0.40 -0.78 -0.48 -vn 0.00 -0.41 -0.91 -vn -0.21 -0.86 0.46 -vn -0.35 -0.80 0.49 -vn 0.00 -0.85 0.53 -vn -0.00 0.87 -0.50 -vn 0.07 0.87 -0.49 -vn 0.08 0.86 -0.51 -vn 0.39 0.56 -0.73 -vn -0.06 0.92 -0.38 -vn 0.97 0.17 0.19 -vn 0.74 0.03 0.67 -vn 0.42 -0.42 0.81 -vn 0.99 -0.05 0.13 -vn 0.71 0.41 0.58 -vn 0.89 0.44 0.14 -vn 0.83 0.28 -0.49 -vn 0.75 0.50 -0.43 -vn 0.25 0.29 -0.92 -vn 0.38 0.60 -0.70 -vn -0.04 0.60 -0.80 -vn -0.21 0.19 -0.96 -vn 0.76 0.15 -0.64 -vn 0.90 0.14 -0.42 -vn 0.81 0.16 -0.56 -vn 0.02 -0.04 -1.00 -vn 0.58 0.69 -0.44 -vn 0.70 0.69 0.16 -vn 0.93 -0.31 0.18 -vn 0.92 -0.22 0.32 -vn 0.88 -0.10 -0.47 -vn -0.09 -0.11 -0.99 -vn -0.05 0.50 -0.86 -vn 0.83 -0.21 -0.52 -vn 0.93 -0.12 0.34 -vn -0.14 -0.34 -0.93 -vn 0.95 -0.30 -0.03 -vn -0.90 -0.29 0.33 -vn -0.92 0.13 -0.37 -vn -0.94 -0.13 -0.33 -vn -0.85 -0.25 0.47 -vn -0.87 -0.12 0.48 -vn 0.02 -0.06 1.00 -vn 0.06 -0.42 0.91 -vn -0.92 -0.19 -0.35 -vn 0.08 -0.74 0.67 -vn 0.21 -0.74 0.64 -vn -0.77 -0.45 0.45 -vn -0.99 -0.09 0.06 -vn -0.92 0.02 -0.39 -vn 0.71 -0.39 -0.58 -vn -0.07 -0.47 -0.88 -vn 0.00 -0.40 -0.92 -vn 0.72 -0.38 -0.58 -vn -0.65 -0.28 -0.70 -vn -0.61 -0.37 -0.70 -vn -0.97 -0.13 -0.22 -vn -0.70 -0.06 0.71 -vn 0.22 -0.17 0.96 -vn 0.25 -0.16 0.95 -vn 0.80 -0.18 0.57 -vn 0.73 -0.19 0.66 -vn 0.06 -0.20 -0.98 -vn 0.76 -0.20 -0.62 -vn -0.66 -0.23 0.72 -vn 0.17 -0.18 0.97 -vn 0.75 -0.13 0.65 -vn 0.98 -0.21 0.04 -vn 0.99 -0.13 0.09 -vn 0.84 0.13 -0.53 -vn 0.76 0.01 -0.65 -vn 0.89 0.36 0.26 -vn 0.93 0.36 -0.03 -vn 0.95 -0.29 0.11 -vn 0.67 -0.51 -0.54 -vn 0.39 -0.61 -0.69 -vn -0.04 -0.50 -0.87 -vn -0.77 -0.14 -0.62 -vn -0.08 -0.32 -0.94 -vn -1.00 0.00 -0.05 -vn -0.76 0.28 0.59 -vn 0.99 0.15 0.06 -vn 0.45 -0.15 0.88 -vn 0.81 0.05 0.58 -vn 0.17 0.11 0.98 -vn 0.15 -0.03 0.99 -vn -0.75 0.11 0.66 -vn -0.71 0.12 0.69 -vn 0.71 -0.05 0.70 -vn 0.69 -0.07 0.72 -vn 0.94 -0.31 0.16 -vn 0.97 -0.23 0.06 -vn -0.03 -0.42 -0.91 -vn 0.69 -0.48 -0.54 -vn 0.70 -0.25 -0.67 -vn 0.03 -0.23 -0.97 -vn 0.98 -0.21 0.06 -vn -0.58 -0.25 -0.77 -vn -1.00 0.03 -0.08 -vn -0.75 -0.15 -0.65 -vn 0.01 -0.19 -0.98 -vn -1.00 -0.03 0.04 -vn -0.67 0.12 0.73 -vn 0.18 0.34 0.92 -vn 0.80 0.23 0.55 -vn 1.00 -0.03 -0.04 -vn 0.68 -0.23 -0.70 -vn 0.28 -0.77 0.57 -vn 0.00 -0.74 0.68 -vn 0.00 -0.49 0.87 -vn 0.35 -0.56 0.75 -vn 0.66 -0.65 0.39 -vn 0.54 -0.79 0.29 -vn 0.85 -0.52 -0.02 -vn 0.83 -0.56 -0.05 -vn 0.74 -0.65 0.19 -vn 0.00 0.23 -0.97 -vn 0.48 0.15 -0.86 -vn 0.80 -0.15 -0.58 -vn 0.89 -0.36 -0.28 -vn 0.79 0.09 -0.60 -vn 0.47 0.16 -0.87 -vn 0.00 0.22 -0.98 -vn 0.48 0.43 0.77 -vn -0.00 0.48 0.88 -vn 0.00 0.61 0.79 -vn 0.50 0.52 0.69 -vn 0.65 0.14 0.75 -vn 0.00 0.15 0.99 -vn -0.00 -0.52 0.85 -vn 0.59 0.10 0.80 -vn 0.12 -0.29 0.95 -vn 0.58 -0.20 0.79 -vn 0.25 -0.18 0.95 -vn 0.41 -0.51 0.76 -vn -0.10 -0.71 0.69 -vn 0.18 -0.70 0.69 -vn 0.84 0.30 0.46 -vn 0.52 -0.61 0.60 -vn 0.63 -0.44 0.64 -vn 0.53 -0.47 0.71 -vn 0.47 -0.51 0.72 -vn 0.00 0.98 0.20 -vn 0.00 0.87 0.50 -vn 0.42 -0.86 0.28 -vn 0.86 0.11 0.50 -vn 0.83 -0.34 0.45 -vn 0.95 -0.30 0.13 -vn -0.00 0.16 0.99 -vn -0.00 0.35 0.94 -vn 0.42 0.25 0.87 -vn 0.32 0.05 0.95 -vn -0.00 0.25 0.97 -vn 0.38 0.31 0.87 -vn 0.27 0.68 0.68 -vn -0.00 0.66 0.75 -vn 0.67 -0.07 0.74 -vn 0.60 -0.04 0.80 -vn 0.51 -0.10 0.85 -vn 0.70 0.08 0.71 -vn 0.30 0.74 0.61 -vn 0.00 0.76 0.65 -vn 0.50 -0.23 0.84 -vn 0.49 -0.32 0.81 -vn 0.57 -0.18 0.80 -vn 0.58 -0.01 0.81 -vn -0.26 -0.76 0.59 -vn -0.16 -0.83 0.54 -vn 0.36 0.80 -0.48 -vn 0.01 0.84 -0.54 -vn 0.00 0.98 -0.18 -vn 0.36 -0.80 0.48 -vn 0.33 -0.93 0.17 -vn 0.51 -0.75 0.42 -vn 0.57 -0.53 0.62 -vn 0.62 -0.70 0.36 -vn 0.57 -0.66 0.48 -vn 0.41 -0.87 0.26 -vn 0.23 -0.93 0.28 -vn 0.25 -0.96 0.08 -vn 0.00 0.55 0.83 -vn 0.75 0.21 0.63 -vn 0.54 0.43 0.73 -vn 0.52 0.06 0.85 -vn 0.55 0.66 0.51 -vn 0.84 0.44 0.32 -vn 0.31 0.56 0.77 -vn 0.26 0.19 0.95 -vn 0.86 0.07 0.50 -vn 0.95 0.16 0.25 -vn 0.82 0.55 0.19 -vn 0.84 0.50 0.19 -vn 0.95 0.26 0.17 -vn 0.95 0.31 0.03 -vn 0.23 -0.68 0.70 -vn -0.00 -0.70 0.71 -vn -0.00 -0.90 0.44 -vn -0.00 -1.00 0.04 -vn -0.00 -1.00 -0.01 -vn 0.00 -0.96 0.30 -vn 0.72 -0.37 0.59 -vn 0.63 0.73 0.28 -vn 0.86 0.49 0.13 -vn 0.94 0.31 -0.16 -vn 0.00 0.57 0.82 -vn 0.77 0.29 0.57 -vn 0.83 0.23 0.51 -vn 0.67 -0.10 0.74 -vn 0.64 0.08 0.76 -vn 0.50 0.45 0.74 -vn 0.79 0.39 0.48 -vn 0.61 0.14 0.78 -vn 0.77 0.33 0.55 -vn 0.50 -0.31 0.81 -vn 0.54 -0.04 0.84 -vn 0.51 -0.15 0.85 -vn 0.59 -0.46 0.67 -vn 0.43 -0.27 0.86 -vn 0.42 0.43 0.80 -vn 0.14 0.69 0.72 -vn 0.42 0.64 0.64 -vn 0.47 0.49 -0.74 -vn 0.01 0.54 -0.84 -vn 0.95 -0.01 -0.32 -vn 0.62 0.13 0.77 -vn 0.56 -0.40 0.72 -vn -0.15 -0.42 0.90 -vn -0.23 -0.66 0.72 -vn -0.30 -0.78 0.55 -vn -0.04 -0.71 0.70 -vn -0.25 -0.45 0.86 -vn -0.32 -0.71 0.62 -vn 0.60 0.31 0.74 -vn 0.56 0.64 0.53 -vn 0.79 -0.15 0.60 -vn 0.62 -0.28 0.74 -vn 0.29 0.58 0.76 -vn 0.58 0.32 0.75 -vn 0.74 -0.00 0.67 -vn 0.24 0.32 0.92 -vn 0.95 -0.23 -0.23 -vn 0.98 0.19 -0.04 -vn 0.95 0.30 0.14 -vn 0.92 0.30 0.23 -vn -0.00 -0.44 0.90 -vn 0.36 -0.41 0.84 -vn 0.67 0.57 0.48 -vn -0.14 -0.87 0.47 -vn -0.04 -0.88 0.47 -vn -0.05 -0.48 0.87 -vn -0.14 -0.48 0.87 -vn -0.12 0.02 0.99 -vn -0.18 0.29 0.94 -vn -0.34 0.36 0.87 -vn -0.29 -0.10 0.95 -vn -0.15 -0.33 0.93 -vn -0.02 -0.23 0.97 -vn 0.17 -0.36 0.92 -vn 0.07 -0.45 0.89 -vn 0.41 -0.33 0.85 -vn 0.37 -0.37 0.85 -vn 0.55 -0.16 0.82 -vn 0.59 -0.11 0.80 -vn 0.67 0.06 0.74 -vn 0.64 0.03 0.77 -vn 0.63 0.12 0.76 -vn 0.41 -0.07 0.91 -vn 0.62 0.26 0.74 -vn 0.59 0.30 0.75 -vn 0.66 0.14 0.74 -vn 0.45 0.33 0.83 -vn 0.50 0.27 0.82 -vn 0.14 0.44 0.89 -vn 0.06 0.54 0.84 -vn 0.19 0.14 0.97 -vn 0.74 -0.02 0.67 -vn 0.70 -0.21 -0.69 -vn -0.78 -0.13 -0.62 -vn -1.00 0.02 -0.03 -vn -0.70 -0.14 -0.70 -vn -0.65 0.76 0.07 -vn -0.61 0.79 -0.04 -vn -0.49 0.82 -0.29 -vn -0.56 0.82 0.10 -vn 0.34 -0.51 -0.79 -vn 0.08 -0.02 -1.00 -vn -0.94 0.33 -0.02 -vn -0.90 0.42 -0.11 -vn -0.96 -0.27 0.06 -vn -0.80 -0.26 -0.55 -vn -0.97 -0.22 0.10 -vn -0.77 -0.12 0.62 -vn -0.31 -0.83 0.46 -vn -0.77 -0.64 -0.03 -vn -0.60 0.77 -0.22 -vn -0.28 -0.83 -0.48 -vn -0.78 -0.62 0.03 -vn -0.50 -0.86 0.04 -vn -0.45 -0.89 0.10 -vn -0.47 -0.86 -0.18 -vn -0.41 -0.85 -0.32 -vn -0.82 0.57 -0.03 -vn -0.86 0.51 -0.01 -vn -0.65 0.71 -0.27 -vn -0.65 -0.32 -0.69 -vn -0.44 -0.79 -0.42 -vn -0.95 -0.02 -0.30 -vn -0.98 0.17 -0.11 -vn 0.08 -0.49 -0.87 -vn 0.04 -0.84 -0.53 -vn 0.76 -0.19 -0.62 -vn 0.52 -0.78 -0.35 -vn 0.99 0.03 -0.16 -vn 0.95 0.30 0.02 -vn 0.75 0.64 0.15 -vn 0.67 0.63 0.40 -vn 0.33 0.91 0.24 -vn -0.04 0.73 0.69 -vn -0.70 0.63 0.35 -vn -0.36 0.91 0.18 -vn -0.02 0.96 0.30 -vn -0.77 0.63 0.07 -vn -1.00 -0.00 -0.09 -vn -0.63 -0.78 -0.06 -vn -0.60 -0.72 0.35 -vn -0.93 -0.01 0.37 -vn -0.14 -0.67 0.73 -vn -0.00 -1.00 0.00 -vn -0.14 -0.82 0.55 -vn -0.01 -0.69 0.72 -vn 0.08 -0.82 0.57 -vn 1.00 0.03 0.03 -vn 0.87 -0.01 0.49 -vn 0.56 -0.71 0.42 -vn 0.66 -0.75 0.02 -vn 0.78 0.53 0.34 -vn 0.73 0.68 0.07 -vn 0.43 0.89 0.17 -vn 0.25 0.73 0.63 -vn -0.39 0.91 0.14 -vn -0.35 0.54 0.77 -vn 0.02 0.76 0.65 -vn -0.00 0.99 0.12 -vn -0.82 0.52 0.25 -vn -0.74 0.68 0.01 -vn -0.30 0.11 0.95 -vn -0.02 0.09 1.00 -vn 0.21 0.11 0.97 -vn 0.31 0.12 0.94 -vn 0.29 0.53 0.80 -vn 0.41 -0.91 0.06 -vn -0.27 -0.94 0.19 -vn -0.15 -0.89 0.43 -vn -0.33 -0.81 0.49 -vn -0.54 -0.71 -0.46 -vn -0.97 -0.24 -0.02 -vn -0.94 0.33 0.01 -vn -0.70 0.70 0.14 -vn -0.21 0.35 -0.91 -vn -0.76 0.53 -0.36 -vn -1.00 0.02 -0.05 -vn -1.00 0.03 -0.03 -vn -0.97 0.23 0.00 -vn -1.00 -0.01 -0.06 -vn -0.73 0.68 -0.05 -vn -0.92 0.22 -0.33 -vn -0.37 -0.47 0.80 -vn -0.44 -0.60 0.67 -vn -0.67 0.52 -0.52 -vn -0.92 0.31 -0.22 -vn -0.87 0.28 0.41 -vn -0.94 0.13 0.31 -vn -0.54 0.26 -0.80 -vn -0.35 -0.31 0.88 -vn -0.57 -0.23 0.79 -vn -0.76 -0.09 0.65 -vn -0.66 -0.10 0.75 -vn -0.43 -0.43 0.79 -vn -0.85 -0.06 -0.53 -vn -0.90 -0.33 0.29 -vn -0.97 -0.18 -0.15 -vn -0.65 -0.42 0.63 -vn -0.33 -0.37 0.87 -vn -0.33 0.72 0.61 -vn -0.04 0.85 0.53 -vn -0.03 0.84 0.55 -vn -0.48 0.61 0.63 -vn -0.79 0.22 0.58 -vn -0.84 0.28 0.46 -vn -0.69 0.22 0.69 -vn -0.98 0.12 -0.16 -vn -0.29 0.04 0.96 -vn -0.93 -0.27 0.24 -vn 0.14 0.05 0.99 -vn -0.57 -0.07 -0.82 -vn -0.79 0.15 -0.60 -vn -0.99 0.10 -0.07 -vn -0.92 -0.38 -0.07 -vn 0.22 0.97 -0.11 -vn 0.07 0.95 0.31 -vn -0.17 0.97 0.15 -vn 0.51 0.70 0.50 -vn -0.43 0.09 0.90 -vn -0.16 0.05 0.99 -vn -0.83 -0.53 0.17 -vn -0.15 -0.24 0.96 -vn 0.10 0.04 0.99 -vn 0.11 0.18 0.98 -vn -0.41 -0.08 -0.91 -vn -0.93 -0.30 -0.20 -vn -0.32 0.26 -0.91 -vn 0.20 0.53 -0.82 -vn 0.17 0.43 -0.88 -vn 0.51 0.68 -0.53 -vn 0.56 0.64 -0.52 -vn -0.12 0.99 -0.05 -vn -0.36 -0.26 0.89 -vn -0.20 -0.48 0.85 -vn -0.47 -0.61 0.64 -vn -0.28 -0.58 0.77 -vn -0.12 -0.55 0.83 -vn -0.03 -0.35 0.94 -vn -0.88 0.32 -0.35 -vn -0.78 0.54 -0.31 -vn -0.30 0.56 -0.77 -vn 0.07 0.68 -0.73 -vn -0.19 0.93 -0.32 -vn 0.42 0.77 -0.47 -vn -0.71 -0.09 0.70 -vn 0.05 -0.13 0.99 -vn -0.95 0.06 -0.32 -vn -0.72 -0.27 -0.64 -vn -0.74 -0.27 -0.61 -vn -0.25 -0.51 0.83 -vn -0.78 -0.62 -0.05 -vn -0.51 -0.85 -0.10 -vn 0.11 -0.94 -0.33 -vn -0.85 0.39 0.35 -vn -0.68 0.72 0.14 -vn -0.82 -0.51 0.25 -vn -0.83 -0.49 0.27 -vn -0.56 -0.73 0.40 -vn -0.53 -0.74 0.42 -vn -0.84 -0.24 0.49 -vn -0.84 -0.18 0.52 -vn -0.43 0.22 0.87 -vn -0.45 0.29 0.85 -vn 0.16 -0.00 0.99 -vn 0.12 -0.11 0.99 -vn -0.02 0.67 0.75 -vn -0.04 0.65 0.76 -vn -0.29 -0.85 0.43 -vn -0.27 -0.86 0.42 -vn 0.38 0.91 0.18 -vn -0.35 0.71 0.61 -vn -0.43 0.89 0.13 -vn -0.39 0.12 0.91 -vn 0.10 -0.68 0.73 -vn 0.17 0.10 0.98 -vn 0.21 -0.05 0.98 -vn -0.31 -0.14 0.94 -vn -0.71 0.47 0.52 -vn -0.36 0.38 0.85 -vn -0.08 0.66 0.74 -vn -0.29 0.86 0.42 -vn -0.76 -0.13 -0.64 -vn -0.54 -0.69 -0.48 -vn -0.95 0.07 -0.32 -vn -1.00 0.03 -0.04 -vn 0.05 -0.25 -0.97 -vn 0.05 -0.76 -0.64 -vn 0.80 -0.14 -0.58 -vn 0.57 -0.71 -0.41 -vn 0.98 0.05 -0.21 -vn 0.99 0.05 0.11 -vn 0.68 0.41 0.62 -vn 0.70 0.71 0.07 -vn -0.07 0.47 0.88 -vn 0.33 0.94 0.08 -vn -0.00 0.99 0.16 -vn -0.34 0.94 0.02 -vn -0.74 0.67 -0.09 -vn -0.79 0.41 0.45 -vn -0.99 -0.03 -0.16 -vn -0.60 -0.80 -0.09 -vn -0.61 -0.73 0.30 -vn -0.94 -0.02 0.33 -vn -0.17 -0.66 0.73 -vn -0.16 -0.85 0.49 -vn 0.09 -0.85 0.51 -vn 0.90 -0.02 0.43 -vn 0.59 -0.73 0.36 -vn 0.64 -0.77 -0.03 -vn 1.00 -0.01 -0.05 -vn 0.80 0.51 0.31 -vn 0.70 0.70 -0.12 -vn 0.41 0.91 -0.09 -vn 0.28 0.76 0.59 -vn 0.01 1.00 0.01 -vn -0.39 0.92 -0.06 -vn -0.46 0.58 0.68 -vn 0.03 0.81 0.59 -vn -0.84 0.50 0.22 -vn -0.69 0.70 -0.20 -vn -0.39 0.09 0.92 -vn -0.02 0.07 1.00 -vn 0.27 0.10 0.96 -vn 0.37 0.11 0.92 -vn 0.37 0.57 0.74 -vn 0.37 0.93 -0.04 -vn -0.37 0.92 -0.09 -vn -0.47 0.11 0.88 -vn 0.13 -0.67 0.73 -vn -0.95 -0.12 -0.30 -vn -0.96 0.14 0.25 -vn -0.92 0.14 0.36 -vn -0.81 -0.37 0.46 -vn -0.89 -0.19 0.41 -vn -0.96 0.09 0.27 -vn -0.94 -0.11 0.33 -vn -0.94 -0.03 0.34 -vn -0.17 0.83 -0.53 -vn -0.40 -0.79 -0.47 -vn 0.35 -0.80 0.49 -vn 0.21 -0.86 0.46 -vn -0.07 0.87 -0.49 -vn -0.08 0.86 -0.51 -vn -0.40 0.56 -0.72 -vn 0.07 0.92 -0.38 -vn -0.97 0.17 0.19 -vn -0.99 -0.05 0.13 -vn -0.42 -0.42 0.81 -vn -0.74 0.03 0.67 -vn -0.71 0.41 0.58 -vn -0.89 0.44 0.14 -vn -0.75 0.50 -0.43 -vn -0.83 0.28 -0.49 -vn -0.25 0.29 -0.92 -vn -0.38 0.60 -0.70 -vn 0.04 0.60 -0.80 -vn -0.90 0.14 -0.42 -vn -0.76 0.15 -0.64 -vn 0.21 0.19 -0.96 -vn -0.02 -0.04 -1.00 -vn -0.81 0.16 -0.56 -vn -0.70 0.69 0.16 -vn -0.58 0.69 -0.44 -vn -0.93 -0.31 0.18 -vn -0.88 -0.11 -0.47 -vn -0.92 -0.22 0.32 -vn 0.05 0.50 -0.86 -vn 0.09 -0.12 -0.99 -vn -0.83 -0.21 -0.52 -vn -0.93 -0.12 0.34 -vn 0.14 -0.34 -0.93 -vn -0.95 -0.30 -0.03 -vn 0.90 -0.29 0.33 -vn 0.85 -0.25 0.47 -vn 0.94 -0.13 -0.33 -vn 0.92 0.13 -0.37 -vn 0.87 -0.12 0.48 -vn -0.06 -0.42 0.91 -vn -0.02 -0.06 1.00 -vn 0.92 -0.19 -0.35 -vn -0.08 -0.74 0.67 -vn 0.77 -0.45 0.45 -vn -0.21 -0.74 0.64 -vn 0.99 -0.09 0.06 -vn 0.92 0.02 -0.39 -vn -0.71 -0.39 -0.58 -vn -0.72 -0.38 -0.58 -vn -0.00 -0.40 -0.92 -vn 0.07 -0.47 -0.88 -vn 0.61 -0.37 -0.70 -vn 0.65 -0.28 -0.70 -vn 0.97 -0.13 -0.22 -vn 0.70 -0.06 0.71 -vn -0.25 -0.17 0.95 -vn -0.22 -0.17 0.96 -vn -0.80 -0.18 0.57 -vn -0.73 -0.19 0.66 -vn -0.76 -0.21 -0.62 -vn -0.06 -0.20 -0.98 -vn 0.66 -0.23 0.72 -vn -0.17 -0.18 0.97 -vn -0.75 -0.13 0.65 -vn -0.98 -0.21 0.04 -vn -0.99 -0.13 0.09 -vn -0.76 0.00 -0.65 -vn -0.83 0.12 -0.54 -vn -0.89 0.36 0.26 -vn -0.93 0.36 -0.03 -vn -0.95 -0.29 0.11 -vn -0.39 -0.61 -0.69 -vn 0.04 -0.50 -0.87 -vn -0.67 -0.51 -0.54 -vn 0.08 -0.32 -0.94 -vn 0.77 -0.14 -0.62 -vn 0.76 0.28 0.59 -vn -0.99 0.15 0.06 -vn -0.46 -0.15 0.88 -vn -0.81 0.05 0.58 -vn 0.71 0.12 0.69 -vn 0.75 0.11 0.66 -vn -0.15 -0.03 0.99 -vn -0.71 -0.05 0.70 -vn -0.69 -0.07 0.72 -vn -0.94 -0.31 0.16 -vn -0.97 -0.23 0.06 -vn 0.03 -0.42 -0.91 -vn -0.03 -0.23 -0.97 -vn -0.70 -0.25 -0.67 -vn -0.69 -0.48 -0.54 -vn -0.98 -0.21 0.06 -vn 0.58 -0.25 -0.77 -vn 1.00 0.03 -0.08 -vn -0.01 -0.19 -0.98 -vn 0.75 -0.15 -0.65 -vn 1.00 -0.03 0.04 -vn 0.67 0.12 0.73 -vn -0.18 0.34 0.92 -vn -0.80 0.23 0.55 -vn -1.00 -0.03 -0.04 -vn -0.68 -0.23 -0.70 -vn -0.28 -0.77 0.57 -vn -0.35 -0.56 0.75 -vn -0.54 -0.79 0.29 -vn -0.66 -0.65 0.39 -vn -0.74 -0.65 0.19 -vn -0.83 -0.56 -0.05 -vn -0.85 -0.52 -0.02 -vn -0.49 0.15 -0.86 -vn -0.89 -0.36 -0.28 -vn -0.80 -0.12 -0.58 -vn -0.76 0.08 -0.64 -vn -0.48 0.43 0.77 -vn -0.50 0.52 0.69 -vn -0.58 0.10 0.80 -vn -0.28 -0.34 0.90 -vn -0.65 0.14 0.75 -vn -0.58 -0.21 0.79 -vn -0.41 -0.51 0.76 -vn -0.25 -0.18 0.95 -vn -0.18 -0.70 0.69 -vn 0.10 -0.71 0.69 -vn -0.84 0.30 0.46 -vn -0.52 -0.61 0.60 -vn -0.47 -0.51 0.72 -vn -0.53 -0.47 0.71 -vn -0.63 -0.44 0.64 -vn -0.42 -0.86 0.28 -vn -0.86 0.11 0.50 -vn -0.95 -0.30 0.13 -vn -0.83 -0.34 0.45 -vn -0.32 0.05 0.95 -vn -0.43 0.25 0.87 -vn -0.27 0.68 0.68 -vn -0.38 0.31 0.87 -vn -0.60 -0.04 0.80 -vn -0.67 -0.07 0.74 -vn -0.51 -0.10 0.86 -vn -0.70 0.07 0.71 -vn -0.30 0.74 0.61 -vn -0.58 -0.18 0.79 -vn -0.49 -0.32 0.81 -vn -0.51 -0.22 0.83 -vn -0.59 -0.01 0.81 -vn 0.16 -0.83 0.54 -vn 0.26 -0.76 0.59 -vn -0.35 0.80 -0.49 -vn -0.36 -0.80 0.48 -vn -0.57 -0.53 0.62 -vn -0.51 -0.75 0.42 -vn -0.33 -0.93 0.17 -vn -0.62 -0.70 0.36 -vn -0.41 -0.87 0.26 -vn -0.57 -0.66 0.48 -vn -0.23 -0.93 0.28 -vn -0.25 -0.96 0.08 -vn -0.52 0.07 0.85 -vn -0.54 0.43 0.73 -vn -0.75 0.21 0.62 -vn -0.55 0.66 0.50 -vn -0.84 0.44 0.32 -vn -0.31 0.56 0.77 -vn -0.26 0.19 0.95 -vn -0.95 0.18 0.25 -vn -0.87 0.07 0.48 -vn -0.82 0.54 0.20 -vn -0.95 0.31 0.06 -vn -0.95 0.27 0.17 -vn -0.84 0.50 0.19 -vn -0.23 -0.68 0.70 -vn -0.72 -0.37 0.59 -vn -0.63 0.73 0.29 -vn -0.87 0.48 0.15 -vn -0.95 0.31 -0.10 -vn -0.77 0.29 0.57 -vn -0.84 0.24 0.50 -vn -0.65 0.08 0.76 -vn -0.68 -0.09 0.73 -vn -0.50 0.45 0.74 -vn -0.60 0.14 0.79 -vn -0.79 0.39 0.48 -vn -0.77 0.33 0.55 -vn -0.51 -0.30 0.81 -vn -0.55 -0.04 0.84 -vn -0.51 -0.15 0.85 -vn -0.44 -0.27 0.86 -vn -0.59 -0.46 0.67 -vn -0.42 0.43 0.80 -vn -0.42 0.66 0.63 -vn -0.13 0.70 0.71 -vn -0.48 0.47 -0.74 -vn -0.93 0.00 -0.36 -vn -0.62 0.13 0.77 -vn -0.56 -0.40 0.72 -vn 0.15 -0.42 0.90 -vn 0.04 -0.24 0.97 -vn 0.24 -0.66 0.72 -vn 0.30 -0.78 0.55 -vn 0.26 -0.45 0.86 -vn 0.10 -0.39 0.92 -vn 0.33 -0.71 0.62 -vn -0.60 0.31 0.74 -vn -0.61 -0.29 0.74 -vn -0.78 -0.17 0.61 -vn -0.28 0.58 0.76 -vn -0.58 0.32 0.75 -vn -0.75 -0.01 0.67 -vn -0.23 0.32 0.92 -vn -0.94 -0.23 -0.24 -vn -0.98 0.19 -0.04 -vn -0.94 0.31 0.14 -vn -0.92 0.32 0.24 -vn -0.36 -0.40 0.84 -vn -0.67 0.57 0.48 -vn 0.03 -0.88 0.47 -vn 0.14 -0.87 0.47 -vn 0.14 -0.48 0.87 -vn 0.05 -0.49 0.87 -vn 0.12 0.03 0.99 -vn 0.29 -0.10 0.95 -vn 0.34 0.37 0.87 -vn 0.18 0.30 0.94 -vn 0.15 -0.33 0.93 -vn 0.02 -0.23 0.97 -vn -0.17 -0.37 0.91 -vn -0.06 -0.45 0.89 -vn -0.41 -0.34 0.85 -vn -0.37 -0.37 0.85 -vn -0.56 -0.16 0.81 -vn -0.59 -0.12 0.80 -vn -0.65 0.02 0.76 -vn -0.68 0.05 0.73 -vn -0.63 0.26 0.73 -vn -0.42 -0.06 0.91 -vn -0.64 0.12 0.76 -vn -0.66 0.13 0.74 -vn -0.60 0.29 0.75 -vn -0.45 0.33 0.83 -vn -0.50 0.27 0.82 -vn -0.14 0.44 0.89 -vn -0.06 0.54 0.84 -vn -0.19 0.14 0.97 -vn -0.74 -0.02 0.67 -vn -0.70 -0.21 -0.69 -vn 0.78 -0.13 -0.62 -vn 1.00 0.02 -0.03 -vn 0.70 -0.14 -0.70 -vn 0.04 -0.08 1.00 -vn 0.16 0.09 0.98 -vn 0.31 -0.03 0.95 -vn 0.16 -0.17 0.97 -vn 0.42 0.01 0.91 -vn 0.51 -0.06 0.86 -vn 0.51 -0.03 0.86 -vn 0.44 0.07 0.90 -vn 0.34 0.14 0.93 -vn 0.25 0.15 0.96 -vn 0.47 0.02 0.88 -vn 0.39 -0.09 0.92 -vn 0.46 -0.04 0.89 -vn 0.37 0.04 0.93 -vn 0.49 0.07 0.87 -vn 0.20 0.22 0.96 -vn 0.20 0.25 0.95 -vn -0.01 0.23 0.97 -vn -0.09 -0.44 0.89 -vn -0.51 -0.06 0.86 -vn -0.42 0.01 0.91 -vn -0.31 -0.03 0.95 -vn -0.16 -0.18 0.97 -vn -0.16 0.09 0.98 -vn -0.04 -0.09 1.00 -vn -0.34 0.15 0.93 -vn -0.44 0.07 0.90 -vn -0.51 -0.03 0.86 -vn -0.25 0.15 0.96 -vn -0.47 0.02 0.88 -vn -0.46 -0.04 0.89 -vn -0.39 -0.09 0.92 -vn -0.37 0.04 0.93 -vn -0.19 0.23 0.95 -vn -0.49 0.07 0.87 -vn -0.20 0.25 0.95 -vn 0.02 0.23 0.97 -vn 0.08 -0.45 0.89 -# 1090 vertex normals - -vt 0.95 0.25 0.00 -vt 0.94 0.29 0.00 -vt 0.90 0.30 0.00 -vt 0.90 0.26 0.00 -vt 0.91 0.09 0.00 -vt 0.95 0.09 0.00 -vt 0.96 0.13 0.00 -vt 0.91 0.13 0.00 -vt 0.80 0.03 0.00 -vt 0.81 0.06 0.00 -vt 0.76 0.07 0.00 -vt 0.75 0.05 0.00 -vt 0.84 0.27 0.00 -vt 0.85 0.30 0.00 -vt 0.76 0.28 0.00 -vt 0.76 0.31 0.00 -vt 0.77 0.19 0.00 -vt 0.72 0.19 0.00 -vt 0.73 0.17 0.00 -vt 0.77 0.18 0.00 -vt 0.95 0.34 0.00 -vt 0.90 0.35 0.00 -vt 0.70 0.32 0.00 -vt 0.71 0.28 0.00 -vt 0.67 0.28 0.00 -vt 0.68 0.31 0.00 -vt 0.69 0.18 0.00 -vt 0.70 0.15 0.00 -vt 0.86 0.37 0.00 -vt 0.91 0.38 0.00 -vt 0.87 0.40 0.00 -vt 0.62 0.88 0.00 -vt 0.63 0.85 0.00 -vt 0.66 0.87 0.00 -vt 0.67 0.92 0.00 -vt 0.60 0.94 0.00 -vt 0.60 0.89 0.00 -vt 0.52 0.92 0.00 -vt 0.57 0.88 0.00 -vt 0.53 0.87 0.00 -vt 0.55 0.86 0.00 -vt 0.55 0.83 0.00 -vt 0.55 0.84 0.00 -vt 0.56 0.83 0.00 -vt 0.61 0.83 0.00 -vt 0.63 0.84 0.00 -vt 0.59 0.84 0.00 -vt 0.59 0.83 0.00 -vt 0.63 0.83 0.00 -vt 0.68 0.80 0.00 -vt 0.67 0.76 0.00 -vt 0.69 0.74 0.00 -vt 0.70 0.80 0.00 -vt 0.39 0.37 0.00 -vt 0.38 0.37 0.00 -vt 0.35 0.31 0.00 -vt 0.42 0.31 0.00 -vt 0.41 0.36 0.00 -vt 0.35 0.38 0.00 -vt 0.33 0.37 0.00 -vt 0.50 0.81 0.00 -vt 0.48 0.81 0.00 -vt 0.49 0.75 0.00 -vt 0.51 0.76 0.00 -vt 0.53 0.78 0.00 -vt 0.55 0.80 0.00 -vt 0.56 0.80 0.00 -vt 0.55 0.77 0.00 -vt 0.60 0.80 0.00 -vt 0.59 0.80 0.00 -vt 0.59 0.76 0.00 -vt 0.62 0.75 0.00 -vt 0.64 0.77 0.00 -vt 0.63 0.80 0.00 -vt 0.63 0.72 0.00 -vt 0.59 0.71 0.00 -vt 0.59 0.68 0.00 -vt 0.63 0.69 0.00 -vt 0.55 0.72 0.00 -vt 0.54 0.69 0.00 -vt 0.53 0.73 0.00 -vt 0.56 0.75 0.00 -vt 0.68 0.36 0.00 -vt 0.67 0.37 0.00 -vt 0.69 0.38 0.00 -vt 0.68 0.40 0.00 -vt 0.72 0.10 0.00 -vt 0.70 0.09 0.00 -vt 0.77 0.23 0.00 -vt 0.85 0.23 0.00 -vt 0.90 0.21 0.00 -vt 0.95 0.21 0.00 -vt 0.87 0.03 0.00 -vt 0.87 0.06 0.00 -vt 0.67 0.13 0.00 -vt 0.94 0.06 0.00 -vt 0.90 0.06 0.00 -vt 0.55 0.41 0.00 -vt 0.56 0.28 0.00 -vt 0.60 0.28 0.00 -vt 0.60 0.41 0.00 -vt 0.57 0.17 0.00 -vt 0.51 0.28 0.00 -vt 0.52 0.17 0.00 -vt 0.51 0.42 0.00 -vt 0.52 0.52 0.00 -vt 0.56 0.51 0.00 -vt 0.57 0.58 0.00 -vt 0.53 0.58 0.00 -vt 0.60 0.50 0.00 -vt 0.61 0.57 0.00 -vt 0.61 0.17 0.00 -vt 0.57 0.15 0.00 -vt 0.60 0.15 0.00 -vt 0.55 0.15 0.00 -vt 0.58 0.62 0.00 -vt 0.54 0.64 0.00 -vt 0.62 0.62 0.00 -vt 0.73 0.48 0.00 -vt 0.70 0.45 0.00 -vt 0.72 0.44 0.00 -vt 0.74 0.46 0.00 -vt 0.92 0.39 0.00 -vt 0.88 0.42 0.00 -vt 0.96 0.38 0.00 -vt 0.96 0.36 0.00 -vt 0.84 0.41 0.00 -vt 0.85 0.44 0.00 -vt 0.90 0.05 0.00 -vt 0.97 0.39 0.00 -vt 0.94 0.41 0.00 -vt 0.78 0.49 0.00 -vt 0.77 0.51 0.00 -vt 0.81 0.47 0.00 -vt 0.76 0.45 0.00 -vt 0.79 0.43 0.00 -vt 0.82 0.46 0.00 -vt 0.91 0.44 0.00 -vt 0.88 0.45 0.00 -vt 0.86 0.47 0.00 -vt 0.84 0.48 0.00 -vt 0.81 0.52 0.00 -vt 0.82 0.51 0.00 -vt 0.83 0.38 0.00 -vt 0.83 0.39 0.00 -vt 0.80 0.41 0.00 -vt 0.81 0.40 0.00 -vt 0.84 0.36 0.00 -vt 0.83 0.36 0.00 -vt 0.11 0.49 0.00 -vt 0.13 0.50 0.00 -vt 0.09 0.51 0.00 -vt 0.08 0.50 0.00 -vt 0.12 0.47 0.00 -vt 0.06 0.54 0.00 -vt 0.06 0.93 0.00 -vt 0.09 0.98 0.00 -vt 0.05 0.99 0.00 -vt 0.04 0.94 0.00 -vt 0.07 0.79 0.00 -vt 0.07 0.77 0.00 -vt 0.08 0.76 0.00 -vt 0.14 0.78 0.00 -vt 0.11 0.77 0.00 -vt 0.12 0.75 0.00 -vt 0.15 0.77 0.00 -vt 0.07 0.46 0.00 -vt 0.13 0.44 0.00 -vt 0.02 0.46 0.00 -vt 0.02 0.49 0.00 -vt 0.09 0.91 0.00 -vt 0.11 0.96 0.00 -vt 0.13 0.89 0.00 -vt 0.08 0.87 0.00 -vt 0.13 0.86 0.00 -vt 0.13 0.83 0.00 -vt 0.09 0.83 0.00 -vt 0.17 0.80 0.00 -vt 0.18 0.79 0.00 -vt 0.22 0.82 0.00 -vt 0.09 0.36 0.00 -vt 0.12 0.39 0.00 -vt 0.08 0.40 0.00 -vt 0.07 0.38 0.00 -vt 0.05 0.40 0.00 -vt 0.19 0.89 0.00 -vt 0.18 0.87 0.00 -vt 0.20 0.85 0.00 -vt 0.18 0.85 0.00 -vt 0.18 0.82 0.00 -vt 0.22 0.83 0.00 -vt 0.16 0.76 0.00 -vt 0.03 0.43 0.00 -vt 0.16 0.91 0.00 -vt 0.16 0.48 0.00 -vt 0.14 0.43 0.00 -vt 0.74 0.42 0.00 -vt 0.71 0.23 0.00 -vt 0.68 0.23 0.00 -vt 0.64 0.28 0.00 -vt 0.65 0.31 0.00 -vt 0.66 0.17 0.00 -vt 0.66 0.38 0.00 -vt 0.67 0.41 0.00 -vt 0.74 0.11 0.00 -vt 0.64 0.22 0.00 -vt 0.85 0.18 0.00 -vt 0.91 0.17 0.00 -vt 0.96 0.17 0.00 -vt 0.80 0.33 0.00 -vt 0.78 0.32 0.00 -vt 0.80 0.32 0.00 -vt 0.83 0.34 0.00 -vt 0.75 0.40 0.00 -vt 0.74 0.39 0.00 -vt 0.74 0.38 0.00 -vt 0.76 0.40 0.00 -vt 0.77 0.41 0.00 -vt 0.78 0.41 0.00 -vt 0.77 0.33 0.00 -vt 0.76 0.32 0.00 -vt 0.58 0.80 0.00 -vt 0.61 0.80 0.00 -vt 0.63 0.76 0.00 -vt 0.65 0.73 0.00 -vt 0.66 0.71 0.00 -vt 0.51 0.71 0.00 -vt 0.31 0.23 0.00 -vt 0.35 0.22 0.00 -vt 0.39 0.23 0.00 -vt 0.29 0.31 0.00 -vt 0.31 0.37 0.00 -vt 0.29 0.36 0.00 -vt 0.03 0.57 0.00 -vt 0.02 0.53 0.00 -vt 0.13 0.73 0.00 -vt 0.09 0.73 0.00 -vt 0.11 0.71 0.00 -vt 0.24 0.37 0.00 -vt 0.21 0.35 0.00 -vt 0.24 0.36 0.00 -vt 0.66 0.86 0.00 -vt 0.67 0.91 0.00 -vt 0.56 0.84 0.00 -vt 0.58 0.84 0.00 -vt 0.61 0.84 0.00 -vt 0.62 0.76 0.00 -vt 0.35 0.21 0.00 -vt 0.39 0.22 0.00 -vt 0.28 0.31 0.00 -vt 0.14 0.94 0.00 -vt 0.07 0.37 0.00 -vt 0.01 0.53 0.00 -vt 0.02 0.57 0.00 -vt 0.01 0.49 0.00 -vt 0.04 0.40 0.00 -vt 0.68 0.51 0.00 -vt 0.72 0.54 0.00 -vt 0.65 0.56 0.00 -vt 0.70 0.59 0.00 -vt 0.69 0.60 0.00 -vt 0.68 0.62 0.00 -vt 0.66 0.49 0.00 -vt 0.06 0.88 0.00 -vt 0.06 0.83 0.00 -vt 0.28 0.69 0.00 -vt 0.22 0.68 0.00 -vt 0.23 0.61 0.00 -vt 0.29 0.61 0.00 -vt 0.24 0.77 0.00 -vt 0.23 0.78 0.00 -vt 0.20 0.68 0.00 -vt 0.28 0.76 0.00 -vt 0.35 0.71 0.00 -vt 0.35 0.77 0.00 -vt 0.40 0.73 0.00 -vt 0.38 0.79 0.00 -vt 0.41 0.55 0.00 -vt 0.42 0.59 0.00 -vt 0.36 0.57 0.00 -vt 0.36 0.53 0.00 -vt 0.36 0.64 0.00 -vt 0.41 0.66 0.00 -vt 0.35 0.82 0.00 -vt 0.30 0.81 0.00 -vt 0.36 0.85 0.00 -vt 0.30 0.85 0.00 -vt 0.33 0.51 0.00 -vt 0.33 0.49 0.00 -vt 0.36 0.50 0.00 -vt 0.41 0.49 0.00 -vt 0.41 0.54 0.00 -vt 0.37 0.46 0.00 -vt 0.34 0.45 0.00 -vt 0.41 0.45 0.00 -vt 0.31 0.55 0.00 -vt 0.50 0.53 0.00 -vt 0.46 0.54 0.00 -vt 0.46 0.50 0.00 -vt 0.50 0.50 0.00 -vt 0.26 0.43 0.00 -vt 0.29 0.44 0.00 -vt 0.28 0.48 0.00 -vt 0.24 0.46 0.00 -vt 0.46 0.46 0.00 -vt 0.48 0.46 0.00 -vt 0.28 0.50 0.00 -vt 0.23 0.46 0.00 -vt 0.26 0.53 0.00 -vt 0.21 0.51 0.00 -vt 0.50 0.59 0.00 -vt 0.46 0.60 0.00 -vt 0.18 0.50 0.00 -vt 0.18 0.61 0.00 -vt 0.41 0.80 0.00 -vt 0.44 0.72 0.00 -vt 0.46 0.66 0.00 -vt 0.33 0.40 0.00 -vt 0.35 0.40 0.00 -vt 0.38 0.39 0.00 -vt 0.41 0.39 0.00 -vt 0.27 0.38 0.00 -vt 0.29 0.39 0.00 -vt 0.31 0.40 0.00 -vt 0.47 0.40 0.00 -vt 0.44 0.39 0.00 -vt 0.89 0.71 0.00 -vt 0.92 0.71 0.00 -vt 0.92 0.74 0.00 -vt 0.90 0.74 0.00 -vt 0.94 0.70 0.00 -vt 0.94 0.73 0.00 -vt 0.97 0.70 0.00 -vt 0.76 0.70 0.00 -vt 0.80 0.69 0.00 -vt 0.79 0.71 0.00 -vt 0.82 0.72 0.00 -vt 0.83 0.68 0.00 -vt 0.93 0.77 0.00 -vt 0.90 0.77 0.00 -vt 0.96 0.76 0.00 -vt 0.99 0.72 0.00 -vt 0.75 0.74 0.00 -vt 0.71 0.69 0.00 -vt 0.72 0.68 0.00 -vt 0.78 0.76 0.00 -vt 0.81 0.76 0.00 -vt 0.85 0.72 0.00 -vt 0.84 0.77 0.00 -vt 0.90 0.85 0.00 -vt 0.90 0.81 0.00 -vt 0.93 0.81 0.00 -vt 0.91 0.91 0.00 -vt 0.79 0.88 0.00 -vt 0.80 0.92 0.00 -vt 0.78 0.88 0.00 -vt 0.83 0.87 0.00 -vt 0.84 0.92 0.00 -vt 0.85 0.68 0.00 -vt 0.89 0.68 0.00 -vt 0.92 0.68 0.00 -vt 0.90 0.57 0.00 -vt 0.93 0.56 0.00 -vt 0.93 0.58 0.00 -vt 0.90 0.58 0.00 -vt 0.95 0.57 0.00 -vt 0.94 0.58 0.00 -vt 0.77 0.57 0.00 -vt 0.78 0.56 0.00 -vt 0.80 0.57 0.00 -vt 0.80 0.58 0.00 -vt 0.83 0.82 0.00 -vt 0.75 0.84 0.00 -vt 0.77 0.81 0.00 -vt 0.72 0.81 0.00 -vt 0.74 0.78 0.00 -vt 0.80 0.81 0.00 -vt 0.72 0.72 0.00 -vt 0.81 0.65 0.00 -vt 0.80 0.66 0.00 -vt 0.78 0.65 0.00 -vt 0.79 0.64 0.00 -vt 0.83 0.65 0.00 -vt 0.83 0.66 0.00 -vt 0.85 0.66 0.00 -vt 0.85 0.65 0.00 -vt 0.91 0.65 0.00 -vt 0.88 0.65 0.00 -vt 0.88 0.64 0.00 -vt 0.91 0.64 0.00 -vt 0.85 0.64 0.00 -vt 0.94 0.68 0.00 -vt 0.75 0.63 0.00 -vt 0.94 0.62 0.00 -vt 0.91 0.62 0.00 -vt 0.95 0.62 0.00 -vt 0.76 0.61 0.00 -vt 0.79 0.62 0.00 -vt 0.82 0.58 0.00 -vt 0.82 0.59 0.00 -vt 0.84 0.59 0.00 -vt 0.84 0.58 0.00 -vt 0.86 0.60 0.00 -vt 0.86 0.58 0.00 -vt 0.88 0.59 0.00 -vt 0.88 0.57 0.00 -vt 0.10 0.09 0.00 -vt 0.06 0.07 0.00 -vt 0.06 0.05 0.00 -vt 0.10 0.07 0.00 -vt 0.14 0.03 0.00 -vt 0.14 0.08 0.00 -vt 0.14 0.11 0.00 -vt 0.18 0.10 0.00 -vt 0.18 0.13 0.00 -vt 0.15 0.15 0.00 -vt 0.32 0.03 0.00 -vt 0.38 0.01 0.00 -vt 0.40 0.05 0.00 -vt 0.33 0.08 0.00 -vt 0.07 0.01 0.00 -vt 0.10 0.02 0.00 -vt 0.22 0.04 0.00 -vt 0.26 0.04 0.00 -vt 0.27 0.10 0.00 -vt 0.22 0.11 0.00 -vt 0.17 0.04 0.00 -vt 0.30 0.15 0.00 -vt 0.36 0.13 0.00 -vt 0.43 0.10 0.00 -vt 0.08 0.28 0.00 -vt 0.07 0.29 0.00 -vt 0.06 0.29 0.00 -vt 0.07 0.27 0.00 -vt 0.06 0.26 0.00 -vt 0.04 0.27 0.00 -vt 0.04 0.25 0.00 -vt 0.06 0.25 0.00 -vt 0.07 0.23 0.00 -vt 0.05 0.24 0.00 -vt 0.05 0.23 0.00 -vt 0.06 0.22 0.00 -vt 0.04 0.23 0.00 -vt 0.05 0.22 0.00 -vt 0.07 0.26 0.00 -vt 0.09 0.18 0.00 -vt 0.10 0.20 0.00 -vt 0.09 0.20 0.00 -vt 0.07 0.19 0.00 -vt 0.23 0.40 0.00 -vt 0.18 0.39 0.00 -vt 0.12 0.13 0.00 -vt 0.17 0.21 0.00 -vt 0.15 0.18 0.00 -vt 0.18 0.17 0.00 -vt 0.19 0.19 0.00 -vt 0.09 0.32 0.00 -vt 0.08 0.30 0.00 -vt 0.09 0.29 0.00 -vt 0.10 0.30 0.00 -vt 0.02 0.21 0.00 -vt 0.03 0.21 0.00 -vt 0.02 0.22 0.00 -vt 0.11 0.21 0.00 -vt 0.09 0.22 0.00 -vt 0.11 0.29 0.00 -vt 0.10 0.28 0.00 -vt 0.18 0.34 0.00 -vt 0.15 0.37 0.00 -vt 0.14 0.28 0.00 -vt 0.15 0.26 0.00 -vt 0.16 0.26 0.00 -vt 0.15 0.28 0.00 -vt 0.03 0.22 0.00 -vt 0.04 0.21 0.00 -vt 0.42 0.25 0.00 -vt 0.40 0.21 0.00 -vt 0.46 0.20 0.00 -vt 0.47 0.25 0.00 -vt 0.04 0.16 0.00 -vt 0.06 0.15 0.00 -vt 0.08 0.16 0.00 -vt 0.06 0.17 0.00 -vt 0.13 0.16 0.00 -vt 0.11 0.17 0.00 -vt 0.10 0.15 0.00 -vt 0.09 0.11 0.00 -vt 0.08 0.13 0.00 -vt 0.05 0.28 0.00 -vt 0.17 0.27 0.00 -vt 0.16 0.30 0.00 -vt 0.14 0.29 0.00 -vt 0.19 0.31 0.00 -vt 0.20 0.28 0.00 -vt 0.14 0.32 0.00 -vt 0.12 0.31 0.00 -vt 0.18 0.25 0.00 -vt 0.20 0.25 0.00 -vt 0.26 0.28 0.00 -vt 0.23 0.28 0.00 -vt 0.23 0.24 0.00 -vt 0.26 0.24 0.00 -vt 0.03 0.17 0.00 -vt 0.02 0.17 0.00 -vt 0.02 0.15 0.00 -vt 0.03 0.13 0.00 -vt 0.04 0.11 0.00 -vt 0.05 0.09 0.00 -vt 0.12 0.19 0.00 -vt 0.47 0.32 0.00 -vt 0.45 0.31 0.00 -vt 0.44 0.29 0.00 -vt 0.22 0.31 0.00 -vt 0.28 0.27 0.00 -vt 0.27 0.23 0.00 -vt 0.12 0.35 0.00 -vt 0.09 0.27 0.00 -vt 0.18 0.24 0.00 -vt 0.16 0.25 0.00 -vt 0.10 0.33 0.00 -vt 0.09 0.24 0.00 -vt 0.08 0.26 0.00 -vt 0.06 0.24 0.00 -vt 0.10 0.26 0.00 -vt 0.13 0.29 0.00 -vt 0.13 0.28 0.00 -vt 0.14 0.27 0.00 -vt 0.11 0.23 0.00 -vt 0.12 0.24 0.00 -vt 0.11 0.25 0.00 -vt 0.39 0.18 0.00 -vt 0.45 0.16 0.00 -vt 0.26 0.16 0.00 -vt 0.31 0.18 0.00 -vt 0.26 0.18 0.00 -vt 0.04 0.20 0.00 -vt 0.04 0.18 0.00 -vt 0.04 0.24 0.00 -vt 0.03 0.24 0.00 -vt 0.03 0.23 0.00 -vt 0.03 0.20 0.00 -vt 0.11 0.27 0.00 -vt 0.12 0.28 0.00 -vt 0.14 0.24 0.00 -vt 0.14 0.23 0.00 -vt 0.14 0.21 0.00 -vt 0.15 0.24 0.00 -vt 0.22 0.15 0.00 -vt 0.22 0.18 0.00 -vt 0.26 0.19 0.00 -vt 0.23 0.21 0.00 -vt 0.20 0.22 0.00 -vt 0.01 0.19 0.00 -vt 0.03 0.18 0.00 -vt 0.25 0.30 0.00 -vt 0.24 0.34 0.00 -vt 0.38 0.21 0.00 -vt 0.75 0.35 0.00 -vt 0.74 0.35 0.00 -vt 0.73 0.37 0.00 -vt 0.74 0.37 0.00 -vt 0.80 0.12 0.00 -vt 0.80 0.13 0.00 -vt 0.80 0.14 0.00 -vt 0.79 0.12 0.00 -vt 0.79 0.10 0.00 -vt 0.80 0.11 0.00 -vt 0.81 0.11 0.00 -vt 0.80 0.09 0.00 -vt 0.82 0.10 0.00 -vt 0.83 0.10 0.00 -vt 0.84 0.11 0.00 -vt 0.85 0.10 0.00 -vt 0.86 0.12 0.00 -vt 0.84 0.12 0.00 -vt 0.86 0.13 0.00 -vt 0.86 0.14 0.00 -vt 0.85 0.15 0.00 -vt 0.84 0.14 0.00 -vt 0.84 0.13 0.00 -vt 0.83 0.15 0.00 -vt 0.81 0.14 0.00 -vt 0.81 0.15 0.00 -vt 0.82 0.13 0.00 -vt 0.13 0.56 0.00 -vt 0.52 0.66 0.00 -vt 0.81 0.63 0.00 -vt 0.83 0.64 0.00 -vt 0.88 0.63 0.00 -vt 0.94 0.63 0.00 -vt 0.95 0.63 0.00 -vt 0.75 0.62 0.00 -vt 0.94 0.64 0.00 -vt 0.95 0.65 0.00 -vt 0.08 0.75 0.00 -vt 0.58 0.13 0.00 -vt 0.46 0.85 0.00 -vt 0.44 0.89 0.00 -vt 0.40 0.88 0.00 -vt 0.41 0.83 0.00 -vt 0.37 0.90 0.00 -vt 0.36 0.86 0.00 -vt 0.32 0.92 0.00 -vt 0.29 0.92 0.00 -vt 0.32 0.87 0.00 -vt 0.44 0.95 0.00 -vt 0.39 0.95 0.00 -vt 0.37 0.99 0.00 -vt 0.32 0.97 0.00 -vt 0.28 0.98 0.00 -vt 0.28 0.91 0.00 -vt 0.31 0.86 0.00 -vt 0.26 0.94 0.00 -vt 0.48 0.89 0.00 -vt 0.46 0.82 0.00 -# 615 texture coords - -g CatBombay -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/6 7/7/7 -f 7/7/7 8/8/8 5/5/5 -f 9/9/9 10/10/10 11/11/11 -f 11/11/11 12/12/12 9/9/9 -f 13/13/13 4/4/4 3/3/3 -f 3/3/3 14/14/14 13/13/13 -f 15/15/15 13/13/13 14/14/14 -f 14/14/14 16/16/16 15/15/15 -f 17/17/17 18/18/18 19/19/19 -f 19/19/19 20/20/20 17/17/17 -f 2/2/2 21/21/21 22/22/22 -f 22/22/22 3/3/3 2/2/2 -f 23/23/23 24/24/24 15/15/15 -f 15/15/15 16/16/16 23/23/23 -f 25/25/25 24/24/24 23/23/23 -f 23/23/23 26/26/26 25/25/25 -f 27/27/27 28/28/28 19/19/19 -f 19/19/19 18/18/18 27/27/27 -f 29/29/29 22/22/22 30/30/30 -f 30/30/30 31/31/31 29/29/29 -f 32/32/32 33/33/33 34/34/34 -f 34/34/34 35/35/35 32/32/32 -f 35/35/35 36/36/36 37/37/37 -f 37/37/37 32/32/32 35/35/35 -f 36/36/36 38/38/38 39/39/39 -f 39/39/39 37/37/37 36/36/36 -f 40/40/40 41/41/41 39/39/39 -f 39/39/39 38/38/38 40/40/40 -f 42/42/42 43/43/43 41/41/41 -f 41/41/41 40/40/40 42/42/42 -f 42/42/42 44/44/44 43/43/43 -f 45/45/45 46/46/46 47/47/47 -f 47/47/47 48/48/48 45/45/45 -f 33/33/33 46/46/46 49/49/49 -f 49/49/49 34/34/34 33/33/33 -f 50/50/50 51/51/51 52/52/52 -f 52/52/52 53/53/53 50/50/50 -f 54/54/54 55/55/55 56/56/56 -f 56/56/56 53/57/53 54/54/54 -f 53/57/53 52/58/52 54/54/54 -f 56/56/56 55/55/55 57/59/57 -f 57/59/57 58/60/58 56/56/56 -f 59/61/59 60/62/60 61/63/61 -f 61/63/61 62/64/62 59/61/59 -f 63/65/63 64/66/64 59/61/59 -f 59/61/59 62/64/62 63/65/63 -f 65/67/65 64/66/64 63/65/63 -f 63/65/63 66/68/66 65/67/65 -f 67/69/67 68/70/68 69/71/69 -f 69/71/69 70/72/70 67/69/67 -f 71/73/71 51/51/51 50/50/50 -f 50/50/50 72/74/72 71/73/71 -f 73/75/73 74/76/74 57/77/57 -f 57/77/57 55/78/55 73/75/73 -f 75/79/75 58/80/58 57/77/57 -f 57/77/57 74/76/74 75/79/75 -f 76/81/76 77/82/77 66/68/66 -f 66/68/66 63/65/63 76/81/76 -f 63/65/63 62/64/62 76/81/76 -f 70/72/70 69/71/69 74/76/74 -f 74/76/74 73/75/73 70/72/70 -f 78/83/78 79/84/79 26/26/26 -f 26/26/26 23/23/23 78/83/78 -f 80/85/80 81/86/81 79/84/79 -f 79/84/79 78/83/78 80/85/80 -f 82/87/82 83/88/83 12/12/12 -f 12/12/12 11/11/11 82/87/82 -f 22/22/22 29/29/29 14/14/14 -f 14/14/14 3/3/3 22/22/22 -f 84/89/84 85/90/85 13/13/13 -f 13/13/13 15/15/15 84/89/84 -f 85/90/85 86/91/86 4/4/4 -f 4/4/4 13/13/13 85/90/85 -f 86/91/86 87/92/87 1/1/1 -f 1/1/1 4/4/4 86/91/86 -f 88/93/88 89/94/89 10/10/10 -f 10/10/10 9/9/9 88/93/88 -f 82/87/82 28/28/28 90/95/90 -f 90/95/90 83/88/83 82/87/82 -f 91/96/91 6/6/6 5/5/5 -f 5/5/5 92/97/92 91/96/91 -f 93/98/93 94/99/94 95/100/95 -f 95/100/95 96/101/96 93/98/93 -f 97/102/97 94/99/94 98/103/98 -f 98/103/98 99/104/99 97/102/97 -f 98/103/98 94/99/94 93/98/93 -f 93/98/93 100/105/100 98/103/98 -f 101/106/101 102/107/102 103/108/103 -f 103/108/103 104/109/104 101/106/101 -f 103/108/103 102/107/102 105/110/105 -f 105/110/105 106/111/106 103/108/103 -f 93/98/93 96/101/96 105/110/105 -f 105/110/105 102/107/102 93/98/93 -f 94/99/94 97/102/97 107/112/107 -f 107/112/107 95/100/95 94/99/94 -f 107/112/107 97/102/97 108/113/108 -f 108/113/108 109/114/109 107/112/107 -f 99/104/99 110/115/110 108/113/108 -f 108/113/108 97/102/97 99/104/99 -f 101/106/101 100/105/100 93/98/93 -f 93/98/93 102/107/102 101/106/101 -f 104/109/104 103/108/103 111/116/111 -f 111/116/111 88/117/88 104/109/104 -f 103/108/103 106/111/106 91/118/91 -f 91/118/91 111/116/111 103/108/103 -f 112/119/112 113/120/113 114/121/114 -f 114/121/114 115/122/115 112/119/112 -f 116/123/116 117/124/117 31/31/31 -f 31/31/31 30/30/30 116/123/116 -f 118/125/118 116/123/116 30/30/30 -f 30/30/30 119/126/119 118/125/118 -f 120/127/120 31/31/31 117/124/117 -f 117/124/117 121/128/121 120/127/120 -f 91/96/91 92/97/92 111/129/111 -f 89/94/89 88/93/88 111/129/111 -f 89/94/89 111/129/111 92/97/92 -f 92/97/92 5/5/5 89/94/89 -f 21/21/21 119/126/119 30/30/30 -f 30/30/30 22/22/22 21/21/21 -f 116/123/116 118/125/118 122/130/122 -f 122/130/122 123/131/123 116/123/116 -f 115/122/115 124/132/124 125/133/125 -f 125/133/125 112/119/112 115/122/115 -f 126/134/126 127/135/127 128/136/128 -f 128/136/128 129/137/129 126/134/126 -f 120/127/120 121/128/121 129/137/129 -f 129/137/129 128/136/128 120/127/120 -f 116/123/116 123/131/123 130/138/130 -f 130/138/130 117/124/117 116/123/116 -f 117/124/117 130/138/130 131/139/131 -f 131/139/131 132/140/132 121/128/121 -f 121/128/121 117/124/117 131/139/131 -f 132/140/132 129/137/129 121/128/121 -f 132/140/132 133/141/133 126/134/126 -f 126/134/126 129/137/129 132/140/132 -f 134/142/125 125/133/125 124/132/124 -f 124/132/124 135/143/134 134/142/125 -f 136/144/135 137/145/136 138/146/137 -f 138/146/137 139/147/138 136/144/135 -f 140/148/139 137/145/136 136/144/135 -f 136/144/135 141/149/140 140/148/139 -f 142/150/141 143/151/142 144/152/143 -f 145/153/144 146/154/145 142/150/141 -f 142/150/141 144/152/143 145/153/144 -f 144/152/143 147/155/146 145/153/144 -f 148/156/147 149/157/148 150/158/149 -f 150/158/149 151/159/150 148/156/147 -f 152/160/151 153/161/152 154/162/153 -f 155/163/154 156/164/155 157/165/156 -f 157/165/156 158/166/157 155/163/154 -f 146/154/145 145/153/144 159/167/158 -f 159/167/158 160/168/159 146/154/145 -f 161/169/160 159/167/158 145/153/144 -f 145/153/144 162/170/161 161/169/160 -f 163/171/162 164/172/163 149/157/148 -f 149/157/148 148/156/147 163/171/162 -f 165/173/164 163/171/162 166/174/165 -f 166/174/165 167/175/166 165/173/164 -f 155/163/154 168/176/167 169/177/168 -f 169/177/168 156/164/155 155/163/154 -f 170/178/169 171/179/170 172/180/171 -f 172/181/172 171/182/173 173/183/174 -f 173/183/174 174/184/175 172/181/172 -f 173/183/174 175/185/176 174/184/175 -f 176/186/177 177/187/178 178/188/179 -f 179/189/180 180/190/181 181/191/182 -f 181/191/182 178/188/179 179/189/180 -f 178/188/179 177/187/178 179/189/180 -f 181/191/182 180/190/181 170/178/169 -f 170/178/169 172/180/171 181/191/182 -f 170/178/169 155/163/154 158/166/157 -f 158/166/157 182/192/183 171/179/170 -f 171/179/170 170/178/169 158/166/157 -f 173/183/174 171/182/173 160/168/159 -f 160/168/159 159/167/158 173/183/174 -f 159/167/158 183/193/184 175/185/176 -f 175/185/176 173/183/174 159/167/158 -f 165/173/164 167/175/166 177/187/178 -f 177/187/178 176/186/177 165/173/164 -f 176/186/177 184/194/185 165/173/164 -f 167/175/166 179/189/180 177/187/178 -f 170/178/169 180/190/181 168/176/167 -f 168/176/167 155/163/154 170/178/169 -f 143/151/142 142/150/141 146/154/145 -f 146/154/145 185/195/186 143/151/142 -f 160/168/159 182/196/187 185/195/186 -f 185/195/186 146/154/145 160/168/159 -f 160/168/159 171/182/173 182/196/187 -f 114/121/114 81/86/81 80/85/80 -f 80/85/80 186/197/188 114/121/114 -f 18/18/18 17/17/17 84/89/84 -f 84/89/84 187/198/189 18/18/18 -f 27/27/27 18/18/18 187/198/189 -f 187/198/189 188/199/190 27/27/27 -f 189/200/191 25/25/25 26/26/26 -f 26/26/26 190/201/192 189/200/191 -f 28/28/28 27/27/27 191/202/193 -f 191/202/193 90/95/90 28/28/28 -f 190/201/192 26/26/26 79/84/79 -f 79/84/79 192/203/194 190/201/192 -f 192/203/194 79/84/79 81/86/81 -f 81/86/81 193/204/195 192/203/194 -f 19/19/19 28/28/28 82/87/82 -f 82/87/82 194/205/196 19/19/19 -f 115/122/115 114/121/114 186/197/188 -f 186/197/188 127/135/127 115/122/115 -f 124/132/124 115/122/115 127/135/127 -f 127/135/127 126/134/126 124/132/124 -f 113/120/113 193/204/195 81/86/81 -f 81/86/81 114/121/114 113/120/113 -f 195/206/197 188/199/190 25/25/25 -f 25/25/25 189/200/191 195/206/197 -f 133/141/133 135/143/134 124/132/124 -f 124/132/124 126/134/126 133/141/133 -f 17/17/17 20/20/20 196/207/198 -f 196/207/198 8/8/8 197/208/199 -f 7/7/7 198/209/1 197/208/199 -f 197/208/199 8/8/8 7/7/7 -f 199/210/200 200/211/201 201/211/202 -f 201/211/202 202/212/203 199/210/200 -f 202/212/203 203/213/204 204/213/205 -f 204/213/205 199/210/200 202/212/203 -f 205/214/206 206/215/207 207/216/208 -f 207/216/208 208/217/209 205/214/206 -f 138/146/137 209/218/210 210/219/211 -f 210/219/211 139/147/138 138/146/137 -f 200/211/201 211/220/212 212/221/213 -f 212/221/213 201/211/202 200/211/201 -f 203/213/204 140/148/139 141/149/140 -f 141/149/140 204/213/205 203/213/204 -f 69/71/69 68/70/68 213/222/214 -f 213/222/214 77/82/77 69/71/69 -f 72/74/72 214/223/215 215/224/216 -f 215/224/216 71/73/71 72/74/72 -f 216/225/217 54/226/54 52/52/52 -f 52/52/52 51/51/51 216/225/217 -f 61/63/61 217/227/218 76/81/76 -f 76/81/76 62/64/62 61/63/61 -f 77/82/77 75/79/75 74/76/74 -f 74/76/74 69/71/69 77/82/77 -f 216/225/217 51/51/51 71/73/71 -f 71/73/71 215/224/216 216/225/217 -f 34/34/34 50/50/50 53/53/53 -f 53/53/53 35/35/35 34/34/34 -f 56/56/56 38/228/38 36/229/36 -f 36/229/36 35/230/35 56/56/56 -f 35/230/35 53/57/53 56/56/56 -f 56/56/56 60/231/60 38/228/38 -f 60/62/60 59/61/59 40/40/40 -f 40/40/40 38/38/38 60/62/60 -f 40/40/40 59/61/59 64/66/64 -f 64/66/64 42/42/42 40/40/40 -f 64/66/64 65/67/65 44/44/44 -f 44/44/44 42/42/42 64/66/64 -f 67/69/67 214/223/215 45/45/45 -f 45/45/45 48/48/48 67/69/67 -f 48/48/48 68/70/68 67/69/67 -f 34/34/34 49/49/49 72/74/72 -f 72/74/72 50/50/50 34/34/34 -f 44/44/44 65/67/65 213/222/214 -f 213/222/214 48/48/48 44/44/44 -f 213/222/214 68/70/68 48/48/48 -f 45/45/45 214/223/215 72/74/72 -f 72/74/72 49/49/49 45/45/45 -f 213/222/214 65/67/65 66/68/66 -f 66/68/66 77/82/77 213/222/214 -f 215/224/216 214/223/215 67/69/67 -f 67/69/67 70/72/70 215/224/216 -f 216/225/217 73/75/73 55/78/55 -f 55/78/55 54/226/54 216/225/217 -f 217/227/218 58/80/58 75/79/75 -f 75/79/75 76/81/76 217/227/218 -f 76/81/76 75/79/75 77/82/77 -f 215/224/216 70/72/70 73/75/73 -f 73/75/73 216/225/217 215/224/216 -f 217/232/218 60/231/60 56/56/56 -f 56/56/56 58/60/58 217/232/218 -f 217/232/218 61/233/61 60/231/60 -f 45/45/45 49/49/49 46/46/46 -f 47/47/47 43/43/43 44/44/44 -f 44/44/44 48/48/48 47/47/47 -f 147/155/146 218/234/219 219/235/220 -f 219/235/220 162/170/161 145/153/144 -f 145/153/144 147/155/146 219/235/220 -f 185/236/221 157/165/156 220/237/222 -f 220/237/222 143/238/223 185/236/221 -f 182/192/183 158/166/157 157/165/156 -f 157/165/156 185/236/221 182/192/183 -f 153/239/152 221/240/224 222/241/225 -f 222/241/225 154/239/153 153/239/152 -f 223/32/226 224/33/93 225/242/227 -f 225/242/227 226/243/228 223/32/226 -f 226/243/228 227/36/229 228/37/230 -f 228/37/230 223/32/226 226/243/228 -f 228/37/230 227/36/229 229/38/231 -f 229/38/231 230/39/232 228/37/230 -f 231/40/233 232/41/234 230/39/232 -f 230/39/232 229/38/231 231/40/233 -f 232/41/234 231/40/233 233/244/235 -f 233/244/235 234/244/236 232/41/234 -f 235/245/237 236/47/238 234/244/236 -f 234/244/236 233/244/235 235/245/237 -f 237/47/239 238/246/240 236/47/238 -f 224/33/93 239/46/241 240/49/242 -f 240/49/242 225/242/227 224/33/93 -f 241/50/243 242/51/244 243/52/245 -f 243/52/245 244/53/246 241/50/243 -f 245/54/247 246/55/248 247/56/56 -f 247/56/56 244/57/246 245/54/247 -f 244/57/246 243/58/245 245/54/247 -f 247/56/56 246/55/248 248/59/57 -f 248/59/57 249/60/249 247/56/56 -f 250/64/250 251/61/251 252/62/252 -f 252/62/252 253/63/253 250/64/250 -f 254/65/254 255/66/255 251/61/251 -f 251/61/251 250/64/250 254/65/254 -f 254/65/254 256/68/256 257/67/257 -f 257/67/257 255/66/255 254/65/254 -f 258/70/258 259/71/259 260/72/260 -f 260/72/260 261/69/261 258/70/258 -f 262/73/262 242/51/244 241/50/243 -f 241/50/243 263/74/263 262/73/262 -f 264/75/264 265/76/265 248/77/57 -f 248/77/57 246/78/248 264/75/264 -f 266/79/266 249/80/249 248/77/57 -f 248/77/57 265/76/265 266/79/266 -f 267/81/267 268/82/268 256/68/256 -f 256/68/256 254/65/254 267/81/267 -f 254/65/254 250/64/250 267/81/267 -f 260/72/260 259/71/259 265/76/265 -f 265/76/265 264/75/264 260/72/260 -f 258/70/258 269/222/269 268/82/268 -f 268/82/268 259/71/259 258/70/258 -f 270/223/270 271/247/271 262/73/262 -f 262/73/262 263/74/263 270/223/270 -f 272/225/272 245/226/247 243/52/245 -f 243/52/245 242/51/244 272/225/272 -f 253/63/253 273/227/273 267/81/267 -f 267/81/267 250/64/250 253/63/253 -f 268/82/268 266/79/266 265/76/265 -f 265/76/265 259/71/259 268/82/268 -f 262/73/262 271/247/271 272/225/272 -f 272/225/272 242/51/244 262/73/262 -f 226/243/228 225/242/227 241/50/243 -f 241/50/243 244/53/246 226/243/228 -f 247/56/56 229/228/231 227/248/229 -f 227/248/229 226/249/228 247/56/56 -f 226/249/228 244/57/246 247/56/56 -f 247/56/56 252/250/252 229/228/231 -f 229/38/231 252/62/252 251/61/251 -f 251/61/251 231/40/233 229/38/231 -f 231/40/233 251/61/251 255/66/255 -f 255/66/255 233/244/235 231/40/233 -f 255/66/255 257/67/257 235/245/237 -f 235/245/237 233/244/235 255/66/255 -f 261/69/261 270/223/270 238/246/240 -f 238/246/240 237/47/239 261/69/261 -f 237/47/239 269/222/269 258/70/258 -f 258/70/258 261/69/261 237/47/239 -f 225/242/227 240/49/242 263/74/263 -f 263/74/263 241/50/243 225/242/227 -f 235/245/237 257/67/257 269/222/269 -f 269/222/269 237/47/239 235/245/237 -f 238/246/240 270/223/270 263/74/263 -f 263/74/263 240/49/242 238/246/240 -f 269/222/269 257/67/257 256/68/256 -f 256/68/256 268/82/268 269/222/269 -f 270/223/270 261/69/261 260/72/260 -f 260/72/260 271/247/271 270/223/270 -f 272/225/272 264/75/264 246/78/248 -f 246/78/248 245/226/247 272/225/272 -f 273/227/273 249/80/249 266/79/266 -f 266/79/266 267/81/267 273/227/273 -f 267/81/267 266/79/266 268/82/268 -f 271/247/271 260/72/260 264/75/264 -f 264/75/264 272/225/272 271/247/271 -f 273/232/273 252/250/252 247/56/56 -f 247/56/56 249/60/249 273/232/273 -f 273/232/273 253/233/253 252/250/252 -f 239/46/241 236/47/238 238/246/240 -f 238/246/240 240/49/242 239/46/241 -f 235/245/237 237/47/239 236/47/238 -f 159/167/158 161/169/160 183/193/184 -f 184/194/185 274/251/274 165/173/164 -f 274/251/274 164/172/163 163/171/162 -f 163/171/162 165/173/164 274/251/274 -f 178/252/179 181/181/182 172/181/171 -f 172/181/171 174/184/275 178/252/179 -f 149/253/148 219/235/276 218/234/277 -f 218/234/277 150/254/149 149/253/148 -f 164/255/163 162/170/278 219/235/276 -f 219/235/276 149/253/148 164/255/163 -f 178/252/179 174/184/275 175/185/279 -f 175/185/279 176/256/177 178/252/179 -f 184/193/185 183/193/280 161/169/281 -f 161/169/281 274/169/274 184/193/185 -f 176/256/177 175/185/279 183/193/280 -f 183/193/280 184/193/185 176/256/177 -f 274/169/274 161/169/281 162/170/278 -f 162/170/278 164/255/163 274/169/274 -f 275/257/282 276/258/283 277/259/284 -f 277/259/284 278/260/285 279/261/286 -f 279/261/286 280/262/287 277/259/284 -f 276/258/283 278/260/285 277/259/284 -f 277/259/284 281/263/288 282/263/289 -f 282/263/289 283/257/290 277/259/284 -f 283/257/290 275/257/282 277/259/284 -f 151/159/150 284/264/291 148/156/147 -f 163/171/162 148/156/147 284/264/291 -f 284/264/291 166/174/165 163/171/162 -f 169/177/168 166/174/165 284/264/291 -f 284/264/291 285/265/292 169/177/168 -f 167/175/166 166/174/165 169/177/168 -f 169/177/168 168/176/167 167/175/166 -f 168/176/167 180/190/181 179/189/180 -f 179/189/180 167/175/166 168/176/167 -f 286/266/293 287/267/294 288/268/295 -f 288/268/295 289/269/296 286/266/293 -f 287/267/294 290/270/297 196/271/198 -f 196/271/198 20/272/20 287/267/294 -f 291/273/298 286/266/293 292/274/299 -f 292/274/299 293/275/300 291/273/298 -f 294/276/301 295/277/302 293/275/300 -f 293/275/300 292/274/299 294/276/301 -f 296/278/303 297/279/304 298/280/305 -f 298/280/305 299/281/306 296/278/303 -f 292/274/299 300/282/307 301/283/308 -f 301/283/308 294/276/301 292/274/299 -f 293/275/300 302/284/309 303/285/310 -f 303/285/310 291/273/298 293/275/300 -f 303/285/310 302/284/309 5/286/5 -f 5/286/5 8/287/8 303/285/310 -f 286/266/293 289/269/296 300/282/307 -f 300/282/307 292/274/299 286/266/293 -f 304/288/311 305/289/312 306/290/313 -f 306/290/313 299/281/306 304/288/311 -f 307/291/314 308/292/315 299/281/306 -f 299/281/306 306/290/313 307/291/314 -f 309/293/316 306/290/313 305/289/312 -f 305/289/312 310/294/317 309/293/316 -f 309/293/316 311/295/318 307/291/314 -f 307/291/314 306/290/313 309/293/316 -f 196/271/198 290/270/297 303/285/310 -f 303/285/310 8/287/8 196/271/198 -f 304/288/311 299/281/306 298/280/305 -f 298/280/305 312/296/319 304/288/311 -f 313/297/320 314/298/321 315/299/322 -f 315/299/322 316/300/323 313/297/320 -f 307/291/314 315/299/322 314/298/321 -f 314/298/321 308/292/315 307/291/314 -f 317/301/324 318/302/325 319/303/326 -f 319/303/326 316/304/323 317/301/324 -f 316/300/323 315/299/322 320/305/327 -f 320/305/327 317/306/324 316/300/323 -f 320/305/327 315/299/322 307/291/314 -f 307/291/314 311/295/318 320/305/327 -f 319/303/326 321/307/328 313/308/320 -f 313/308/320 316/304/323 319/303/326 -f 321/307/328 322/309/329 323/310/330 -f 323/310/330 313/308/320 321/307/328 -f 293/275/300 295/277/302 302/284/309 -f 324/311/331 325/312/332 314/298/321 -f 314/298/321 313/297/320 324/311/331 -f 313/308/320 323/310/330 324/313/331 -f 19/314/19 323/310/330 322/309/329 -f 322/309/329 288/268/295 19/314/19 -f 288/268/295 322/309/329 312/296/319 -f 312/296/319 289/269/296 288/268/295 -f 312/296/319 298/280/305 300/282/307 -f 300/282/307 289/269/296 312/296/319 -f 298/280/305 297/279/304 301/283/308 -f 301/283/308 300/282/307 298/280/305 -f 89/315/89 295/277/302 294/276/301 -f 294/276/301 10/316/10 89/315/89 -f 5/286/5 302/284/309 295/277/302 -f 295/277/302 89/315/89 5/286/5 -f 299/281/306 308/292/315 296/278/303 -f 296/278/303 308/292/315 314/298/321 -f 314/298/321 325/312/332 297/279/304 -f 297/279/304 296/278/303 314/298/321 -f 325/312/332 11/317/11 301/283/308 -f 301/283/308 297/279/304 325/312/332 -f 301/283/308 11/317/11 10/316/10 -f 10/316/10 294/276/301 301/283/308 -f 239/318/241 224/319/93 310/294/317 -f 224/319/93 223/320/226 309/293/316 -f 309/293/316 310/294/317 224/319/93 -f 311/295/318 309/293/316 223/320/226 -f 223/320/226 228/321/230 311/295/318 -f 317/301/324 232/322/234 234/323/236 -f 234/323/236 318/302/325 317/301/324 -f 234/323/236 236/324/238 318/302/325 -f 320/305/327 232/325/234 317/306/324 -f 230/326/232 320/305/327 311/295/318 -f 311/295/318 228/321/230 230/326/232 -f 288/268/295 287/267/294 20/272/20 -f 20/272/20 19/314/19 288/268/295 -f 326/327/333 327/328/334 328/329/335 -f 328/329/335 329/330/336 326/327/333 -f 327/328/334 330/331/337 331/332/338 -f 331/332/338 328/329/335 327/328/334 -f 332/333/339 331/332/338 330/331/337 -f 333/334/340 334/335/341 335/336/342 -f 336/337/343 335/336/342 334/335/341 -f 334/335/341 337/338/344 336/337/343 -f 328/329/335 338/339/345 339/340/346 -f 339/340/346 329/330/336 328/329/335 -f 331/332/338 23/341/23 338/339/345 -f 338/339/345 328/329/335 331/332/338 -f 78/342/78 23/341/23 331/332/338 -f 331/332/338 332/333/339 78/342/78 -f 340/343/347 78/344/78 332/345/339 -f 332/345/339 333/334/340 340/343/347 -f 341/346/348 340/343/347 333/334/340 -f 333/334/340 335/336/342 341/346/348 -f 342/347/349 341/346/348 335/336/342 -f 335/336/342 336/337/343 342/347/349 -f 343/348/350 344/349/351 342/347/349 -f 342/347/349 336/337/343 343/348/350 -f 345/350/352 346/351/353 16/352/16 -f 16/352/16 14/353/14 345/350/352 -f 347/354/354 31/355/31 120/356/120 -f 347/354/354 348/357/355 29/358/29 -f 29/358/29 31/355/31 347/354/354 -f 349/359/356 343/348/350 336/337/343 -f 336/337/343 337/338/344 349/359/356 -f 326/327/333 350/360/357 351/360/358 -f 351/360/358 352/361/359 327/328/334 -f 327/328/334 326/327/333 351/360/358 -f 37/362/37 39/363/39 353/364/360 -f 353/364/360 354/365/361 37/362/37 -f 353/364/360 39/363/39 41/366/41 -f 41/366/41 355/367/362 353/364/360 -f 355/368/362 41/369/41 43/370/43 -f 43/370/43 356/371/363 355/368/362 -f 349/359/356 350/360/357 326/327/333 -f 326/327/333 343/348/350 349/359/356 -f 326/327/333 329/330/336 343/348/350 -f 346/351/353 357/372/364 344/349/351 -f 344/349/351 339/340/346 346/351/353 -f 14/353/14 29/358/29 348/357/355 -f 348/357/355 345/350/352 14/353/14 -f 128/373/128 358/374/365 120/356/120 -f 358/374/365 128/373/128 127/375/127 -f 127/375/127 186/376/188 358/374/365 -f 120/356/120 358/374/365 359/377/366 -f 359/377/366 347/354/354 120/356/120 -f 357/372/364 348/357/355 347/354/354 -f 347/354/354 359/377/366 357/372/364 -f 357/372/364 346/351/353 345/350/352 -f 345/350/352 348/357/355 357/372/364 -f 339/340/346 338/339/345 16/352/16 -f 16/352/16 346/351/353 339/340/346 -f 23/341/23 16/352/16 338/339/345 -f 340/343/347 80/378/80 78/344/78 -f 186/376/188 340/343/347 341/346/348 -f 341/346/348 358/374/365 186/376/188 -f 358/374/365 341/346/348 342/347/349 -f 342/347/349 359/377/366 358/374/365 -f 359/377/366 342/347/349 344/349/351 -f 344/349/351 357/372/364 359/377/366 -f 329/330/336 339/340/346 344/349/351 -f 344/349/351 343/348/350 329/330/336 -f 340/343/347 186/376/188 80/378/80 -f 360/379/367 361/380/368 362/381/369 -f 362/381/369 363/382/370 360/379/367 -f 364/383/371 365/384/372 361/380/368 -f 361/380/368 360/379/367 364/383/371 -f 366/385/373 365/384/372 364/383/371 -f 364/383/371 367/386/374 366/385/373 -f 368/387/375 369/388/376 370/389/377 -f 370/389/377 371/390/378 368/387/375 -f 367/386/374 372/391/379 370/389/377 -f 370/389/377 369/388/376 367/386/374 -f 369/388/376 366/385/373 367/386/374 -f 352/361/359 373/392/380 330/331/337 -f 330/331/337 327/328/334 352/361/359 -f 332/333/339 330/331/337 373/392/380 -f 332/345/339 374/393/381 362/381/369 -f 362/381/369 333/334/340 332/345/339 -f 354/365/361 353/364/360 375/394/382 -f 375/394/382 376/395/383 354/365/361 -f 375/394/382 353/364/360 355/367/362 -f 355/367/362 377/396/384 375/394/382 -f 377/397/384 355/368/362 356/371/363 -f 356/371/363 378/398/385 377/397/384 -f 47/399/47 379/400/386 356/371/363 -f 356/371/363 43/370/43 47/399/47 -f 380/401/387 379/400/386 47/399/47 -f 47/399/47 46/402/46 380/401/387 -f 381/403/388 380/401/387 46/402/46 -f 46/402/46 33/404/33 381/403/388 -f 354/365/361 382/405/389 32/406/32 -f 32/406/32 37/362/37 354/365/361 -f 382/405/389 381/403/388 33/404/33 -f 33/404/33 32/406/32 382/405/389 -f 383/407/390 384/408/391 385/409/392 -f 385/409/392 386/410/393 383/407/390 -f 386/410/393 133/411/133 387/412/394 -f 387/412/394 383/407/390 386/410/393 -f 387/412/394 388/413/395 383/407/390 -f 388/413/395 387/412/394 389/414/396 -f 390/415/397 391/416/398 388/413/395 -f 388/413/395 389/414/396 390/415/397 -f 123/417/123 122/418/122 392/419/399 -f 392/419/399 393/420/400 123/417/123 -f 134/421/125 135/422/134 386/410/393 -f 386/410/393 385/409/392 134/421/125 -f 131/423/131 130/424/130 394/425/401 -f 394/425/401 395/426/402 131/423/131 -f 133/411/133 132/427/132 389/414/396 -f 389/414/396 387/412/394 133/411/133 -f 394/425/401 130/424/130 123/417/123 -f 123/417/123 393/420/400 394/425/401 -f 132/427/132 131/423/131 395/426/402 -f 395/426/402 389/414/396 132/427/132 -f 396/428/403 394/425/401 393/420/400 -f 393/420/400 397/429/404 396/428/403 -f 392/419/399 398/430/405 397/429/404 -f 397/429/404 393/420/400 392/419/399 -f 399/431/406 400/432/407 401/433/408 -f 401/433/408 402/434/409 399/431/406 -f 403/435/410 404/436/411 405/437/412 -f 405/437/412 406/438/413 403/435/410 -f 405/437/412 407/437/414 406/438/413 -f 408/439/415 409/440/416 410/441/175 -f 410/441/175 411/442/417 408/439/415 -f 411/442/417 410/441/175 412/443/418 -f 412/443/418 413/444/419 411/442/417 -f 403/435/410 406/438/413 414/445/420 -f 414/445/420 402/434/409 403/435/410 -f 415/446/421 416/447/422 417/448/423 -f 417/448/423 276/449/424 415/446/421 -f 221/240/224 153/239/152 418/450/425 -f 418/450/425 419/451/426 221/240/224 -f 391/416/398 420/452/427 388/413/395 -f 421/453/428 422/454/429 423/455/430 -f 423/455/430 424/456/293 421/453/428 -f 425/457/431 426/458/432 427/459/433 -f 427/459/433 428/460/434 425/457/431 -f 429/461/435 430/462/436 282/461/437 -f 282/461/437 281/463/438 429/461/435 -f 416/447/422 431/464/439 432/465/440 -f 432/465/440 417/448/423 416/447/422 -f 433/466/441 428/460/434 427/459/433 -f 427/459/433 434/467/442 433/466/441 -f 435/468/443 221/240/224 419/451/426 -f 419/451/426 436/469/444 435/468/443 -f 437/470/445 438/471/446 439/472/447 -f 439/472/447 440/473/448 437/470/445 -f 411/442/417 413/444/419 276/449/424 -f 276/449/424 417/448/423 411/442/417 -f 432/465/440 408/439/415 411/442/417 -f 411/442/417 417/448/423 432/465/440 -f 413/444/419 412/443/418 279/474/449 -f 279/474/449 278/475/450 413/444/419 -f 285/476/292 441/477/451 442/478/452 -f 442/478/452 443/479/453 285/476/292 -f 444/480/454 445/481/455 446/482/456 -f 446/482/456 447/483/457 444/480/454 -f 448/484/458 449/485/459 450/486/460 -f 450/486/460 420/452/427 448/484/458 -f 388/413/395 420/452/427 451/487/461 -f 451/487/461 383/407/390 388/413/395 -f 447/483/457 446/482/456 415/446/421 -f 415/446/421 276/449/424 447/483/457 -f 450/486/460 452/488/462 451/487/461 -f 451/487/461 420/452/427 450/486/460 -f 453/489/463 403/435/410 402/434/409 -f 402/434/409 401/433/408 453/489/463 -f 440/473/448 439/472/447 454/490/464 -f 454/490/464 455/491/465 440/473/448 -f 455/491/465 456/492/466 440/473/448 -f 457/493/467 455/491/465 454/490/464 -f 454/490/464 458/494/468 457/493/467 -f 459/495/469 460/496/470 456/492/466 -f 456/492/466 455/491/465 459/495/469 -f 454/490/464 461/497/471 462/498/472 -f 462/498/472 458/494/468 454/490/464 -f 463/499/473 464/500/474 465/501/475 -f 465/501/475 466/502/476 463/499/473 -f 467/503/477 468/504/478 469/505/479 -f 469/505/479 444/480/454 467/503/477 -f 445/481/455 444/480/454 469/505/479 -f 469/505/479 470/506/480 445/481/455 -f 445/481/455 470/506/480 471/507/481 -f 471/507/481 452/488/462 445/481/455 -f 383/407/390 451/487/461 472/508/482 -f 472/508/482 384/408/391 383/407/390 -f 473/509/483 449/485/459 448/484/458 -f 448/484/458 422/454/429 473/509/483 -f 443/479/453 418/510/425 153/511/152 -f 153/511/152 152/512/151 443/479/453 -f 221/240/224 435/468/443 457/493/467 -f 457/493/467 474/513/484 221/240/224 -f 144/514/485 463/499/473 466/502/476 -f 466/502/476 147/515/486 144/514/485 -f 435/468/443 459/495/469 455/491/465 -f 455/491/465 457/493/467 435/468/443 -f 436/469/444 475/516/487 459/495/469 -f 459/495/469 435/468/443 436/469/444 -f 476/517/488 399/431/406 402/434/409 -f 402/434/409 414/445/420 476/517/488 -f 477/518/489 461/497/471 478/519/490 -f 478/519/490 479/519/491 477/518/489 -f 459/495/469 475/516/487 480/520/435 -f 480/520/435 460/496/470 459/495/469 -f 481/521/492 482/522/493 406/438/413 -f 406/438/413 483/523/494 481/521/492 -f 482/522/493 140/524/495 476/517/488 -f 476/517/488 414/445/420 482/522/493 -f 440/473/448 456/492/466 484/525/496 -f 484/525/496 437/470/445 440/473/448 -f 460/496/470 428/460/434 433/466/441 -f 433/466/441 456/492/466 460/496/470 -f 433/466/441 484/525/496 456/492/466 -f 206/519/497 479/519/491 478/519/490 -f 478/519/490 485/519/498 206/519/497 -f 437/470/445 484/525/496 201/526/499 -f 201/526/499 212/527/500 437/470/445 -f 486/528/501 138/529/502 137/530/503 -f 137/530/503 481/521/492 486/528/501 -f 422/454/429 448/484/458 391/416/398 -f 391/416/398 390/415/397 423/455/430 -f 423/455/430 422/454/429 391/416/398 -f 487/531/504 397/429/404 398/430/405 -f 398/430/405 488/532/505 487/531/504 -f 489/533/506 396/428/403 151/534/150 -f 151/534/150 150/535/149 489/533/506 -f 396/428/403 397/429/404 487/531/504 -f 487/531/504 151/534/150 396/428/403 -f 386/410/393 135/422/134 133/411/133 -f 490/536/507 491/537/508 447/483/457 -f 447/483/457 276/449/424 490/536/507 -f 453/489/463 404/436/411 403/435/410 -f 409/440/416 406/438/413 407/437/414 -f 409/440/416 407/437/414 492/538/509 -f 492/538/509 410/441/175 409/440/416 -f 410/441/175 492/538/509 493/539/510 -f 493/539/510 412/443/418 410/441/175 -f 280/540/511 279/474/449 412/443/418 -f 412/443/418 493/539/510 280/540/511 -f 407/437/414 405/437/412 494/437/512 -f 495/539/513 492/538/509 407/437/414 -f 407/437/414 494/437/512 495/539/513 -f 493/539/510 492/538/509 495/539/513 -f 495/539/513 496/539/514 493/539/510 -f 282/461/437 430/462/436 497/541/515 -f 497/541/515 283/475/516 282/461/437 -f 434/467/442 203/542/517 202/543/518 -f 202/543/518 433/466/441 434/467/442 -f 209/544/519 138/529/502 486/528/501 -f 486/528/501 498/545/520 209/544/519 -f 140/524/495 203/542/517 434/467/442 -f 434/467/442 476/517/488 140/524/495 -f 399/431/406 476/517/488 434/467/442 -f 434/467/442 427/459/433 399/431/406 -f 400/432/407 399/431/406 427/459/433 -f 427/459/433 426/458/432 400/432/407 -f 432/465/440 431/464/439 486/528/501 -f 486/528/501 481/521/492 432/465/440 -f 408/439/415 432/465/440 481/521/492 -f 481/521/492 483/523/494 408/439/415 -f 422/454/429 421/453/428 499/546/521 -f 499/546/521 473/509/483 422/454/429 -f 205/547/522 498/545/520 479/519/491 -f 479/519/491 206/519/497 205/547/522 -f 421/453/428 477/518/489 479/519/491 -f 479/519/491 498/545/520 421/453/428 -f 500/548/523 489/533/506 150/535/149 -f 150/535/149 501/549/524 500/548/523 -f 218/550/277 147/515/486 466/502/476 -f 466/502/476 502/551/525 218/550/277 -f 466/502/476 465/501/475 502/551/525 -f 395/426/402 500/548/523 390/415/397 -f 390/415/397 389/414/396 395/426/402 -f 489/533/506 500/548/523 395/426/402 -f 395/426/402 394/425/401 489/533/506 -f 202/543/518 201/526/499 484/525/496 -f 484/525/496 433/466/441 202/543/518 -f 480/520/435 425/457/431 428/460/434 -f 428/460/434 460/496/470 480/520/435 -f 477/518/489 421/453/428 424/456/293 -f 424/456/293 503/552/526 477/518/489 -f 477/518/489 503/552/526 462/498/472 -f 462/498/472 461/497/471 477/518/489 -f 431/464/439 499/546/521 498/545/520 -f 498/545/520 486/528/501 431/464/439 -f 431/464/439 416/447/422 473/509/483 -f 473/509/483 499/546/521 431/464/439 -f 415/446/421 449/485/459 473/509/483 -f 473/509/483 416/447/422 415/446/421 -f 446/482/456 450/486/460 449/485/459 -f 449/485/459 415/446/421 446/482/456 -f 452/488/462 471/507/481 472/508/482 -f 472/508/482 451/487/461 452/488/462 -f 445/481/455 452/488/462 450/486/460 -f 450/486/460 446/482/456 445/481/455 -f 458/494/468 464/500/474 474/513/484 -f 474/513/484 457/493/467 458/494/468 -f 462/498/472 465/501/475 464/500/474 -f 464/500/474 458/494/468 462/498/472 -f 465/501/475 462/498/472 503/552/526 -f 503/552/526 502/551/525 465/501/475 -f 424/456/293 501/549/524 502/551/525 -f 502/551/525 503/552/526 424/456/293 -f 501/549/524 150/535/149 218/550/277 -f 218/550/277 502/551/525 501/549/524 -f 430/462/436 429/461/435 504/553/527 -f 505/554/528 497/541/515 430/462/436 -f 430/462/436 504/553/527 505/554/528 -f 467/503/477 505/554/528 504/553/527 -f 504/553/527 468/504/478 467/503/477 -f 497/541/515 490/536/507 275/536/529 -f 275/536/529 283/475/516 497/541/515 -f 491/537/508 490/536/507 497/541/515 -f 497/541/515 505/554/528 491/537/508 -f 491/537/508 505/554/528 467/503/477 -f 444/480/454 447/483/457 491/537/508 -f 491/537/508 467/503/477 444/480/454 -f 488/532/505 442/478/452 441/477/451 -f 441/477/451 487/531/504 488/532/505 -f 489/533/506 394/425/401 396/428/403 -f 275/536/529 490/536/507 276/449/424 -f 278/475/450 276/449/424 413/444/419 -f 474/513/484 464/500/474 463/499/473 -f 463/499/473 143/555/223 474/513/484 -f 409/440/416 483/523/494 406/438/413 -f 140/524/495 482/522/493 481/521/492 -f 481/521/492 137/530/503 140/524/495 -f 205/547/522 209/544/519 498/545/520 -f 391/416/398 448/484/458 420/452/427 -f 493/539/510 496/539/514 280/540/511 -f 482/522/493 414/445/420 406/438/413 -f 408/439/415 483/523/494 409/440/416 -f 474/513/484 143/555/223 220/556/222 -f 220/556/222 222/241/225 221/240/224 -f 221/240/224 474/513/484 220/556/222 -f 143/555/223 463/499/473 144/514/485 -f 498/545/520 499/546/521 421/453/428 -f 501/549/524 424/456/293 423/455/430 -f 423/455/430 500/548/523 501/549/524 -f 284/557/291 487/531/504 441/477/451 -f 285/476/292 284/557/291 441/477/451 -f 151/534/150 487/531/504 284/557/291 -f 423/455/430 390/415/397 500/548/523 -f 437/470/445 212/527/500 438/471/446 -f 478/519/490 439/472/447 438/471/446 -f 438/471/446 485/519/498 478/519/490 -f 454/490/464 439/472/447 478/519/490 -f 478/519/490 461/497/471 454/490/464 -f 304/288/311 321/307/328 319/303/326 -f 319/303/326 305/289/312 304/288/311 -f 310/294/317 305/289/312 319/303/326 -f 319/303/326 318/302/325 310/294/317 -f 318/302/325 236/324/238 239/318/241 -f 239/318/241 310/294/317 318/302/325 -f 211/220/212 506/558/530 438/559/531 -f 438/559/531 212/221/213 211/220/212 -f 209/218/210 205/214/206 208/217/209 -f 208/217/209 210/219/211 209/218/210 -f 207/216/208 206/215/207 485/560/532 -f 485/560/532 507/561/533 207/216/208 -f 438/559/531 506/559/530 507/561/533 -f 507/561/533 485/560/532 438/559/531 -f 508/562/534 509/563/535 199/564/536 -f 199/564/536 204/565/537 508/562/534 -f 141/566/538 510/567/539 508/562/534 -f 508/562/534 204/565/537 141/566/538 -f 511/568/540 510/567/539 141/566/538 -f 141/566/538 136/569/541 511/568/540 -f 512/570/542 511/568/540 136/569/541 -f 136/569/541 139/571/543 512/570/542 -f 513/572/544 512/570/542 139/571/543 -f 139/571/543 210/573/545 513/572/544 -f 210/573/545 208/574/546 514/575/547 -f 514/575/547 513/572/544 210/573/545 -f 207/576/548 507/577/549 506/578/550 -f 515/579/551 516/580/552 207/576/548 -f 207/576/548 506/578/550 515/579/551 -f 517/581/553 515/579/551 506/578/550 -f 506/578/550 211/581/554 517/581/553 -f 518/582/555 517/581/553 211/581/554 -f 211/581/554 200/583/556 518/582/555 -f 208/574/546 207/576/548 516/580/552 -f 516/580/552 514/575/547 208/574/546 -f 200/583/556 199/564/536 509/563/535 -f 509/563/535 518/582/555 200/583/556 -f 519/584/264 518/582/555 509/563/535 -f 509/563/535 508/562/534 519/584/264 -f 518/582/555 519/584/264 517/581/553 -f 519/584/264 516/580/552 515/579/551 -f 515/579/551 517/581/553 519/584/264 -f 516/580/552 519/584/264 514/575/547 -f 514/575/547 519/584/264 513/572/544 -f 513/572/544 519/584/264 512/570/542 -f 512/570/542 519/584/264 511/568/540 -f 519/584/264 508/562/534 510/567/539 -f 510/567/539 511/568/540 519/584/264 -f 11/11/11 194/205/196 82/87/82 -f 85/90/85 84/89/84 17/17/17 -f 17/17/17 196/207/198 85/90/85 -f 86/91/86 85/90/85 196/207/198 -f 196/207/198 197/208/199 86/91/86 -f 87/92/87 86/91/86 197/208/199 -f 197/208/199 198/209/1 87/92/87 -f 187/198/189 84/89/84 15/15/15 -f 15/15/15 24/24/24 187/198/189 -f 188/199/190 187/198/189 24/24/24 -f 24/24/24 25/25/25 188/199/190 -f 27/27/27 188/199/190 195/206/197 -f 195/206/197 191/202/193 27/27/27 -f 323/310/330 19/314/19 194/585/196 -f 194/585/196 324/313/331 323/310/330 -f 11/317/11 325/312/332 324/311/331 -f 324/311/331 194/586/196 11/317/11 -f 320/305/327 230/326/232 232/325/234 -f 290/270/297 287/267/294 286/266/293 -f 286/266/293 291/273/298 290/270/297 -f 290/270/297 291/273/298 303/285/310 -f 379/400/386 520/587/557 378/398/385 -f 378/398/385 356/371/363 379/400/386 -f 380/401/387 521/588/558 520/587/557 -f 520/587/557 379/400/386 380/401/387 -f 381/403/388 372/391/379 521/588/558 -f 521/588/558 380/401/387 381/403/388 -f 376/395/383 522/589/559 382/405/389 -f 382/405/389 354/365/361 376/395/383 -f 522/589/559 372/391/379 381/403/388 -f 381/403/388 382/405/389 522/589/559 -f 376/395/383 375/394/382 523/590/560 -f 523/590/560 371/390/378 376/395/383 -f 523/590/560 375/394/382 377/396/384 -f 377/396/384 524/591/561 523/590/560 -f 524/592/561 377/397/384 378/398/385 -f 378/398/385 363/382/370 524/592/561 -f 520/587/557 360/379/367 363/382/370 -f 363/382/370 378/398/385 520/587/557 -f 521/588/558 364/383/371 360/379/367 -f 360/379/367 520/587/557 521/588/558 -f 367/386/374 364/383/371 521/588/558 -f 521/588/558 372/391/379 367/386/374 -f 371/390/378 370/389/377 522/589/559 -f 522/589/559 376/395/383 371/390/378 -f 372/391/379 522/589/559 370/389/377 -f 371/390/378 523/590/560 525/593/562 -f 525/593/562 368/387/375 371/390/378 -f 525/593/562 523/590/560 524/591/561 -f 524/591/561 374/594/381 525/593/562 -f 374/393/381 524/592/561 363/382/370 -f 363/382/370 362/381/369 374/393/381 -f 361/380/368 334/335/341 333/334/340 -f 333/334/340 362/381/369 361/380/368 -f 337/338/344 334/335/341 361/380/368 -f 361/380/368 365/384/372 337/338/344 -f 349/359/356 337/338/344 365/384/372 -f 365/384/372 366/385/373 349/359/356 -f 350/360/357 349/359/356 366/385/373 -f 366/385/373 369/388/376 350/360/357 -f 368/387/375 351/360/358 350/360/357 -f 350/360/357 369/388/376 368/387/375 -f 351/360/358 368/387/375 352/361/359 -f 373/392/380 352/361/359 368/387/375 -f 368/387/375 525/593/562 373/392/380 -f 525/593/562 374/594/381 332/333/339 -f 332/333/339 373/392/380 525/593/562 -f 304/288/311 312/296/319 322/309/329 -f 322/309/329 321/307/328 304/288/311 -f 154/162/153 222/595/225 156/164/155 -f 169/177/168 285/265/292 152/160/151 -f 156/164/155 169/177/168 152/160/151 -f 154/162/153 156/164/155 152/160/151 -f 157/165/156 156/164/155 222/595/225 -f 222/595/225 220/237/222 157/165/156 -f 152/512/151 285/476/292 443/479/453 -f 108/113/108 110/115/110 526/596/91 -f 526/596/91 109/114/109 108/113/108 -f 1/1/1 527/4/563 528/3/564 -f 528/3/564 2/2/2 1/1/1 -f 529/5/565 530/8/566 7/7/7 -f 7/7/7 6/6/6 529/5/565 -f 9/9/9 12/12/12 531/11/567 -f 531/11/567 532/10/568 9/9/9 -f 533/13/569 534/14/570 528/3/564 -f 528/3/564 527/4/563 533/13/569 -f 535/15/571 536/16/572 534/14/570 -f 534/14/570 533/13/569 535/15/571 -f 537/17/573 538/20/574 539/19/575 -f 539/19/575 540/18/576 537/17/573 -f 2/2/2 528/3/564 541/22/577 -f 541/22/577 21/21/21 2/2/2 -f 542/23/578 536/16/572 535/15/571 -f 535/15/571 543/24/579 542/23/578 -f 544/25/580 545/26/581 542/23/578 -f 542/23/578 543/24/579 544/25/580 -f 546/27/582 540/18/576 539/19/575 -f 539/19/575 547/28/583 546/27/582 -f 548/29/584 549/31/585 550/30/586 -f 550/30/586 541/22/577 548/29/584 -f 551/32/587 552/35/588 553/34/589 -f 553/34/589 554/33/590 551/32/587 -f 552/35/588 551/32/587 555/37/591 -f 555/37/591 556/36/592 552/35/588 -f 556/36/592 555/37/591 557/39/593 -f 557/39/593 558/38/594 556/36/592 -f 559/40/595 558/38/594 557/39/593 -f 557/39/593 560/41/596 559/40/595 -f 561/42/597 559/40/595 560/41/596 -f 560/41/596 562/43/598 561/42/597 -f 561/42/597 562/43/598 563/44/599 -f 564/47/600 565/46/601 566/45/602 -f 566/45/602 567/48/603 564/47/600 -f 554/33/590 553/34/589 568/49/604 -f 568/49/604 565/46/601 554/33/590 -f 569/50/605 570/53/606 571/52/607 -f 571/52/607 572/51/608 569/50/605 -f 573/54/609 571/58/607 570/57/606 -f 574/56/610 575/55/611 573/54/609 -f 573/54/609 570/57/606 574/56/610 -f 576/59/612 575/55/611 574/56/610 -f 574/56/610 577/60/613 576/59/612 -f 578/61/614 579/64/615 580/63/616 -f 580/63/616 581/62/617 578/61/614 -f 582/65/618 579/64/615 578/61/614 -f 578/61/614 583/66/619 582/65/618 -f 584/67/620 585/68/621 582/65/618 -f 582/65/618 583/66/619 584/67/620 -f 586/69/622 587/72/623 588/71/624 -f 588/71/624 589/70/625 586/69/622 -f 590/73/626 591/74/627 569/50/605 -f 569/50/605 572/51/608 590/73/626 -f 592/75/628 575/78/611 576/77/612 -f 576/77/612 593/76/629 592/75/628 -f 594/79/630 593/76/629 576/77/612 -f 576/77/612 577/80/613 594/79/630 -f 595/81/631 579/64/615 582/65/618 -f 585/68/621 596/82/632 595/81/631 -f 595/81/631 582/65/618 585/68/621 -f 587/72/623 592/75/628 593/76/629 -f 593/76/629 588/71/624 587/72/623 -f 597/83/633 542/23/578 545/26/581 -f 545/26/581 598/84/634 597/83/633 -f 599/85/635 597/83/633 598/84/634 -f 598/84/634 600/86/636 599/85/635 -f 601/87/637 531/11/567 12/12/12 -f 12/12/12 83/88/83 601/87/637 -f 541/22/577 528/3/564 534/14/570 -f 534/14/570 548/29/584 541/22/577 -f 602/89/638 535/15/571 533/13/569 -f 533/13/569 603/90/639 602/89/638 -f 603/90/639 533/13/569 527/4/563 -f 527/4/563 604/91/640 603/90/639 -f 604/91/640 527/4/563 1/1/1 -f 1/1/1 87/92/87 604/91/640 -f 88/93/88 9/9/9 532/10/568 -f 532/10/568 605/94/641 88/93/88 -f 601/87/637 83/88/83 90/95/90 -f 90/95/90 547/28/583 601/87/637 -f 529/5/565 6/6/6 91/96/91 -f 91/96/91 606/97/642 529/5/565 -f 607/98/643 96/101/96 95/100/95 -f 95/100/95 608/99/644 607/98/643 -f 609/102/645 99/104/99 98/103/98 -f 98/103/98 608/99/644 609/102/645 -f 98/103/98 100/105/100 607/98/643 -f 607/98/643 608/99/644 98/103/98 -f 101/106/101 104/109/104 610/108/643 -f 610/108/643 611/107/646 101/106/101 -f 610/108/643 106/111/106 105/110/105 -f 105/110/105 611/107/646 610/108/643 -f 607/98/643 611/107/646 105/110/105 -f 105/110/105 96/101/96 607/98/643 -f 608/99/644 95/100/95 107/112/107 -f 107/112/107 609/102/645 608/99/644 -f 107/112/107 109/114/109 612/113/647 -f 612/113/647 609/102/645 107/112/107 -f 99/104/99 609/102/645 612/113/647 -f 612/113/647 110/115/110 99/104/99 -f 101/106/101 611/107/646 607/98/643 -f 607/98/643 100/105/100 101/106/101 -f 104/109/104 88/117/88 613/116/648 -f 613/116/648 610/108/643 104/109/104 -f 610/108/643 613/116/648 91/118/91 -f 91/118/91 106/111/106 610/108/643 -f 112/119/112 614/122/649 615/121/650 -f 615/121/650 113/120/113 112/119/112 -f 616/123/651 550/30/586 549/31/585 -f 549/31/585 617/124/652 616/123/651 -f 118/125/118 119/126/119 550/30/586 -f 550/30/586 616/123/651 118/125/118 -f 618/127/653 619/128/654 617/124/652 -f 617/124/652 549/31/585 618/127/653 -f 91/96/91 613/129/648 606/97/642 -f 605/94/641 613/129/648 88/93/88 -f 606/97/642 613/129/648 605/94/641 -f 605/94/641 529/5/565 606/97/642 -f 21/21/21 541/22/577 550/30/586 -f 550/30/586 119/126/119 21/21/21 -f 616/123/651 620/131/655 122/130/122 -f 122/130/122 118/125/118 616/123/651 -f 614/122/649 112/119/112 125/133/125 -f 125/133/125 621/132/656 614/122/649 -f 622/134/657 623/137/658 624/136/659 -f 624/136/659 625/135/660 622/134/657 -f 618/127/653 624/136/659 623/137/658 -f 623/137/658 619/128/654 618/127/653 -f 616/123/651 617/124/652 626/138/661 -f 626/138/661 620/131/655 616/123/651 -f 619/128/654 627/140/662 628/139/663 -f 628/139/663 617/124/652 619/128/654 -f 628/139/663 626/138/661 617/124/652 -f 619/128/654 623/137/658 627/140/662 -f 627/140/662 623/137/658 622/134/657 -f 622/134/657 629/141/664 627/140/662 -f 134/142/125 630/143/665 621/132/656 -f 621/132/656 125/133/125 134/142/125 -f 631/144/666 632/147/667 633/146/668 -f 633/146/668 634/145/669 631/144/666 -f 635/148/670 636/149/363 631/144/666 -f 631/144/666 634/145/669 635/148/670 -f 637/150/671 638/152/672 639/151/673 -f 640/153/674 638/152/672 637/150/671 -f 637/150/671 641/154/675 640/153/674 -f 638/152/672 640/153/674 642/155/676 -f 643/156/677 644/159/678 645/158/679 -f 645/158/679 646/157/680 643/156/677 -f 647/160/681 648/162/682 649/161/683 -f 650/163/684 651/166/685 652/165/686 -f 652/165/686 653/164/516 650/163/684 -f 641/154/675 654/168/687 655/167/688 -f 655/167/688 640/153/674 641/154/675 -f 656/169/689 657/170/690 640/153/674 -f 640/153/674 655/167/688 656/169/689 -f 658/171/691 643/156/677 646/157/680 -f 646/157/680 659/172/692 658/171/691 -f 660/173/693 661/175/694 662/174/695 -f 662/174/695 658/171/691 660/173/693 -f 650/163/684 653/164/516 663/177/696 -f 663/177/696 664/176/697 650/163/684 -f 665/178/271 666/180/698 667/179/699 -f 668/183/700 667/182/701 666/181/702 -f 666/181/702 669/184/703 668/183/700 -f 668/183/700 669/184/703 670/185/704 -f 671/186/705 672/188/706 673/187/707 -f 674/189/708 673/187/707 672/188/706 -f 675/191/709 676/190/710 674/189/708 -f 674/189/708 672/188/706 675/191/709 -f 675/191/709 666/180/698 665/178/271 -f 665/178/271 676/190/710 675/191/709 -f 667/179/699 677/192/711 651/166/685 -f 651/166/685 665/178/271 667/179/699 -f 651/166/685 650/163/684 665/178/271 -f 668/183/700 655/167/688 654/168/687 -f 654/168/687 667/182/701 668/183/700 -f 655/167/688 668/183/700 670/185/704 -f 670/185/704 678/193/712 655/167/688 -f 660/173/693 679/194/713 671/186/705 -f 673/187/707 661/175/694 660/173/693 -f 660/173/693 671/186/705 673/187/707 -f 673/187/707 674/189/708 661/175/694 -f 665/178/271 650/163/684 664/176/697 -f 664/176/697 676/190/710 665/178/271 -f 639/151/673 680/195/714 641/154/675 -f 641/154/675 637/150/671 639/151/673 -f 654/168/687 641/154/675 680/195/714 -f 680/195/714 677/196/715 654/168/687 -f 654/168/687 677/196/715 667/182/701 -f 615/121/650 681/197/716 599/85/635 -f 599/85/635 600/86/636 615/121/650 -f 540/18/576 682/198/717 602/89/638 -f 602/89/638 537/17/573 540/18/576 -f 546/27/582 683/199/718 682/198/717 -f 682/198/717 540/18/576 546/27/582 -f 189/200/191 190/201/192 545/26/581 -f 545/26/581 544/25/580 189/200/191 -f 547/28/583 90/95/90 191/202/193 -f 191/202/193 546/27/582 547/28/583 -f 190/201/192 192/203/194 598/84/634 -f 598/84/634 545/26/581 190/201/192 -f 192/203/194 193/204/195 600/86/636 -f 600/86/636 598/84/634 192/203/194 -f 539/19/575 684/205/719 601/87/637 -f 601/87/637 547/28/583 539/19/575 -f 614/122/649 625/135/660 681/197/716 -f 681/197/716 615/121/650 614/122/649 -f 621/132/656 622/134/657 625/135/660 -f 625/135/660 614/122/649 621/132/656 -f 113/120/113 615/121/650 600/86/636 -f 600/86/636 193/204/195 113/120/113 -f 195/206/197 189/200/191 544/25/580 -f 544/25/580 683/199/718 195/206/197 -f 629/141/664 622/134/657 621/132/656 -f 621/132/656 630/143/665 629/141/664 -f 537/17/573 685/207/720 538/20/574 -f 685/207/720 686/208/721 530/8/566 -f 7/7/7 530/8/566 686/208/721 -f 686/208/721 198/209/1 7/7/7 -f 687/210/722 688/212/723 689/211/724 -f 689/211/724 690/211/725 687/210/722 -f 688/212/723 687/210/722 691/213/726 -f 691/213/726 692/213/727 688/212/723 -f 693/214/728 694/217/729 695/216/730 -f 695/216/730 696/215/731 693/214/728 -f 633/146/668 632/147/667 697/219/732 -f 697/219/732 698/218/733 633/146/668 -f 690/211/725 689/211/724 699/221/734 -f 699/221/734 700/220/735 690/211/725 -f 692/213/727 691/213/726 636/149/363 -f 636/149/363 635/148/670 692/213/727 -f 588/71/624 596/82/632 701/222/736 -f 701/222/736 589/70/625 588/71/624 -f 591/74/627 590/73/626 702/224/737 -f 702/224/737 703/223/738 591/74/627 -f 704/225/739 572/51/608 571/52/607 -f 571/52/607 573/226/609 704/225/739 -f 580/63/616 579/64/615 595/81/631 -f 595/81/631 705/227/740 580/63/616 -f 596/82/632 588/71/624 593/76/629 -f 593/76/629 594/79/630 596/82/632 -f 704/225/739 702/224/737 590/73/626 -f 590/73/626 572/51/608 704/225/739 -f 553/34/589 552/35/588 570/53/606 -f 570/53/606 569/50/605 553/34/589 -f 574/56/610 570/57/606 552/230/588 -f 556/229/592 558/228/594 574/56/610 -f 574/56/610 552/230/588 556/229/592 -f 558/228/594 581/231/617 574/56/610 -f 581/62/617 558/38/594 559/40/595 -f 559/40/595 578/61/614 581/62/617 -f 559/40/595 561/42/597 583/66/619 -f 583/66/619 578/61/614 559/40/595 -f 583/66/619 561/42/597 563/44/599 -f 563/44/599 584/67/620 583/66/619 -f 586/69/622 589/70/625 567/48/603 -f 566/45/602 703/223/738 586/69/622 -f 586/69/622 567/48/603 566/45/602 -f 553/34/589 569/50/605 591/74/627 -f 591/74/627 568/49/604 553/34/589 -f 567/48/603 589/70/625 701/222/736 -f 701/222/736 584/67/620 563/44/599 -f 563/44/599 567/48/603 701/222/736 -f 566/45/602 568/49/604 591/74/627 -f 591/74/627 703/223/738 566/45/602 -f 701/222/736 596/82/632 585/68/621 -f 585/68/621 584/67/620 701/222/736 -f 702/224/737 587/72/623 586/69/622 -f 586/69/622 703/223/738 702/224/737 -f 704/225/739 573/226/609 575/78/611 -f 575/78/611 592/75/628 704/225/739 -f 705/227/740 595/81/631 594/79/630 -f 594/79/630 577/80/613 705/227/740 -f 596/82/632 594/79/630 595/81/631 -f 702/224/737 704/225/739 592/75/628 -f 592/75/628 587/72/623 702/224/737 -f 574/56/610 581/231/617 705/232/740 -f 705/232/740 577/60/613 574/56/610 -f 581/231/617 580/233/616 705/232/740 -f 566/45/602 565/46/601 568/49/604 -f 563/44/599 562/43/598 564/47/600 -f 564/47/600 567/48/603 563/44/599 -f 640/153/674 657/170/690 706/235/741 -f 706/235/741 642/155/676 640/153/674 -f 706/235/741 707/234/742 642/155/676 -f 680/236/743 639/238/744 708/237/745 -f 708/237/745 652/165/686 680/236/743 -f 677/192/711 680/236/743 652/165/686 -f 652/165/686 651/166/685 677/192/711 -f 649/239/683 648/239/682 709/241/746 -f 709/241/746 710/240/747 649/239/683 -f 711/32/748 712/243/749 713/242/750 -f 713/242/750 714/33/751 711/32/748 -f 712/243/749 711/32/748 715/37/752 -f 715/37/752 716/36/753 712/243/749 -f 715/37/752 717/39/754 718/38/755 -f 718/38/755 716/36/753 715/37/752 -f 719/40/756 718/38/755 717/39/754 -f 717/39/754 720/41/757 719/40/756 -f 720/41/757 721/244/758 722/244/759 -f 722/244/759 719/40/756 720/41/757 -f 721/244/758 723/47/760 724/245/761 -f 724/245/761 722/244/759 721/244/758 -f 725/47/762 723/47/760 726/246/763 -f 714/33/751 713/242/750 727/49/764 -f 727/49/764 728/46/765 714/33/751 -f 729/50/766 730/53/767 731/52/768 -f 731/52/768 732/51/769 729/50/766 -f 733/54/770 731/58/768 730/57/767 -f 734/56/610 735/55/771 733/54/770 -f 733/54/770 730/57/767 734/56/610 -f 736/59/612 735/55/771 734/56/610 -f 734/56/610 737/60/772 736/59/612 -f 738/64/773 739/63/774 740/62/775 -f 740/62/775 741/61/776 738/64/773 -f 742/65/777 738/64/773 741/61/776 -f 741/61/776 743/66/778 742/65/777 -f 742/65/777 743/66/778 744/67/779 -f 744/67/779 745/68/780 742/65/777 -f 746/70/781 747/69/782 748/72/783 -f 748/72/783 749/71/784 746/70/781 -f 750/73/785 751/74/786 729/50/766 -f 729/50/766 732/51/769 750/73/785 -f 752/75/787 735/78/771 736/77/612 -f 736/77/612 753/76/788 752/75/787 -f 754/79/789 753/76/788 736/77/612 -f 736/77/612 737/80/772 754/79/789 -f 755/81/790 738/64/773 742/65/777 -f 745/68/780 756/82/791 755/81/790 -f 755/81/790 742/65/777 745/68/780 -f 748/72/783 752/75/787 753/76/788 -f 753/76/788 749/71/784 748/72/783 -f 746/70/781 749/71/784 756/82/791 -f 756/82/791 757/222/792 746/70/781 -f 758/223/793 751/74/786 750/73/785 -f 750/73/785 759/247/169 758/223/793 -f 760/225/794 732/51/769 731/52/768 -f 731/52/768 733/226/770 760/225/794 -f 739/63/774 738/64/773 755/81/790 -f 755/81/790 761/227/795 739/63/774 -f 756/82/791 749/71/784 753/76/788 -f 753/76/788 754/79/789 756/82/791 -f 750/73/785 732/51/769 760/225/794 -f 760/225/794 759/247/169 750/73/785 -f 712/243/749 730/53/767 729/50/766 -f 729/50/766 713/242/750 712/243/749 -f 734/56/610 730/57/767 712/249/749 -f 716/248/753 718/228/755 734/56/610 -f 734/56/610 712/249/749 716/248/753 -f 718/228/755 740/250/775 734/56/610 -f 718/38/755 719/40/756 741/61/776 -f 741/61/776 740/62/775 718/38/755 -f 719/40/756 722/244/759 743/66/778 -f 743/66/778 741/61/776 719/40/756 -f 743/66/778 722/244/759 724/245/761 -f 724/245/761 744/67/779 743/66/778 -f 746/70/781 757/222/792 725/47/762 -f 725/47/762 747/69/782 746/70/781 -f 726/246/763 758/223/793 747/69/782 -f 747/69/782 725/47/762 726/246/763 -f 713/242/750 729/50/766 751/74/786 -f 751/74/786 727/49/764 713/242/750 -f 757/222/792 744/67/779 724/245/761 -f 724/245/761 725/47/762 757/222/792 -f 726/246/763 727/49/764 751/74/786 -f 751/74/786 758/223/793 726/246/763 -f 757/222/792 756/82/791 745/68/780 -f 745/68/780 744/67/779 757/222/792 -f 758/223/793 759/247/169 748/72/783 -f 748/72/783 747/69/782 758/223/793 -f 760/225/794 733/226/770 735/78/771 -f 735/78/771 752/75/787 760/225/794 -f 761/227/795 755/81/790 754/79/789 -f 754/79/789 737/80/772 761/227/795 -f 756/82/791 754/79/789 755/81/790 -f 759/247/169 760/225/794 752/75/787 -f 752/75/787 748/72/783 759/247/169 -f 734/56/610 740/250/775 761/232/795 -f 761/232/795 737/60/772 734/56/610 -f 740/250/775 739/233/774 761/232/795 -f 726/246/763 723/47/760 728/46/765 -f 728/46/765 727/49/764 726/246/763 -f 724/245/761 723/47/760 725/47/762 -f 655/167/688 678/193/712 656/169/689 -f 679/194/713 660/173/693 762/251/796 -f 762/251/796 660/173/693 658/171/691 -f 658/171/691 659/172/692 762/251/796 -f 672/252/706 669/184/797 666/181/698 -f 666/181/698 675/181/709 672/252/706 -f 646/253/680 645/254/679 707/234/798 -f 707/234/798 706/235/799 646/253/680 -f 659/255/692 646/253/680 706/235/799 -f 706/235/799 657/170/800 659/255/692 -f 672/252/706 671/256/705 670/185/801 -f 670/185/801 669/184/797 672/252/706 -f 679/193/713 762/169/796 656/169/802 -f 656/169/802 678/193/803 679/193/713 -f 671/256/705 679/193/713 678/193/803 -f 678/193/803 670/185/801 671/256/705 -f 762/169/796 659/255/692 657/170/800 -f 657/170/800 656/169/802 762/169/796 -f 763/257/804 277/259/284 764/258/805 -f 765/261/806 766/260/807 277/259/284 -f 277/259/284 280/262/287 765/261/806 -f 764/258/805 277/259/284 766/260/807 -f 767/263/808 281/263/288 277/259/284 -f 277/259/284 768/257/809 767/263/808 -f 768/257/809 277/259/284 763/257/804 -f 644/159/678 643/156/677 769/264/810 -f 658/171/691 662/174/695 769/264/810 -f 769/264/810 643/156/677 658/171/691 -f 663/177/696 770/265/811 769/264/810 -f 769/264/810 662/174/695 663/177/696 -f 661/175/694 664/176/697 663/177/696 -f 663/177/696 662/174/695 661/175/694 -f 664/176/697 661/175/694 674/189/708 -f 674/189/708 676/190/710 664/176/697 -f 771/266/812 772/269/813 773/268/814 -f 773/268/814 774/267/815 771/266/812 -f 774/267/815 538/272/574 685/271/720 -f 685/271/720 775/270/816 774/267/815 -f 776/273/817 777/275/818 778/274/819 -f 778/274/819 771/266/812 776/273/817 -f 779/276/820 778/274/819 777/275/818 -f 777/275/818 780/277/821 779/276/820 -f 781/278/822 782/281/823 783/280/824 -f 783/280/824 784/279/825 781/278/822 -f 778/274/819 779/276/820 785/283/826 -f 785/283/826 786/282/827 778/274/819 -f 777/275/818 776/273/817 787/285/828 -f 787/285/828 788/284/829 777/275/818 -f 787/285/828 530/287/566 529/286/565 -f 529/286/565 788/284/829 787/285/828 -f 771/266/812 778/274/819 786/282/827 -f 786/282/827 772/269/813 771/266/812 -f 789/288/830 782/281/823 790/290/831 -f 790/290/831 791/289/832 789/288/830 -f 782/281/823 792/292/833 793/291/834 -f 793/291/834 790/290/831 782/281/823 -f 794/293/835 795/294/836 791/289/832 -f 791/289/832 790/290/831 794/293/835 -f 794/293/835 790/290/831 793/291/834 -f 793/291/834 796/295/837 794/293/835 -f 685/271/720 530/287/566 787/285/828 -f 787/285/828 775/270/816 685/271/720 -f 789/288/830 797/296/838 783/280/824 -f 783/280/824 782/281/823 789/288/830 -f 798/297/839 799/300/840 800/299/841 -f 800/299/841 801/298/842 798/297/839 -f 801/298/842 800/299/841 793/291/834 -f 793/291/834 792/292/833 801/298/842 -f 802/301/843 799/304/840 803/303/844 -f 803/303/844 804/302/845 802/301/843 -f 799/300/840 802/306/843 805/305/846 -f 805/305/846 800/299/841 799/300/840 -f 805/305/846 796/295/837 793/291/834 -f 793/291/834 800/299/841 805/305/846 -f 803/303/844 799/304/840 798/308/839 -f 798/308/839 806/307/847 803/303/844 -f 806/307/847 798/308/839 807/310/848 -f 807/310/848 808/309/849 806/307/847 -f 777/275/818 788/284/829 780/277/821 -f 809/311/850 798/297/839 801/298/842 -f 801/298/842 810/312/851 809/311/850 -f 798/308/839 809/313/850 807/310/848 -f 539/314/575 773/268/814 808/309/849 -f 808/309/849 807/310/848 539/314/575 -f 773/268/814 772/269/813 797/296/838 -f 797/296/838 808/309/849 773/268/814 -f 797/296/838 772/269/813 786/282/827 -f 786/282/827 783/280/824 797/296/838 -f 783/280/824 786/282/827 785/283/826 -f 785/283/826 784/279/825 783/280/824 -f 605/315/641 532/316/568 779/276/820 -f 779/276/820 780/277/821 605/315/641 -f 529/286/565 605/315/641 780/277/821 -f 780/277/821 788/284/829 529/286/565 -f 782/281/823 781/278/822 792/292/833 -f 781/278/822 801/298/842 792/292/833 -f 801/298/842 781/278/822 784/279/825 -f 784/279/825 810/312/851 801/298/842 -f 810/312/851 784/279/825 785/283/826 -f 785/283/826 531/317/567 810/312/851 -f 532/316/568 531/317/567 785/283/826 -f 785/283/826 779/276/820 532/316/568 -f 728/318/765 795/294/836 714/319/751 -f 794/293/835 711/320/748 714/319/751 -f 714/319/751 795/294/836 794/293/835 -f 796/295/837 715/321/752 711/320/748 -f 711/320/748 794/293/835 796/295/837 -f 804/302/845 723/324/760 721/323/758 -f 721/323/758 720/322/757 802/301/843 -f 802/301/843 804/302/845 721/323/758 -f 805/305/846 802/306/843 720/325/757 -f 717/326/754 715/321/752 796/295/837 -f 796/295/837 805/305/846 717/326/754 -f 773/268/814 539/314/575 538/272/574 -f 538/272/574 774/267/815 773/268/814 -f 811/327/852 812/330/853 813/329/854 -f 813/329/854 814/328/855 811/327/852 -f 814/328/855 813/329/854 815/332/856 -f 815/332/856 816/331/857 814/328/855 -f 817/333/858 816/331/857 815/332/856 -f 818/334/859 819/336/860 820/335/861 -f 821/337/862 822/338/863 820/335/861 -f 820/335/861 819/336/860 821/337/862 -f 813/329/854 812/330/853 823/340/864 -f 823/340/864 824/339/865 813/329/854 -f 815/332/856 813/329/854 824/339/865 -f 824/339/865 542/341/578 815/332/856 -f 597/342/633 817/333/858 815/332/856 -f 815/332/856 542/341/578 597/342/633 -f 825/343/866 818/334/859 817/345/858 -f 817/345/858 597/344/633 825/343/866 -f 826/346/867 819/336/860 818/334/859 -f 818/334/859 825/343/866 826/346/867 -f 827/347/868 821/337/862 819/336/860 -f 819/336/860 826/346/867 827/347/868 -f 828/348/869 821/337/862 827/347/868 -f 827/347/868 829/349/870 828/348/869 -f 536/352/572 830/351/871 831/350/872 -f 831/350/872 534/353/570 536/352/572 -f 832/354/873 618/356/653 549/355/585 -f 832/354/873 549/355/585 548/358/584 -f 548/358/584 833/357/874 832/354/873 -f 834/359/875 822/338/863 821/337/862 -f 821/337/862 828/348/869 834/359/875 -f 835/360/876 811/327/852 814/328/855 -f 814/328/855 836/361/877 835/360/876 -f 835/360/876 837/360/878 811/327/852 -f 555/362/591 838/365/879 839/364/880 -f 839/364/880 557/363/593 555/362/591 -f 839/364/880 840/367/102 560/366/596 -f 560/366/596 557/363/593 839/364/880 -f 840/368/102 841/371/881 562/370/598 -f 562/370/598 560/369/596 840/368/102 -f 834/359/875 828/348/869 811/327/852 -f 811/327/852 837/360/878 834/359/875 -f 811/327/852 828/348/869 812/330/853 -f 830/351/871 823/340/864 829/349/870 -f 829/349/870 842/372/882 830/351/871 -f 534/353/570 831/350/872 833/357/874 -f 833/357/874 548/358/584 534/353/570 -f 624/373/659 618/356/653 843/374/883 -f 843/374/883 681/376/716 625/375/660 -f 625/375/660 624/373/659 843/374/883 -f 618/356/653 832/354/873 844/377/884 -f 844/377/884 843/374/883 618/356/653 -f 842/372/882 844/377/884 832/354/873 -f 832/354/873 833/357/874 842/372/882 -f 842/372/882 833/357/874 831/350/872 -f 831/350/872 830/351/871 842/372/882 -f 823/340/864 830/351/871 536/352/572 -f 536/352/572 824/339/865 823/340/864 -f 542/341/578 824/339/865 536/352/572 -f 825/343/866 597/344/633 599/378/635 -f 681/376/716 843/374/883 826/346/867 -f 826/346/867 825/343/866 681/376/716 -f 843/374/883 844/377/884 827/347/868 -f 827/347/868 826/346/867 843/374/883 -f 844/377/884 842/372/882 829/349/870 -f 829/349/870 827/347/868 844/377/884 -f 812/330/853 828/348/869 829/349/870 -f 829/349/870 823/340/864 812/330/853 -f 825/343/866 599/378/635 681/376/716 -f 845/379/220 846/382/885 847/381/886 -f 847/381/886 848/380/887 845/379/220 -f 849/383/888 845/379/220 848/380/887 -f 848/380/887 850/384/889 849/383/888 -f 851/385/890 852/386/891 849/383/888 -f 849/383/888 850/384/889 851/385/890 -f 853/387/892 854/390/893 855/389/894 -f 855/389/894 856/388/895 853/387/892 -f 852/386/891 851/385/890 856/388/895 -f 855/389/894 857/391/896 852/386/891 -f 852/386/891 856/388/895 855/389/894 -f 836/361/877 814/328/855 816/331/857 -f 816/331/857 858/392/897 836/361/877 -f 817/333/858 858/392/897 816/331/857 -f 817/345/858 818/334/859 847/381/886 -f 847/381/886 859/393/898 817/345/858 -f 838/365/879 860/395/899 861/394/900 -f 861/394/900 839/364/880 838/365/879 -f 861/394/900 862/396/901 840/367/102 -f 840/367/102 839/364/880 861/394/900 -f 862/397/901 863/398/902 841/371/881 -f 841/371/881 840/368/102 862/397/901 -f 564/399/600 562/370/598 841/371/881 -f 841/371/881 864/400/903 564/399/600 -f 865/401/904 565/402/601 564/399/600 -f 564/399/600 864/400/903 865/401/904 -f 866/403/905 554/404/590 565/402/601 -f 565/402/601 865/401/904 866/403/905 -f 838/365/879 555/362/591 551/406/587 -f 551/406/587 867/405/906 838/365/879 -f 867/405/906 551/406/587 554/404/590 -f 554/404/590 866/403/905 867/405/906 -f 868/407/907 869/410/908 385/409/392 -f 385/409/392 384/408/391 868/407/907 -f 868/407/907 870/413/909 871/412/910 -f 871/412/910 629/411/664 869/410/908 -f 869/410/908 868/407/907 871/412/910 -f 870/413/909 872/416/911 873/415/912 -f 873/415/912 874/414/913 870/413/909 -f 874/414/913 871/412/910 870/413/909 -f 620/417/655 875/420/914 392/419/399 -f 392/419/399 122/418/122 620/417/655 -f 134/421/125 385/409/392 869/410/908 -f 869/410/908 630/422/665 134/421/125 -f 628/423/663 876/426/915 877/425/916 -f 877/425/916 626/424/661 628/423/663 -f 629/411/664 871/412/910 874/414/913 -f 874/414/913 627/427/662 629/411/664 -f 877/425/916 875/420/914 620/417/655 -f 620/417/655 626/424/661 877/425/916 -f 627/427/662 874/414/913 876/426/915 -f 876/426/915 628/423/663 627/427/662 -f 878/428/917 879/429/914 875/420/914 -f 875/420/914 877/425/916 878/428/917 -f 392/419/399 875/420/914 879/429/914 -f 879/429/914 398/430/405 392/419/399 -f 880/431/918 881/434/919 401/433/408 -f 401/433/408 400/432/407 880/431/918 -f 882/438/920 883/437/921 405/437/412 -f 405/437/412 404/436/411 884/435/922 -f 884/435/922 882/438/920 405/437/412 -f 885/439/923 886/442/924 887/441/703 -f 887/441/703 888/440/925 885/439/923 -f 886/442/924 889/444/926 890/443/927 -f 890/443/927 887/441/703 886/442/924 -f 884/435/922 881/434/919 891/445/928 -f 891/445/928 882/438/920 884/435/922 -f 892/446/929 764/449/930 893/448/931 -f 893/448/931 894/447/932 892/446/929 -f 710/240/747 419/451/426 418/450/425 -f 418/450/425 649/239/683 710/240/747 -f 870/413/909 895/452/933 872/416/911 -f 896/453/934 897/456/812 898/455/935 -f 898/455/935 899/454/936 896/453/934 -f 425/457/431 900/460/937 901/459/938 -f 901/459/938 426/458/432 425/457/431 -f 429/461/435 281/463/438 767/461/939 -f 767/461/939 902/462/940 429/461/435 -f 894/447/932 893/448/931 903/465/941 -f 903/465/941 904/464/942 894/447/932 -f 905/466/943 906/467/944 901/459/938 -f 901/459/938 900/460/937 905/466/943 -f 907/468/945 436/469/444 419/451/426 -f 419/451/426 710/240/747 907/468/945 -f 908/472/946 909/471/947 910/470/948 -f 910/470/948 911/473/949 908/472/946 -f 886/442/924 893/448/931 764/449/930 -f 764/449/930 889/444/926 886/442/924 -f 903/465/941 893/448/931 886/442/924 -f 886/442/924 885/439/923 903/465/941 -f 889/444/926 766/475/950 765/474/951 -f 765/474/951 890/443/927 889/444/926 -f 770/476/811 443/479/453 442/478/452 -f 442/478/452 912/477/952 770/476/811 -f 913/480/953 914/483/954 915/482/955 -f 915/482/955 916/481/956 913/480/953 -f 917/484/957 895/452/933 918/486/958 -f 918/486/958 919/485/959 917/484/957 -f 870/413/909 868/407/907 920/487/960 -f 920/487/960 895/452/933 870/413/909 -f 914/483/954 764/449/930 892/446/929 -f 892/446/929 915/482/955 914/483/954 -f 918/486/958 895/452/933 920/487/960 -f 920/487/960 921/488/961 918/486/958 -f 453/489/463 401/433/408 881/434/919 -f 881/434/919 884/435/922 453/489/463 -f 911/473/949 922/492/962 923/491/963 -f 923/491/963 924/490/964 911/473/949 -f 925/493/965 926/494/966 924/490/964 -f 924/490/964 923/491/963 925/493/965 -f 927/495/967 923/491/963 922/492/962 -f 922/492/962 928/496/968 927/495/967 -f 924/490/964 926/494/966 929/498/969 -f 929/498/969 930/497/970 924/490/964 -f 931/499/971 932/502/972 933/501/973 -f 933/501/973 934/500/974 931/499/971 -f 935/503/975 913/480/953 469/505/479 -f 469/505/479 468/504/478 935/503/975 -f 916/481/956 470/506/480 469/505/479 -f 469/505/479 913/480/953 916/481/956 -f 916/481/956 921/488/961 471/507/481 -f 471/507/481 470/506/480 916/481/956 -f 868/407/907 384/408/391 472/508/482 -f 472/508/482 920/487/960 868/407/907 -f 936/509/976 899/454/936 917/484/957 -f 917/484/957 919/485/959 936/509/976 -f 443/479/453 647/512/681 649/511/683 -f 649/511/683 418/510/425 443/479/453 -f 710/240/747 937/513/977 925/493/965 -f 925/493/965 907/468/945 710/240/747 -f 638/514/978 642/515/979 932/502/972 -f 932/502/972 931/499/971 638/514/978 -f 907/468/945 925/493/965 923/491/963 -f 923/491/963 927/495/967 907/468/945 -f 436/469/444 907/468/945 927/495/967 -f 927/495/967 475/516/487 436/469/444 -f 938/517/980 891/445/928 881/434/919 -f 881/434/919 880/431/918 938/517/980 -f 924/490/964 908/472/946 911/473/949 -f 939/518/981 940/519/982 941/519/983 -f 941/519/983 930/497/970 939/518/981 -f 927/495/967 928/496/968 480/520/435 -f 480/520/435 475/516/487 927/495/967 -f 942/521/984 943/523/985 882/438/920 -f 882/438/920 944/522/986 942/521/984 -f 944/522/986 891/445/928 938/517/980 -f 938/517/980 635/524/987 944/522/986 -f 911/473/949 910/470/948 945/525/988 -f 945/525/988 922/492/962 911/473/949 -f 922/492/962 945/525/988 905/466/943 -f 905/466/943 900/460/937 928/496/968 -f 928/496/968 922/492/962 905/466/943 -f 696/519/989 946/519/990 941/519/983 -f 941/519/983 940/519/982 696/519/989 -f 910/470/948 699/527/991 689/526/992 -f 689/526/992 945/525/988 910/470/948 -f 947/528/993 942/521/984 634/530/994 -f 634/530/994 633/529/995 947/528/993 -f 898/455/935 873/415/912 872/416/911 -f 872/416/911 899/454/936 898/455/935 -f 872/416/911 917/484/957 899/454/936 -f 948/531/996 488/532/505 398/430/405 -f 398/430/405 879/429/914 948/531/996 -f 949/533/997 645/535/679 644/534/678 -f 644/534/678 878/428/917 949/533/997 -f 878/428/917 644/534/678 948/531/996 -f 948/531/996 879/429/914 878/428/917 -f 629/411/664 630/422/665 869/410/908 -f 950/536/998 764/449/930 914/483/954 -f 914/483/954 951/537/999 950/536/998 -f 453/489/463 884/435/922 404/436/411 -f 888/440/925 952/538/1000 883/437/1001 -f 883/437/1001 882/438/920 888/440/925 -f 888/440/925 887/441/703 952/538/1000 -f 887/441/703 890/443/927 953/539/1002 -f 953/539/1002 952/538/1000 887/441/703 -f 280/540/1003 953/539/1002 890/443/927 -f 890/443/927 765/474/951 280/540/1003 -f 883/437/921 494/437/512 405/437/412 -f 495/539/1004 494/437/1005 883/437/1001 -f 883/437/1001 952/538/1000 495/539/1004 -f 953/539/1002 496/539/1006 495/539/1004 -f 495/539/1004 952/538/1000 953/539/1002 -f 767/461/939 768/475/155 954/541/1007 -f 954/541/1007 902/462/940 767/461/939 -f 906/467/944 905/466/943 688/543/1008 -f 688/543/1008 692/542/1009 906/467/944 -f 698/544/1010 955/545/1011 947/528/993 -f 947/528/993 633/529/995 698/544/1010 -f 635/524/987 938/517/980 906/467/944 -f 906/467/944 692/542/1009 635/524/987 -f 880/431/918 901/459/938 906/467/944 -f 906/467/944 938/517/980 880/431/918 -f 400/432/407 426/458/432 901/459/938 -f 901/459/938 880/431/918 400/432/407 -f 903/465/941 942/521/984 947/528/993 -f 947/528/993 904/464/942 903/465/941 -f 885/439/923 943/523/985 942/521/984 -f 942/521/984 903/465/941 885/439/923 -f 899/454/936 936/509/976 956/546/1012 -f 956/546/1012 896/453/934 899/454/936 -f 693/547/1013 696/519/989 940/519/982 -f 940/519/982 955/545/1011 693/547/1013 -f 896/453/934 955/545/1011 940/519/982 -f 940/519/982 939/518/981 896/453/934 -f 957/548/1014 958/549/1015 645/535/679 -f 645/535/679 949/533/997 957/548/1014 -f 959/551/1016 933/501/973 932/502/972 -f 932/502/972 642/515/979 707/550/798 -f 707/550/798 959/551/1016 932/502/972 -f 876/426/915 874/414/913 873/415/912 -f 873/415/912 957/548/1014 876/426/915 -f 949/533/997 877/425/916 876/426/915 -f 876/426/915 957/548/1014 949/533/997 -f 688/543/1008 905/466/943 945/525/988 -f 945/525/988 689/526/992 688/543/1008 -f 480/520/435 928/496/968 900/460/937 -f 900/460/937 425/457/431 480/520/435 -f 939/518/981 960/552/1017 897/456/812 -f 897/456/812 896/453/934 939/518/981 -f 939/518/981 930/497/970 929/498/969 -f 929/498/969 960/552/1017 939/518/981 -f 904/464/942 947/528/993 955/545/1011 -f 955/545/1011 956/546/1012 904/464/942 -f 904/464/942 956/546/1012 936/509/976 -f 936/509/976 894/447/932 904/464/942 -f 892/446/929 894/447/932 936/509/976 -f 936/509/976 919/485/959 892/446/929 -f 915/482/955 892/446/929 919/485/959 -f 919/485/959 918/486/958 915/482/955 -f 921/488/961 920/487/960 472/508/482 -f 472/508/482 471/507/481 921/488/961 -f 916/481/956 915/482/955 918/486/958 -f 918/486/958 921/488/961 916/481/956 -f 926/494/966 925/493/965 937/513/977 -f 937/513/977 934/500/974 926/494/966 -f 929/498/969 926/494/966 934/500/974 -f 934/500/974 933/501/973 929/498/969 -f 933/501/973 959/551/1016 960/552/1017 -f 960/552/1017 929/498/969 933/501/973 -f 897/456/812 960/552/1017 959/551/1016 -f 959/551/1016 958/549/1015 897/456/812 -f 958/549/1015 959/551/1016 707/550/798 -f 707/550/798 645/535/679 958/549/1015 -f 902/462/940 954/541/1007 961/554/1018 -f 961/554/1018 504/553/527 902/462/940 -f 504/553/527 429/461/435 902/462/940 -f 935/503/975 468/504/478 504/553/527 -f 504/553/527 961/554/1018 935/503/975 -f 954/541/1007 768/475/155 763/536/1019 -f 763/536/1019 950/536/998 954/541/1007 -f 951/537/999 961/554/1018 954/541/1007 -f 954/541/1007 950/536/998 951/537/999 -f 951/537/999 914/483/954 913/480/953 -f 913/480/953 935/503/975 951/537/999 -f 935/503/975 961/554/1018 951/537/999 -f 488/532/505 948/531/996 912/477/952 -f 912/477/952 442/478/452 488/532/505 -f 949/533/997 878/428/917 877/425/916 -f 763/536/1019 764/449/930 950/536/998 -f 766/475/950 889/444/926 764/449/930 -f 931/499/971 934/500/974 937/513/977 -f 937/513/977 639/555/744 931/499/971 -f 888/440/925 882/438/920 943/523/985 -f 635/524/987 634/530/994 942/521/984 -f 942/521/984 944/522/986 635/524/987 -f 693/547/1013 955/545/1011 698/544/1010 -f 872/416/911 895/452/933 917/484/957 -f 953/539/1002 280/540/1003 496/539/1006 -f 944/522/986 882/438/920 891/445/928 -f 885/439/923 888/440/925 943/523/985 -f 710/240/747 709/241/746 708/556/745 -f 708/556/745 937/513/977 710/240/747 -f 708/556/745 639/555/744 937/513/977 -f 639/555/744 638/514/978 931/499/971 -f 955/545/1011 896/453/934 956/546/1012 -f 898/455/935 897/456/812 958/549/1015 -f 958/549/1015 957/548/1014 898/455/935 -f 769/557/810 912/477/952 948/531/996 -f 770/476/811 912/477/952 769/557/810 -f 644/534/678 769/557/810 948/531/996 -f 898/455/935 957/548/1014 873/415/912 -f 909/471/947 699/527/991 910/470/948 -f 941/519/983 946/519/990 909/471/947 -f 909/471/947 908/472/946 941/519/983 -f 924/490/964 930/497/970 941/519/983 -f 941/519/983 908/472/946 924/490/964 -f 789/288/830 791/289/832 803/303/844 -f 803/303/844 806/307/847 789/288/830 -f 795/294/836 804/302/845 803/303/844 -f 803/303/844 791/289/832 795/294/836 -f 804/302/845 795/294/836 728/318/765 -f 728/318/765 723/324/760 804/302/845 -f 700/220/735 699/221/734 909/559/1020 -f 909/559/1020 962/558/1021 700/220/735 -f 698/218/733 697/219/732 694/217/729 -f 694/217/729 693/214/728 698/218/733 -f 695/216/730 963/561/1022 946/560/1023 -f 946/560/1023 696/215/731 695/216/730 -f 909/559/1020 946/560/1023 963/561/1022 -f 963/561/1022 962/559/1021 909/559/1020 -f 964/562/1024 691/565/1025 687/564/1026 -f 687/564/1026 965/563/1027 964/562/1024 -f 636/566/1028 691/565/1025 964/562/1024 -f 964/562/1024 966/567/1029 636/566/1028 -f 967/568/1030 631/569/1031 636/566/1028 -f 636/566/1028 966/567/1029 967/568/1030 -f 968/571/1032 632/571/1033 631/569/1031 -f 631/569/1031 967/568/1030 968/571/1032 -f 969/572/1034 697/573/1035 632/571/1033 -f 632/571/1033 968/571/1032 969/572/1034 -f 697/573/1035 969/572/1034 970/575/1036 -f 970/575/1036 694/574/1037 697/573/1035 -f 962/578/1038 963/577/1039 695/576/1040 -f 695/576/1040 971/580/1041 972/579/1042 -f 972/579/1042 962/578/1038 695/576/1040 -f 973/581/1043 700/581/1044 962/578/1038 -f 962/578/1038 972/579/1042 973/581/1043 -f 974/582/1045 690/583/1046 700/581/1044 -f 700/581/1044 973/581/1043 974/582/1045 -f 694/574/1037 970/575/1036 971/580/1041 -f 971/580/1041 695/576/1040 694/574/1037 -f 690/583/1046 974/582/1045 965/563/1027 -f 965/563/1027 687/564/1026 690/583/1046 -f 965/563/1027 974/582/1045 975/584/787 -f 975/584/787 964/562/1024 965/563/1027 -f 974/582/1045 973/581/1043 975/584/787 -f 972/579/1042 971/580/1041 975/584/787 -f 975/584/787 973/581/1043 972/579/1042 -f 971/580/1041 970/575/1036 975/584/787 -f 970/575/1036 969/572/1034 975/584/787 -f 969/572/1034 968/571/1032 975/584/787 -f 968/571/1032 967/568/1030 975/584/787 -f 966/567/1029 964/562/1024 975/584/787 -f 975/584/787 967/568/1030 966/567/1029 -f 531/11/567 601/87/637 684/205/719 -f 603/90/639 685/207/720 537/17/573 -f 537/17/573 602/89/638 603/90/639 -f 604/91/640 686/208/721 685/207/720 -f 685/207/720 603/90/639 604/91/640 -f 87/92/87 198/209/1 686/208/721 -f 686/208/721 604/91/640 87/92/87 -f 682/198/717 543/24/579 535/15/571 -f 535/15/571 602/89/638 682/198/717 -f 683/199/718 544/25/580 543/24/579 -f 543/24/579 682/198/717 683/199/718 -f 546/27/582 191/202/193 195/206/197 -f 195/206/197 683/199/718 546/27/582 -f 807/310/848 809/313/850 684/585/719 -f 684/585/719 539/314/575 807/310/848 -f 531/317/567 684/586/719 809/311/850 -f 809/311/850 810/312/851 531/317/567 -f 805/305/846 720/325/757 717/326/754 -f 775/270/816 776/273/817 771/266/812 -f 771/266/812 774/267/815 775/270/816 -f 775/270/816 787/285/828 776/273/817 -f 864/400/903 841/371/881 863/398/902 -f 863/398/902 976/587/1047 864/400/903 -f 865/401/904 864/400/903 976/587/1047 -f 976/587/1047 977/588/1048 865/401/904 -f 866/403/905 865/401/904 977/588/1048 -f 977/588/1048 857/391/896 866/403/905 -f 860/395/899 838/365/879 867/405/906 -f 867/405/906 978/589/1049 860/395/899 -f 978/589/1049 867/405/906 866/403/905 -f 866/403/905 857/391/896 978/589/1049 -f 860/395/899 854/390/893 979/590/1050 -f 979/590/1050 861/394/900 860/395/899 -f 979/590/1050 980/591/1051 862/396/901 -f 862/396/901 861/394/900 979/590/1050 -f 980/592/1051 846/382/885 863/398/902 -f 863/398/902 862/397/901 980/592/1051 -f 976/587/1047 863/398/902 846/382/885 -f 846/382/885 845/379/220 976/587/1047 -f 977/588/1048 976/587/1047 845/379/220 -f 845/379/220 849/383/888 977/588/1048 -f 852/386/891 857/391/896 977/588/1048 -f 977/588/1048 849/383/888 852/386/891 -f 854/390/893 860/395/899 978/589/1049 -f 978/589/1049 855/389/894 854/390/893 -f 855/389/894 978/589/1049 857/391/896 -f 854/390/893 853/387/892 981/593/1052 -f 981/593/1052 979/590/1050 854/390/893 -f 981/593/1052 859/594/898 980/591/1051 -f 980/591/1051 979/590/1050 981/593/1052 -f 859/393/898 847/381/886 846/382/885 -f 846/382/885 980/592/1051 859/393/898 -f 848/380/887 847/381/886 818/334/859 -f 818/334/859 820/335/861 848/380/887 -f 822/338/863 850/384/889 848/380/887 -f 848/380/887 820/335/861 822/338/863 -f 834/359/875 851/385/890 850/384/889 -f 850/384/889 822/338/863 834/359/875 -f 837/360/878 856/388/895 851/385/890 -f 851/385/890 834/359/875 837/360/878 -f 835/360/876 836/361/877 853/387/892 -f 837/360/878 835/360/876 853/387/892 -f 853/387/892 856/388/895 837/360/878 -f 858/392/897 981/593/1052 853/387/892 -f 853/387/892 836/361/877 858/392/897 -f 981/593/1052 858/392/897 817/333/858 -f 817/333/858 859/594/898 981/593/1052 -f 789/288/830 806/307/847 808/309/849 -f 808/309/849 797/296/838 789/288/830 -f 648/162/682 653/164/516 709/595/746 -f 647/160/681 770/265/811 663/177/696 -f 647/160/681 663/177/696 653/164/516 -f 648/162/682 647/160/681 653/164/516 -f 652/165/686 708/237/745 709/595/746 -f 709/595/746 653/164/516 652/165/686 -f 647/512/681 443/479/453 770/476/811 -f 526/596/91 110/115/110 612/113/647 -f 612/113/647 109/114/109 526/596/91 -f 982/597/1053 983/598/1054 984/599/1055 -f 984/599/1055 466/600/1056 982/597/1053 -f 984/599/1055 985/601/1057 463/602/1058 -f 463/602/1058 466/600/1056 984/599/1055 -f 463/602/1058 985/601/1057 986/603/1059 -f 986/603/1059 987/604/1060 143/605/1061 -f 143/605/1061 463/602/1058 986/603/1059 -f 984/599/1055 983/598/1054 988/606/1062 -f 985/601/1057 984/599/1055 988/606/1062 -f 988/606/1062 989/607/1063 985/601/1057 -f 990/608/1064 991/609/1065 985/601/1057 -f 985/601/1057 989/607/1063 990/608/1064 -f 985/601/1057 991/609/1065 986/603/1059 -f 992/610/1066 987/604/1060 986/603/1059 -f 986/603/1059 991/609/1065 992/610/1066 -f 987/604/1060 993/611/1067 994/612/1068 -f 994/612/1068 143/605/1061 987/604/1060 -f 995/613/1069 993/611/1067 987/604/1060 -f 987/604/1060 992/610/1066 995/613/1069 -f 982/597/1053 996/614/1070 983/598/1054 -f 466/600/1056 997/615/1071 982/597/1053 -f 931/602/1072 998/601/1073 999/599/1074 -f 999/599/1074 932/600/1075 931/602/1072 -f 999/599/1074 1000/598/1076 1001/597/1077 -f 1001/597/1077 932/600/1075 999/599/1074 -f 639/605/1078 1002/604/1079 1003/603/1080 -f 1003/603/1080 931/602/1072 639/605/1078 -f 1003/603/1080 998/601/1073 931/602/1072 -f 1004/606/1081 999/599/1074 998/601/1073 -f 998/601/1073 1005/607/1082 1004/606/1081 -f 999/599/1074 1004/606/1081 1000/598/1076 -f 998/601/1073 1003/603/1080 1006/609/1083 -f 1007/608/1084 1005/607/1082 998/601/1073 -f 998/601/1073 1006/609/1083 1007/608/1084 -f 1008/610/1085 1006/609/1083 1003/603/1080 -f 1003/603/1080 1002/604/1079 1008/610/1085 -f 1009/612/1086 1010/611/1087 1002/604/1079 -f 1002/604/1079 639/605/1078 1009/612/1086 -f 1011/613/1088 1008/610/1085 1002/604/1079 -f 1002/604/1079 1010/611/1087 1011/613/1088 -f 1000/598/1076 1012/614/1089 1001/597/1077 -f 932/600/1075 1001/597/1077 1013/615/1090 -# 2000 faces - diff --git a/tests/resources/catsham.png b/tests/resources/catsham.png deleted file mode 100644 index 8d7978e06..000000000 Binary files a/tests/resources/catsham.png and /dev/null differ diff --git a/tests/resources/catwhite.png b/tests/resources/catwhite.png deleted file mode 100644 index b849c4c07..000000000 Binary files a/tests/resources/catwhite.png and /dev/null differ diff --git a/tests/resources/mouse.png b/tests/resources/mouse.png deleted file mode 100644 index 543f32b34..000000000 Binary files a/tests/resources/mouse.png and /dev/null differ diff --git a/tests/resources/raylib_logo.dds b/tests/resources/raylib_logo.dds deleted file mode 100644 index ad0648383..000000000 Binary files a/tests/resources/raylib_logo.dds and /dev/null differ diff --git a/tests/resources/raylib_logo.png b/tests/resources/raylib_logo.png deleted file mode 100644 index 665456277..000000000 Binary files a/tests/resources/raylib_logo.png and /dev/null differ diff --git a/tests/resources/raylib_logo_uncompressed.dds b/tests/resources/raylib_logo_uncompressed.dds deleted file mode 100644 index 65a47d76d..000000000 Binary files a/tests/resources/raylib_logo_uncompressed.dds and /dev/null differ diff --git a/tests/test_mouse_wheel.c b/tests/test_mouse_wheel.c deleted file mode 100644 index 0864ac1e7..000000000 --- a/tests/test_mouse_wheel.c +++ /dev/null @@ -1,57 +0,0 @@ -/******************************************************************************************* -* -* raylib test - Testing GetMouseWheelMove() -* -* This test has been created using raylib 1.0 (www.raylib.com) -* raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) -* -* Copyright (c) 2013 Ramon Santamaria (Ray San - raysan@raysanweb.com) -* -********************************************************************************************/ - -#include "raylib.h" - -int main() -{ - // Initialization - //-------------------------------------------------------------------------------------- - int screenWidth = 800; - int screenHeight = 450; - - InitWindow(screenWidth, screenHeight, "raylib test - Mouse wheel"); - - int positionY = 0; - int scrollSpeed = 4; // Scrolling speed in pixels - - SetTargetFPS(60); - //-------------------------------------------------------------------------------------- - - // Main game loop - while (!WindowShouldClose()) // Detect window close button or ESC key - { - // Update - //---------------------------------------------------------------------------------- - positionY -= (GetMouseWheelMove()*scrollSpeed); - //---------------------------------------------------------------------------------- - - // Draw - //---------------------------------------------------------------------------------- - BeginDrawing(); - - ClearBackground(RAYWHITE); - - DrawRectangle(200, positionY, 80, 80, MAROON); - - DrawText(FormatText("%i", positionY), 10, 10, 20, GRAY); - - EndDrawing(); - //---------------------------------------------------------------------------------- - } - - // De-Initialization - //-------------------------------------------------------------------------------------- - CloseWindow(); // Close window and OpenGL context - //-------------------------------------------------------------------------------------- - - return 0; -} \ No newline at end of file diff --git a/tests/test_sound_ogg.c b/tests/test_sound_ogg.c deleted file mode 100644 index 68abc31c6..000000000 --- a/tests/test_sound_ogg.c +++ /dev/null @@ -1,60 +0,0 @@ -/******************************************************************************************* -* -* raylib test - OGG audio loading and playing -* -* NOTE: This test requires OpenAL32 dll installed (or in the same folder) -* -* This test has been created using raylib 1.1 (www.raylib.com) -* raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details) -* -* Copyright (c) 2014 Ramon Santamaria (Ray San - raysan@raysanweb.com) -* -********************************************************************************************/ - -#include "raylib.h" - -int main() -{ - // Initialization - //-------------------------------------------------------------------------------------- - int screenWidth = 800; - int screenHeight = 450; - - InitWindow(screenWidth, screenHeight, "raylib test - ogg audio loading and playing"); - - InitAudioDevice(); // Initialize audio device - - Sound fx = LoadSound("resources/audio/0564.ogg"); // Load audio file - //-------------------------------------------------------------------------------------- - - // Main game loop - while (!WindowShouldClose()) // Detect window close button or ESC key - { - // Update - //---------------------------------------------------------------------------------- - if (IsKeyPressed(KEY_SPACE)) PlaySound(fx); // Play the sound! - //---------------------------------------------------------------------------------- - - // Draw - //---------------------------------------------------------------------------------- - BeginDrawing(); - - ClearBackground(RAYWHITE); - - DrawText("Press SPACE to PLAY the SOUND!", 240, 200, 20, LIGHTGRAY); - - EndDrawing(); - //---------------------------------------------------------------------------------- - } - - // De-Initialization - //-------------------------------------------------------------------------------------- - UnloadSound(fx); // Unload sound data - - CloseAudioDevice(); // Close audio device - - CloseWindow(); // Close window and OpenGL context - //-------------------------------------------------------------------------------------- - - return 0; -} \ No newline at end of file